diff options
author | kabayan <> | 2007-09-26 16:56:29 +0000 |
---|---|---|
committer | kabayan <> | 2007-09-26 16:56:29 +0000 |
commit | 1e3ebd85b14211ba6d6aeffdcad4eecc44dc6c2d (patch) | |
tree | 8c892e012418e81d9bb4b1857ebd4a449e07b59d | |
parent | 1c64a106651c026c2638e664960261989aaf53cc (diff) |
Indonesian: synchorizing Auth and NewFeatures
-rw-r--r-- | demos/quickstart/protected/pages/Advanced/id/Auth.page | 44 | ||||
-rw-r--r-- | demos/quickstart/protected/pages/GettingStarted/id/NewFeatures.page | 1 |
2 files changed, 44 insertions, 1 deletions
diff --git a/demos/quickstart/protected/pages/Advanced/id/Auth.page b/demos/quickstart/protected/pages/Advanced/id/Auth.page index 807863ca..c1e44656 100644 --- a/demos/quickstart/protected/pages/Advanced/id/Auth.page +++ b/demos/quickstart/protected/pages/Advanced/id/Auth.page @@ -124,5 +124,47 @@ Dalam contoh di atas, <tt>UserClass</tt> menetapkan bahwa kelas akan dipakai unt <p id="720566" class="block-content">
Kelas pengguna harus menerapkan dua metode abstrak dalam <tt>TDbUser</tt>: <tt>validateUser()</tt> dan <tt>createUser()</tt>. Karena informasi akun pengguna disimpan dalam sebuah database, kelas pengguna dapat menggunakan properti <tt>DbConnection</tt>-nya untuk menjangkau database.
</p>
+<com:SinceVersion Version="3.1.1" />
+<p id="720567" class="block-content">
+Sejak versi 3.1.1, <tt>TAuthManager</tt> menyediakan dukungan guna membolehkan mengingat yang masuk dengan menyetel <tt>AllowAutoLogin</tt> menjadi true. Oleh karena itu, <tt>TDbUser</tt> menambahkan dua metode untuk memfasilitasi implementasi fitur ini. Dalam keadaan tertentu, dua metode baru diperkenalkan: <tt>createUserFromCookie()</tt> dan <tt>saveUserToCookie()</tt>. Para pengembang harus mengimplementasikan dua metode ini jika mengingat yang sudah masuk diperlukan. Di bawah ini adalah contoh implementasi:
+</p>
+<com:TTextHighlighter Language="php" CssClass="source block-content" id="code5">
+public function createUserFromCookie($cookie)
+{
+ if(($data=$cookie->Value)!=='')
+ {
+ $application=Prado::getApplication();
+ if(($data=$application->SecurityManager->validateData($data))!==false)
+ {
+ $data=unserialize($data);
+ if(is_array($data) && count($data)===3)
+ {
+ list($username,$address,$token)=$data;
+ $sql='SELECT passcode FROM user WHERE LOWER(username)=:username';
+ $command=$this->DbConnection->createCommand($sql);
+ $command->bindValue(':username',strtolower($username));
+ if($token===$command->queryScalar() && $token!==false && $address=$application->Request->UserHostAddress)
+ return $this->createUser($username);
+ }
+ }
+ }
+ return null;
+}
+
+public function saveUserToCookie($cookie)
+{
+ $application=Prado::getApplication();
+ $username=strtolower($this->Name);
+ $address=$application->Request->UserHostAddress;
+ $sql='SELECT passcode FROM user WHERE LOWER(username)=:username';
+ $command=$this->DbConnection->createCommand($sql);
+ $command->bindValue(':username',strtolower($username));
+ $token=$command->queryScalar();
+ $data=array($username,$address,$token);
+ $data=serialize($data);
+ $data=$application->SecurityManager->hashData($data);
+ $cookie->setValue($data);
+}
+</com:TTextHighlighter>
-<div class="last-modified">$Id: Auth.page 2226 2007-09-16 19:32:58Z xue $</div></com:TContent>
\ No newline at end of file +<div class="last-modified">$Id: Auth.page 2245 2007-09-26 13:22:02Z xue $</div></com:TContent>
\ No newline at end of file diff --git a/demos/quickstart/protected/pages/GettingStarted/id/NewFeatures.page b/demos/quickstart/protected/pages/GettingStarted/id/NewFeatures.page index b7f3ff3a..46f482f2 100644 --- a/demos/quickstart/protected/pages/GettingStarted/id/NewFeatures.page +++ b/demos/quickstart/protected/pages/GettingStarted/id/NewFeatures.page @@ -17,6 +17,7 @@ Halaman ini meringkas fitur-fitur utama baru yang diperkenalkan dalam setiap ril <li>Ditambahkan dukungan TDataGrid untuk membolehkan pengelompokan sel yang berurutan dengan isi yang sama.</li>
<li>Ditambahkan dukungan untuk mengkonfigurasi properti halaman dan aturan otorisasi menggunakan <a href="?page=Configurations.PageConfig">path halaman relatif</a> dalam konfigurasi aplikasi dan halaman. Ditambahkan dukungan untuk membolehkan <a href="?page=Advanced.Auth">otorisasi</a> didasarkan pada alamat remote host.</li>
<li>Ditambahkan persister kondisi halaman baru <tt>TCachePageStatePersister</tt>. Ia membolehkan kondisi halaman untuk disimpan menggunakan modul cache (misalnya TMemCache, TDbCache, dll.)
+<li>Ditambahkan dukungan untuk <a href="?page=Advanced.Auth">kerangka kerja otentikasi</a> guna mengingat yang sudah masuk.</li>
</ul>
<h2 id="8006">Versi 3.1.0</h2>
|