
         Upgrading Instructions for PRADO Framework v3.1.0
         =================================================

!!!IMPORTANT!!!

After installing the framework, remember to delete everything under
your PRADO application's assets and runtime directories.


The following upgrading instructions are cumulative. That is,
if you want to upgrade from version A to version C and there is
version B between A and C, you need to following the instructions
for both A and B.


Upgrading from v3.0.x
---------------------
- Validators ClientSide.OnSuccess becomes ClientSide.OnValidationSuccess, 
- Validators ClientSide.OnError becomes ClientSide.OnValidationError, 
- Validator OnSuccess event becomes OnValidationSuccess. 
- Validator OnError event becomes OnValidationError. 
- Content enclosed in <!-- --> is now parsed as normal template content.
  Previously, it was not parsed and was rendered as is.

Upgrading from v3.0.5
---------------------
- TRepeater does not render <span> anymore for empty item template.
- constructUrl() now encodes ampersand by default. This should have minimal
  impact on any existing PRADO applications, though.
- TDataGrid does not generate default table styles. This may affect
  the appearance of existing PRADO applications that use TDataGrid.
- If TUrlMapping is used, you need to set the UrlManager property of
  THttpRequest to the module ID of TUrlMapping.
- TJavascriptLogger toggle key is changed from ALT-D to ALT-J. 
   Use the ToggleKey property chanage to a different key.

Upgrading from v3.0.4
---------------------
- TFileUpload::saveAs() will return false instead of raising an exception
  if it encounters any error.
- TDropDownListColumn.DataField is renamed to DataTextField and
  DataFormatString is renamed to DataTextFormatString.
  A new property named DataValueField is added.

Upgrading from v3.0.3
---------------------
- The 'Static' value is changed to 'Fixed' for the Display property of 
  all validators as well as TValidationSummary, due to conflict with PHP keywords.
- The 'List' value is changed to 'SimpleList' for TValidationSummary.DisplayMode.
- The 'List' value is changed to 'DropDownList' for TPager.Mode
- This change affects existing client-side javascript handlers such as
  <com:TRequiredFieldValidator ClientSide.OnSuccess="xxx" />
  All ClientSide javascript event handlers (such as ClientSide.OnSuccess)
  are by default wrapped within the function block.
       function(sender, parameter){ // handler code }
  You may override this behaviour by providing your own javascript statement block
  as "javascript:MyHandlerFunction", e.g. ClientSide.OnSuccess="javascript:MyHandlerFunction"
  or ClientSide.OnSuccess="javascript:function(validator,sender){ ... }"


Upgrading from v3.0.2
---------------------
- The minimum PHP version required is raised to 5.1.0 and above.
  If your server is installed with a lower version of PHP, you will
  have to upgrade it in order to run PRADO applications.
- The signature of TControl::broadcastEvent() is changed from
  broadcastEvent($sender,TBroadCastEventParameter $param) to
  broadcastEvent($name,$sender,$param).
  This makes the call to broadcastEvent() to be consistent with raiseEvent().

Upgrading from v3.0.1
---------------------
- Postback enabled control will always disable default client-side browser action.
  This is due to google toolbar's interference of event stopping scheme.
  This modification should only affect user-derived postback javascripts.

Upgrading from v3.0.0
---------------------
- URL format is modified when THttpRequest.UrlFormat=='Path'.
  This modification affects both the URLs generated by calling constructUrl()
  and the URLs understood by PRADO. In particular, PRADO now understands
  the following URL format:
  /index.php/ServiceID,ServiceParam/Name1,Value1/Name2,Value2/...
  In v3.0.0, the above URL is written as:
  /index.php/ServiceID/ServiceParam/Name1/Value1/Name2/Value2/...
- TControl::onBubbleEvent() has been changed to TControl::bubbleEvent().
  This change only affects user controls that override this method.

Upgrading from v2.x and v1.x
----------------------------
PRADO v3.x is not backward compatible with v2.x and v1.x.
