From 654a9cae43358c7eecf3b522e9876aa7815e2453 Mon Sep 17 00:00:00 2001 From: Fabio Bas Date: Mon, 7 Dec 2015 15:57:51 +0100 Subject: Move urls from pradosoft.com to github's project page; drop unmaintained quickstart tutorial translations --- .../protected/pages/Day3/id/CreateAdminUser.page | 137 --------------------- 1 file changed, 137 deletions(-) delete mode 100755 demos/blog-tutorial/protected/pages/Day3/id/CreateAdminUser.page (limited to 'demos/blog-tutorial/protected/pages/Day3/id/CreateAdminUser.page') diff --git a/demos/blog-tutorial/protected/pages/Day3/id/CreateAdminUser.page b/demos/blog-tutorial/protected/pages/Day3/id/CreateAdminUser.page deleted file mode 100755 index f805d477..00000000 --- a/demos/blog-tutorial/protected/pages/Day3/id/CreateAdminUser.page +++ /dev/null @@ -1,137 +0,0 @@ - - -

Membuat Halaman AdminUser

- -

-Halaman AdminUser menampilkan semua akun pengguna dalam sebuah daftar agar administrator dapat melakukan beberapa pekerjaan administratif. Demi kemudahan, pekerjaan administratif sistem blog kita mendukung termasuk mengedit dan menghapus akun pengguna. -

- -

-Kita akan menampilkan daftar pengguna dalam sebuah tabel. Setiap baris tabel mewakili satu akun pengguna, dan kolom berikut ditampilkan: -

- - -

-Kita membuat dua file protected/pages/users/AdminUser.page dan protected/pages/users/AdminUser.php masing-masing untuk menyimpan template halaman dan kelas halaman. -

- -

Membuat Template Halaman

-

-Kita menggunakan TDataGrid untuk menampilkan akun pengguna. Berdasarkan pada analisis di atas, kita mengkonfigurasi empat kolom berikut: -

- - -

Template halaman lengkap ditampilkan seperti berikut:

- - -<%@ Title="My Blog - Manage User Accounts" %> - -<com:TContent ID="Main"> - -

Manage User Accounts

- -Create New User -
- -<com:TDataGrid ID="UserGrid" - DataKeyField="username" - AutoGenerateColumns="false" - OnDeleteCommand="deleteButtonClicked"> - - <com:THyperLinkColumn - HeaderText="Username" - DataTextField="username" - DataNavigateUrlField="username"> - <prop:DataNavigateUrlFormatString># - $this->Service->constructUrl('users.EditUser',array('username'=>{0})) - </prop:DataNavigateUrlFormatString> - </com:THyperLinkColumn> - - <com:TBoundColumn - HeaderText="Email" - DataField="email" /> - - <com:TCheckBoxColumn - HeaderText="Administrator" - DataField="role" /> - - <com:TButtonColumn - HeaderText="Command" - Text="Delete" - ButtonType="PushButton" - CommandName="delete" /> - -</com:TDataGrid> - -</com:TContent> -
- - -

Membuat Kelas Halaman

- -

-Dalam template halaman di atas, event OnDeleteCommand datagrid dengan metode deleteButtonClicked() akan kita implementasikan dalam kelas halaman. Sebagai tambahan, datagrid perlu dipopulasi dengan data akun pengguna saat halaman diinisialisasi. Oleh karena itu, kita menulis kelas halaman seperti berikut: -

- - -class AdminUser extends TPage -{ - /** - * Mempopulai datagrid dengan daftar pengguna. - * Metode ini dipanggil oleh kerangka kerja saat inisialisasi halaman - * @param mixed event parameter - */ - public function onInit($param) - { - parent::onInit($param); - // ambil semua informasi data akun - $this->UserGrid->DataSource=UserRecord::finder()->findAll(); - // mengikat data ke komponen antarmua - $this->UserGrid->dataBind(); - } - - /** - * Menghapus rekaman pengguna yang ditetapkan. - * Metode ini merespon ke event OnDeleteCommand pada datagrid. - * @param TDataGrid pengirim event - * @param TDataGridCommandEventParameter parameter event - */ - public function deleteButtonClicked($sender,$param) - { - // dapatkan item datagrid yang berisi tombol hapus yang diklik - $item=$param->Item; - // dapatkan kunci primer terkait ke item datagrid - $username=$this->UserGrid->DataKeys[$item->ItemIndex]; - // menghapus rekaman pengguna dengan kunci primer nama pengguna - UserRecord::finder()->deleteByPk($username); - } -} - - -

-Dalam kode di atas, metode deleteButtonClicked() dipanggil kapan saja tombol "Delete" diklik. untuk menentukan baris mana pada tombol yang diklik, kita memeriksa properti Item.ItemIndex pada parameter event. Untuk selanjutnya mengidentifikasi akun pengguna mana yang akan dihapus, kita mengambil nilai kunci primer (username) melalui properti DataKeys pada DataGrid. -

- - -Semua kontrol data-bound mempunyai pola penggunaan yang sama. Yaitu, Setel properti DataSource dengan data dan panggil metode dataBind() untuk mengikat data ke struktur internal kontrol. - - - -

Pengujian

-

-Untuk menguji halaman AdminUser, kunjungi URL http://hostname/blog/index.php?page=users.AdminUser. Anda mungkin perlu masuk sebagai administrator lebih dahulu jika Anda belum melakukannya. Kita akan melihat hasil seperti berikut. -

- - - -
\ No newline at end of file -- cgit v1.2.3