diff options
Diffstat (limited to 'demos/quickstart/protected/pages/Fundamentals')
43 files changed, 0 insertions, 1115 deletions
diff --git a/demos/quickstart/protected/pages/Fundamentals/id/Applications.page b/demos/quickstart/protected/pages/Fundamentals/id/Applications.page deleted file mode 100755 index 43b956c3..00000000 --- a/demos/quickstart/protected/pages/Fundamentals/id/Applications.page +++ /dev/null @@ -1,55 +0,0 @@ -<com:TContent ID="body" >
-
-<h1 id="1201">Aplikasi</h1>
-<p id="160157" class="block-content">
-Aplikasi adalah turunan dari <tt>TApplication</tt> atau asal kelasnya. Ia mengatur modul yang menyediakan fungsionalitas berbeda dan diambil bila diperlukan. Ia menyediakan layanan bagi pengguna-akhir. Ia adalah tempat utama untuk menyimpan berbagai parameter dalam sebuah aplikasi. Dalam aplikasi PRADO, turunan aplikasi adalah satu-satunya obyek yang secara global dapat diakses melalui panggilan fungsi <tt>Prado::getApplication()</tt>.
-</p>
-<p id="160158" class="block-content">
-Aplikasi dikonfigurasi melalui <a href="?page=Configurations.AppConfig">konfigurasi aplikasi</a>. Biasanya dibuat dalam naskah entri seperti berikut,
-<com:TTextHighlighter CssClass="source block-content" id="code_160071">
-require_once('/path/to/prado.php');
-$application = new TApplication;
-$application->run();
-</com:TTextHighlighter>
-Di mana metode <tt>run()</tt> memulai aplikasi untuk menangani permintaan pengguna.
-</p>
-
-<h2 id="1202">Organisasi Direktori</h2>
-<p id="160159" class="block-content">
-Aplikasi PRADO minimal berisi dua file: file entri dan file template halaman. Ini harus diatur sebagai berikut,
-<img src="<%~directory.gif%>" class="figure"/>
-</p>
-<ul id="u2" class="block-content">
-<li><tt>wwwroot</tt> - Akar dokumen Web atau sub-direktori.</li>
-<li><tt>index.php</tt> - naskah entri dari aplikasi PRADO.</li>
-<li><tt>assets</tt> - direktori yang menyimpan file pribadi yang dipublikasikan. Lihat seksi <a href="?page=Advanced.Assets">assets</a>.</li>
-<li><tt>protected</tt> - path basis aplikasi yang menyimpan data aplikasi dan file naskah pribadi. Direktori ini harus dikonfigurasi tidak bisa diakses terhadap Web-inaccessible, atau ia dapat ditempatkan di luar direktori Web.</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.</li>
-<li><tt>pages</tt> - path basis yang menyimpan semua halaman PRADO. Lihat seksi <a href="?page=Fundamentals.Services">layanan</a>.</li>
-<li><tt>Home.page</tt> - Halaman standar yang diberikan saat pengguna tidak secara eksplisit menetapkan halaman yang diminta. Ini adalah file template halaman. Nama file tanpa akhiran adalah nama halaman. Kelas halaman adalah <tt>TPage</tt>. Jika di sana juga aga file kelas <tt>Home.php</tt>, kelas halaman menjadi <tt>Home</tt>.</li>
-</ul>
-
-<p id="160160" class="block-content">
-Produk aplikasi PRADO biasanya membutuhkan file lebih banyak. Ia dapat menyertakan file konfigurasi aplikasi bernama <tt>application.xml</tt> di bawah path basis aplikasi <tt>protected</tt>. Halaman bisa diatur dalam direktori, beberapa diantaranya dapat berisi file konfigurasi halaman bernama <tt>config.xml</tt>. Untuk lebih jelasnya, silahkan lihat seksi <a href="?page=Configurations.Overview">konfigurasi</a>.
-</p>
-
-<h2 id="1203">Penyebaran Aplikasi</h2>
-<p id="160161" class="block-content">
-Menyebarkan aplikasi PRADO sebagian besar terkait dengan meng-copy direktori. Sebagai contoh, untuk menyebarkan aplikasi minimal di atas ke server lain, ikuti langkah-langkah berikut,
-</p>
-<ol>
-<li>Copy konten di bawah <tt>wwwroot</tt> ke direktori yang dapat diakses=Web pada server baru.</li>
-<li>Ubah file naskah entri <tt>index.php</tt> agar ia menyertakan file <tt>prado.php</tt> secara benar.</li>
-<li>Hapus semua konten di bawah direktori <tt>assets</tt> dan <tt>runtime</tt> dan pastikan kedua direktori dapat ditulis oleh proses server Web.</li>
-</ol>
-
-<h2 id="1204">Masa Hidup Aplikasi</h2>
-<p id="160162" class="block-content">
-Seperti masa hidup halaman, aplikasi juga mempunyai masa hidup. Modul aplikasi dapat meregistrasi event masa hidup. Ketika aplikasi mencapai masa hidup tertentu dan memunculkan event terkait, metode modul teregistrasi akan di panggil secara otomatis. Modul yang disertakan dalam rilis PRADO, seperti <tt>TAuthManager</tt>, menggunakan cara ini untuk melasanakan tujuannya.
-</p>
-<p id="160163" class="block-content">
-Masa hidup aplikasi dapat digambarkan sebagai berikut,
-</p>
-<img src="<%~applifecycles.gif%>" />
-
-</com:TContent>
diff --git a/demos/quickstart/protected/pages/Fundamentals/id/Architecture.page b/demos/quickstart/protected/pages/Fundamentals/id/Architecture.page deleted file mode 100755 index 354e2403..00000000 --- a/demos/quickstart/protected/pages/Fundamentals/id/Architecture.page +++ /dev/null @@ -1,13 +0,0 @@ -<com:TContent ID="body" >
-<h1 id="601">Arsitektur</h1>
-
-<p id="100111" class="block-content">
-PRADO adalah kerangka kerja presentasi utama, meskipun tidak dibatasi demikian. Kerangka kerja terfokus pada pembuatan pemrograman Web, yang banyak berkaitan dengan interaksi pengguna, menjadi berbasis-komponen dan kendali-event agar pengembang itu bisa lebih produktif. Susunan kelas berikut menggambarkan beberapa kelas utama yang disediakan oleh PRADO,
-</p>
-<img src="<%~classtree.gif%>" />
-
-<p id="100112" class="block-content">
-Ketika aplikasi PRADO memproses permintaan halaman, diagram obyek statisnya dapat dilihat sebagai berikut,
-</p>
-<img src="<%~objectdiagram.gif%>" />
-</com:TContent>
diff --git a/demos/quickstart/protected/pages/Fundamentals/id/Components.page b/demos/quickstart/protected/pages/Fundamentals/id/Components.page deleted file mode 100755 index 4eb14964..00000000 --- a/demos/quickstart/protected/pages/Fundamentals/id/Components.page +++ /dev/null @@ -1,128 +0,0 @@ -<com:TContent ID="body" >
-<h1 id="701">Komponen</h1>
-<p id="110113" class="block-content">
-Komponen adalah turunan dari <tt>TComponent</tt> atau kelas anaknya. Basis kelas <tt>TComponent</tt> menerapkan mekanisme properti dan event komponen.
-</p>
-
-<h2 id="702">Properti Komponen</h2>
-<p id="110114" class="block-content">
-Properti komponen dapat dilihat sebagai variabel public yang menjelaskan aspek tertentu dari komponen seperti warna latar belakang, besar font, dll. Properti didefinisikan dengan keberadaan metode penyetel dan/atau pengambil dalam kelas komponen. Sebagai contoh, dalam <tt>TControl</tt>, kami mendefinisikan properti <tt>ID</tt> menggunakan metode pengambil dan penyetel berikut,
-<com:TTextHighlighter CssClass="source block-content" id="code_110056">
-class TControl extends TComponent {
- public function getID() {
- ...
- }
- public function setID($value) {
- ...
- }
-}
-</com:TTextHighlighter>
-</p>
-<p id="110115" class="block-content">
-Untuk mendapatkan atau menetapkan properti <tt>ID</tt>, lakukan seperti berikut, seperti bekerja dengan sebuah variabel,
-<com:TTextHighlighter CssClass="source block-content" id="code_110057">
-$id = $component->ID;
-$component->ID = $id;
-</com:TTextHighlighter>
-Ini sama dengan yang berikut,
-<com:TTextHighlighter CssClass="source block-content" id="code_110058">
-$id = $component->getID();
-$component->setID( $id );
-</com:TTextHighlighter>
-</p>
-<p id="110116" class="block-content">
-Properti hanya-baca jika metode pengambil tetapi tidak untuk metode penyetel. Karena nama metode PHP adalah sensitif-huruf, nama properti juga sensitif-huruf. Kelas komponen mewariskan seluruh properti kelas leluhurnya.
-</p>
-
-<h3 id="706">Subproperti</h3>
-<p id="110117" class="block-content">
-Subproperti adalah properti dari beberapa properti tipe-obyek. Sebagai contoh, <tt>TWebControl</tt> mempunyai properti <tt>Font</tt> yang merupakan tipe <tt>TFont</tt>. Kemudian properti <tt>Name</tt> dari <tt>Font</tt> dirujuk sebagai subproperti (dengan memperhatikan <tt>TWebControl</tt>).
-</p>
-<p id="110118" class="block-content">
-Untuk mendapatkan atau menentukan subproperti <tt>Name</tt>, gunakan metode beriktu,
-<com:TTextHighlighter CssClass="source block-content" id="code_110059">
-$name = $component->getSubProperty('Font.Name');
-$component->setSubProperty('Font.Name', $name);
-</com:TTextHighlighter>
-Ini sama dengan yang berikut,
-<com:TTextHighlighter CssClass="source block-content" id="code_110060">
-$name = $component->getFont()->getName();
-$component->getFont()->setName( $name );
-</com:TTextHighlighter>
-
-
-</p>
-
-<h2 id="703">Event Komponen</h2>
-<p id="110119" class="block-content">
-Event komponen adalah properti khusus yang mengambil nama metode sebagai nilainya. Melampirkan (setelan) metode ke sebuah event akan menancapkan metode ke tempat di mana event dimunculkan. Oleh karena itu, perilaku komponen bisa diubah dalam cara yang tidak terlihat selama pengembangan komponen.
-</p>
-<p id="110120" class="block-content">
-Event komponen didefinisikan dengan keberadaan metode yang namanya dimulai dengan kata <tt>on</tt>. Nama event adalah nama metode dan sensitif-huruf. Sebagai contoh, dalam <tt>TButton</tt>, kita mempunyai
-<com:TTextHighlighter CssClass="source block-content" id="code_110061">
-class TButton extends TWebControl {
- public function onClick( $param ) {
- ...
- }
-}
-</com:TTextHighlighter>
-Ini mendefinisikan event bernama <tt>OnClick</tt>, dan pengendali dapat dilampirkan ke event menggunakan salah satu cara berikut,
-<com:TTextHighlighter CssClass="source block-content" id="code_110062">
-$button->OnClick = $callback;
-$button->OnClick->add( $callback );
-$button->OnClick[] = $callback;
-$button->attachEventHandler( 'OnClick' , $callback );
-</com:TTextHighlighter>
-di mana <tt>$callback</tt> merujuk ke callback PHP yang benar (misalnya nama fungsi, metode kelas <tt>array($object,'method')</tt>, dll).
-</p>
-
-<h2 id="704">Namespace</h2>
-<p id="110121" class="block-content">
-Namespace merujuk ke pengelompokan logis dari beberapa nama kelas agar dapat dibedakan dari nama kelas lain meskipun jika namanya sama. Karena PHP pada hakekatnya tidak mendukung namespace, Anda tidak bisa membuat turunan dari dua kelas yang mempunyai nama sama tapi dengan definisi berbeda. Untuk membedakan dari kelas didefinisikan pengguna, semua kelas PRADO diawali dengan huruf 'T' (berarti 'Type'). Para pengguna disarankan untuk tidak menamai kelasnya seperti ini. Sebaiknya mengawali nama kelasnya dengan huruf yang lainnya.
-</p>
-<p id="110122" class="block-content">
-Namespace dalam PRADO dianggap sebagai direktori yang berisi satu atau beberapa file kelas. Sebuah kelas dapat ditetapkan tanpa dwimakna menggunakan namespace demikian diikuti oleh nama kelas. Setiap namespace dalam PRADO ditetapkan dalam format berikut,
-<div class="source">
-PathAlias.Dir1.Dir2
-</div>
-di mana <tt>PathAlias</tt> adalah alias dari beberapa direktori, sementara <tt>Dir1</tt> dan <tt>Dir2</tt> adalah subdirektori di bawah direktori itu. Kelas yang benama <tt>MyClass</tt> didefinisikan di bawah <tt>Dir2</tt> sekarang berkualifikasi lengkap sebagai <tt>PathAlias.Dir1.Dir2.MyClass</tt>.
-</p>
-<p id="110123" class="block-content">
-Untuk menggunakan namespace dalam kode, lakukan seperti berikut,
-<com:TTextHighlighter CssClass="source block-content" id="code_110063">
-Prado::using('PathAlias.Dir1.Dir2.*');
-</com:TTextHighlighter>
-menambah direktori yang dirujuk oleh <tt>PathAlias.Dir1.Dir2</tt> ke dalam path include PHP agar kelas itu didefinisikan di bawah direktori itu dapat diturunkan tanpa prefiks namespace. Anda juga dapat menyertakan definisi kelas individual dengan
-<com:TTextHighlighter CssClass="source block-content" id="code_110064">
-Prado::using('PathAlias.Dir1.Dir2.MyClass');
-</com:TTextHighlighter>
-yang akan menyertakan file kelas jika <tt>MyClass</tt> tidak didefinisikan.
-</p>
-<p id="110124" class="block-content">
-Untuk lebih jelasnya mengenai mendefinisikan alias path, lihat seksi <a href="?page=Configurations.AppConfig">konfigurasi aplikasi</a>.
-</p>
-
-<h2 id="705">Penurunan Komponen</h2>
-<p id="110125" class="block-content">
-Penurunan komponen berarti membuat turunan dari kelas komponen. Ada dua tipe penurunan komponen: penurunan statis dan dinamis. Komponen yang dibuat masing-masing disebut komponen statis dan komponen dinamis.
-</p>
-
-<h3 id="707">Penurunan Komponen Dinamis</h3>
-<p id="110126" class="block-content">
-Penurunan komponen dinamis berarti membuat turunan komponen dalam kode PHP. Itu sama dengan apa yang umum dirujuk pembuatan obyek dalam PHP. Sebuah komponen dapat dibuat secara dinamis menggunakan salah satu dari dua metode berikut dalam PHP,
-<com:TTextHighlighter CssClass="source block-content" id="code_110065">
-$component = new ComponentClassName;
-$component = Prado::createComponent('ComponentType');
-</com:TTextHighlighter>
-di mana <tt>ComponentType</tt> merujuk ke nama kelas atau nama tipe dalam format namespace (contoh <tt>System.Web.UI.TControl</tt>). Pendekatan kedua diperkenalkan guna mengimbangi kekurangan dukungan namespace dalam PHP.
-</p>
-
-<h3 id="708">Penurunan Komponen Statis</h3>
-<p id="110127" class="block-content">
-Penurunan komponen statis adalah mengenai pembuatan komponen melalui <a href="?page=Configurations.Overview">konfigurasi</a>. Pekerjaan pembuatan sebenarnya dilakukan oleh kerangka kerja PRADO. Sebagai contoh, dalam <a href="?page=Configurations.AppConfig">konfigurasi aplikasi</a>, seseorang dapat mengkonfigurasi sebuah modul untuk diambil ketika aplikasi dijalankan. Selanjutnya modul adalah komponen statis yang dibuat oleh kerangka kerja. Penurunan komponen statis lebih umum digunakan dalam <a href="?page=Configurations.Templates1">template</a>. Setiap tag komponen dalam sebuah template menetapkan komponen yang akan dibuat secara otomatis oleh kerangka kerja ketika template diambil. Sebagai contoh, dalam sebuah template halaman, tag berikut akan membawa ke pembuatan komponen <tt>TButton</tt> pada halaman,
-<com:TTextHighlighter Language="prado" CssClass="source block-content" id="code_110066">
-<com:TButton Text="Register" />
-</com:TTextHighlighter>
-</p>
-
-</com:TContent>
diff --git a/demos/quickstart/protected/pages/Fundamentals/id/Controls.page b/demos/quickstart/protected/pages/Fundamentals/id/Controls.page deleted file mode 100755 index 47222b3d..00000000 --- a/demos/quickstart/protected/pages/Fundamentals/id/Controls.page +++ /dev/null @@ -1,51 +0,0 @@ -<com:TContent ID="body" >
-<h1 id="801">Kontrol</h1>
-<p id="120128" class="block-content">
-Kontrol adalah turunan dari kelas <tt>TControl</tt> atau asal sub kelasnya. Kontrol adalah komponen yang didefinisikan sebagai tambahan pada antarmuka pengguna. Kelas basis <tt>TControl</tt> mendefinisikan hubungan leluhur-anak diantara kontrol yang mencerminkan pengurungan hubungan diantara elemen antarmuka pengguna.
-</p>
-
-<h2 id="802">Susunan Kontrol</h2>
-<p id="120129" class="block-content">
-Kontrol dikaitkan satu sama lain melalui hubungan leluhur-anak. Setiap kontrol leluhur dapat memiliki beberapa kontrol anak. Kontrol leluhur bertugas terhadap transisi keadaan dari kontrol anaknya. Hasil dari kontrol anak biasanya dipakai untuk mengatur penampilan kontrol leluhur. Hubungan leluhur-anak membawa kontrol bersama ke dalam susunan kontrol. Halaman ada di akar dari susunan yang penampilannya di berikan kepada pengguna-akhir.
-</p>
-<p id="120130" class="block-content">
-Hubungan leluhur-anak biasanya dilakukan oleh kerangka kerja melalui <a href="?page=Configurations.Templates1">template</a>. Dalam kode, Anda dapat menetapkan kontrol secara eksplisit sebagai anak dari yang lainnya menggunakan salah satu metode berikut,
-<com:TTextHighlighter CssClass="source block-content" id="code_120067">
-$parent->Controls->add($child);
-$parent->Controls[]=$child;
-</com:TTextHighlighter>
-di mana properti <tt>Controls</tt> merujuk ke koleksi kontrol anak dari leluhur.
-</p>
-
-<h2 id="803">Identifikasi Kontrol</h2>
-<p id="120131" class="block-content">
-Setiap kontrol mempunyai properti <tt>ID</tt> yang dapat secara unik dapat mengidentifikasi dirinya sendiri diantara kontrol keluarganya. Sebagai tambahan, setiap kontrol mempunyai <tt>UniqueID</tt> dan <tt>ClientID</tt> yang dapat dipakai untuk mengidentifikasi kontrol secara global dalam susunan di mana kontrol berada. <tt>UniqueID</tt> dan <tt>ClientID</tt> sangat mirip. Pembentuk dipakai oleh kerangka kerja guna menentukan lokasi dari kontrol terkait dalam susunan, sementara yang kedua sebagian besar dipakai pada sisi klien sebagai ID tag HTML. Secara umum, Anda tidak boleh bergantung pada bentuk eksplisit <tt>UniqueID</tt> atau <tt>ClientID</tt>.
-</p>
-
-<h2 id="804">Wadah Penamaan</h2>
-<p id="120132" class="block-content">
-Setiap kontrol mempunyai wadah penamaan yang mana kontrol membuat ruang nama (namespace) unik untuk membedakan antara kontrol dengan <tt>ID</tt> yang sama. Sebagai contoh, kontrol <tt>TRepeater</tt> membuat multipel item masing-masing mempunyai kontrol anak dengan <tt>ID</tt> yang sama. Untuk membedakan kontrol anak ini, setiap item bertindak sebagai wadah penamaan. Oleh karena itu, kontrol anak dapat diidentifikasi secara unik menggunakan wadah penamaan <tt>ID</tt> bersama dengan <tt>ID</tt>-nya sendiri. Seperti yang mungkin sudah Anda mengerti, <tt>UniqueID</tt> dan <tt>ClientID</tt> bergantung pada wadah penamaan.
-</p>
-<p id="120133" class="block-content">
-Kontrol dapat bertindak sebagai wadah penamaan jika ia menerapkan antarmuka <tt>INamingContainer</tt>.
-</p>
-
-<h2 id="805">ViewState dan ControlState</h2>
-<p id="120134" class="block-content">
-HTTP adalah protokol tidak berkondisi, berarti ia tidak menyediakan fungsionalitas untuk mendukung interaksi berlanjut antara pengguna dan server. Setiap permintaan dianggap sebagai diskrit dan berdiri sendiri dari yang lainnya. Aplikasi Web, sering perlu untuk mengetahui apa yang telah dilakukan pengguna dalam permintaan sebelumnya. Selanjutnya orang memperkenalkan sesi guna membantu mengingat informasi kondisi seperti itu.
-</p>
-<p id="120135" class="block-content">
-PRADO meminjam konsep viewstate dan controlstate dari Microsoft ASP.NET guna menyediakan tambahan mekanisme pemrograman berkondisi. Penyimpanan nilai dalam viewstate atau controlstate mungkin tersedia untuk permintaan berikutnya jika permintaan baru dari submisi (disebut postback) ke halamanyang sama oleh pengguna yang sama. Perbedaan antara viewstate dan controlstate adalah bahwa pembentuk dapat dimatikan saat yang kemudian tidak bisa.
-</p>
-<p id="120136" class="block-content">
-Viewstate dan controlstate diterapkan dalam <tt>TControl</tt>. Biasanya dipakai untuk mendefinisikan berbagai properti kontrol. Untuk menyimpan dan mengambil nilai dari viewstate atau controlstate, gunakan metode berikut,
-<com:TTextHighlighter CssClass="source block-content" id="code_120068">
-$this->getViewState('Name',$defaultValue);
-$this->setViewState('Name',$value,$defaultValue);
-$this->getControlState('Name',$defaultValue);
-$this->setControlState('Name',$value,$defaultValue);
-</com:TTextHighlighter>
-di mana <tt>$this</tt> merujuk ke turunan kontrol, <tt>Name</tt> merujuk ke kunci yang mengidentifikasi nilai pasti, <tt>$defaultValue</tt> adalah opsional. Ketika mengambil nilai dari viewstate atau controlstate, jika kunci terkait tidak ada, nilai standar akan diberikan.
-</p>
-
-</com:TContent>
diff --git a/demos/quickstart/protected/pages/Fundamentals/id/Hangman.page b/demos/quickstart/protected/pages/Fundamentals/id/Hangman.page deleted file mode 100755 index 44a8887e..00000000 --- a/demos/quickstart/protected/pages/Fundamentals/id/Hangman.page +++ /dev/null @@ -1,14 +0,0 @@ -<com:TContent ID="body" >
-
-<h1 id="1301">Contoh: Permainan Hangman</h1>
-<p id="60043" class="block-content">
-Setelah melihat aplikasi "Hello World", sekarang kita membuat aplikasi yang lebih rumit disebut "Permainan Hangman". Dalam permainan ini, pemain diminta untuk menebak kata, satu huruf setiap waktu. Jika dia menebak huruf dengan benar, huruf akan ditampilkan dalam kata. Pemain dapat melanjutkan untuk menebak selama angka kesalahannya dalam batas yang sudah ditetapkan. Pemain memenangkan permainan jika menemukan kata dalam batas kesalahan, atau dia kalah.
-</p>
-<p id="60044" class="block-content">
-Untuk memfasilitasi pembangunan permainan ini, kami perlihatkan diagram transisi keadaan dari proses permainan sebagai berikut,
-<br /><br />
-Untuk dilanjutkan...
-</p>
-<com:RunBar PagePath="Fundamentals.Samples.Hangman.Home" />
-
-</com:TContent>
diff --git a/demos/quickstart/protected/pages/Fundamentals/id/Modules.page b/demos/quickstart/protected/pages/Fundamentals/id/Modules.page deleted file mode 100755 index f484fece..00000000 --- a/demos/quickstart/protected/pages/Fundamentals/id/Modules.page +++ /dev/null @@ -1,50 +0,0 @@ -<com:TContent ID="body" >
-
-<h1 id="1001">Modul</h1>
-<p id="140141" class="block-content">
-Modul adalah turunan dari kelas yang menerapkan antarmuka <tt>IModule</tt>. Umumnya sebuah modul didesain untuk fungsionalitas tertentu yang dapat disertakan ke dalam aplikasi PRADO dan berbagi dengan semua komponen dalam aplikasi.
-</p>
-<p id="140142" class="block-content">
-PRADO menggunakan konfigurasi untuk menetapkan apakah mengambil sebuah modul, mengambil modul jenis apa, dan bagaimana untuk menginisialisasi modul yang diambilnya. Para pengembang dapat mengganti modul inti dengan implementasinya sendiri melalui konfigurasi aplikasi, atau mereka dapat menulis modul baru guna menyediakan fungsionalitas tambahan. Sebagai contoh, modul dapat dikembangkan untuk menyediakan logika database umum pada satu atau beberapa halaman. Untuk lebih jelasnya, silahkan lihat <a href="?page=Configurations.Overview">konfigurasi</a>.
-</p>
-<p id="140143" class="block-content">
-Ada tiga modul inti yang diambil secara standar kapan saja aplikasi dijalankan. Ketiganya adalah <a href="#request">modul permintaan</a>, <a href="#response">modul respon</a>, dan <a href="#error">modul pengendali kesalahan</a>. Sebagai tambahan, <a href="#session">modul sesi</a> diambil saat ia digunakan dalam aplikasi. PRADO menyediakan implementasi standar untuk semua modul ini. <a href="#custom">Modul kustom</a> dapat dikonfigurasi atau dikembangkan guna mengganti atau menambah modul inti ini.
-</p>
-
-<a name="request"></a>
-<h2 id="1002">Modul Permintaan</h2>
-<p id="140144" class="block-content">
-Modul permintaan menyediakan penyimpanan dan skema akses untuk permintaan pengguna yang dikirim melalui HTTP. Permintaan pengguna datang dari beberapa sumber, termasuk URL, data post, data sesi, data cookie, dll. Data ini semuanya dapat diakses melalui modul permintaan. Standarnya PRADO menggunakan <tt>THttpRequest</tt> sebagai modul permintaan. Modul permintaan dapat diakses melalui properti <tt>Request</tt> dari aplikasi dan kontrol.
-</p>
-
-<a name="response"></a>
-<h2 id="1003">Modul Respon</h2>
-<p id="140145" class="block-content">
-Modul respon menerapkan mekanisme untuk mengirimkan output ke pengguna klien. Modul respon dapat dikonfigurasi guna mengontrol bagaimana output di-cache pada sisi klien. Standarnya PRADO menggunakan <tt>THttpResponse</tt> sebagai modul respon. Modul respon dapat diakses melalui properti <tt>Response</tt> dari aplikasi dan kontrol.
-</p>
-
-<a name="session"></a>
-<h2 id="1004">Modul Sesi</h2>
-<p id="140146" class="block-content">
-Modul sesi melapisi fungsionalitas terkait dengan penanganan sesi pengguna. Modul sesi secara otomatis diambil saat aplikasi menggunakan sesi. Standarnya PRADO menggunakan <tt>THttpSession</tt> sebagai modul sesi, yang merupakan pelapis sederhana dari fungsi sesi yang disediakan oleh PHP. Modul sesi dapat diakses melalui properti <tt>Session</tt> dari aplikasi dan kontrol.
-</p>
-
-<a name="error"></a>
-<h2 id="1005">Modul Pengendali Kesalahan</h2>
-<p id="140147" class="block-content">
-Modul pengendali kesalahan dipakai untuk menangkap dan memproses semua kondisi kesalahan dalam sebuah aplikasi. PRADO menggunakan <tt>TErrorHandler</tt> sebagai modul pengendali kesalahan. Ia menangkap semua peringatan PHP, perhatian dan eksepsi, dan ditampilkan dalam bentuk yang tepat bagi pengguna-akhir. Modul pengendali kesalahan dapat diakses melalui properti <tt>ErrorHandler</tt> dari turunan aplikasi.
-</p>
-
-<a name="custom"></a>
-<h2 id="1006">Modul Kustom</h2>
-<p id="140148" class="block-content">
-PRADO dirilis dengan beberapa modul lebih disamping yang inti. Ini termasuk modul cache (<tt>TSqliteCache</tt> dan <tt>TMemCache</tt>), modul manajemen pengguna (<tt>TUserManager</tt>), modul otentikasi dan otorisasi (<tt>TAuthManager</tt>), dll.
-</p>
-<p id="140149" class="block-content">
-Ketika <tt>TPageService</tt> diminta, ia juga mengambil modul tertentu untuk layanan halaman, termasuk manajer asset (<tt>TAssetManager</tt>), manajer template (<tt>TTemplateManager</tt>), manajer tema/skin (<tt>TThemeManager</tt>).
-</p>
-<p id="140150" class="block-content">
-Modul kustom dan modul inti semuanya dapat dikonfigurasi melalui <a href="?page=Configurations.Overview">konfigurasi</a>.
-</p>
-
-</com:TContent>
diff --git a/demos/quickstart/protected/pages/Fundamentals/id/Pages.page b/demos/quickstart/protected/pages/Fundamentals/id/Pages.page deleted file mode 100755 index 496f9530..00000000 --- a/demos/quickstart/protected/pages/Fundamentals/id/Pages.page +++ /dev/null @@ -1,23 +0,0 @@ -<com:TContent ID="body" >
-
-<h1 id="901">Halaman</h1>
-<p id="130137" class="block-content">
-Halaman adalah kontrol teratas yang tidak mempunyai leluhur. Presentasi halaman ditampilkan secara langsung ke pengguna-akhir. Pengguna mengakses halaman dengan mengirimkan permintaan layanan halaman.
-</p>
-<p id="130138" class="block-content">
-Setiap halaman harus mempunyai file <a href="?page=Configurations.Templates1">template</a>. Akhiran nama file harus <tt>.page</tt>. Nama file (tanpa akhiran) adalah nama halaman. PRADO akan mencoba mencari file kelas halaman di bawah direktori yang berisi file template halaman. File kelas halaman tersebut harus mempunyai nama file yang sama (diakhiri dengan <tt>.php</tt>) seperti file template. Jika file kelas tidak ditemukan, halaman akan mengambil kelas <tt>TPage</tt>.
-</p>
-
-<h2 id="902">PostBack</h2>
-<p id="130139" class="block-content">
-Submisi formulir disebut <i>postback</i> jika submisi dibuat untuk halaman yang berisi formulir. Postback dapat dianggap sebagai kondisi di sisi klien, dimunculkan oleh pengguna. PRADO akan mencoba mengidentifikasi kontrol mana pada sisi server untuk postback kondisi. Jika seseorang menentukan misalnya, <tt>TButton</tt>, kami menyebutnya pengirim event postback yang akan menterjemahkan event postback ke dalam beberapa event sisi-server tertentu (contoh event <tt>OnClick</tt> dan <tt>OnCommand</tt> untuk <tt>TButton</tt>).
-
-</p>
-
-<h2 id="903">Masa Hidup Halaman</h2>
-<p id="130140" class="block-content">
-Mengerti masa hidup halaman adalah penting untuk menguasai pemrograman PRADO. Masa hidup halaman merujuk ke transisi kondisi dari sebuah halaman saat melayani halaman ini bagi pengguna-akhir. Ini dapat digambarkan dalam grafik kondisi berikut,
-<img src="<%~lifecycles.gif %>" />
-</p>
-
-</com:TContent>
diff --git a/demos/quickstart/protected/pages/Fundamentals/id/Services.page b/demos/quickstart/protected/pages/Fundamentals/id/Services.page deleted file mode 100755 index 8834f214..00000000 --- a/demos/quickstart/protected/pages/Fundamentals/id/Services.page +++ /dev/null @@ -1,34 +0,0 @@ -<com:TContent ID="body" >
-
-<h1 id="1101">Layanan</h1>
-<p id="150151" class="block-content">
-Layanan adalah turunan dari kelas yang menerapkan antarmuka <tt>IService</tt>. Setiap jenis layanan memproses tipe permintaan tertentu pengguna. Sebagai contoh, respon layanan halaman terhadap permintaan pengguna untuk halaman PRADO.
-</p>
-<p id="150152" class="block-content">
-Sebuah layanan diidentifikasi secara unik dengan properti <tt>ID</tt>-nya. Standarnya ketika <tt>THttpRequest</tt> dipakai sebagai <a href="?page=Fundamentals.Modules#request">modul permintaan</a>, nama variabel GET digunakan untuk mengidentifikasi layanan mana yang sedang diminta oleh pengguna. Jika nama variabel GET sama dengan beberapa <tt>ID</tt> layanan, permintaan dianggap untuk layanan itu, dan nilai dari variabel GET dikirimkan sebagai parameter layanan. Untuk layanan halaman, nama variabel GET harus <tt>page</tt>. Sebagai contoh, URKL berikut meminta halaman <tt>Fundamentals.Services</tt>,
-<com:TTextHighlighter Language="none" CssClass="source block-content" id="code_150069">
-http://hostname/index.php?page=Fundamentals.Services
-</com:TTextHighlighter>
-</p>
-<p id="150153" class="block-content">
-Para pengembang dapat menerapkan layanan tambahan untuk aplikasinya. Untuk menjadikan layanan agar tersedia, konfigurasi itu dalam <a href="?page=Configurations.AppConfig">konfigurasi aplikasi</a>.
-</p>
-
-<h2 id="1102">Layanan Halaman</h2>
-<p id="150154" class="block-content">
-PRADO menerapkan <tt>TPageService</tt> untuk melayani permintaan halaman pengguna. Halam disimpan di bawah direktori yang ditetapkan oleh properti <tt>BasePath</tt> dari layanan halaman. Properti standarnya ke direktori <tt>pages</tt> di bawah path basis aplikasi. Anda boleh mengubah standar ini dengan mengkonfigurasi layanan dalam konfigurasi aplikasi.
-</p>
-<p id="150155" class="block-content">
-Halaman disusun ke dalam direktori di bawah <tt>BasePath</tt>. Dalam setiap direktori, di sana ada file konfigurasi bernama <tt>config.xml</tt>, yang berisi konfigurasi yang hanya efektif ketika halaman di bawah direktori atau sub direktori itu diminta. Untuk lebih jelasnya, lihat seksi <a href="?page=Configurations.PageConfig">konfigurasi halaman</a>.
-</p>
-<p id="150156" class="block-content">
-Parameter layanan untuk layanan halaman merujuk pada halaman yang sedang diminta. Parameter seperti <tt>Fundamentals.Services</tt> merujuk pada halaman <tt>Services</tt> di bawah direktori <tt><BasePath>/Fundamentals</tt>. Jika parameter tersebut tidak ada dalam permintaan, dianggap sebagai halaman standar bernama <tt>Home</tt>. Menggunakan <tt>THttpRequest</tt> sebagai modul permintaan (default), URL berikut masing-masing akan meminta halaman <tt>Home</tt>, <tt>About</tt> dan <tt>Register</tt>,
-<com:TTextHighlighter Language="none" CssClass="source block-content" id="code_150070">
-http://hostname/index.php
-http://hostname/index.php?page=About
-http://hostname/index.php?page=Users.Register
-</com:TTextHighlighter>
-di mana contoh pertama mengambiil keuntungan bahwa layanan halaman adalah layanan standar dan <tt>Home</tt> adalah halaman default.
-</p>
-
-</com:TContent>
diff --git a/demos/quickstart/protected/pages/Fundamentals/id/applifecycles.gif b/demos/quickstart/protected/pages/Fundamentals/id/applifecycles.gif Binary files differdeleted file mode 100755 index d5300aa6..00000000 --- a/demos/quickstart/protected/pages/Fundamentals/id/applifecycles.gif +++ /dev/null diff --git a/demos/quickstart/protected/pages/Fundamentals/id/applifecycles.vsd b/demos/quickstart/protected/pages/Fundamentals/id/applifecycles.vsd Binary files differdeleted file mode 100755 index 56f6602d..00000000 --- a/demos/quickstart/protected/pages/Fundamentals/id/applifecycles.vsd +++ /dev/null diff --git a/demos/quickstart/protected/pages/Fundamentals/id/classtree.gif b/demos/quickstart/protected/pages/Fundamentals/id/classtree.gif Binary files differdeleted file mode 100755 index b1fbf0d6..00000000 --- a/demos/quickstart/protected/pages/Fundamentals/id/classtree.gif +++ /dev/null diff --git a/demos/quickstart/protected/pages/Fundamentals/id/classtree.vsd b/demos/quickstart/protected/pages/Fundamentals/id/classtree.vsd Binary files differdeleted file mode 100755 index c000d32f..00000000 --- a/demos/quickstart/protected/pages/Fundamentals/id/classtree.vsd +++ /dev/null diff --git a/demos/quickstart/protected/pages/Fundamentals/id/directory.gif b/demos/quickstart/protected/pages/Fundamentals/id/directory.gif Binary files differdeleted file mode 100755 index c7d5086d..00000000 --- a/demos/quickstart/protected/pages/Fundamentals/id/directory.gif +++ /dev/null diff --git a/demos/quickstart/protected/pages/Fundamentals/id/lifecycles.gif b/demos/quickstart/protected/pages/Fundamentals/id/lifecycles.gif Binary files differdeleted file mode 100755 index 5edaff5f..00000000 --- a/demos/quickstart/protected/pages/Fundamentals/id/lifecycles.gif +++ /dev/null diff --git a/demos/quickstart/protected/pages/Fundamentals/id/lifecycles.vsd b/demos/quickstart/protected/pages/Fundamentals/id/lifecycles.vsd Binary files differdeleted file mode 100755 index 368d0ba7..00000000 --- a/demos/quickstart/protected/pages/Fundamentals/id/lifecycles.vsd +++ /dev/null diff --git a/demos/quickstart/protected/pages/Fundamentals/id/objectdiagram.gif b/demos/quickstart/protected/pages/Fundamentals/id/objectdiagram.gif Binary files differdeleted file mode 100755 index 7910469c..00000000 --- a/demos/quickstart/protected/pages/Fundamentals/id/objectdiagram.gif +++ /dev/null diff --git a/demos/quickstart/protected/pages/Fundamentals/id/objectdiagram.vsd b/demos/quickstart/protected/pages/Fundamentals/id/objectdiagram.vsd Binary files differdeleted file mode 100755 index b2457220..00000000 --- a/demos/quickstart/protected/pages/Fundamentals/id/objectdiagram.vsd +++ /dev/null diff --git a/demos/quickstart/protected/pages/Fundamentals/ja/Applications.page b/demos/quickstart/protected/pages/Fundamentals/ja/Applications.page deleted file mode 100755 index 8e0b9e9a..00000000 --- a/demos/quickstart/protected/pages/Fundamentals/ja/Applications.page +++ /dev/null @@ -1,55 +0,0 @@ -<com:TContent ID="body" >
-
-<h1 id="1201">Applications</h1>
-<p id="160157" class="block-content">
-An application is an instance of <tt>TApplication</tt> or its derived class. It manages modules that provide different functionalities and are loaded when needed. It provides services to end-users. It is the central place to store various parameters used in an application. In a PRADO application, the application instance is the only object that is globally accessible via <tt>Prado::getApplication()</tt> function call.
-</p>
-<p id="160158" class="block-content">
-Applications are configured via <a href="?page=Configurations.AppConfig">application configurations</a>. They are usually created in entry scripts like the following,
-<com:TTextHighlighter CssClass="source block-content" id="code_160071">
-require_once('/path/to/prado.php');
-$application = new TApplication;
-$application->run();
-</com:TTextHighlighter>
-where the method <tt>run()</tt> starts the application to handle user requests.
-</p>
-
-<h2 id="1202">Directory Organization</h2>
-<p id="160159" class="block-content">
-A minimal PRADO application contains two files: an entry file and a page template file. They must be organized as follows,
-<img src="<%~directory.gif%>" class="figure"/>
-</p>
-<ul id="u2" class="block-content">
-<li><tt>wwwroot</tt> - Web document root or sub-directory.</li>
-<li><tt>index.php</tt> - entry script of the PRADO application.</li>
-<li><tt>assets</tt> - directory storing published private files. See <a href="?page=Advanced.Assets">assets</a> section.</li>
-<li><tt>protected</tt> - application base path storing application data and private script files. This directory should be configured inaccessible to Web-inaccessible, or it may be located outside of Web directories.</li>
-<li><tt>runtime</tt> - application runtime storage path. This directory is used by PRADO to store application runtime information, such as application state, cached data, etc.</li>
-<li><tt>pages</tt> - base path storing all PRADO pages. See <a href="?page=Fundamentals.Services">services</a> section.</li>
-<li><tt>Home.page</tt> - default page returned when users do not explicitly specify the page requested. This is a page template file. The file name without suffix is the page name. The page class is <tt>TPage</tt>. If there is also a class file <tt>Home.php</tt>, the page class becomes <tt>Home</tt>.</li>
-</ul>
-
-<p id="160160" class="block-content">
-A product PRADO application usually needs more files. It may include an application configuration file named <tt>application.xml</tt> under the application base path <tt>protected</tt>. The pages may be organized in directories, some of which may contain page configuration files named <tt>config.xml</tt>. Fore more details, please see <a href="?page=Configurations.Overview">configurations</a> section.
-</p>
-
-<h2 id="1203">Application Deployment</h2>
-<p id="160161" class="block-content">
-Deploying a PRADO application mainly involves copying directories. For example, to deploy the above minimal application to another server, follow the following steps,
-</p>
-<ol>
-<li>Copy the content under <tt>wwwroot</tt> to a Web-accessible directory on the new server.</li>
-<li>Modify the entry script file <tt>index.php</tt> so that it includes correctly the <tt>prado.php</tt> file.</li>
-<li>Remove all content under <tt>assets</tt> and <tt>runtime</tt> directories and make sure both directories are writable by the Web server process.</li>
-</ol>
-
-<h2 id="1204">Application Lifecycles</h2>
-<p id="160162" class="block-content">
-Like page lifecycles, an application also has lifecycles. Application modules can register for the lifecycle events. When the application reaches a particular lifecycle and raises the corresponding event, the registered module methods are invoked automatically. Modules included in the PRADO release, such as <tt>TAuthManager</tt>, are using this way to accomplish their goals.
-</p>
-<p id="160163" class="block-content">
-The application lifecycles can be depicted as follows,
-</p>
-<img src="<%~applifecycles.gif%>" />
-
-</com:TContent>
diff --git a/demos/quickstart/protected/pages/Fundamentals/ja/Architecture.page b/demos/quickstart/protected/pages/Fundamentals/ja/Architecture.page deleted file mode 100755 index 7d828803..00000000 --- a/demos/quickstart/protected/pages/Fundamentals/ja/Architecture.page +++ /dev/null @@ -1,15 +0,0 @@ -<com:TContent ID="body" >
-<h1 id="601">アーキテクチャ</h1>
-
-<p id="100111" class="block-content">
-PRADO は主にプレゼンテーションを操作するためのフレームワークです。(プレゼンテーション操作のみで制限されるわけではありません)<br />
-このフレームワークはウェブプログラミングに集中するためのものであり、開発者がより生産性を上げられるようにコンポーネントベース、イベントドリブンなプログラミングが可能なつくりになっています。<br />
-以下のクラスツリーは PRADO によって提供されている主要なクラスについて書かれたものです。
-</p>
-<img src="<%~classtree.gif%>" />
-
-<p id="100112" class="block-content">
-PRADO アプリケーションがページ要求処理を行う際、以下のオブジェクトダイアグラムで動作します。
-</p>
-<img src="<%~objectdiagram.gif%>" />
-</com:TContent>
diff --git a/demos/quickstart/protected/pages/Fundamentals/ja/Components.page b/demos/quickstart/protected/pages/Fundamentals/ja/Components.page deleted file mode 100755 index 5662b53b..00000000 --- a/demos/quickstart/protected/pages/Fundamentals/ja/Components.page +++ /dev/null @@ -1,128 +0,0 @@ -<com:TContent ID="body" >
-<h1 id="701">Components</h1>
-<p id="110113" class="block-content">
-A component is an instance of <tt>TComponent</tt> or its child class. The base class <tt>TComponent</tt> implements the mechanism of component properties and events.
-</p>
-
-<h2 id="702">Component Properties</h2>
-<p id="110114" class="block-content">
-A component property can be viewed as a public variable describing a specific aspect of the component, such as the background color, the font size, etc. A property is defined by the existence of a getter and/or a setter method in the component class. For example, in <tt>TControl</tt>, we define its <tt>ID</tt> property using the following getter and setter methods,
-<com:TTextHighlighter CssClass="source block-content" id="code_110056">
-class TControl extends TComponent {
- public function getID() {
- ...
- }
- public function setID($value) {
- ...
- }
-}
-</com:TTextHighlighter>
-</p>
-<p id="110115" class="block-content">
-To get or set the <tt>ID</tt> property, do as follows, just like working with a variable,
-<com:TTextHighlighter CssClass="source block-content" id="code_110057">
-$id = $component->ID;
-$component->ID = $id;
-</com:TTextHighlighter>
-This is equivalent to the following,
-<com:TTextHighlighter CssClass="source block-content" id="code_110058">
-$id = $component->getID();
-$component->setID( $id );
-</com:TTextHighlighter>
-</p>
-<p id="110116" class="block-content">
-A property is read-only if it has a getter method but no setter method. Since PHP method names are case-insensitive, property names are also case-insensitive. A component class inherits all its ancestor classes' properties.
-</p>
-
-<h3 id="706">Subproperties</h3>
-<p id="110117" class="block-content">
-A subproperty is a property of some object-typed property. For example, <tt>TWebControl</tt> has a <tt>Font</tt> property which is of <tt>TFont</tt> type. Then the <tt>Name</tt> property of <tt>Font</tt> is referred to as a subproperty (with respect to <tt>TWebControl</tt>).
-</p>
-<p id="110118" class="block-content">
-To get or set the <tt>Name</tt> subproperty, use the following method,
-<com:TTextHighlighter CssClass="source block-content" id="code_110059">
-$name = $component->getSubProperty('Font.Name');
-$component->setSubProperty('Font.Name', $name);
-</com:TTextHighlighter>
-This is equivalent to the following,
-<com:TTextHighlighter CssClass="source block-content" id="code_110060">
-$name = $component->getFont()->getName();
-$component->getFont()->setName( $name );
-</com:TTextHighlighter>
-
-
-</p>
-
-<h2 id="703">Component Events</h2>
-<p id="110119" class="block-content">
-Component events are special properties that take method names as their values. Attaching (setting) a method to an event will hook up the method to the places at which the event is raised. Therefore, the behavior of a component can be modified in a way that may not be foreseen during the development of the component.
-</p>
-<p id="110120" class="block-content">
-A component event is defined by the existence of a method whose name starts with the word <tt>on</tt>. The event name is the method name and is thus case-insensitve. For example, in <tt>TButton</tt>, we have
-<com:TTextHighlighter CssClass="source block-content" id="code_110061">
-class TButton extends TWebControl {
- public function onClick( $param ) {
- ...
- }
-}
-</com:TTextHighlighter>
-This defines an event named <tt>OnClick</tt>, and a handler can be attached to the event using one of the following ways,
-<com:TTextHighlighter CssClass="source block-content" id="code_110062">
-$button->OnClick = $callback;
-$button->OnClick->add( $callback );
-$button->OnClick[] = $callback;
-$button->attachEventHandler( 'OnClick' , $callback );
-</com:TTextHighlighter>
-where <tt>$callback</tt> refers to a valid PHP callback (e.g. a function name, a class method <tt>array($object,'method')</tt>, etc.)
-</p>
-
-<h2 id="704">Namespaces</h2>
-<p id="110121" class="block-content">
-A namespace refers to a logical grouping of some class names so that they can be differentiated from other class names even if their names are the same. Since PHP does not support namespace intrinsically, you cannot create instances of two classes who have the same name but with different definitions. To differentiate from user defined classes, all PRADO classes are prefixed with a letter 'T' (meaning 'Type'). Users are advised not to name their classes like this. Instead, they may prefix their class names with any other letter(s).
-</p>
-<p id="110122" class="block-content">
-A namespace in PRADO is considered as a directory containing one or several class files. A class may be specified without ambiguity using such a namespace followed by the class name. Each namespace in PRADO is specified in the following format,
-<div class="source">
-PathAlias.Dir1.Dir2
-</div>
-where <tt>PathAlias</tt> is an alias of some directory, while <tt>Dir1</tt> and <tt>Dir2</tt> are subdirectories under that directory. A class named <tt>MyClass</tt> defined under <tt>Dir2</tt> may now be fully qualified as <tt>PathAlias.Dir1.Dir2.MyClass</tt>.
-</p>
-<p id="110123" class="block-content">
-To use a namespace in code, do as follows,
-<com:TTextHighlighter CssClass="source block-content" id="code_110063">
-Prado::using('PathAlias.Dir1.Dir2.*');
-</com:TTextHighlighter>
-which appends the directory referred to by <tt>PathAlias.Dir1.Dir2</tt> into PHP include path so that classes defined under that directory may be instantiated without the namespace prefix. You may also include an individual class definition by
-<com:TTextHighlighter CssClass="source block-content" id="code_110064">
-Prado::using('PathAlias.Dir1.Dir2.MyClass');
-</com:TTextHighlighter>
-which will include the class file if <tt>MyClass</tt> is not defined.
-</p>
-<p id="110124" class="block-content">
-For more details about defining path aliases, see <a href="?page=Configurations.AppConfig">application configuration</a> section.
-</p>
-
-<h2 id="705">Component Instantiation</h2>
-<p id="110125" class="block-content">
-Component instantiation means creating instances of component classes. There are two types of component instantation: static instantiation and dynamic instantiation. The created components are called static components and dynamic components, respectively.
-</p>
-
-<h3 id="707">Dynamic Component Instantiation</h3>
-<p id="110126" class="block-content">
-Dynamic component instantiation means creating component instances in PHP code. It is the same as the commonly referred object creation in PHP. A component can be dynamically created using one of the following two methods in PHP,
-<com:TTextHighlighter CssClass="source block-content" id="code_110065">
-$component = new ComponentClassName;
-$component = Prado::createComponent('ComponentType');
-</com:TTextHighlighter>
-where <tt>ComponentType</tt> refers to a class name or a type name in namespace format (e.g. <tt>System.Web.UI.TControl</tt>). The second approach is introduced to compensate for the lack of namespace support in PHP.
-</p>
-
-<h3 id="708">Static Component Instantiation</h3>
-<p id="110127" class="block-content">
-Static component instantiation is about creating components via <a href="?page=Configurations.Overview">configurations</a>. The actual creation work is done by the PRADO framework. For example, in an <a href="?page=Configurations.AppConfig">application configuration</a>, one can configure a module to be loaded when the application runs. The module is thus a static component created by the framework. Static component instantiation is more commonly used in <a href="?page=Configurations.Templates1">templates</a>. Every component tag in a template specifies a component that will be automatically created by the framework when the template is loaded. For example, in a page template, the following tag will lead to the creation of a <tt>TButton</tt> component on the page,
-<com:TTextHighlighter Language="prado" CssClass="source block-content" id="code_110066">
-<com:TButton Text="Register" />
-</com:TTextHighlighter>
-</p>
-
-</com:TContent>
diff --git a/demos/quickstart/protected/pages/Fundamentals/ja/Controls.page b/demos/quickstart/protected/pages/Fundamentals/ja/Controls.page deleted file mode 100755 index 75f6bedf..00000000 --- a/demos/quickstart/protected/pages/Fundamentals/ja/Controls.page +++ /dev/null @@ -1,51 +0,0 @@ -<com:TContent ID="body" >
-<h1 id="801">Controls</h1>
-<p id="120128" class="block-content">
-A control is an instance of class <tt>TControl</tt> or its subclass. A control is a component defined in addition with user interface. The base class <tt>TControl</tt> defines the parent-child relationship among controls which reflects the containment relationship among user interface elements.
-</p>
-
-<h2 id="802">Control Tree</h2>
-<p id="120129" class="block-content">
-Controls are related to each other via parent-child relationship. Each parent control can have one or several child controls. A parent control is in charge of the state transition of its child controls. The rendering result of the child controls are usually used to compose the parent control's presentation. The parent-child relationship brings together controls into a control tree. A page is at the root of the tree, whose presentation is returned to the end-users.
-</p>
-<p id="120130" class="block-content">
-The parent-child relationship is usually established by the framework via <a href="?page=Configurations.Templates1">templates</a>. In code, you may explicitly specify a control as a child of another using one of the following methods,
-<com:TTextHighlighter CssClass="source block-content" id="code_120067">
-$parent->Controls->add($child);
-$parent->Controls[]=$child;
-</com:TTextHighlighter>
-where the property <tt>Controls</tt> refers to the child control collection of the parent.
-</p>
-
-<h2 id="803">Control Identification</h2>
-<p id="120131" class="block-content">
-Each control has an <tt>ID</tt> property that can be uniquely identify itself among its sibling controls. In addition, each control has a <tt>UniqueID</tt> and a <tt>ClientID</tt> which can be used to globally identify the control in the tree that the control resides in. <tt>UniqueID</tt> and <tt>ClientID</tt> are very similar. The former is used by the framework to determine the location of the corresponding control in the tree, while the latter is mainly used on the client side as HTML tag IDs. In general, you should not rely on the explicit format of <tt>UniqueID</tt> or <tt>ClientID</tt>.
-</p>
-
-<h2 id="804">Naming Containers</h2>
-<p id="120132" class="block-content">
-Each control has a naming container which is a control creating a unique namespace for differentiating between controls with the same <tt>ID</tt>. For example, a <tt>TRepeater</tt> control creates multiple items each having child controls with the same <tt>ID</tt>s. To differentiate these child controls, each item serves as a naming container. Therefore, a child control may be uniquely identified using its naming container's <tt>ID</tt> together with its own <tt>ID</tt>. As you may already have understood, <tt>UniqueID</tt> and <tt>ClientID</tt> rely on the naming containers.
-</p>
-<p id="120133" class="block-content">
-A control can serve as a naming container if it implements the <tt>INamingContainer</tt> interface.
-</p>
-
-<h2 id="805">ViewState and ControlState</h2>
-<p id="120134" class="block-content">
-HTTP is a stateless protocol, meaning it does not provide functionality to support continuing interaction between a user and a server. Each request is considered as discrete and independent of each other. A Web application, however, often needs to know what a user has done in previous requests. People thus introduce sessions to help remember such state information.
-</p>
-<p id="120135" class="block-content">
-PRADO borrows the viewstate and controlstate concept from Microsoft ASP.NET to provides additional stateful programming mechanism. A value storing in viewstate or controlstate may be available to the next requests if the new requests are form submissions (called postback) to the same page by the same user. The difference between viewstate and controlstate is that the former can be disabled while the latter cannot.
-</p>
-<p id="120136" class="block-content">
-Viewstate and controlstate are implemented in <tt>TControl</tt>. They are commonly used to define various properties of controls. To save and retrieve values from viewstate or controlstate, use following methods,
-<com:TTextHighlighter CssClass="source block-content" id="code_120068">
-$this->getViewState('Name',$defaultValue);
-$this->setViewState('Name',$value,$defaultValue);
-$this->getControlState('Name',$defaultValue);
-$this->setControlState('Name',$value,$defaultValue);
-</com:TTextHighlighter>
-where <tt>$this</tt> refers to the control instance, <tt>Name</tt> refers to a key identifying the persistent value, <tt>$defaultValue</tt> is optional. When retrieving values from viewstate or controlstate, if the corresponding key does not exist, the default value will be returned.
-</p>
-
-</com:TContent>
diff --git a/demos/quickstart/protected/pages/Fundamentals/ja/Hangman.page b/demos/quickstart/protected/pages/Fundamentals/ja/Hangman.page deleted file mode 100755 index d1776b7c..00000000 --- a/demos/quickstart/protected/pages/Fundamentals/ja/Hangman.page +++ /dev/null @@ -1,14 +0,0 @@ -<com:TContent ID="body" >
-
-<h1 id="1301">Sample: Hangman Game</h1>
-<p id="60043" class="block-content">
-Having seen the simple "Hello World" application, we now build a more complex application called "Hangman Game". In this game, the player is asked to guess a word, a letter at a time. If he guesses a letter right, the letter will be shown in the word. The player can continue to guess as long as the number of his misses is within a prespecified bound. The player wins the game if he finds out the word within the miss bound, or he loses.
-</p>
-<p id="60044" class="block-content">
-To facilitate the building of this game, we show the state transition diagram of the gaming process in the following,
-<br /><br />
-To be continued...
-</p>
-<com:RunBar PagePath="Fundamentals.Samples.Hangman.Home" />
-
-</com:TContent>
diff --git a/demos/quickstart/protected/pages/Fundamentals/ja/Modules.page b/demos/quickstart/protected/pages/Fundamentals/ja/Modules.page deleted file mode 100755 index 37406976..00000000 --- a/demos/quickstart/protected/pages/Fundamentals/ja/Modules.page +++ /dev/null @@ -1,50 +0,0 @@ -<com:TContent ID="body" >
-
-<h1 id="1001">Modules</h1>
-<p id="140141" class="block-content">
-A module is an instance of a class implementing the <tt>IModule</tt> interface. A module is commonly designed to provide specific functionality that may be plugged into a PRADO application and shared by all components in the application.
-</p>
-<p id="140142" class="block-content">
-PRADO uses configurations to specify whether to load a module, load what kind of modules, and how to initialize the loaded modules. Developers may replace the core modules with their own implementations via application configuration, or they may write new modules to provide additional functionalities. For example, a module may be developed to provide common database logic for one or several pages. For more details, please see the <a href="?page=Configurations.Overview">configurations</a>.
-</p>
-<p id="140143" class="block-content">
-There are three core modules that are loaded by default whenever an application runs. They are <a href="#request">request module</a>, <a href="#response">response module</a>, and <a href="#error">error handler module</a>. In addition, <a href="#session">session module</a> is loaded when it is used in the application. PRADO provides default implementation for all these modules. <a href="#custom">Custom modules</a> may be configured or developed to override or supplement these core modules.
-</p>
-
-<a name="request"></a>
-<h2 id="1002">Request Module</h2>
-<p id="140144" class="block-content">
-Request module represents provides storage and access scheme for user request sent via HTTP. User request data comes from several sources, including URL, post data, session data, cookie data, etc. These data can all be accessed via the request module. By default, PRADO uses <tt>THttpRequest</tt> as request module. The request module can be accessed via the <tt>Request</tt> property of application and controls.
-</p>
-
-<a name="response"></a>
-<h2 id="1003">Response Module</h2>
-<p id="140145" class="block-content">
-Response module implements the mechanism for sending output to client users. Response module may be configured to control how output are cached on the client side. It may also be used to send cookies back to the client side. By default, PRADO uses <tt>THttpResponse</tt> as response module. The response module can be accessed via the <tt>Response</tt> property of application and controls.
-</p>
-
-<a name="session"></a>
-<h2 id="1004">Session Module</h2>
-<p id="140146" class="block-content">
-Session module encapsulates the functionalities related with user session handling. Session module is automatically loaded when an application uses session. By default, PRADO uses <tt>THttpSession</tt> as session module, which is a simple wrapper of the session functions provided by PHP. The session module can be accessed via the <tt>Session</tt> property of application and controls.
-</p>
-
-<a name="error"></a>
-<h2 id="1005">Error Handler Module</h2>
-<p id="140147" class="block-content">
-Error handler module is used to capture and process all error conditions in an application. PRADO uses <tt>TErrorHandler</tt> as error handler module. It captures all PHP warnings, notices and exceptions, and displays in an appropriate form to end-users. The error handler module can be accessed via the <tt>ErrorHandler</tt> property of the application instance.
-</p>
-
-<a name="custom"></a>
-<h2 id="1006">Custom Modules</h2>
-<p id="140148" class="block-content">
-PRADO is released with a few more modules besides the core ones. They include caching modules (<tt>TSqliteCache</tt> and <tt>TMemCache</tt>), user management module (<tt>TUserManager</tt>), authentication and authorization module (<tt>TAuthManager</tt>), etc.
-</p>
-<p id="140149" class="block-content">
-When <tt>TPageService</tt> is requested, it also loads modules specific for page service, including asset manager (<tt>TAssetManager</tt>), template manager (<tt>TTemplateManager</tt>), theme/skin manager (<tt>TThemeManager</tt>).
-</p>
-<p id="140150" class="block-content">
-Custom modules and core modules are all configurable via <a href="?page=Configurations.Overview">configurations</a>.
-</p>
-
-</com:TContent>
diff --git a/demos/quickstart/protected/pages/Fundamentals/ja/Pages.page b/demos/quickstart/protected/pages/Fundamentals/ja/Pages.page deleted file mode 100755 index 19900937..00000000 --- a/demos/quickstart/protected/pages/Fundamentals/ja/Pages.page +++ /dev/null @@ -1,23 +0,0 @@ -<com:TContent ID="body" >
-
-<h1 id="901">Pages</h1>
-<p id="130137" class="block-content">
-Pages are top-most controls that have no parent. The presentation of pages are directly displayed to end-users. Users access pages by sending page service requests.
-</p>
-<p id="130138" class="block-content">
-Each page must have a <a href="?page=Configurations.Templates1">template</a> file. The file name suffix must be <tt>.page</tt>. The file name (without suffix) is the page name. PRADO will try to locate a page class file under the directory containing the page template file. Such a page class file must have the same file name (suffixed with <tt>.php</tt>) as the template file. If the class file is not found, the page will take class <tt>TPage</tt>.
-</p>
-
-<h2 id="902">PostBack</h2>
-<p id="130139" class="block-content">
-A form submission is called <i>postback</i> if the submission is made to the page containing the form. Postback can be considered an event happened on the client side, raised by the user. PRADO will try to identify which control on the server side is responsible for a postback event. If one is determined, for example, a <tt>TButton</tt>, we call it the postback event sender which will translate the postback event into some specific server-side event (e.g. <tt>OnClick</tt> and <tt>OnCommand</tt> events for <tt>TButton</tt>).
-
-</p>
-
-<h2 id="903">Page Lifecycles</h2>
-<p id="130140" class="block-content">
-Understanding the page lifecycles is crucial to grasp PRADO programming. Page lifecycles refer to the state transitions of a page when serving this page to end-users. They can be depicted in the following statechart,
-<img src="<%~lifecycles.gif %>" />
-</p>
-
-</com:TContent>
diff --git a/demos/quickstart/protected/pages/Fundamentals/ja/Services.page b/demos/quickstart/protected/pages/Fundamentals/ja/Services.page deleted file mode 100755 index 5e5889df..00000000 --- a/demos/quickstart/protected/pages/Fundamentals/ja/Services.page +++ /dev/null @@ -1,34 +0,0 @@ -<com:TContent ID="body" >
-
-<h1 id="1101">Services</h1>
-<p id="150151" class="block-content">
-A service is an instance of a class implementing the <tt>IService</tt> interface. Each kind of service processes a specific type of user requests. For example, the page service responds to users' requests for PRADO pages.
-</p>
-<p id="150152" class="block-content">
-A service is uniquely identified by its <tt>ID</tt> property. By default when <tt>THttpRequest</tt> is used as the <a href="?page=Fundamentals.Modules#request">request module</a>, GET variable names are used to identify which service a user is requesting. If a GET variable name is equal to some service <tt>ID</tt>, the request is considered for that service, and the value of the GET variable is passed as the service parameter. For page service, the name of the GET variable must be <tt>page</tt>. For example, the following URL requests for the <tt>Fundamentals.Services</tt> page,
-<com:TTextHighlighter Language="none" CssClass="source block-content" id="code_150069">
-http://hostname/index.php?page=Fundamentals.Services
-</com:TTextHighlighter>
-</p>
-<p id="150153" class="block-content">
-Developers may implement additional services for their applications. To make a service available, configure it in <a href="?page=Configurations.AppConfig">application configurations</a>.
-</p>
-
-<h2 id="1102">Page Service</h2>
-<p id="150154" class="block-content">
-PRADO implements <tt>TPageService</tt> to process users' page requests. Pages are stored under a directory specified by the <tt>BasePath</tt> property of the page service. The property defaults to <tt>pages</tt> directory under the application base path. You may change this default by configuring the service in the application configuration.
-</p>
-<p id="150155" class="block-content">
-Pages may be organized into subdirectories under the <tt>BasePath</tt>. In each directory, there may be a page configuration file named <tt>config.xml</tt>, which contains configurations effective only when a page under that directory or a sub-directory is requested. For more details, see the <a href="?page=Configurations.PageConfig">page configuration</a> section.
-</p>
-<p id="150156" class="block-content">
-Service parameter for the page service refers to the page being requested. A parameter like <tt>Fundamentals.Services</tt> refers to the <tt>Services</tt> page under the <tt><BasePath>/Fundamentals</tt> directory. If such a parameter is absent in a request, a default page named <tt>Home</tt> is assumed. Using <tt>THttpRequest</tt> as the request module (default), the following URLs will request for <tt>Home</tt>, <tt>About</tt> and <tt>Register</tt> pages, respectively,
-<com:TTextHighlighter Language="none" CssClass="source block-content" id="code_150070">
-http://hostname/index.php
-http://hostname/index.php?page=About
-http://hostname/index.php?page=Users.Register
-</com:TTextHighlighter>
-where the first example takes advantage of the fact that the page service is the default service and <tt>Home</tt> is the default page.
-</p>
-
-</com:TContent>
diff --git a/demos/quickstart/protected/pages/Fundamentals/ja/applifecycles.gif b/demos/quickstart/protected/pages/Fundamentals/ja/applifecycles.gif Binary files differdeleted file mode 100755 index d5300aa6..00000000 --- a/demos/quickstart/protected/pages/Fundamentals/ja/applifecycles.gif +++ /dev/null diff --git a/demos/quickstart/protected/pages/Fundamentals/ja/classtree.gif b/demos/quickstart/protected/pages/Fundamentals/ja/classtree.gif Binary files differdeleted file mode 100755 index b1fbf0d6..00000000 --- a/demos/quickstart/protected/pages/Fundamentals/ja/classtree.gif +++ /dev/null diff --git a/demos/quickstart/protected/pages/Fundamentals/ja/directory.gif b/demos/quickstart/protected/pages/Fundamentals/ja/directory.gif Binary files differdeleted file mode 100755 index c7d5086d..00000000 --- a/demos/quickstart/protected/pages/Fundamentals/ja/directory.gif +++ /dev/null diff --git a/demos/quickstart/protected/pages/Fundamentals/ja/lifecycles.gif b/demos/quickstart/protected/pages/Fundamentals/ja/lifecycles.gif Binary files differdeleted file mode 100755 index 5edaff5f..00000000 --- a/demos/quickstart/protected/pages/Fundamentals/ja/lifecycles.gif +++ /dev/null diff --git a/demos/quickstart/protected/pages/Fundamentals/ja/objectdiagram.gif b/demos/quickstart/protected/pages/Fundamentals/ja/objectdiagram.gif Binary files differdeleted file mode 100755 index 7910469c..00000000 --- a/demos/quickstart/protected/pages/Fundamentals/ja/objectdiagram.gif +++ /dev/null diff --git a/demos/quickstart/protected/pages/Fundamentals/pl/Applications.page b/demos/quickstart/protected/pages/Fundamentals/pl/Applications.page deleted file mode 100755 index 23866005..00000000 --- a/demos/quickstart/protected/pages/Fundamentals/pl/Applications.page +++ /dev/null @@ -1,58 +0,0 @@ -<com:TContent ID="body" >
-
-<h1 id="1201">Aplikacja</h1>
-<p id="160157" class="block-content">
-Aplikacja jest instancją <tt>TApplication</tt> lub klasy po niej dziedziczącej. Zarządza modułami dostarczającymi różnorodne funkcjonalności i ładuje je w razie potrzeby. Dostarcza użytkownikowu końcowemu serwisy.
-Jest centralnym miejscem do przechowywania różnych parametrów używanych w aplikacji. W aplikacji PRADO instancja aplikacji jest jedynym globalnie dostepnym obiektem poprzez wywołania funkcji <tt>Prado::getApplication()</tt>.
-</p>
-<p id="160158" class="block-content">
-Aplikacje są konfigurowane poprzez <a href="?page=Configurations.AppConfig">konfigurację aplikacji</a>. Są zazwyczaj tworzone w skrypcie wejściowym w podobny do następującego sposób,
-<com:TTextHighlighter CssClass="source block-content" id="code_160071">
-require_once('/path/to/prado.php');
-$application = new TApplication;
-$application->run();
-</com:TTextHighlighter>
-gdzie metoda <tt>run()</tt> rozpoczyna działanie aplikacji obsługującej żądania użytkownika.
-</p>
-
-<h2 id="1202">Organizacja folderów</h2>
-<p id="160159" class="block-content">
-Minimalna aplikacja PRADO zawiera dwa pliki: plik wejściowy i plik szablonu. Muszą być one zorganizowane w następujący sposób.
-<img src="<%~directory.gif%>" class="figure"/>
-</p>
-<ul id="u2" class="block-content">
-<li><tt>wwwroot</tt> - główny katalog serwera WWW lub jeden z podkatalogów.</li>
-<li><tt>index.php</tt> - skrypt wejściowy aplikacji PRADO.</li>
-<li><tt>assets</tt> - katalog przechowujący opublikowane pliki prywatne. Zobacz sekcję <a href="?page=Advanced.Assets">assets</a>.</li>
-<li><tt>protected</tt> - podstawowa ścieżka aplikacji zawierająca jej dane oraz prywatne pliki skryptów. Ten folder powinien być niedostepny z zewnątrz lub powinien znajdować się poza strukturą serwera WWW.</li>
-<li><tt>runtime</tt> - application runtime storage path. Ten folder jest używany przez PRADO do przechowywania informacji o wykonywanej aplikacji, takich jak stan aplikacji, kedzowane dane, itd.</li>
-<li><tt>pages</tt> - podstawowa ścieżka przechowująca wszystkie strony PRADO. Zobacz sekcję <a href="?page=Fundamentals.Services">serwisy</a>.</li>
-<li><tt>Home.page</tt> - domyślna strona zwracana gdy użytkownik nie poda jawnie żadanej strony. Jest to plik szablonu strony. Nazwa pliku bez rozszerzenia jest nazwą strony. Klasą strony jest klasa <tt>TPage</tt>. Jeśli znajduje się tam również plik klasy <tt>Home.php</tt>, klasą strony staje się <tt>Home</tt>.</li>
-</ul>
-
-<p id="160160" class="block-content">
-Produktywna aplikacja PRADO zazwyczaj potrzebuje więcej plików. Może ona zawierać plik konfiguracji aplikacji <tt>application.xml</tt> w podstawej ścieżce aplikacji <tt>protected</tt>. Strony mogą być zorganizowane w foldery, część z nich może zawierać pliki konfiguracji strony <tt>config.xml</tt>. Aby dowiedzieć się wiecej, zajrzyć do sekcji <a href="?page=Configurations.Overview">konfiguracji</a>.
-</p>
-
-<h2 id="1203">Osadzanie aplikacji</h2>
-<p id="160161" class="block-content">
-Osadzanie aplikacji PRADO zazwyczaj wiąże się z kopiowaniem folderów. Na przykład, aby osadzić powyższą minimalną wersję aplikacji na innym serwerze należy wykonać następujące kroki.
-</p>
-<ol>
-<li>Skopiuj zawartość z <tt>wwwroot</tt> do dostępnego poprzez WWW foldera na nowym serwerze.</li>
-<li>Zmodyfikuj skrypt wejściowy <tt>index.php</tt> tak by prawidłowo inkludował plik <tt>prado.php</tt>.</li>
-<li>Usuń całą zawartość z folderów <tt>assets</tt> i <tt>runtime</tt> i upewnij się, że oba umożliwiają zapis procesom serwera WWW.</li>
-</ol>
-
-<h2 id="1204">Cykle życia aplikacji</h2>
-<p id="160162" class="block-content">
-Tak jak cykle życia strony tak aplikacja również posiada cykle życia. Moduły aplikacji mogą rejestrować zdarzenia dla cykli życia.
-Kiedy aplikacja znajduje się w konkretnym cyklu i wywołuje odpowiednie zdarzenie, zarejstrowana metoda modułu jest wywoływana automatycznie.
-Moduły załaczone w oficjalnym wydaniu PRADO, takie jak <tt>TAuthManager</tt>, używają tego sposobu aby wyknać swoje zadania.
-</p>
-<p id="160163" class="block-content">
-Cykle życia aplikacji mogą zostać przedstawione następująco:
-</p>
-<img src="<%~applifecycles.gif%>" />
-
-</com:TContent>
diff --git a/demos/quickstart/protected/pages/Fundamentals/pl/Architecture.page b/demos/quickstart/protected/pages/Fundamentals/pl/Architecture.page deleted file mode 100755 index db429253..00000000 --- a/demos/quickstart/protected/pages/Fundamentals/pl/Architecture.page +++ /dev/null @@ -1,15 +0,0 @@ -<com:TContent ID="body" >
-<h1 id="601">Architektura</h1>
-
-<p id="100111" class="block-content">
-Prado jest przede wszystkim frameworkiem służącym do prezentacji, mimo to nie jest on ograniczony jedynie do ten funkcjonalności.
-Framework skupia się na programowaniu webowym, które w większości czasu ma do czynienia z interakcją z użytkownikiem, bazując na programowaniu sterowanym zdarzeniami (ang. event driven) oraz bazującym na komponentach (ang. component based),
-tak by deweloper był bardziej produktywny. Następujące drzewko klas pokazuje główne klasy dostarczanych przez PRADO.
-</p>
-<img src="<%~classtree.gif%>" />
-
-<p id="100112" class="block-content">
-Kiedy PRADO przetwarza żądanie strony, jego diagram obiektów statycznych wygląda następująco.
-</p>
-<img src="<%~objectdiagram.gif%>" />
-</com:TContent>
diff --git a/demos/quickstart/protected/pages/Fundamentals/pl/Components.page b/demos/quickstart/protected/pages/Fundamentals/pl/Components.page deleted file mode 100755 index 5890f17f..00000000 --- a/demos/quickstart/protected/pages/Fundamentals/pl/Components.page +++ /dev/null @@ -1,128 +0,0 @@ -<com:TContent ID="body" >
-<h1 id="701">Komponenty</h1>
-<p id="110113" class="block-content">
-Komponent jest instancją klasy lub klasy potomnej <tt>TComponent</tt>. Klasa bazowa <tt>TComponent</tt> implementuje mechanizm właściwości oraz zdarzeń kompomentu.
-</p>
-
-<h2 id="702">Właściwości komponentu (ang. component properties)</h2>
-<p id="110114" class="block-content">
-Właściwość kompoenentu może być postrzegana jako publiczna zmienna opsiującą określoną cechę/właściwość komponentu, taką jak kolor tła, rozmiar czcionki, itp. Właściwość jest definiowana poprzez istnienie metody getter i/lub setter w klasie. Na przykład w <tt>TControl</tt> definiujemy właściwość <tt>ID</tt> komponentu używając następujących funkcji typu getter i setter,
-<com:TTextHighlighter CssClass="source block-content" id="code_110056">
-class TControl extends TComponent {
- public function getID() {
- ...
- }
- public function setID($value) {
- ...
- }
-}
-</com:TTextHighlighter>
-</p>
-<p id="110115" class="block-content">
-Aby pobrać lub ustawić właściwość <tt>ID</tt>, postępuj jak poniżej (tak jakbyś miał do czynienia ze zmienną):
-<com:TTextHighlighter CssClass="source block-content" id="code_110057">
-$id = $component->ID;
-$component->ID = $id;
-</com:TTextHighlighter>
-Jest to równoznaczne z następującym zapisem:
-<com:TTextHighlighter CssClass="source block-content" id="code_110058">
-$id = $component->getID();
-$component->setID( $id );
-</com:TTextHighlighter>
-</p>
-<p id="110116" class="block-content">
-Właściwość jest "tylko do odczytu" jeśli posiada metodę getter a nie posiada metody setter. Odkąd nazwy metod w PHP nie są zależne od wielkiej bądź małej litery, właściwości również są niewrażliwe na wielkość liter. Klasa kompomentu dziedziny wszystkie właściwości rodzica.
-</p>
-
-<h3 id="706">Subwłaściwości (ang. subproperties)</h3>
-<p id="110117" class="block-content">
-Subwłaściwość jest właściwością właściwości typu obiektowego. Dla przykładu <tt>TWebControl</tt> posiada właściwość <tt>Font</tt>, która jest typu <tt>TFont</tt>. Wtedy właściwość <tt>Name</tt> właściwości <tt>Font</tt> jest subwłaściwością w stosunku do <tt>TWebControl</tt>.
-</p>
-<p id="110118" class="block-content">
-Aby pobrać lub ustawić subwłaściwość <tt>Name</tt> należy użyć następującej metody:
-<com:TTextHighlighter CssClass="source block-content" id="code_110059">
-$name = $component->getSubProperty('Font.Name');
-$component->setSubProperty('Font.Name', $name);
-</com:TTextHighlighter>
-Jest to równoznaczne z następującym zapisem:
-<com:TTextHighlighter CssClass="source block-content" id="code_110060">
-$name = $component->getFont()->getName();
-$component->getFont()->setName( $name );
-</com:TTextHighlighter>
-
-
-</p>
-
-<h2 id="703">Zdarzenia komponentu</h2>
-<p id="110119" class="block-content">
-Zdarzenia komponentu są specjalnymi właściwościami, które pobierają nazwy metod jako swoje wartości. Przypisując (ustawiając) metodę do zdarzenia (will hook up the method ) do miejsca gdzie zdarzenie jest wywoływane. Dzięki temu zachowanie komponentu może zostać zmodyfikowane w sposób, który nie był przewidziany podczas fazy dewelopowania komponentu.
-</p>
-<p id="110120" class="block-content">
-Zdarzenie komponentu jest definiowane poprzez istnienie metody, której nazwa zaczyna się przedrostkiem <tt>on</tt>. Nazwa zdarzenia jest nazwą metody i z tego powodu jest niewrażliwa na wielkość liter. Na przykład w komponencie <tt>TButton</tt> mamy:
-<com:TTextHighlighter CssClass="source block-content" id="code_110061">
-class TButton extends TWebControl {
- public function onClick( $param ) {
- ...
- }
-}
-</com:TTextHighlighter>
-W ten sposób definiujemy metodę o nazwie <tt>OnClick</tt> a uchwyt do zdarzenia przez nią definiowanego może być przypisany w jeden z następujących sposobów:
-<com:TTextHighlighter CssClass="source block-content" id="code_110062">
-$button->OnClick = $callback;
-$button->OnClick->add( $callback );
-$button->OnClick[] = $callback;
-$button->attachEventHandler( 'OnClick' , $callback );
-</com:TTextHighlighter>
-gdzie <tt>$callback</tt> odnosi się do poprawnej funkcji typu callback w PHP (np. nazwy funkcji, metody klasy <tt>array($object,'method')</tt>, itp.)
-</p>
-
-<h2 id="704">Przestrzenie nazw (ang. namespaces)</h2>
-<p id="110121" class="block-content">
-Przestrzeń nazw odnosi się do logicznego pogrupowania nazwy klas w taki sposób, że moga być one odróżniane od innych klas, których nazwy są identyczne. Ponieważ PHP nie wspiera przestrzeni nazw sam w sobie, nie można stworzyć instancji dwóch klas, które mają tą samoą nazwę ale różne definicje. Aby odróżniać się od klas użytkowników wszystkie klasy PRADO posiadają prefix 'T' (oznaczający 'Type' - z angielskiego: typ). Zachęcamy do nazywania własnych klas w ten sposób. W odróznieniu można dodawać prefiksy klas zaczynające się dowolną inną literą (lub grupą liter).
-</p>
-<p id="110122" class="block-content">
-Przestrzeń nazw w PRADO jest postrzegana jako folder zawierający jednen lub więcej plików klas. Poprzez poprzedzania nazwy klasy przestrzenią nazw klasa może zostać określona jednoznacznie. Każda przestrzeń nazw jest w PRADO określona w następujący sposób:
-<div class="source">
-PathAlias.Dir1.Dir2
-</div>
-gdzie <tt>PathAlias</tt> jest aliasem jakiegoś katalogu, gdzie <tt>Dir1</tt> i <tt>Dir2</tt> są podkatalogami tego katalogu. Klasa o nazwie <tt>MyClass</tt> zdefiniowana w <tt>Dir2</tt> jest fully qualified poprzez <tt>PathAlias.Dir1.Dir2.MyClass</tt>.
-</p>
-<p id="110123" class="block-content">
-By używać przestrzeni nazw w kodzie, napisz:
-<com:TTextHighlighter CssClass="source block-content" id="code_110063">
-Prado::using('PathAlias.Dir1.Dir2.*');
-</com:TTextHighlighter>
-co spowoduje dołączenie katalogu wskazywanego przez <tt>PathAlias.Dir1.Dir2</tt> do ścieżek include w PHP, dzięki czemu instancje klas zdefiniowanych w podanym katalogu mogą zostać utworzone bez podawania pełnej przestrzeni nazw. Możesz również zainkludować pojedyńczą definicję klasy poprzez
-<com:TTextHighlighter CssClass="source block-content" id="code_110064">
-Prado::using('PathAlias.Dir1.Dir2.MyClass');
-</com:TTextHighlighter>
-co spowoduje zainkludowanie pliku klasy <tt>MyClass</tt> jeśli nie została ona jeszcze zdefiniowana.
-</p>
-<p id="110124" class="block-content">
-Aby zobaczyć więcej informacji o definiowaniu aliasów zobacz sekcję <a href="?page=Configurations.AppConfig">konfigurowanie aplikacji</a>.
-</p>
-
-<h2 id="705">Tworzenie instancji komponentu</h2>
-<p id="110125" class="block-content">
-Tworzenie instancji komponentu oznacza tworzenie instancji klasy komponentu. Rozróżniamy dwa typy instancji komponentu: statyczną i dynamiczną. Utworzone komponenty nazywane są odpowiednio komponentami statycznymi i dynamicznymi.
-</p>
-
-<h3 id="707">Dynamiczne tworzenie instancji komponentów</h3>
-<p id="110126" class="block-content">
-Dynamiczne tworzenie instancji komponentów oznacza tworzenie instancji komponentu w kodzie PHP. Wygląda to identycznie jak zwyczajne tworznie komponentów w PHP. Komponent może zostać dynamicznie utworzony w jeden z poniższych sposobów w PHP:
-<com:TTextHighlighter CssClass="source block-content" id="code_110065">
-$component = new ComponentClassName;
-$component = Prado::createComponent('ComponentType');
-</com:TTextHighlighter>
-gdzie <tt>ComponentType</tt> wskazuje na nazwę klasy lub nazwę typu w formacie przestrzeni nazw (np. <tt>System.Web.UI.TControl</tt>). Drugi sposób został wprowadzony aby wypełnić brak wsparcia dla przestrzeni nazw w PHP.
-</p>
-
-<h3 id="708">Statyczne tworzenie instancji komponentów</h3>
-<p id="110127" class="block-content">
-Statyczne tworzenie instancji komponentów odnosi się do tworznenia komponentów poprzez <a href="?page=Configurations.Overview">konfigurację</a>. Proces tworzenia odbywa się po stronie frameworku. Na przykład w <a href="?page=Configurations.AppConfig">konfiguracji aplikacji</a> można skonfigurować moduł, który zostanie załadowany podczas uruchamiania aplikacji. Zatem moduł jest statycznym komponentem stworzonym przez framework. Statyczne tworzenie instancji jest często wspólnie używane w <a href="?page=Configurations.Templates1">szablonach</a>. Każdy tag komponentu w szablonie określa komponent, który będzie automatycznie stworzony przez framework, kiedy szablon będzie ładowany. Na przykład w szablonie strony następujący tag doprowadzi do stworzenia komponentu <tt>TButton</tt> na stronie:
-<com:TTextHighlighter Language="prado" CssClass="source block-content" id="code_110066">
-<com:TButton Text="Register" />
-</com:TTextHighlighter>
-</p>
-
-</com:TContent>
diff --git a/demos/quickstart/protected/pages/Fundamentals/pl/Controls.page b/demos/quickstart/protected/pages/Fundamentals/pl/Controls.page deleted file mode 100755 index 68fdb993..00000000 --- a/demos/quickstart/protected/pages/Fundamentals/pl/Controls.page +++ /dev/null @@ -1,51 +0,0 @@ -<com:TContent ID="body" >
-<h1 id="801">Kontrolki (ang. controls)</h1>
-<p id="120128" class="block-content">
-Kontrolka jest instancją klasy <tt>TControl</tt> lub jej dziecka. Kontrolka jest komponentem definiowanym z dodatkiem interfejsu użytkownika. Klasa bazowa <tt>TControl</tt> definiuje relację rodzic-dziecko among controls which reflects the containment relationship among user interface elements.
-</p>
-
-<h2 id="802">Drzewko kontrolek</h2>
-<p id="120129" class="block-content">
-Kontrolki są powiązane z sobą za pomocą relacji rodzic-dziecko. Każda kontrolka rodzica może posiadać jedną lub więcej kontrolek dzieci. Kontrolka rodzica jest in charge of the state transition of its child controls. Wynik renderowanie kontrolki dziecka jest zazwyczaj używany do stworzenia warstwy prezentacji kontrolki rodzica. Relacja rodzic-dziecko brings together controls into a control tree. Strona jest korzeniem drzewka, której warstwa prezentacji jest zwracana dla użytkownika końcowego.
-</p>
-<p id="120130" class="block-content">
-Relacja rodzic-dziecko jest zazwyczaj ustalana przez framework poprzez <a href="?page=Configurations.Templates1">szablony</a>. W kodzie można bezpośrednio określić kontrolkę jako dziecko innej kontrolki stosując jedną z następujących metod:
-<com:TTextHighlighter CssClass="source block-content" id="code_120067">
-$parent->Controls->add($child);
-$parent->Controls[]=$child;
-</com:TTextHighlighter>
-gdzie właściwość <tt>Controls</tt> wskazuje na kolekcję kontrolek bedących dziećmi rodzica.
-</p>
-
-<h2 id="803">Identyfikacja kontrolki</h2>
-<p id="120131" class="block-content">
-Każda kontrolka ma właściwość <tt>ID</tt>, która jednoznacznie identyfikuje ją samą spośród jej rodzeństwa. W dodatku każda kontrolka posiada właściwość <tt>UniqueID</tt> oraz <tt>ClientID</tt>, która może zostać użyta do identyfikacji "globalnej" kontrolki w drzewku gdzie znajduje się ta kontrolka. Właściwości <tt>UniqueID</tt> oraz <tt>ClientID</tt> są bardzo podobne. Pierwsza jest używana przez framework do określenia położenia odpowiedniej kontrolki w drzewku, druga jest głównie używana po stronie klienta jako ID w tagach HTML. Ogólnie rzecz ujmując nie powinno się polegać na tak sprecyzowanym formacie <tt>UniqueID</tt> lub <tt>ClientID</tt>.
-</p>
-
-<h2 id="804">Kontenery nazw (ang. naming containers)</h2>
-<p id="120132" class="block-content">
-Każda kontrolka posiada kontener nazw, który jest kontrolką tworzącą unikalną przestrzeń nazw dla rozróżnienie pomiędzy kontrolkami o tych samych <tt>ID</tt>. Na przykład kontrolka <tt>TRepeater</tt> tworzy wiele pozycji, które posiadają kontrolki-dzieci o tych samych <tt>ID</tt>. Aby rozróżnić te kontrolki-dzieci, każda pozycja służy jako kontener nazw. Dzięki temu, kontrolka-dziecko może zostać jednoznacznie zidentyfikowana używając <tt>ID</tt> swojego kontenera nazw razem z swoim własnym <tt>ID</tt>. Powinieneś teraz zrozumieć, że właściwości <tt>UniqueID</tt> i <tt>ClientID</tt> bazują (wynikają?) na kontenerze nazw.
-</p>
-<p id="120133" class="block-content">
-Kontrolka może służyć jako kontener naz jeśli implementuje interfejs <tt>INamingContainer</tt>.
-</p>
-
-<h2 id="805">Stan widoku (ang. ViewState) oraz stan kontrolki (ang. ControlState)</h2>
-<p id="120134" class="block-content">
-HTTP jest protokołem bezstanowym, co oznacza, że nie dostarcza on funkjonalności wspierającej kontynuowanie interakcji pomiędzy użytkownikiem a serwerem. Każde żądanie (ang. request) jest rozpatrywane jako pojedyńcze i niezależne w stosunku do innego żądania. Jednakże, aplikacja webowa często potrzebuje wiedzieć co użytkownik zrobił w poprzednich żądaniach. Dlatego wprowadzono sesje by pomóc zapamiętać te informacje o stanie.
-</p>
-<p id="120135" class="block-content">
-PRADO zapożycza koncept stanu widoku oraz stanu kontrolki z ASP.NET Microsoftu by dostarczać dodatkowego stanowego mechanizmu programowania (ang. stateful programming mechanism). Wartość zachowana w stanie widoku lub stanie kontrolki może być dostępna w następnym żądaniu jeśli nowe żądanie pochodzi od wysłania formularza (ang. form submissions) (nazywanej postback'iem) do tej samej strony przez tego samego użytkownika. Różnica pomiędzy stanem widoku a stanem kontrolki wynika z tego iż pierwsza może zostać wyłączona a druga nie.
-</p>
-<p id="120136" class="block-content">
-Stan widoku i stan kontrolki są zaimplementowane w <tt>TControl</tt>. Są one zazwyczaj używane do zdefiniowania różnych właściwościu kontrolki. By zapisać i przywrócić wartości ze stanu widoku lub stanu kontrolki, należy użyć następujących sposobów:
-<com:TTextHighlighter CssClass="source block-content" id="code_120068">
-$this->getViewState('Nazwa',$wartoscDomyslna);
-$this->setViewState('Nazwa',$wartosc,$wartoscDomyslna);
-$this->getControlState('Nazwa',$wartoscDomyslna);
-$this->setControlState('Nazwa',$wartosc,$wartoscDomyslna);
-</com:TTextHighlighter>
-gdzie <tt>$this</tt> odnosi się do instancji kontrolki, <tt>Nazwa</tt> odnosi się to klucza identyfikującego zachowaną wartość, <tt>$wartoscDomyslna</tt> jest opcjonalna. Kiedy przywracamy wartości z stanu widoku lub stanu kontrolki, jeśli podany klucz nie istnieje, wartość domyślna jest zwracana.
-</p>
-
-</com:TContent>
diff --git a/demos/quickstart/protected/pages/Fundamentals/pl/Hangman.page b/demos/quickstart/protected/pages/Fundamentals/pl/Hangman.page deleted file mode 100755 index e3ad1338..00000000 --- a/demos/quickstart/protected/pages/Fundamentals/pl/Hangman.page +++ /dev/null @@ -1,16 +0,0 @@ -<com:TContent ID="body" >
-
-<h1 id="1301">Przykład: wisielec</h1>
-<p id="60043" class="block-content">
-Zobaczywszy prostą aplikację "Witaj Świecie" stworzymy teraz bardziej skomplikowaną aplikację "Wisielca".
-W tej grze gracz musi odgadnąć słowo podając litery w zadanym czasie. Jeśli odgadnie prawidłowo litera pojawi się w słowie. Gracz może tak długo kontynuować zgadywanie dopóki liczba pomyłek znajduje się w zdefiniwanym na początku zakresie.
-Gracz wygrywa grę jeśli znajdzie słowo zanim przekroczy dozwoloną liczbę pomyłek, w przeciwnym przypadku przegrywa.
-</p>
-<p id="60044" class="block-content">
-Aby ułatwić stowrzenie tej gry, pokażemy diagram zmiany stanów gry następująco
-<br /><br />
-Ciąg dalszy nastąpi...
-</p>
-<com:RunBar PagePath="Fundamentals.Samples.Hangman.Home" />
-
-</com:TContent>
diff --git a/demos/quickstart/protected/pages/Fundamentals/pl/Modules.page b/demos/quickstart/protected/pages/Fundamentals/pl/Modules.page deleted file mode 100755 index 1bc8ca94..00000000 --- a/demos/quickstart/protected/pages/Fundamentals/pl/Modules.page +++ /dev/null @@ -1,50 +0,0 @@ -<com:TContent ID="body" >
-
-<h1 id="1001">Moduły (ang. modules)</h1>
-<p id="140141" class="block-content">
-Moduł jest instancją klasy implementującej interfejs <tt>IModule</tt>. Moduł jest zazwyczaj zaprojektowany by dostarczać określonej funkcjonalności, która może być podłączona do aplikacji PRADO i dzielona wśród wszystkich komponentów aplikacji.
-</p>
-<p id="140142" class="block-content">
-PRADO używa konfiguracji aby określić kiedy załadować moduł, jaki rodzaj modułu i jak zainicjalizować załadowane moduły. Deweloper może zastąpić zródłowe (ang. core) moduły własnymi implementacjami poprzez konfigurację aplikacji lub może napisać nowe moduły by dostarczać dodatkowe funkcjonalności. Na przykład można stworzyć moduł, który będzie dostarczał wspólną logikę baz danych dla jednej lub więcej stron. Aby dowiedzieć się więcej zobacz sekcję <a href="?page=Configurations.Overview">konfiguracja</a>.
-</p>
-<p id="140143" class="block-content">
-Domyślnie ładowane są 3 moduły źródłowe (ang. core modules) podczas starty aplikacji. Są to <a href="#request">moduł żądania (ang. request module)</a>, <a href="#response">moduł odpowiedzi (ang. responce module)</a> oraz <a href="#error">moduł zarządzania błędami (ang. error handler module)</a>. Dodatkowo <a href="#session">moduł sesji (ang. session module)</a> jest ładowany kiedy jejst on używany w aplikacji. PRADO dostarcza domyślną implementację dla wszystkich tych modułów. <a href="#custom">Dodatkowe moduły (ang. custom modules)</a> mogą być konfigurowane lub stworzone by nadpisać lub uzupełnić te trzy moduły źródłowe.
-</p>
-
-<a name="request"></a>
-<h2 id="1002">Moduł żądania (ang. request module)</h2>
-<p id="140144" class="block-content">
-Moduł żądań reprezentuje i dostarcza schemat dostępu i przechowywania żądań użytkownika wysyłanych poprzez HTTP. Dane żądania użytkownika przychodzą z kilku źródeł wliczając adresy URL, dane z żądania POST, dane sesyjne, dane z ciasteczek, itd. Te dane są dostępne poprzez moduł żądania. Domyślnie PRADO używa <tt>THttpRequest</tt> jako moduł żądania. Moduł żądania jest dostępne poprzez właściwość <tt>Request</tt> aplikacjji i kontrolek.
-</p>
-
-<a name="response"></a>
-<h2 id="1003">Moduł odpowiedzi (ang. response module)</h2>
-<p id="140145" class="block-content">
-Moduł odpowiedzi implementuje mechanizm do wysywałania wyjścia do klienta użytkwonika. Moduł odpowiedzi może zostać skonfigurowany by kontrolować jak wyjście jest keszowane po stronie klienta. Może on być również uzywany by wysyłać cookie z powrotem na stronę klienta. Domyślnie PRADO używa <tt>THttpResponse</tt> jako moduły odpowiedzi. Moduł odpowiedzi jest dostępny poprzez właściwość <tt>Response</tt> aplikacji i kontrolek.
-</p>
-
-<a name="session"></a>
-<h2 id="1004">Moduł sesji (ang. session module)</h2>
-<p id="140146" class="block-content">
-Moduł sesji enkapsuluje funkcjonalność związaną z zarządzaniem sesji użytkowika. Moduł sesji jest automatycznie ładowany jeśli aplikacja używa sesji. Domyślnie PRADO używa <tt>THttpSession</tt> jako moduł sesji, który jest po prostu nadkładką (ang. wrapper) dla funkcji sesyjnych dostarczanych przez PHP. Moduł sesji jest dostępny poprzez właściwość <tt>Session</tt> aplikacji i kontrolek.
-</p>
-
-<a name="error"></a>
-<h2 id="1005">moduł zarządzania błędami (ang. error handler module)</h2>
-<p id="140147" class="block-content">
-Moduł zarządzzania błędami jest użuwany by przechwycić i obsłużyć wszystkie przypadki błędów w aplikacji. PRADO używa <tt>TErrorHandler</tt> jako moduł zarządzania błędami. Przechwytuje on wszystkie ostrzeżenia PHP (ang. warnings), wiadomości (ang. notices) oraz wyjątki (ang. exceptions) i wyświetla w odpowiedniej formie użytkownikowi końcowemu. Moduł zarządzania błędami jest dostępny poprzez właściwość <tt>ErrorHandler</tt> instancji aplikacji.
-</p>
-
-<a name="custom"></a>
-<h2 id="1006">Dodatkowe moduły (ang. custom modules)</h2>
-<p id="140148" class="block-content">
-PRADO zostało wydane z większą ilością modułów niż wymienione moduły źródłowe. PRADO zawiera moduły keszujące (<tt>TSqliteCache</tt> oraz <tt>TMemCache</tt>), moduły zarządzające użytkownikami (<tt>TUserManager</tt>), moduły autentykacji i autoryzacji (<tt>TAuthManager</tt>), itd.
-</p>
-<p id="140149" class="block-content">
-Kiedy wystąpi żądanie <tt>TPageService</tt> ładowane są także określone moduły dla serwisu stron, włączając menedżer elementów aktywnych (ang. assets manager) (<tt>TAssetManager</tt>), menedżer szablonów (<tt>TTemplateManager</tt>), menedżer tematów/skórek (ang. theme/skin manager) (<tt>TThemeManager</tt>).
-</p>
-<p id="140150" class="block-content">
-Dodatkowe moduły oraz moduły źródłowe są konfigurowalne poprzez <a href="?page=Configurations.Overview">konfigurację</a>.
-</p>
-
-</com:TContent>
diff --git a/demos/quickstart/protected/pages/Fundamentals/pl/Pages.page b/demos/quickstart/protected/pages/Fundamentals/pl/Pages.page deleted file mode 100755 index a6318674..00000000 --- a/demos/quickstart/protected/pages/Fundamentals/pl/Pages.page +++ /dev/null @@ -1,25 +0,0 @@ -<com:TContent ID="body" >
-
-<h1 id="901">Strony (ang. pages)</h1>
-<p id="130137" class="block-content">
-Strony są najwyżej umiejscowionymi w hierarchi kontrolkamki, które nie posiadają rodzica.
-Prezentacja strony jest bezpośrednio wyświetlana użytkownikowi końcowemu. Użytkownicy posiadają dostęp do strony poprzez wysłanie żądanie do serwisu strony (ang. sending page service requests).
-</p>
-<p id="130138" class="block-content">
-Każda strona musi posiadać plik <a href="?page=Configurations.Templates1">szablonu</a>. Musi posiadać on rozszerzenie <tt>.page</tt>. Nazwa pliku (bez rozszerzenia) jest nazwą strony. PRADO będzie próbować znaleźć plik klasy strony w katalogu zawierającym szablon strony. Taki plik klasy strony musi posiadać tą samą nazwę (z rozszerzeniem <tt>.php</tt>) jak plik szablonu. Jeśli klasa nie zostanie znaleziona, strona skorzysta z klasy <tt>TPage</tt>.
-</p>
-
-<h2 id="902">PostBack</h2>
-<p id="130139" class="block-content">
-Wysłanie formularza jest nazywane <i>postback</i> jeśli wysłanie następuje do strony zawierającej formularz. Postback może być postrzegany jako zdarzenie po stronie klienta, wywoływane przez użytkownika. PRADO będzie próbowało zidentyfikować, która kontrolka po stronie serwera jest odpowiedzialna za zdarzenie postblack. Jeśli znajdzie taką, np. przykład <tt>TButton</tt>, nazywać ją będziemy senderem zdarzenia postback, który przetłumaczy zdarzenie postback na pewne specyficzne zdarzenia po stronie serwera (np. zdarzenia <tt>OnClick</tt> i <tt>OnCommand</tt> dla <tt>TButton</tt>).
-
-</p>
-
-<h2 id="903">Cykl życia strony (ang. page lifecycles)</h2>
-<p id="130140" class="block-content">
-Zrozumienie cyklu życia strony jest kluczowe by zrozumieć istotę programowania w PRADO.
-Cykl życia strony odwołuje się do stanów przejściowych strony, gdy jest ona dostarczana użytkownikowi końcowemu. Może on (cykl) być przedstawiony za pomocą następującej tablicy stanów:
-<img src="<%~lifecycles.gif %>" />
-</p>
-
-</com:TContent>
diff --git a/demos/quickstart/protected/pages/Fundamentals/pl/Services.page b/demos/quickstart/protected/pages/Fundamentals/pl/Services.page deleted file mode 100755 index 6d8b8866..00000000 --- a/demos/quickstart/protected/pages/Fundamentals/pl/Services.page +++ /dev/null @@ -1,34 +0,0 @@ -<com:TContent ID="body" >
-
-<h1 id="1101">Serwisy (ang. services)</h1>
-<p id="150151" class="block-content">
-Serwis jest instancją klasy implementującej interfejs <tt>IService</tt>. Każdy rodzaj serwisu przetwarza specyficzny typ żądania użytkownika. Na przykład serwis strony (ang. page service) odpowiada na żądania użytkownika dla stron PRADO.
-</p>
-<p id="150152" class="block-content">
-Serwis jest jednoznacznie identyfikowany poprzez swoją właściwość <tt>ID</tt>. Domyślnie kiedy <tt>THttpRequest</tt> jest używany jako <a href="?page=Fundamentals.Modules#request">moduł żądania</a> (ang. request module), nazwy zmiennych GET są używane by zidentyfikować serwis żadany przez użytkownika. Jeśli nazwa zmiennej GET zgadza się z jakimś <tt>ID</tt> serwisu, żądanie jest przetwarzane przez ten serwis oraz wartość parametru GET jest przekazywana jako parametr serwisu. Dla serwisu strony nazwą zmiennej GET musi być <tt>page</tt>. Na przykład następujący adres URL żadą strony <tt>Fundamentals.Services</tt>,
-<com:TTextHighlighter Language="none" CssClass="source block-content" id="code_150069">
-http://hostname/index.php?page=Fundamentals.Services
-</com:TTextHighlighter>
-</p>
-<p id="150153" class="block-content">
-Deweloper może zaimplementować dodatkowe serwisy dla swojej aplikacji. Aby uczynić serwis dostępnym należy go skonfigurować w <a href="?page=Configurations.AppConfig">konfiguracji aplikacji</a>.
-</p>
-
-<h2 id="1102">Serwis strony (ang. page service)</h2>
-<p id="150154" class="block-content">
-PRADO implementuje <tt>TPageService</tt> by przetwarzać żądania stron użytkonika. Strony są przechowywane w katalogu określonej przez właściwość <tt>BasePath</tt> serwisu strony. Właściwość wskazuje domyślnie na katalog <tt>pages</tt> w ścieżce aplikacji. Możesz zmienić tą wartość domyślną poprzez skonfigurowanie serwisu w konfiguracji aplikacji.
-</p>
-<p id="150155" class="block-content">
-Strony mogą być zorganizowane w podkatalogi w <tt>BasePath</tt>. W każdym katalogu może znajdować się plik konfiguracji strony o nazwie <tt>config.xml</tt>, który zawiera konfigurację aktywną tylko wtedy gdy strona spod tego katalogu lub podkatalogu jest żądana. Aby dowiedzieć się wiecej zobacz sekcję <a href="?page=Configurations.PageConfig">konfiguracja strony</a>.
-</p>
-<p id="150156" class="block-content">
-Parametr dla serwisu stron wskazuje na żądaną stronę. Parametr taki jak <tt>Fundamentals.Services</tt> wskazuje na stronę <tt>Services</tt> w katalogu <tt><BasePath>/Fundamentals</tt>. Jeśli taki parametr nie jest obecny w żądaniu domyślnie przyjmowana jest jego wartość jako <tt>Home</tt>. Używając <tt>THttpRequest</tt> jako moduł żądania (domyślnie), następujący adres URL zażada stron <tt>Home</tt>, <tt>About</tt> i <tt>Register</tt> odpowiednio dla:
-<com:TTextHighlighter Language="none" CssClass="source block-content" id="code_150070">
-http://hostname/index.php
-http://hostname/index.php?page=About
-http://hostname/index.php?page=Users.Register
-</com:TTextHighlighter>
-gdzie pierwszy przukład wynika z faktu, że serwis strony jest domyślnym serwisem a strona <tt>Home</tt> jest stroną domyślną.
-</p>
-
-</com:TContent>
diff --git a/demos/quickstart/protected/pages/Fundamentals/pl/applifecycles.gif b/demos/quickstart/protected/pages/Fundamentals/pl/applifecycles.gif Binary files differdeleted file mode 100755 index caf16028..00000000 --- a/demos/quickstart/protected/pages/Fundamentals/pl/applifecycles.gif +++ /dev/null diff --git a/demos/quickstart/protected/pages/Fundamentals/pl/classtree.gif b/demos/quickstart/protected/pages/Fundamentals/pl/classtree.gif Binary files differdeleted file mode 100755 index b1fbf0d6..00000000 --- a/demos/quickstart/protected/pages/Fundamentals/pl/classtree.gif +++ /dev/null diff --git a/demos/quickstart/protected/pages/Fundamentals/pl/directory.gif b/demos/quickstart/protected/pages/Fundamentals/pl/directory.gif Binary files differdeleted file mode 100755 index c7d5086d..00000000 --- a/demos/quickstart/protected/pages/Fundamentals/pl/directory.gif +++ /dev/null diff --git a/demos/quickstart/protected/pages/Fundamentals/pl/lifecycles.gif b/demos/quickstart/protected/pages/Fundamentals/pl/lifecycles.gif Binary files differdeleted file mode 100755 index 5edaff5f..00000000 --- a/demos/quickstart/protected/pages/Fundamentals/pl/lifecycles.gif +++ /dev/null diff --git a/demos/quickstart/protected/pages/Fundamentals/pl/objectdiagram.gif b/demos/quickstart/protected/pages/Fundamentals/pl/objectdiagram.gif Binary files differdeleted file mode 100755 index 7910469c..00000000 --- a/demos/quickstart/protected/pages/Fundamentals/pl/objectdiagram.gif +++ /dev/null |