summaryrefslogtreecommitdiff
path: root/demos
diff options
context:
space:
mode:
Diffstat (limited to 'demos')
-rw-r--r--demos/quickstart/protected/pages/GettingStarted/id/AboutPrado.page70
-rw-r--r--demos/quickstart/protected/pages/GettingStarted/id/CommandLine.page93
-rw-r--r--demos/quickstart/protected/pages/GettingStarted/id/HelloWorld.page82
-rw-r--r--demos/quickstart/protected/pages/GettingStarted/id/Installation.page29
-rw-r--r--demos/quickstart/protected/pages/GettingStarted/id/Introduction.page62
-rw-r--r--demos/quickstart/protected/pages/GettingStarted/id/NewFeatures.page33
-rw-r--r--demos/quickstart/protected/pages/GettingStarted/id/Upgrading.page64
-rw-r--r--demos/quickstart/protected/pages/GettingStarted/id/directory.gifbin0 -> 2685 bytes
-rw-r--r--demos/quickstart/protected/pages/GettingStarted/id/sequence.gifbin0 -> 6529 bytes
-rw-r--r--demos/quickstart/protected/pages/GettingStarted/id/sequence.vsdbin0 -> 143872 bytes
10 files changed, 433 insertions, 0 deletions
diff --git a/demos/quickstart/protected/pages/GettingStarted/id/AboutPrado.page b/demos/quickstart/protected/pages/GettingStarted/id/AboutPrado.page
new file mode 100644
index 00000000..591afe14
--- /dev/null
+++ b/demos/quickstart/protected/pages/GettingStarted/id/AboutPrado.page
@@ -0,0 +1,70 @@
+<com:TContent ID="body" >
+<h1 id="201">Apa itu PRADO?</h1>
+<p id="20003" class="block-content">
+PRADO adalah kerangka pemrograman berbasis-komponen dan kendali-event untuk mengembangkan aplikasi Web dalam PHP 5. PRADO singkatan dari <b>P</b>HP <b>R</b>apid <b>A</b>pplication <b>D</b>evelopment <b>O</b>bject-oriented.
+</p>
+<p id="20004" class="block-content">
+Tujuan utama dari PRADO adalah menghidupkan usabilitas secara maksimumdalam pemrograman Web. Dengan usabilitas, kami artikan tidak hanya menggunakan ulang kode yang dimiliki seseorang, tapi juga menggunakan ulang kode orang lain dalam cara yang mudah. Yang terakhir lebih penting karena menghemat usaha penciptaan roda dan menghemat waktu pengembangan secara dramatis. Pengenalan atas konsep komponen adalah untuk tujuan ini.
+</p>
+<p id="20005" class="block-content">
+Untuk mencapai tujuan di atas, PRADO menetapkan sebuah protokol atas penulisan dan pemakaian komponen untuk membentuk aplikasi Web. Komponen adalah unit software yang mengandung-dirinya sendiri dan dapat dipakai ulang dengan kustomisasi mudah. Komponen baru dapat dibuat dengan komposisi sederhana terhadap komponen-komponen yang sudah ada.
+</p>
+<p id="20006" class="block-content">
+Untuk menjembatani interaksi dengan komponen, PRADO menerapkan paradigma pemrograman kendali-event yang membolehkan delegasi aturan yang bisa diperpanjang ke komponen. Aktivitas pengguna-akhir seperti mengklik pada tombol kirim, ditangkap sebagai event server. Metode atau fungsi dapat disertakan pada event ini agar ketika event terjadi, metode atau fungsi dipanggil secara otomatis untuk merespon event. Dibandingkan dengan pemrograman Web tradisional di mana para pengembang harus berhadapan dengan variabel kasar POST atay GET, pemrograman kendali-event membantu para pengembang lain lebih berfokus pada logika yang diperlukan dan mengurangi secara drastis pengkodean berulang kali.
+</p>
+<p id="20007" class="block-content">
+Ringkasnya, mengembangkan aplikasi Web PRADO sebagian besar menyangkut penurunan tipe komponen yang sudah dibuat sebelumnya, mengkonfigurasinya dengan menyetel propertinya, merespon ke event-nya dengan menulis fungsi pengendali, dan mengaturnya ke dalam halaman untuk aplikasi. Ini sangat mirip dengan kit piranti RAD, seperti Borland Delphi dan Microsoft Visual Basic, yang digunakan untuk mengembangkan aplikasi GUI desktop.
+</p>
+
+<h2 id="202">Mengapa PRADO?</h2>
+<p id="20008" class="block-content">
+PRADO banyak dikutip sebagai kerangka kerja yang unik. Kenyataannya, ia begitu unik sehinggi ia dapat mengalihkan pemrograman PHP yang membosankan menjadi tugas yang menyenangkan. Daftar berikut adalah ringkasan pendek dari fitur utama PRADO,
+</p>
+<ul id="prado-features" class="block-content">
+<li>Usabilitas - Kode mengikuti protokol komponen yang dapat digunakan secara berulang-ulang. Ini menguntungkan tim pengembang selama bekerja karena mereka dapat menggunakan kembali pekerjaan mereka sebelumnya serta mengintegrasikan pekerjaan pihak lain dengan mudah.</li>
+<li>Pemrograman kendali-event - Aktivitas pengguna-akhir, seperti mengklik pada tombol kirim, dianggap sebagai event server dengan begitu para pengembang lebih terfokus pada menghadapi interaksi pengguna.</li>
+<li>Integrasi tim - Penyajian dan logika disimpan secara terpisah. Aplikasi PRADO dapat berganti tema.</li>
+<li>Kontrol Web bertenaga - PRADO hadir dengan set komponen bertenaga berkenaan dengan antarmuka pengguna Web. Halaman Web interaktif tinggi dapat dibuat dengan beberapa baris kode. Sebagai contoh, menggunakan komponen datagrid, seseorang bisa dengan cepat membuat sebuah halaman yang menyajikan tabel data yang membolehkan banyak halaman, pengurutan, penyuntingan, dan penghapusan baris data.
+<li>Dukungan database kuat - Sejak versi 3.1, PRADO telah dilengkapi dengan dukungan database lengkap yang secara alami ditulis dan selanjutnya cocok dengan kerangka kerja PRADO lainnya. Berdasarkan kompleksitas dari obyek bisnis, seseorang dapat memilih untuk menggunakan akses data berbasis-PDO, atau rekaman aktif yang lebih umum dikenal, atau skema pemetaan obyek bisnis lengkap SqlMap.</li>
+<li>Dukungan AJAX - Menggunakan AJAX dalam PRADO jauh lebih mudah dengan kontrol aktif inovatif yang diperkenalkan sejak versi 3.1. Dengan mudah anda dapat menulis aplikasi AJAX-enabled tanpa menuliskan satu barispun kode javascript. Kenyataannya, menggunakan kontrol aktif tidak jauh berbeda dengan menggunakan kontrol Web reguler non-AJAX.</li>
+<li>Dukungan I18N dan L10N - PRADO menyertakan dukungan lengkap untuk membangun aplikasi dengan multipel bahasa dan lokal.</li>
+<li>Sesuai XHTML - Halaman Web yang dibuat oleh PRADO sesuai dengan XHTML.</li>
+<li>Akomodasi dari pekerjaan yang sudah ada - PRADO adalah kerangka kerja umum dengan fokus pada lapisan penyajian. Ita tidak mengecualikan para pengembang dari pemakaian librari kelas atau kit piranti yang sudah ada. Sebagai contoh, seseorang dapat memakai AdoDB atau Creole untuk berhadapan dengan DB dalam aplikasi PRADO-nya.
+<li>Fitur lainnya - Penangangan kesalahan/kekecualian bertenaga serta pencatatan pesan; cache generik dan cache output selektif; penanganan kesalahan yang dapat dikustomisasi serta dilokalisasi; otorisasi dan otentikasi yang yang dapat diperluas; ukuran keamanan serperti pencegahan naskah situs-silang (XSS), proteksi cookie, dll.</li>
+</ul>
+
+<h2 id="203">Untuk Apa PRADO Paling Cocok?</h2>
+<p id="20009" class="block-content">
+PRADO paling cocok untuk membuat aplikasi Web yang tingkat interaksif-penggunanya cukup tinggi. Ia dapat dipakai untuk mengembangkan sistem sesederhana sistem blog sampai serumit sistem manajemen konten (CMS) atau solusi e-cmmerce lengkap. Karena PRADO mempromosikan pemrograman terorientasi-obyek melalui metodologi basis-komponennya, ia sangat cocok untuk kerjasama tim dan pengembangan enterprise.
+</p>
+<p id="20011" class="block-content">
+PRADO hadir dengan set lengkap atas teknik cache yang membantu mempercepat aplikasi Web PRADO untuk mengakomodasi kebutuhan lalu lintas tinggi. Arsitektur modularnya membolehkan para pengembang menyertakan modul cache berbeda untuk keperluan yang berbeda pula. Cache output membebaskan seseorang untuk memilih secara selektif bagian halaman Web yang akan di-cache.
+</p>
+
+<h2 id="204">Bagaimana PRADO Bila Dibandingkan dengan Kerangka Kerja Lain?</h2>
+<p id="20012" class="block-content">
+PRADO sering dikutip sebagai kerangka kerja unik. Keunikannya terutama berada pada paradigma pemrograman berbasis-komponen dan kendali-event yang dicoba dipromosikan. Meskipun paradigma pemrograman ini bukan hal baru dalam pemrograman aplikasi desktop dan bukan hal baru dalam beberapa bahasa pemrograman Web, Barangkali PRADO adalah kerangka kerja PHP pertama yang menghidupkannya.
+</p>
+<p id="20013" class="block-content">
+Kebanyakan kerangka kerja PHP berfokus pada pemisahan penyajian dan logika serta mempromosikan pola desain MVC (model-view-controller). Pada dasarnya PRADO melakukan tujuan yang sama dengan membutuhkan logika disimpan dalam kelas dan penyajian dalam template. PRADO melakukan lebih banyak aspek tidak hanya MVC. Ia mengisi banyak area kosong dalam pemrograman Web PHP dengan paradigma pemrograman berbasis-komponen, kontrol Web yang kaya, dukungan database yang handal, fitur penanganan kesalahan yang fleksibel serta fitur pencatatan, dan masih banyak lagi.
+</p>
+
+<h2 id="4004">Apakah PRADO Cukup Stabil?</h2>
+<p id="20004" class="block-content">
+Ya. PRADO awalnya dirilis pada bulan Agustus 2004. Banyak rangkaian pengujian sudah ditulis dan dilaksanakan secara berkala guna memastikan kualitasnya. Sudah dipakai oleh ribuan pengembang dan banyak aplikasi Web dikembangkan berbasis itu. Bugs dan permintaan fitur diatur melalui sistem TRAC dan kami mempunyai komunitas pengguna besar dan tim pengembangan untuk memastikan semua pertanyaan dijawab dalam model berkala.
+</p>
+
+<h2 id="205">Sejarah PRADO</h2>
+<p id="20014" class="block-content">
+Inspirasi orisinil PRADO berasal dari Apache Tapestry. Selama desain dan implementasi, Saya meminjam ide dari Borland Delphi dan Microsoft ASP.NET. Versi pertama PRADO keluar dalam bulan Juni 2004 dan ditulis dalam PHP 4. Karena adanya kontes kode Zend PHP 5, Saya menulis ulang PRADO dalam PHP 5, yang membuktikan menjadi perpindahan yang bijaksana, terima kasih pada model obyek baru yang disediakan PHP 5. PRADO memenangkan hadiah utama dalam kontes Zend, memperoleh pilihan tertinggi baik dari umum dan panelis juri.
+</p>
+<p id="20015" class="block-content">
+Dalam bulan Agustus 2004, PRADO mulai di tampung pada SourceForge sebagai proyek sumber terbuka. Segera setelah itu, situs proyek <a href="http://www.xisc.com/">xisc.com</a> diumumkan kepada publik. Dengan dukungan fantastis dari tim pengembang PRADO dan pengguna PRADO, PRADO berkembang ke versi 2.0 di pertengahan 2005. Dalam versi ini, Wei Zhuo berkontribusi ke PRADO dengan dukungan I18N dan L10N yang istimewa.
+</p>
+<p id="20016" class="block-content">
+Dalam bulan Mei 2005, kami memutuskan untuk menulis ulang sepenuhnya kerangka kerja PRADO untuk memecahkan beberapa isu dasar dalam versi 2.0 dan untuk menangkap dengan beberapa fitur bagus dalam Microsoft ASP.NET 2.0. Setelah hampir setahun kerja keras dengan lebih dari 50,000 baris kode baru, versi 3.0 akhirnya tersedia pada bulan April 2006.
+</p>
+<p id="20017" class="block-content">
+Mulai dari versi 3.0, usaha signifikan dialokasikan untuk memastikan kualitas dan stabilitas PRADO. Jika kami katakan PRADO v2.x dan v1.x adalah pekerjaan bukti-konsep, kami dapat mengatakan PRADO 3.x telah berkembang menjadi proyek yang layak untuk pengembangan aplikasi bisnis serius.
+</p>
+<div class="last-modified">$Id: AboutPrado.page 1902 2007-05-07 04:17:37Z wei $</div></com:TContent> \ No newline at end of file
diff --git a/demos/quickstart/protected/pages/GettingStarted/id/CommandLine.page b/demos/quickstart/protected/pages/GettingStarted/id/CommandLine.page
new file mode 100644
index 00000000..04b36b05
--- /dev/null
+++ b/demos/quickstart/protected/pages/GettingStarted/id/CommandLine.page
@@ -0,0 +1,93 @@
+<com:TContent ID="body" >
+<h1 id="501">Piranti Baris Perintah</h1>
+<p id="70046" class="block-content">File naskah PHP opsional <tt>prado-cli.php</tt> dalam direktori <tt>framework</tt>
+menyediakan piranti baris perintah untuk melakukan berbagai hal membosankan dalam Prado.
+<tt>prado-cli.php</tt> dapat dipakai untuk membuat kerangka proyek Prado, membuat perlengkapan pengujian awal, dan akses ke shell PHP interaktif.
+</p>
+<h2 id="502">Persyaratan</h2>
+<p id="70047" class="block-content">
+Untuk menggunakan piranti baris perintah, anda perlu memakai prompt perintah anda, konsol perintah atau terminal. Sebagai tambahan, PHP harus dapat menjalankan naskah PHP dari baris perintah.
+</p>
+
+<h2 id="503">Usage</h2>
+<p id="70048" class="block-content">
+Jika anda ketik <tt>php path/ke/framework/prado-cli.php</tt>, anda seharusnya melihat informasi berikut. Alternatifnya, jika anda tidak pada Windows, anda dapat mencoba untuk mengubah <tt>prado-cli.php</tt> ke dalam eksecutabel dan menjalankannya seperti sebuah naskah</p>
+<com:TTextHighlighter Language="cli" CssClass="source block-content cli" id="code_70006">
+Command line tools for Prado 3.0.5.
+usage: php prado-cli.php action <parameter> [optional]
+example: php prado-cli.php -c mysite
+
+actions:
+ -c <directory>
+ Creates a Prado project skeleton for the given <directory>.
+
+ -t <directory>
+ Create test fixtures in the given <directory>.
+
+ shell [directory]
+ Runs a PHP interactive interpreter. Initializes the Prado
+ application in the given [directory].
+</com:TTextHighlighter>
+
+<p id="70049" class="block-content"><b>&lt;parameter&gt;</b> adalah parameter diperlukan dan <b>[optional]</b> adalah parameter opsional. </p>
+
+<h2 id="504">Membuat kerangka proyek Prado baru</h2>
+
+<p id="70050" class="block-content">Untuk membuat kerangka proyek Prado, lakukan yang berikut:</p>
+<ol>
+ <li>Ubah direktori di mana anda ingin membuat kerangka proyek.</li>
+ <li>Ketik, <tt>php ../prado/framework/prado-cli.php -c helloworld</tt>, sedangkan
+ <tt>helloworld</tt> adalah nama direktori di mana file kerangka proyek ingin anda buat.</li>
+ <li>Ketik, <tt>php ../prado/framework/prado-cli.php <b>-t</b> helloworld</tt> untuk membuat perlengkapan pengujian untuk proyek <tt>helloworld</tt>.</li>
+</ol>
+
+<h2 id="505">Shell Interaktif</h2>
+<p id="70051" class="block-content">
+Shell interaktif membolehkan anda untuk mengevaluasi pernyataan PHP dari baris perintah.
+Naskah <tt>prado-cli.php</tt> dapat dipakai untuk memulai shell dan mengambil proyek Prado yang sudah ada. Sebagai contoh, mari kita ambil proyek demo blog. Anggap bahwa baris perintah anda ada dalam direktori distribusi <tt>prado</tt> dan anda mengetikan.
+</p>
+<p id="70052" class="block-content">
+<com:TTextHighlighter Language="cli" CssClass="source block-content cli" id="code_70007">
+$: php framework/prado-cli.php shell demos/blog
+</com:TTextHighlighter>
+Output seharusnya
+<com:TTextHighlighter Language="cli" CssClass="source block-content cli" id="code_70008">
+Command line tools for Prado 3.0.5.
+** Loaded Prado application in directory "demos\blog\protected".
+PHP-Shell - Version 0.3.1
+(c) 2006, Jan Kneschke <jan@kneschke.de>
+
+>> use '?' to open the inline help
+
+>>
+</com:TTextHighlighter>
+Selanjutnya kita akan mendapatkan turunan dari aplikasi blog Prado, dan dari turunan itu kita menginginkan sebuah turunan dari modul <tt>'data'</tt>. Catatan bahwa <b>titik koma</b> di akhir baris <b>menindih output</b>.
+
+<com:TTextHighlighter Language="cli" CssClass="source block-content cli" id="code_70009">
+>> $app = Prado::getApplication();
+
+>> $db = $app->getModule('data');
+</com:TTextHighlighter>
+Terakhir, kita ingin menggunakan modul data untuk meng-query sebuah tulisan dengan <tt>ID=1</tt>. Catatan bahwa kita <b>membiarkan titik koma</b> untuk menampilkan hasilnya.
+<com:TTextHighlighter Language="cli" CssClass="source block-content cli" id="code_70010">
+>> $db->queryPostByID(1)
+</com:TTextHighlighter>
+Di sana seharusnya tidak terjadi kesalahan apapun dan seharusnya anda melihat yang berikut.
+<com:TTextHighlighter Language="cli" CssClass="source block-content cli" id="code_70011">
+PostRecord#1
+(
+ [ID] => 1
+ [AuthorID] => 1
+ [AuthorName] => 'Prado User'
+ [CreateTime] => 1148819691
+ [ModifyTime] => 0
+ [Title] => 'Welcome to Prado Weblog'
+ [Content] => 'Congratulations! You have successfully installed Prado Blog --
+ a PRADO-driven weblog system. A default administrator account has been created.
+ Please login with <b>admin/prado</b> and update your password as soon as possible.'
+ [Status] => 0
+ [CommentCount] => 0
+)
+</com:TTextHighlighter>
+</p>
+<div class="last-modified">$Id: CommandLine.page 1927 2007-05-10 23:00:04Z wei $</div></com:TContent>
diff --git a/demos/quickstart/protected/pages/GettingStarted/id/HelloWorld.page b/demos/quickstart/protected/pages/GettingStarted/id/HelloWorld.page
new file mode 100644
index 00000000..5ac3bff0
--- /dev/null
+++ b/demos/quickstart/protected/pages/GettingStarted/id/HelloWorld.page
@@ -0,0 +1,82 @@
+<com:TContent ID="body" >
+<h1 id="401">Aplikasi PRADO Pertama Saya</h1>
+<div id="hello1" class="block-content">
+<p id="50034">
+Dalam seksi ini, kami membimbing anda melalui pembuatan aplikasi PRADO pertama anda, aplikasi terkenal "Hello World".
+</p>
+<p id="50035">
+"Hello World" barangkali adalah aplikasi PRADO <i>interaktif</i> paling sederhana yang bisa anda buat. Ia menampilkan kepada pengguna-akhir sebuah halaman dengan tombol kirim yang judulnya adalah <tt>Click Me</tt>. Setelah pengguna mengklik tombol, judulnya diubah ke <tt>Hello World</tt>.
+</p>
+<p id="50036">
+Ada banyak pendekatan yang dapat mencapai tujuan di atas. Seseorang dapat mengirim halaman ke server, menentukan variabel POST, dan membuat halaman baru dengan judul tombol yang dimutakhirkan. Atau seseorang cukup menggunakan JavaScript untuk memutakhirkan judul tombol setelah event klien <tt>onclick</tt>.
+</p>
+</div>
+<p id="50037" class="block-content">
+PRADO mempromosikan pemrograman Web berbasis-komponen dan kendali-event. Tombol disajikan oleh obyek <tt>TButton</tt>. Ia melapisi judul tombol sebagai properti <tt>Text</tt> dan mengaitkan tindakan klik pengguna dengan event sisi-server <tt>OnClick</tt>. Untuk merespon klik pengguna pada tombol, seseorang cukup perlu menyertakan fungsi ke event <tt>OnClick</tt> tombol. Di dalam fungsi, properti tombol <tt>Text</tt> diubah sebagai "Hello World". Diagram berikut menampilkan urutan di atas,
+<img src="<%~sequence.gif%>" class="figure"/>
+</p>
+<p id="50038" class="block-content">
+Aplikasi PRADO kita terdiri dari tiga file, <tt>index.php</tt>, <tt>Home.page</tt> dan <tt>Home.php</tt>, yang diatur sebagai berikut,
+<img src="<%~directory.gif%>" class="figure"/>
+
+di mana setiap direktori dijelaskan sebagai berikut. Catatan, struktur direktori di atas bisa dikustomisasi. Sebagai contoh, seseorang dapat memindahkan direktori <tt>protected</tt> ke luar direktori Web. Anda akan mengetahui bagaimana melakukan ini setelah anda melewati tutorial ini.
+</p>
+<ul id="dir-struct" class="block-content">
+<li><tt>assets</tt> - direktori yang menyimpan file pribadi yang dipublikasikan. Lihat seksi <a href="?page=Advanced.Assets">assets</a> untuk lebih jelasnya. Direktori ini harus bisas ditulisi oleh proses server Web.</li>
+<li><tt>protected</tt> - path basis aplikasi yang menyimpan data aplikasi dan file naskah pribadi. Direktori ini harus dikonfigurasi tidak bisa diakses terhadap pengguna-akhir.</li>
+<li><tt>runtime</tt> - path penyimpan runtime aplikasi. Direktori ini dipakai oleh PRADO untuk menyimpan informasi runtime aplikasi, seperti kondisi aplikasi, data di-cache, dll. Direktori ini harus bisas ditulisi oleh proses server Web.</li>
+<li><tt>pages</tt> - path basis yang menyimpan semua halaman PRADO.</li>
+</ul>
+
+<div class="tip">
+<b class="tip">Tip:</b>Anda juga dapat menggunakan <tt>framework/prado-cli.php</tt>
+<a href="?page=GettingStarted.CommandLine">naskah baris perintah</a>
+untuk membuat struktur direktori Prado. Sebagai contoh, ketik perintah
+<tt>php path/to/prado-cli.php -c helloworld</tt> dalam direktori di mana anda ingin membuat proyek <tt>helloworld</tt>.
+</div>
+
+<p id="50040">
+Ketiga file yang kita pakai dijelaskan sebagai berikut.
+</p>
+<ul id="file-list" class="block-content">
+<li><tt>index.php</tt> - naskah entri dari aplikasi PRADO. File ini dibutuhkan oleh semua aplikasi PRADO dan satu-satunya file naskah yang secara langsung bisa diakses oleh pengguna-akhir. Konten dalam <tt>index.php</tt> sebagian besar terdiri dari tiga baris berikut,
+<com:TTextHighlighter CssClass="source block-content" id="code_50003">
+require_once('path/to/prado.php'); // sertakan naskah prado
+$application=new TApplication; // buat turunan aplikasi PRADO
+$application->run(); // jalankan aplikasi
+</com:TTextHighlighter>
+</li>
+<li><tt>Home.page</tt> - template untuk setiap halaman standar saat pengguna tidak secara eksplisit menetapkan halaman yang diminta. Sebuah template menetapkan penyajian tata letak komponen. Dalam contoh ini, kita gunakan dua komponen, <tt>TForm</tt> dan <tt>TButton</tt>, masing-masing terkait ke tag HTML &lt;form&gt; dan &lt;input&gt;. Template berisi konten berikut,
+<com:TTextHighlighter Language="prado" CssClass="source block-content" id="code_50004">
+<html>
+ <body>
+ &lt;com:TForm&gt;
+ &lt;com:TButton Text="Click me" OnClick="buttonClicked" /&gt;
+ &lt;/com:TForm&gt;
+ </body>
+</html>
+</com:TTextHighlighter>
+</li>
+<li><tt>Home.php</tt> - Kelas halaman untuk halaman <tt>Home</tt>. Ia terutama berisi metode yang terkait dengan event tombol <tt>OnClick</tt>.
+<com:TTextHighlighter CssClass="source block-content" id="code_50005">
+class Home extends TPage
+{
+ public function buttonClicked($sender,$param)
+ {
+ // $sender refers to the button component
+ $sender->Text="Hello World!";
+ }
+}
+</com:TTextHighlighter>
+</li>
+</ul>
+<div id="hello-end" class="block-content">
+<p id="50041">
+Aplikasi sekarang siap dan dapat diakses melalui: <tt>http://Web-server-address/helloworld/index.php</tt>, menganggap <tt>helloworld</tt> adalah direktori di bawah Web <tt>DocumentRoot</tt>. Coba untuk mengubah <tt>TButton</tt> dalam <tt>Home.page</tt> ke <tt>TLinkButton</tt> dan lihat apa yang terjadi.
+</p>
+<p id="50042">
+Kode sumber lengkap dari demo ini dapat ditemukan pada rilis PRADO. Anda juga dapat mencoba <a href="http://www.pradosoft.com/demos/helloworld/">demo online</a>.
+</p>
+</div>
+
+<div class="last-modified">$Id: HelloWorld.page 1650 2007-01-24 06:55:32Z wei $</div></com:TContent> \ No newline at end of file
diff --git a/demos/quickstart/protected/pages/GettingStarted/id/Installation.page b/demos/quickstart/protected/pages/GettingStarted/id/Installation.page
new file mode 100644
index 00000000..eee27171
--- /dev/null
+++ b/demos/quickstart/protected/pages/GettingStarted/id/Installation.page
@@ -0,0 +1,29 @@
+<com:TContent ID="body" >
+<h1 id="301">Menginstalasi PRADO</h1>
+<div id="install-info" class="block-content">
+<p id="30018">
+Jika anda sedang melihat halaman ini dari server Web anda, anda sudah selesai dengan instalasi.
+</p>
+<p id="30019">
+Persyaratan minimum PRADO adalah server Web yang mendukung PHP 5. PRADO sudah diuji dengan server Web Apache pada Windows dan Linux. Sangat dimungkinkan ia juga berjalan pada platform lain dengan server Web lain, selama PHP 5 didukung.
+</p>
+</div>
+
+<div id="install-steps" class="block-content">
+<p id="30020">
+Instalasi PRADO sebagian besar menyangkut download dan penguraian.
+</p>
+<ol>
+<li>Pergi ke <a href="http://www.pradosoft.com/">pradosoft.com</a> untuk mendapatkan PRADO versi terbaru.</li>
+<li>Uraikan file rilis PRADO ke direktori yang dapat diakses Web.
+</ol>
+</div>
+<div id="install-after" class="block-content">
+<p id="30021">
+Instalasi PRADO anda selesai dan anda dapat mulai bermain dengan demo aplikasi yang disertakan dalam rilis PRADO via URL <tt>http://web-server-address/prado/demos/</tt>. Di sini kami menganggap PRADO diurai ke subdirektori <tt>prado</tt> di bawah <tt>DocumentRoot</tt> pada server Web.
+</p>
+<p id="30022">
+Jika anda menemukan masalah dengan demo aplikasi, silahkan gunakan naskah pemeriksa persyaratan, yang dapapt diakses melalui <tt>http://web-server-address/prado/requirements/index.php</tt>, untuk terlebih dahulu memeriksa apakah konfigurasi server anda memenuhi kondisi yang dibutuhkan oleh PRADO.
+</p>
+</div>
+<div class="last-modified">$Id: Installation.page 1650 2007-01-24 06:55:32Z wei $</div></com:TContent> \ No newline at end of file
diff --git a/demos/quickstart/protected/pages/GettingStarted/id/Introduction.page b/demos/quickstart/protected/pages/GettingStarted/id/Introduction.page
new file mode 100644
index 00000000..31815414
--- /dev/null
+++ b/demos/quickstart/protected/pages/GettingStarted/id/Introduction.page
@@ -0,0 +1,62 @@
+<com:TContent ID="body" >
+<h1 id="101">Selamat datang di Tutorial Cepat PRADO</h1>
+<div id="intro" class="block-content">
+<p id="10001">
+Tutorial Cepat ini disediakan untuk membantu anda secara cepat membangun aplikasi Web anda sendiri berbasis PRADO versi 3.x.
+</p>
+<p id="10001" class="block-content">
+Jika anda adalah pengguna yang sudah mengenal PRADO 3.x dan ingin mempelajari peningkatan apa yang tersedia pada versi baru, silahkan periksa halaman <a href="?page=GettingStarted.NewFeatures">fitur baru</a>. Sebaliknya, seksi berikut sangat membantu bagi para pemula.
+</p>
+<!--
+<div class="start-page">
+ <div class="concepts start-block">
+ <h2 id="2001">Bagaimana PRADO Bekerja</h2>
+ <p id="10002" class="block-content">Konsep dan fundamental</p>
+ <ol>
+ <li><a href="#">Membangun aplikasi web dengan PRADO</a></li>
+ <li><a href="#">Kontrol dan event Web</a></li>
+ <li><a href="#">Memvalidasi input pengguna</a></li>
+ <li><a href="#">Menyabung ke database anda</a></li>
+ <li><a href="#">Menampilkan data dari database</a></li>
+ </ol>
+ </div>
+ <div class="examples start-block">
+ <h2 id="2002">Contoh dan Demo</h2>
+ <ul>
+ <li><a href="../helloworld/">Hello World</a></li>
+ <li><a href="../currency-convert/">Pengubah Kurs</a></li>
+ <li><a href="../address-book/">Buku Alamat</a></li>
+ <li><a href="../blog/">Blog</a></li>
+ <li><a href="../chat/">AJAX Chat</a></li>
+ <li><a href="../time-tracker/">Pelacak Waktu Proyek</a></li>
+ </ul>
+ <p id="10003" class="block-content">Lebih banyak contoh di <a href="?page=Controls.Standard">Kontrol Standar</a>,
+ <a href="?page=Controls.Validation">Memvalidatsi Kontrol</a> dan
+ <a href="?page=Controls.Data">Kontrol Data</a>.
+ </div>
+
+ <div class="tutorials start-block">
+ <h2 id="2003">Tutorial dan Bantuan</h2>
+ <ul>
+ <li><a href="?page=GettingStarted.HelloWorld">Hello World secara rinci</a></li>
+ <li><a href="?page=Tutorial.CurrencyConverter">Currency Converter Tutorial</a></li>
+ <li><a href="?page=Tutorial.AddressBook">Tutorial Buku Alamat</a></li>
+ <li><a href="?page=Tutorial.AjaxChat">Tutorial Chat AJAX</a></li>
+ </ul>
+ </div>
+</div>
+-->
+
+<p id="10002">
+Anda dapat merujuk ke sumber daya berikut jika anda mendapatkan tutorial ini tidak memenuhi semua kebutuhan anda.
+</p>
+</div>
+<ul class="block-content" id="intro-links">
+ <li><a href="http://www.pradosoft.com/docs/classdoc/">Kelas PRADO</a></li>
+ <li><a href="http://www.pradosoft.com/docs/manual/">Dokumentasi API PRADO</a></li>
+ <li><a href="http://www.pradosoft.com/forum/">Forum PRADO</a></li>
+ <li><a href="http://www.pradosoft.com/wiki/">Wiki PRADO</a></li>
+ <li><a href="http://trac.pradosoft.com/prado/">Trac PRADO</a></li>
+</ul>
+
+<div class="last-modified">$Id: Introduction.page 1902 2007-05-07 04:17:37Z wei $</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
new file mode 100644
index 00000000..2b2f2d60
--- /dev/null
+++ b/demos/quickstart/protected/pages/GettingStarted/id/NewFeatures.page
@@ -0,0 +1,33 @@
+<com:TContent ID="body" >
+
+<h1 id="8005">Fitur Baru</h1>
+
+<p id="40005" class="block-content">
+Halaman ini meringkas fitur utama baru yang diperkenalkan dalam setiap rilis PRADO.
+</p>
+
+<h2>Version 3.1.1</h2>
+<ul>
+<li>Ditambahkan kontrol baru <a href="?page=Controls.TabPanel">TTabPanel</a> yang menampilkan tampilan tab.</li>
+<li>Ditambahkan modul baru TCacheHttpSession yang menyimpan data sesi menggunakan modul cache guna meningkatkan performansi sesi.</li>
+<li>Ditambahkan dukungan Oracle DB ke Rekaman Aktif</li>
+</ul>
+
+<h2 id="8006">Versi 3.1.0</h2>
+<ul>
+<li>Ditambahkan dukungan AJAX. Seluruh array dari kontrol AJAX-enabled, disebut kontrol aktif, diperkenalkan. Penggunaan dari kontrol aktif ini sangat mirip dengan kontrol non-AJAX lainnya, misalnya masukkan dan gunakan. Untuk lebih jelasnya, lihat tutorial mengenai <a href="?page=ActiveControls.Home">kontrol aktif</a>.</li>
+
+<li>Ditambahkan dukungan lengkap database. </li>
+<li>Ditambahkan kontrol, modul dan layanan baru, termasuk <a href="?page=Services.SoapService">TSoapService</a>, <a href="?page=Controls.OutputCache">TOutputCache</a>, TSessionPageStatePersister, TFeedService, TJsonService, cache dependency classes, TXmlTransform.
+</li>
+
+<li>Ditingkatkan beberapa kontrol data dengan penyaji. Penyaji mendhidupkan penggunaan kembali item template yang umumnya ditemukan dalam <tt>TRepeater</tt>, <tt>TDataList</tt> dan <tt>TDataGrid</tt>, dan menjadikan konfigurasi pada kontrol-kontrol ini jauh lebih mudah. Untuk lebih jelasnya mengenai penyaji, lihat tutorial yang dimutakhirkan pada <a href="?page=Controls.Repeater"><tt>TRepeater</tt></a>, <a href="?page=Controls.DataList"><tt>TDataList</tt></a> dan <a href="?page=Controls.DataGrid"><tt>TDataGrid</tt></a>.</li>
+
+<li>Ditambahkan dukungan untuk membolehkan <a href="?page=Configurations.AppConfig">menyertakan konfigurasi aplikasi eksternal</a>. Sintaks template ditingkatkan untuk menjembatani <a href="?page=Configurations.Templates1">konfigurasi subproperti</a>.</li>
+
+<li>Ditambahkan TDbUserManager dan TDbUser untuk menyederhanakan <a href="?page=Advanced.Auth">otentikasi dan otorisasi</a> dengan akun pengguna yang disimpan dalam sebuah database.</li>
+
+</ul>
+
+<div class="last-modified">$Id: NewFeatures.page 1902 2007-05-07 04:17:37Z wei $</div>
+</com:TContent> \ No newline at end of file
diff --git a/demos/quickstart/protected/pages/GettingStarted/id/Upgrading.page b/demos/quickstart/protected/pages/GettingStarted/id/Upgrading.page
new file mode 100644
index 00000000..bde08a1a
--- /dev/null
+++ b/demos/quickstart/protected/pages/GettingStarted/id/Upgrading.page
@@ -0,0 +1,64 @@
+<com:TContent ID="body" >
+
+<h1 id="501">Meningkatkan dari v2.x dan v1.x</h1>
+
+<div id="from-2-or-1" class="block-content">
+<p id="40023">
+PRADO v3.0 TIDAK kompatibel mundur dengan versi PRADO sebelumnya.
+</p>
+<p id="40024">
+Berita baiknya adalah, properti dan event dari kebanyakan kontrol tetap sama, dan sintaks template kontrol sebagian besar tidak diubah. Oleh karena itu, pengetahuan para pengembang dari versi PRADIO sebelumnya masih berlaku dalam v3.0.
+</p>
+<p id="40025">
+Kami meringkas perubahan paling berarti dalam v3.0 guna membantu para pengembang meningkatkan aplikasi PRADO v2.x dan v1.x lebih mudah, jika diperlukan.
+</p>
+</div>
+
+<h2 id="502">Definisi Komponen</h2>
+<p id="40026" class="block-content">
+Versi 3.0 sepenuhnya telah mengabaikan kebutuhan file spesifikasi komponen. Ia banyak bergantung pada konvensi untuk mendefinisikan properti dan event komponen. Dalam keadaan tertentu, properti didefinisikan oleh keberadaan dari metode pengambil dan/atau metode penentu, sementara event didefinisikan dengan keberadaan <tt>pada</tt>-metode. Nama properti dan event dalam v3.0 keduanya sensitif-huruf. Sebagai konsekuensinya, para pengembang diperlukan untuk memelihara pengubahan tipe saat properti komponen sedang disetel. Sebagai contoh, kode berikut dipakai untuk mendefinisikan metode penentu untuk properti yang <tt>Dihidupkan</tt> dari <tt>TControl</tt>, yang merupakan tipe <tt>boolean</tt>,
+</p>
+<com:TTextHighlighter Language="php" CssClass="block-content source" ID="code1">
+public function setEnabled($value)
+{
+ $value=TPropertyValue::ensureBoolean($value);
+ $this->setViewState('Enabled',$value,true);
+}
+</com:TTextHighlighter>
+<p id="40027" class="block-content">
+di mana <tt>TPropertyValue::ensureBoolean()</tt> dipakaikan untuk memastikan bahwa nilai input adalah boolean. Ini adalah karena ketika properti dikonfigurasi dalam template, nilai string dikirimkan ke penentu. Dalam versi sebelumnya, PRADO mengetahui tipe properti berdasarkan file spesifikasi komponen dan melakukan konversi tipe bagi anda.
+</p>
+
+<h2 id="503">Pengontrol Aplikasi</h2>
+<p id="40028" class="block-content">
+Pengontrol aplikasi sekarang menerapkan sebuah arsitektur modular. Modul bisa disertakan dan dikonfigurasi dalam spesifikasi aplikasi. Setiap modul menganggap fungsionalitas tertentu, dan dikoordinasikan bersama oleh <a href="?page=Fundamentals.Applications">masa hidup aplikasi</a>. Konsep modul v2.x diganti dalam v3.0 by <a href="?page=Configurations.PageConfig">direktori halaman</a>. Walhasil, format v3.0 <a href="?page=Configurations.AppConfig">spesifikasi aplikasi</a> juga berbeda dari versi sebelumnya.
+</p>
+
+<h2 id="504">Halaman</h2>
+<p id="40029" class="block-content">
+Halaman pada v3.0 diatur dalam direktori yang bisa dibandingkan ke konsep modul pada v2.x. Halaman diminta menggunakan path kepadanya. Sebagai contoh, URL <tt>index.php?page=Controls.Samples.Sample1</tt> akan dipakai untuk meminta halaman bernama <tt>Sample1</tt> yang disimpan di bawah direktorithe <tt>[BasePath]/Controls/Samples</tt>, di mana <tt>[BasePath]</tt> merujuk ke akar path halaman. Nama file dari template halaman harus diakhiri dengan <tt>.page</tt>, terutama untuk membedakan template halaman dari template kontrol non-halaman yang nama filenya sama harus diakhiri dengan <tt>.tpl</tt>.
+</p>
+
+<h2 id="505">Hubungan Kontrol</h2>
+<p id="40030" class="block-content">
+Versi 3.0 mendefinsikan kembali hubungan diantara kontrol. Dalam keadaan tertentu, hubungan leluhur-anak sekarang merujuk ke hubungan lampiran antara penyajian kontrol. Dan hubungan wadah-penamaan baru diperkenalkan guna membantu lebih baik mengatur ID kontrol. Untuk lebih jelasnya, lihat seksi <a href="?page=Fundamentals.Controls">controls</a>.
+</p>
+
+<h2 id="506">Sintaks Template</h2>
+<div id="template-syntax" class="block-content">
+<p id="40031">
+Sintaks template kontrol dalam v3.0 tetap mirip dengan versi sebelumnya, dengan banyak peningkatan. Perubahan utama adalah mengenai ekspresi databinding. Dalam v3.0, ini dikerjakan dengan mengikuti,
+</p>
+<com:TTextHighlighter Language="prado" CssClass="source block-content" id="code_40002">
+&lt;com:MyComponent PropertyName=&lt;%# PHP expression %&gt; .../&gt;
+</com:TTextHighlighter>
+<p id="40032">
+Tag ekspresi dan pernyataan juga diubah. Untuk lebih jelasnya, lihat seksi <a href="?page=Configurations.Templates1">definisi template</a>.
+</p>
+</div>
+<h2 id="507">Sintaks Tema</h2>
+<p id="40033" class="block-content">
+Tema dalam v3.0 didefinisikan seperti template kontrol dengan beberapa batasan.
+</p>
+
+<div class="last-modified">$Id: Upgrading.page 1650 2007-01-24 06:55:32Z wei $</div></com:TContent> \ No newline at end of file
diff --git a/demos/quickstart/protected/pages/GettingStarted/id/directory.gif b/demos/quickstart/protected/pages/GettingStarted/id/directory.gif
new file mode 100644
index 00000000..e6c4f724
--- /dev/null
+++ b/demos/quickstart/protected/pages/GettingStarted/id/directory.gif
Binary files differ
diff --git a/demos/quickstart/protected/pages/GettingStarted/id/sequence.gif b/demos/quickstart/protected/pages/GettingStarted/id/sequence.gif
new file mode 100644
index 00000000..df5e7cef
--- /dev/null
+++ b/demos/quickstart/protected/pages/GettingStarted/id/sequence.gif
Binary files differ
diff --git a/demos/quickstart/protected/pages/GettingStarted/id/sequence.vsd b/demos/quickstart/protected/pages/GettingStarted/id/sequence.vsd
new file mode 100644
index 00000000..4129f1fc
--- /dev/null
+++ b/demos/quickstart/protected/pages/GettingStarted/id/sequence.vsd
Binary files differ