From 1e3ebd85b14211ba6d6aeffdcad4eecc44dc6c2d Mon Sep 17 00:00:00 2001 From: kabayan <> Date: Wed, 26 Sep 2007 16:56:29 +0000 Subject: Indonesian: synchorizing Auth and NewFeatures --- .../protected/pages/Advanced/id/Auth.page | 44 +++++++++++++++++++++- .../pages/GettingStarted/id/NewFeatures.page | 1 + 2 files changed, 44 insertions(+), 1 deletion(-) (limited to 'demos/quickstart') 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, UserClass menetapkan bahwa kelas akan dipakai unt

Kelas pengguna harus menerapkan dua metode abstrak dalam TDbUser: validateUser() dan createUser(). Karena informasi akun pengguna disimpan dalam sebuah database, kelas pengguna dapat menggunakan properti DbConnection-nya untuk menjangkau database.

+ +

+Sejak versi 3.1.1, TAuthManager menyediakan dukungan guna membolehkan mengingat yang masuk dengan menyetel AllowAutoLogin menjadi true. Oleh karena itu, TDbUser menambahkan dua metode untuk memfasilitasi implementasi fitur ini. Dalam keadaan tertentu, dua metode baru diperkenalkan: createUserFromCookie() dan saveUserToCookie(). Para pengembang harus mengimplementasikan dua metode ini jika mengingat yang sudah masuk diperlukan. Di bawah ini adalah contoh implementasi: +

+ +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); +} + -
$Id: Auth.page 2226 2007-09-16 19:32:58Z xue $
\ No newline at end of file +
$Id: Auth.page 2245 2007-09-26 13:22:02Z xue $
\ 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
  • Ditambahkan dukungan TDataGrid untuk membolehkan pengelompokan sel yang berurutan dengan isi yang sama.
  • Ditambahkan dukungan untuk mengkonfigurasi properti halaman dan aturan otorisasi menggunakan path halaman relatif dalam konfigurasi aplikasi dan halaman. Ditambahkan dukungan untuk membolehkan otorisasi didasarkan pada alamat remote host.
  • Ditambahkan persister kondisi halaman baru TCachePageStatePersister. Ia membolehkan kondisi halaman untuk disimpan menggunakan modul cache (misalnya TMemCache, TDbCache, dll.) +
  • Ditambahkan dukungan untuk kerangka kerja otentikasi guna mengingat yang sudah masuk.
  • Versi 3.1.0

    -- cgit v1.2.3