summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--HISTORY3
-rw-r--r--UPGRADE12
-rw-r--r--demos/quickstart/protected/pages/Controls/Literal.page6
-rw-r--r--demos/quickstart/protected/pages/GettingStarted/AboutPrado.page8
-rw-r--r--framework/Web/UI/WebControls/TLiteral.php7
-rw-r--r--framework/Web/UI/WebControls/TTable.php2
6 files changed, 27 insertions, 11 deletions
diff --git a/HISTORY b/HISTORY
index 8ab0c66d..1d9430ed 100644
--- a/HISTORY
+++ b/HISTORY
@@ -1,11 +1,11 @@
Version 3.0.0 May 1, 2006
=========================
+BUG: Ticket#70 - Javascript for TDataTypeValidator added (Wei)
BUG: Ticket#131 - TImageMap and TLinkButton continue to postback even client validator fails (Wei)
BUG: Ticket#135 - TBrowserLogRoute reports wrong timings (Qiang)
BUG: Ticket#137 - The JavasciptLogger does not work (Qiang)
BUG: Ticket#138 - missing file in TDataGrid (Qiang)
BUG: Ticket#139 - TThemeManager::setBasePath() should understand an alias path (Qiang)
-BUG: Ticket#70 - Javascript for TDataTypeValidator added (Wei)
BUG: Non-control components can now use expressions in their properties (Qiang)
BUG: TControl.Visible did not make use of overriden getVisible() (Qiang)
BUG: TWizard did not stop navigation upon a validation failure (Qiang)
@@ -13,6 +13,7 @@ BUG: NumberFormat will now zero-fill numbers base on the pattern. (Wei)
ENH: TButton, TImageButton and TLinkButton now implement IButtonControl interface (Qiang)
ENH: TResponse::writeFile takes three additional parameters to allow sending memory data (Qiang)
ENH: TButtonColumn can now be a column of image buttons (Qiang)
+ENH: TLiteral will display body content if Text is empty (Qiang)
ENH: Format string in classes extending TDataGridColumn can now evaluate an expression (Qiang)
ENH: Format string in classes extending TListControl can now evaluate an expression (Qiang)
CHG: Rewrote client-side javascript validators, check your client-side validation behaviour (Wei)
diff --git a/UPGRADE b/UPGRADE
index b9213eb8..20c91cc9 100644
--- a/UPGRADE
+++ b/UPGRADE
@@ -1,11 +1,11 @@
- Upgrading Instructions for PRADO Framework v3.0.0 RC2
- =====================================================
+ Upgrading Instructions for PRADO Framework v3.0.0
+ =================================================
!!!IMPORTANT!!!
After upgrading, remember to delete everything under
-your PRADO application's cache and runtime directories.
+your PRADO application's assets and runtime directories.
The following upgrading instructions are cumulative. That is,
@@ -14,6 +14,11 @@ version B between A and C, you need to following the instructions
for both A and B.
+Upgrading from v3.0.0 RC2
+-------------------------
+There should be no compatibility issues.
+
+
Upgrading from v3.0.0 RC1
-------------------------
- !!! Expressions appeared in a template are now evaluated in PreRender
@@ -27,6 +32,7 @@ Upgrading from v3.0.0 RC1
the integers as their list item values. Previously, it used the array
values as the list item values.
+
Upgrading from v3.0.0 beta
--------------------------
- THttpSession.UseCustomStorage replaces the previous Storage.
diff --git a/demos/quickstart/protected/pages/Controls/Literal.page b/demos/quickstart/protected/pages/Controls/Literal.page
index d7b44aff..30a84880 100644
--- a/demos/quickstart/protected/pages/Controls/Literal.page
+++ b/demos/quickstart/protected/pages/Controls/Literal.page
@@ -5,7 +5,7 @@
<p>
<tt>TLiteral</tt> displays a static text on a Web page. <tt>TLiteral</tt> is similar to the <tt>TLabel</tt> control, except that the <tt>TLiteral</tt>
- * control does not allow child controls and has no style properties, such as <tt>BackColor</tt>, <tt>Font</tt>, etc.
+ * control has no style properties, such as <tt>BackColor</tt>, <tt>Font</tt>, etc.
</p>
<p>
@@ -13,6 +13,10 @@ The text displayed by <tt>TLiteral</tt> can be programmatically controlled by se
</p>
<p>
+<tt>TLiteral</tt> will render the contents enclosed within its component tag if <tt>Text</tt> is empty.
+</p>
+
+<p>
Be aware, if <tt>Encode</tt> is false, make sure <tt>Text</tt> does not contain unwanted characters that may bring security vulnerabilities.
</p>
diff --git a/demos/quickstart/protected/pages/GettingStarted/AboutPrado.page b/demos/quickstart/protected/pages/GettingStarted/AboutPrado.page
index 5ea7a1cf..6ac58b73 100644
--- a/demos/quickstart/protected/pages/GettingStarted/AboutPrado.page
+++ b/demos/quickstart/protected/pages/GettingStarted/AboutPrado.page
@@ -48,21 +48,21 @@ Without caching techniques, PRADO may not be suitable for developing extremely h
PRADO is described as a unique framework. Its uniqueness mainly lies in the component-based and event-driven programming paradigm that it tries to promote. Although this programming paradigm is not new in desktop application programming and not new in a few Web programming languages, PRADO is perhaps the first PHP framework enabling it.
</p>
<p>
-Most PHP frameworks are trying to establish a loose standard of organizing PHP programming, most preferably the MVC (model-view-controller) model. It is difficult to compare PRADO with these frameworks because they have different focuses. What we can say is, PRADO is more like a high-level language built upon PHP while those MVC frameworks stand for the best programming practices. Both aim to help developers to rapidly complete Web application development. The advantage of PRADO is its rich set of prebuilt powerful components and extreme reusability of the PRADO code, while the advantage of the MVC frameworks is the complete separation of model, view and controller, which greatly facilitates team integration.
+Most PHP frameworks are trying to establish a loose standard of organizing PHP programming, most preferably the MVC (model-view-controller) model. It is difficult to compare PRADO with these frameworks because they have different focuses. What we can say is, PRADO is more like a high-level language built upon PHP, while the MVC frameworks stand for the best programming practices. Both aim to help developers to rapidly complete Web application development. The advantage of PRADO is its rich set of prebuilt powerful components and extreme reusability of the PRADO code, while the advantage of the MVC frameworks is the complete separation of model, view and controller, which greatly facilitates team integration.
</p>
<h2>History of PRADO</h2>
<p>
-The very original inspiration of PRADO came from Apache Tapestry. During the design and implementation, I borrowed many ideas from Borland Delphi and Microsoft ASP.NET. The first version of PRADO came out in June 2004 and was written in PHP 4. Driven by the Zend PHP 5 coding contest, I rewrote PRADO in PHP 5, which proved to be a wise move, thanks to the new object model provided by PHP 5. PRADO won the grand prize in the Zend contest, earning high votes both from the public and from the judges' panel.
+The very original inspiration of PRADO came from Apache Tapestry. During the design and implementation, I borrowed many ideas from Borland Delphi and Microsoft ASP.NET. The first version of PRADO came out in June 2004 and was written in PHP 4. Driven by the Zend PHP 5 coding contest, I rewrote PRADO in PHP 5, which proved to be a wise move, thanks to the new object model provided by PHP 5. PRADO won the grand prize in the Zend contest, earning the highest votes from both the public and the judges' panel.
</p>
<p>
-In August 2004, PRADO was hosted on SourceForge as an open source project. Soon after, the project site <a href="http://www.xisc.com/">xisc.com</a> was announced to public. With the fantastic support of PRADO developer team and PRADO users, PRADO evolved to version 2.0 in mid 2005. In this version, Wei Zhuo contributed to PRADO with the excellent I18 and L10N support.
+In August 2004, PRADO started to be hosted on SourceForge as an open source project. Soon after, the project site <a href="http://www.xisc.com/">xisc.com</a> was announced to public. With the fantastic support of PRADO developer team and PRADO users, PRADO evolved to version 2.0 in mid 2005. In this version, Wei Zhuo contributed to PRADO with the excellent I18N and L10N support.
</p>
<p>
In May 2005, we decided to completely rewrite the PRADO framework to resolve a few fundamental issues found in version 2.0 and to catch up with some cool features available in Microsoft ASP.NET 2.0. After nearly a year's hard work with over 50,000 lines of new code, version 3.0 was finally made available in April 2006.
</p>
<p>
-Starting from version 3.0, significant efforts are allocated to ensure the quality and stability of PRADO. If we say PRADO v2.x and v1.x are proof-of-concept work, we can say PRADO 3.x grows up to a serious project that is suitable for business application development.
+Starting from version 3.0, significant efforts are allocated to ensure the quality and stability of PRADO. If we say PRADO v2.x and v1.x are proof-of-concept work, we can say PRADO 3.x has grown up to a project that is suitable for serious business application development.
</p>
</com:TContent> \ No newline at end of file
diff --git a/framework/Web/UI/WebControls/TLiteral.php b/framework/Web/UI/WebControls/TLiteral.php
index 35888676..f335499f 100644
--- a/framework/Web/UI/WebControls/TLiteral.php
+++ b/framework/Web/UI/WebControls/TLiteral.php
@@ -15,11 +15,14 @@
*
* TLiteral displays a static text on the Web page.
* TLiteral is similar to the TLabel control, except that the TLiteral
- * control does not allow child controls and do not have style properties (e.g. BackColor, Font, etc.)
+ * control does not have style properties (e.g. BackColor, Font, etc.)
* You can programmatically control the text displayed in the control by setting
* the {@link setText Text} property. The text displayed may be HTML-encoded
* if the {@link setEncode Encode} property is set true (defaults to false).
*
+ * TLiteral will render the contents enclosed within its component tag
+ * if {@link setText Text} is empty.
+ *
* Note, if {@link setEncode Encode} is false, make sure {@link setText Text}
* does not contain unwanted characters that may bring security vulnerabilities.
*
@@ -76,6 +79,8 @@ class TLiteral extends TControl
else
$writer->write($text);
}
+ else
+ parent::renderContents($writer);
}
}
diff --git a/framework/Web/UI/WebControls/TTable.php b/framework/Web/UI/WebControls/TTable.php
index fe01649c..4fcbb6fb 100644
--- a/framework/Web/UI/WebControls/TTable.php
+++ b/framework/Web/UI/WebControls/TTable.php
@@ -45,7 +45,7 @@ Prado::using('System.Web.UI.WebControls.TTableRow');
* <com:TTableCell Text="content" />
* <com:TTableCell Text="content" />
* </com:TTableRow>
- * <com:TTable>
+ * </com:TTable>
* </code>
* The above can also be accomplished in code as follows,
* <code>