From 3069eaf35e833ffe4a1c1c7829dd7e168ae27420 Mon Sep 17 00:00:00 2001 From: Ciro Mattia Gonano Date: Wed, 11 Sep 2013 15:56:48 +0200 Subject: Merge up to r3319 --- demos/quickstart/protected/controls/DocLink.php | 4 +- .../protected/pages/Controls/HtmlArea4.page | 28 ++++++++++++++ .../pages/Controls/Samples/TConditional/Home.page | 4 +- .../pages/Controls/Samples/THtmlArea4/Home.page | 43 ++++++++++++++++++++++ .../pages/Controls/Samples/THtmlArea4/Home.php | 20 ++++++++++ .../protected/pages/Controls/Standard.page | 4 ++ demos/quickstart/protected/pages/Database/DAO.page | 9 +++-- .../pages/GettingStarted/NewFeatures.page | 5 +++ .../protected/pages/Services/SoapService.page | 22 ++++++++++- 9 files changed, 130 insertions(+), 9 deletions(-) create mode 100644 demos/quickstart/protected/pages/Controls/HtmlArea4.page create mode 100755 demos/quickstart/protected/pages/Controls/Samples/THtmlArea4/Home.page create mode 100755 demos/quickstart/protected/pages/Controls/Samples/THtmlArea4/Home.php (limited to 'demos') 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 @@ + + +

THtmlArea4

+ + +

+THtmlArea4 is a newer version of the THtmlArea component, based on TinyMCE version 4. Please refer to THtmlArea for basic usage. +

+ +

+THtmlArea4 provides the WYSIWYG feature by wrapping the functionalities provided by the TinyMCE project version 4. +

+ +

+The default editor tries to mimic THtmlArea'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 Options property to add additional editor options with each options on a new line. See TinyMCE website for a complete list of options. The following example displays a menu specific for HTML table manipulation, +

+ +<com:THtmlArea> + <prop:Options> + plugins: "table" + menubar: "file edit table" + </prop:Options> +</com:THtmlArea> + + + + +
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 @@

TConditional Samples

- + - + 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 @@ + + +

THtmlArea4 Samples

+ + + + + + + + + +
+THtmlArea4 with default settings: + + + +
+ +
+THtmlArea4 with manually set options + + + + resize: false + plugins: "charmap code wordcount" + toolbar: "undo redo | styleselect | bold italic | alignleft aligncenter alignright alignjustify | bullist numlist outdent indent | code charmap | ", + + + +
+ +
+THtmlArea4 with visual editting disabled: + + +
+ +
+ +
+ +
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 @@ +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 @@ -59,6 +59,10 @@ THtmlArea represents a WYSIWYG text input field taking user input that are in HTML format. +
  • + THtmlArea4 is the counterpart of THtmlArea based on TinyMCE4. +
  • +
  • THyperLink represents a hyperlink on a Web page.
  • 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.

    -Since version 3.1, PRADO starts to provide a DAO that is a thin wrap around PHP Data Objects (PDO). 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 PHP Data Objects (PDO). 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.

    Note: -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 PHP Manual. +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 PHP Manual.

    The PRADO DAO mainly consists of the following four classes (in contrast to PDO which uses only two classes, PDO and PDOStatement): @@ -36,12 +36,13 @@ $connection->Active=true; // connection is established $connection->Active=false; // connection is closed

    -Complete specification of DSN may be found in the PDO documentation. Below is a list of commonly used DSN formats: +Complete specification of DSN may be found in the PDO documentation. Below is a list of commonly used DSN formats:

    • MySQL - mysql:host=localhost;dbname=test
    • SQLite - sqlite:/path/to/dbfile
    • -
    • ODBC - odbc:SAMPLE +
    • ODBC - odbc:SAMPLE
    • +
    • MSSql - sqlsrv:server=hostname;database=test"

    In case any error occurs when establishing the connection (such as bad DSN or username/password), a TDbException 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.

    +

    Version 3.2.3

    + +

    Version 3.2.2

    • TUrlMappingPattern support for constant parameters
    • 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 @@ -78,6 +78,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 {

      For a complex soap object, the properties of the object are specified with @soapproperty keyword in the property phpdocs. Furthermore, the -propert's type name must be specified as @var type $name where type +property's type name must be specified as @var type $name where type is any valid type in mentioned earlier and $name will defined a property name (notice that if your class is a TComponent, you can provide property setter/getter methods).

      + +

      +Optionally, extra attributes (nillable, minOccurs, maxOccurs) can be defined for each property by enclosing definitions into curly brackets and separated by comma like so: + +{[attribute1 = value1][, attribute2 = value2], ...} + +where the attribute can be one of following: +

        +
      • nillable = [0|1|true|false]
      • +
      • minOccurs = n; where n>=0
      • +
      • maxOccurs = n; where [n>=0|unbounded]
      • +
      +

      +

      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 -- cgit v1.2.3