summaryrefslogtreecommitdiff
path: root/demos
diff options
context:
space:
mode:
Diffstat (limited to 'demos')
-rw-r--r--demos/quickstart/protected/controls/DocLink.php4
-rw-r--r--demos/quickstart/protected/pages/Controls/HtmlArea4.page28
-rw-r--r--demos/quickstart/protected/pages/Controls/Samples/TConditional/Home.page4
-rwxr-xr-xdemos/quickstart/protected/pages/Controls/Samples/THtmlArea4/Home.page43
-rwxr-xr-xdemos/quickstart/protected/pages/Controls/Samples/THtmlArea4/Home.php20
-rw-r--r--demos/quickstart/protected/pages/Controls/Standard.page4
-rw-r--r--demos/quickstart/protected/pages/Database/DAO.page9
-rw-r--r--demos/quickstart/protected/pages/GettingStarted/NewFeatures.page5
-rw-r--r--demos/quickstart/protected/pages/Services/SoapService.page22
9 files changed, 130 insertions, 9 deletions
diff --git a/demos/quickstart/protected/controls/DocLink.php b/demos/quickstart/protected/controls/DocLink.php
index b1043821..758a1645 100644
--- a/demos/quickstart/protected/controls/DocLink.php
+++ b/demos/quickstart/protected/controls/DocLink.php
@@ -20,8 +20,8 @@ class DocLink extends THyperLink
$paths=explode('.',$this->getClassPath());
if(count($paths)>1)
{
- $classFile=array_pop($paths).'.html';
- $this->setNavigateUrl(self::BASE_URL . '/' . implode('.',$paths) . '/' . $classFile);
+ $classFile='class-'.array_pop($paths).'.html';
+ $this->setNavigateUrl(self::BASE_URL . '/' . $classFile);
if($this->getText() === '')
$this->setText('API Manual');
}
diff --git a/demos/quickstart/protected/pages/Controls/HtmlArea4.page b/demos/quickstart/protected/pages/Controls/HtmlArea4.page
new file mode 100644
index 00000000..1fa33424
--- /dev/null
+++ b/demos/quickstart/protected/pages/Controls/HtmlArea4.page
@@ -0,0 +1,28 @@
+<com:TContent ID="body" >
+
+<h1>THtmlArea4</h1>
+<com:DocLink ClassPath="System.Web.UI.WebControls.THtmlArea4" />
+
+<p class="block-content">
+<tt>THtmlArea4</tt> is a newer version of the <tt>THtmlArea</tt> component, based on TinyMCE version 4. Please refer to <tt>THtmlArea</tt> for basic usage.
+</p>
+
+<p class="block-content">
+<tt>THtmlArea4</tt> provides the WYSIWYG feature by wrapping the functionalities provided by the <a href="http://tinymce.com/">TinyMCE project version 4</a>.
+</p>
+
+<p class="block-content">
+The default editor tries to mimic <tt>THtmlArea</tt>'s old style and behaviour, disabling the menubar and permitting the resize of the editor in both directions. To enable the menubar or change any other aspect of the editor layout, use the <tt>Options</tt> property to add additional editor options with each options on a new line. See <a href="http://www.tinymce.com/wiki.php/Configuration">TinyMCE website</a> for a complete list of options. The following example displays a menu specific for HTML table manipulation,
+</p>
+<com:TTextHighlighter Language="prado" CssClass="source block-content">
+&lt;com:THtmlArea&gt;
+ &lt;prop:Options&gt;
+ plugins: "table"
+ menubar: "file edit table"
+ &lt;/prop:Options&gt;
+&lt;/com:THtmlArea&gt;
+</com:TTextHighlighter>
+
+<com:RunBar PagePath="Controls.Samples.THtmlArea4.Home" />
+
+</com:TContent>
diff --git a/demos/quickstart/protected/pages/Controls/Samples/TConditional/Home.page b/demos/quickstart/protected/pages/Controls/Samples/TConditional/Home.page
index 7baa16d6..9e37b675 100644
--- a/demos/quickstart/protected/pages/Controls/Samples/TConditional/Home.page
+++ b/demos/quickstart/protected/pages/Controls/Samples/TConditional/Home.page
@@ -1,9 +1,9 @@
<com:TContent ID="body">
<h1>TConditional Samples</h1>
-<com:TConditional Condition="Prado::getVersion()==='3.2.1'">
+<com:TConditional Condition="Prado::getVersion()==='3.2.2'">
<prop:TrueTemplate>
- <com:TLabel Text="You are using PRADO 3.2.1" />
+ <com:TLabel Text="You are using PRADO 3.2.2" />
</prop:TrueTemplate>
<prop:FalseTemplate>
<com:TLabel Text="You are using PRADO <%= Prado::getVersion() %>" />
diff --git a/demos/quickstart/protected/pages/Controls/Samples/THtmlArea4/Home.page b/demos/quickstart/protected/pages/Controls/Samples/THtmlArea4/Home.page
new file mode 100755
index 00000000..6bb6449c
--- /dev/null
+++ b/demos/quickstart/protected/pages/Controls/Samples/THtmlArea4/Home.page
@@ -0,0 +1,43 @@
+<com:TContent ID="body">
+
+<h1>THtmlArea4 Samples</h1>
+
+<table class="sampletable">
+
+<tr><td class="samplenote">
+THtmlArea4 with default settings:
+</td><td class="sampleaction">
+<com:THtmlArea4 ID="HtmlArea1" />
+<com:TButton Text="Submit" OnClick="button1Clicked" />
+<br/>
+<com:TLiteral Encode="true" ID="Result1" />
+</td></tr>
+
+<tr><td class="samplenote">
+THtmlArea4 with manually set options
+</td><td class="sampleaction">
+<com:THtmlArea4 ID="HtmlArea2" Width="670px" Height="300px">
+ <prop:Options>
+ resize: false
+ plugins: "charmap code wordcount"
+ toolbar: "undo redo | styleselect | bold italic | alignleft aligncenter alignright alignjustify | bullist numlist outdent indent | code charmap | ",
+ </prop:Options>
+</com:THtmlArea4>
+<com:TButton Text="Submit" OnClick="button2Clicked" />
+<br/>
+<com:TLiteral Encode="true" ID="Result2" />
+</td></tr>
+
+<tr><td class="samplenote">
+THtmlArea4 with visual editting disabled:
+</td><td class="sampleaction">
+<com:THtmlArea4 ID="HtmlArea3" EnableVisualEdit="false" />
+<br/>
+<com:TButton Text="Submit" OnClick="button3Clicked" />
+<br/>
+<com:TLiteral Encode="true" ID="Result3" />
+</td></tr>
+
+</table>
+
+</com:TContent>
diff --git a/demos/quickstart/protected/pages/Controls/Samples/THtmlArea4/Home.php b/demos/quickstart/protected/pages/Controls/Samples/THtmlArea4/Home.php
new file mode 100755
index 00000000..c513c8f7
--- /dev/null
+++ b/demos/quickstart/protected/pages/Controls/Samples/THtmlArea4/Home.php
@@ -0,0 +1,20 @@
+<?php
+
+class Home extends TPage
+{
+ public function button1Clicked($sender,$param)
+ {
+ $this->Result1->Text="You have entered: ".$this->HtmlArea1->Text;
+ }
+
+ public function button2Clicked($sender,$param)
+ {
+ $this->Result2->Text="You have entered: ".$this->HtmlArea2->Text;
+ }
+
+ public function button3Clicked($sender,$param)
+ {
+ $this->Result3->Text="You have entered: ".$this->HtmlArea3->Text;
+ }
+}
+
diff --git a/demos/quickstart/protected/pages/Controls/Standard.page b/demos/quickstart/protected/pages/Controls/Standard.page
index 188cdd19..463f90a5 100644
--- a/demos/quickstart/protected/pages/Controls/Standard.page
+++ b/demos/quickstart/protected/pages/Controls/Standard.page
@@ -60,6 +60,10 @@
</li>
<li>
+ <a href="?page=Controls.HtmlArea4">THtmlArea4</a> is the counterpart of THtmlArea based on TinyMCE4.
+ </li>
+
+ <li>
<a href="?page=Controls.HyperLink">THyperLink</a> represents a hyperlink on a Web page.
</li>
diff --git a/demos/quickstart/protected/pages/Database/DAO.page b/demos/quickstart/protected/pages/Database/DAO.page
index ae8463df..45023384 100644
--- a/demos/quickstart/protected/pages/Database/DAO.page
+++ b/demos/quickstart/protected/pages/Database/DAO.page
@@ -5,10 +5,10 @@
Data Access Objects (DAO) separates a data resource's client interface from its data access mechanisms. It adapts a specific data resource's access API to a generic client interface. As a result, data access mechanisms can be changed independently of the code that uses the data.
</p>
<p id="680462" class="block-content">
-Since version 3.1, PRADO starts to provide a DAO that is a thin wrap around <a href="http://www.php.net/manual/en/ref.pdo.php">PHP Data Objects (PDO)</a>. Although PDO has a nice feature set and good APIs, we choose to implement the PRADO DAO on top of PDO because the PRADO DAO classes are component classes and are thus configurable in a PRADO application. Users can use these DAO classes in a more PRADO-preferred way.
+Since version 3.1, PRADO starts to provide a DAO that is a thin wrap around <a href="http://www.php.net/manual/en/book.pdo.php">PHP Data Objects (PDO)</a>. Although PDO has a nice feature set and good APIs, we choose to implement the PRADO DAO on top of PDO because the PRADO DAO classes are component classes and are thus configurable in a PRADO application. Users can use these DAO classes in a more PRADO-preferred way.
</p>
<div class="note"><b class="tip">Note:</b>
-Since the PRADO DAO is based on PDO, the PDO PHP extension needs to be installed. In addition, you need to install the corresponding PDO driver for the database to be used in your application. See more details in the <a href="http://www.php.net/manual/en/ref.pdo.php">PHP Manual</a>.
+Since the PRADO DAO is based on PDO, the PDO PHP extension needs to be installed. In addition, you need to install the corresponding PDO driver for the database to be used in your application. See more details in the <a href="http://www.php.net/manual/en/book.pdo.php">PHP Manual</a>.
</div>
<p id="680463" class="block-content">
The PRADO DAO mainly consists of the following four classes (in contrast to PDO which uses only two classes, <tt>PDO</tt> and <tt>PDOStatement</tt>):
@@ -36,12 +36,13 @@ $connection->Active=true; // connection is established
$connection->Active=false; // connection is closed
</com:TTextHighlighter>
<p id="680466" class="block-content">
-Complete specification of DSN may be found in the <a href="http://www.php.net/manual/en/ref.pdo.php#pdo.drivers">PDO documentation</a>. Below is a list of commonly used DSN formats:
+Complete specification of DSN may be found in the <a href="http://www.php.net/manual/en/pdo.drivers.php">PDO documentation</a>. Below is a list of commonly used DSN formats:
</p>
<ul id="u2" class="block-content">
<li>MySQL - <tt>mysql:host=localhost;dbname=test</tt></li>
<li>SQLite - <tt>sqlite:/path/to/dbfile</tt></li>
-<li>ODBC - <tt>odbc:SAMPLE</tt>
+<li>ODBC - <tt>odbc:SAMPLE</tt></li>
+<li>MSSql - <tt>sqlsrv:server=hostname;database=test"</tt></li>
</ul>
<p id="680467" class="block-content">
In case any error occurs when establishing the connection (such as bad DSN or username/password), a <tt>TDbException</tt> will be raised.
diff --git a/demos/quickstart/protected/pages/GettingStarted/NewFeatures.page b/demos/quickstart/protected/pages/GettingStarted/NewFeatures.page
index aaeb2b9c..897b45f0 100644
--- a/demos/quickstart/protected/pages/GettingStarted/NewFeatures.page
+++ b/demos/quickstart/protected/pages/GettingStarted/NewFeatures.page
@@ -6,6 +6,11 @@
This page summarizes the main new features that are introduced in each PRADO release.
</p>
+<h2 id="8001">Version 3.2.3</h2>
+<ul>
+<li>Added <a href="?page=Controls.HtmlArea4">THtmlArea4 control</a> based on TinyMCE4</li>
+</ul>
+
<h2 id="8001">Version 3.2.2</h2>
<ul>
<li>TUrlMappingPattern support for constant parameters</li>
diff --git a/demos/quickstart/protected/pages/Services/SoapService.page b/demos/quickstart/protected/pages/Services/SoapService.page
index 8982ac46..3263180d 100644
--- a/demos/quickstart/protected/pages/Services/SoapService.page
+++ b/demos/quickstart/protected/pages/Services/SoapService.page
@@ -79,6 +79,12 @@ class Contact {
public $name;
/**
+ * @var string $notes {nillable=1, minOccurs=0, maxOccurs=2}
+ * @soapproperty
+ */
+ public $notes;
+
+ /**
* @var Address $address
* @soapproperty
*/
@@ -123,11 +129,25 @@ class ContactManager {
</com:TTextHighlighter>
<p id="670457" class="block-content">For a complex soap object, the properties of the object are specified with
<tt>@soapproperty</tt> keyword in the property phpdocs. Furthermore, the
-propert's type name must be specified as <tt>@var type $name</tt> where <tt>type
+property's type name must be specified as <tt>@var type $name</tt> where <tt>type
</tt> is any valid type in mentioned earlier and <tt>$name</tt> will defined
a property <tt>name</tt> (notice that if your class is a TComponent, you can
provide property setter/getter methods).
</p>
+
+<p class="block-content">
+Optionally, extra attributes (nillable, minOccurs, maxOccurs) can be defined for each property by enclosing definitions into curly brackets and separated by comma like so:
+<com:TTextHighlighter Language="javascript" CssClass="source block-content">
+{[attribute1 = value1][, attribute2 = value2], ...}
+</com:TTextHighlighter>
+where the attribute can be one of following:
+<ul>
+ <li>nillable = [0|1|true|false]</li>
+ <li>minOccurs = n; where n>=0</li>
+ <li>maxOccurs = n; where [n>=0|unbounded]</li>
+</ul>
+</p>
+
<p id="670458" class="block-content">
An array of complex objects can also be returned by adding a pair of
enclosing square brackets after the type name. For example, to return an