| 1 |
|
|---|
| 2 | Upgrading Instructions for PRADO Framework v3.1.1
|
|---|
| 3 | =================================================
|
|---|
| 4 |
|
|---|
| 5 | !!!IMPORTANT!!!
|
|---|
| 6 |
|
|---|
| 7 | The following upgrading instructions are cumulative. That is,
|
|---|
| 8 | if you want to upgrade from version A to version C and there is
|
|---|
| 9 | version B between A and C, you need to following the instructions
|
|---|
| 10 | for both A and B.
|
|---|
| 11 |
|
|---|
| 12 | Upgrading from v3.1.0
|
|---|
| 13 | ---------------------
|
|---|
| 14 | - The RELATIONS declaration in Acive Record classes is changed from
|
|---|
| 15 | "protected static $RELATIONS" to "public static $RELATIONS".
|
|---|
| 16 | - IFeedContentProvider adds a new method: getContentType(). This affects any
|
|---|
| 17 | class implementing this interface.
|
|---|
| 18 | - TUrlMapping now only uses the PATH_INFO part of URL for matching, and the matching
|
|---|
| 19 | is for the whole PATH_INFO.
|
|---|
| 20 | - IUserManager adds two new methods: getUserFromCookie() and saveUserToCookie().
|
|---|
| 21 | This affects classes that implements this interface and does not extend from
|
|---|
| 22 | TUserManager.
|
|---|
| 23 | - The order of application lifecycles is changed. The loadState and loadStateComplete
|
|---|
| 24 | are moved to right after onBeginRequest.
|
|---|
| 25 | - TDropDownList will be in an unselected state if no initial selection is specified.
|
|---|
| 26 | That is, its SelectedIndex will be -1. Previously, the first item will be considered as selected.
|
|---|
| 27 |
|
|---|
| 28 | Upgrading from v3.1b
|
|---|
| 29 | --------------------
|
|---|
| 30 | - Comment tag <!-- ... ---> (introduced in v3.1a) is changed to <!--- ... --->
|
|---|
| 31 | - When TDataList.RepeatLayout is Raw, the items will render <div> instead of <span>
|
|---|
| 32 | - TActiveRecord finder methods will always return a new object instance (identity mapping was removed).
|
|---|
| 33 | - TActiveRecord::findBySql() will return an object rather than an array
|
|---|
| 34 | - TActiveRecord::findAllBySql() will return an array of objects.
|
|---|
| 35 |
|
|---|
| 36 | Upgrading from v3.1a
|
|---|
| 37 | ---------------------
|
|---|
| 38 | - The signature of TActiveRecord::finder() is changed. This affects
|
|---|
| 39 | all TActiveRecord-descendant classes that override this method.
|
|---|
| 40 | Please use the following code to override the method:
|
|---|
| 41 | public static function finder($className=__CLASS__)
|
|---|
| 42 | {
|
|---|
| 43 | return parent::finder($className);
|
|---|
| 44 | }
|
|---|
| 45 |
|
|---|
| 46 | - The way to specify the table name for an active record class is changed.
|
|---|
| 47 | Previously, it used the static class member '_tablename'.
|
|---|
| 48 | Now it uses class constant as follows:
|
|---|
| 49 | class UserRecord extends TActiveRecord
|
|---|
| 50 | {
|
|---|
| 51 | const TABLE='users_table';
|
|---|
| 52 | }
|
|---|
| 53 |
|
|---|
| 54 | - Changed TActiveRatingList's javascript control class
|
|---|
| 55 | name from "Prado.WebUI.TRatingList" to "Prado.WebUI.TActiveRatingList".
|
|---|
| 56 |
|
|---|
| 57 | - PRADO's javascript library locations moved from Web/Javascripts/xxx to Web/Javascripts/source/xxx
|
|---|
| 58 |
|
|---|
| 59 | - IPostBackDataHandler added a new method getDataChanged(). Any control
|
|---|
| 60 | implementing this interface will be required to implement this new method.
|
|---|
| 61 |
|
|---|
| 62 | Upgrading from v3.0.x
|
|---|
| 63 | ---------------------
|
|---|
| 64 | - Validators ClientSide.OnSuccess becomes ClientSide.OnValidationSuccess,
|
|---|
| 65 | - Validators ClientSide.OnError becomes ClientSide.OnValidationError,
|
|---|
| 66 | - Validator OnSuccess event becomes OnValidationSuccess.
|
|---|
| 67 | - Validator OnError event becomes OnValidationError.
|
|---|
| 68 | - Content enclosed in <!-- --> is now parsed as normal template content.
|
|---|
| 69 | Previously, it was not parsed and was rendered as is.
|
|---|
| 70 |
|
|---|
| 71 | Upgrading from v3.0.7
|
|---|
| 72 | ---------------------
|
|---|
| 73 |
|
|---|
| 74 | Upgrading from v3.0.6
|
|---|
| 75 | ---------------------
|
|---|
| 76 |
|
|---|
| 77 | Upgrading from v3.0.5
|
|---|
| 78 | ---------------------
|
|---|
| 79 | - TRepeater does not render <span> anymore for empty item template.
|
|---|
| 80 | - constructUrl() now encodes ampersand by default. This should have minimal
|
|---|
| 81 | impact on any existing PRADO applications, though.
|
|---|
| 82 | - TDataGrid does not generate default table styles. This may affect
|
|---|
| 83 | the appearance of existing PRADO applications that use TDataGrid.
|
|---|
| 84 | - If TUrlMapping is used, you need to set the UrlManager property of
|
|---|
| 85 | THttpRequest to the module ID of TUrlMapping.
|
|---|
| 86 | - TJavascriptLogger toggle key is changed from ALT-D to ALT-J.
|
|---|
| 87 | Use the ToggleKey property chanage to a different key.
|
|---|
| 88 | - Javascript Library rico was REMOVED.
|
|---|
| 89 |
|
|---|
| 90 | Upgrading from v3.0.4
|
|---|
| 91 | ---------------------
|
|---|
| 92 | - TFileUpload::saveAs() will return false instead of raising an exception
|
|---|
| 93 | if it encounters any error.
|
|---|
| 94 | - TDropDownListColumn.DataField is renamed to DataTextField and
|
|---|
| 95 | DataFormatString is renamed to DataTextFormatString.
|
|---|
| 96 | A new property named DataValueField is added.
|
|---|
| 97 |
|
|---|
| 98 | Upgrading from v3.0.3
|
|---|
| 99 | ---------------------
|
|---|
| 100 | - The 'Static' value is changed to 'Fixed' for the Display property of
|
|---|
| 101 | all validators as well as TValidationSummary, due to conflict with PHP keywords.
|
|---|
| 102 | - The 'List' value is changed to 'SimpleList' for TValidationSummary.DisplayMode.
|
|---|
| 103 | - The 'List' value is changed to 'DropDownList' for TPager.Mode
|
|---|
| 104 | - This change affects existing client-side javascript handlers such as
|
|---|
| 105 | <com:TRequiredFieldValidator ClientSide.OnSuccess="xxx" />
|
|---|
| 106 | All ClientSide javascript event handlers (such as ClientSide.OnSuccess)
|
|---|
| 107 | are by default wrapped within the function block.
|
|---|
| 108 | function(sender, parameter){ // handler code }
|
|---|
| 109 | You may override this behaviour by providing your own javascript statement block
|
|---|
| 110 | as "javascript:MyHandlerFunction", e.g. ClientSide.OnSuccess="javascript:MyHandlerFunction"
|
|---|
| 111 | or ClientSide.OnSuccess="javascript:function(validator,sender){ ... }"
|
|---|
| 112 |
|
|---|
| 113 |
|
|---|
| 114 | Upgrading from v3.0.2
|
|---|
| 115 | ---------------------
|
|---|
| 116 | - The minimum PHP version required is raised to 5.1.0 and above.
|
|---|
| 117 | If your server is installed with a lower version of PHP, you will
|
|---|
| 118 | have to upgrade it in order to run PRADO applications.
|
|---|
| 119 | - The signature of TControl::broadcastEvent() is changed from
|
|---|
| 120 | broadcastEvent($sender,TBroadCastEventParameter $param) to
|
|---|
| 121 | broadcastEvent($name,$sender,$param).
|
|---|
| 122 | This makes the call to broadcastEvent() to be consistent with raiseEvent().
|
|---|
| 123 |
|
|---|
| 124 | Upgrading from v3.0.1
|
|---|
| 125 | ---------------------
|
|---|
| 126 | - Postback enabled control will always disable default client-side browser action.
|
|---|
| 127 | This is due to google toolbar's interference of event stopping scheme.
|
|---|
| 128 | This modification should only affect user-derived postback javascripts.
|
|---|
| 129 |
|
|---|
| 130 | Upgrading from v3.0.0
|
|---|
| 131 | ---------------------
|
|---|
| 132 | - URL format is modified when THttpRequest.UrlFormat=='Path'.
|
|---|
| 133 | This modification affects both the URLs generated by calling constructUrl()
|
|---|
| 134 | and the URLs understood by PRADO. In particular, PRADO now understands
|
|---|
| 135 | the following URL format:
|
|---|
| 136 | /index.php/ServiceID,ServiceParam/Name1,Value1/Name2,Value2/...
|
|---|
| 137 | In v3.0.0, the above URL is written as:
|
|---|
| 138 | /index.php/ServiceID/ServiceParam/Name1/Value1/Name2/Value2/...
|
|---|
| 139 | - TControl::onBubbleEvent() has been changed to TControl::bubbleEvent().
|
|---|
| 140 | This change only affects user controls that override this method.
|
|---|
| 141 |
|
|---|
| 142 | Upgrading from v2.x and v1.x
|
|---|
| 143 | ----------------------------
|
|---|
| 144 | PRADO v3.x is not backward compatible with v2.x and v1.x.
|
|---|