-
Notifications
You must be signed in to change notification settings - Fork 7
/
Copy pathCHANGELOG
395 lines (361 loc) · 21.9 KB
/
CHANGELOG
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
Version 1.3.2 - 24 Jan, 2020
----------------------------
- New: added CRecordEntity to ORM model
- New: added phpunit tests
- Enh: added possibility to use create() and update() methods in CActiveRecord
- Enh: changes in components CHttpRequest
- Enh: minor changes in database migrations
- Enh: added possibility to define order for CSS and JS registration files
- Enh: changes in helpers CValidator, CRss, CDebug, CHash, CGeoLocation, CConfig, CHtml
- Enh: in CDataForm and CFormView added new type of validation: "regex"
- Enh: code syntax changed according to new code convention
- Enh: added possibility to define lazy loading (by default) for components
- Enh: added possibility for lazy loading of core components via config
- Enh: fixed wrong path of log file in CLogger component
- Bug: fixed PHP7 syntax requirements in TCPDF vendor, CValidator helper
- Bug: fixed overwriting existing vars in View rendeting
Version 1.2.2 - 01 Jan, 2019
----------------------------
- New: added possibility to define Captcha fields in CDataForm widget
- New: added possibility to define access permissions to controller actions via _accessRules() method
- New: added possibility to minify CSS and JS files via config file
- New: added Arabic language to i18n
- New: added possibility for new type of cache - data cache, changes in config file
- New: added new helper CClass
- Enh: minimum requirements for PHP is defined as 5.4.0
- Enh: allowed creating and removing cache files by cache ID
- Enh: changes in components CHttpRequest
- Enh: changes in helpers CFile, CDataForm, CValidator, CLocalTime
- Enh: added possibility to add watermark for uploaded images with CImage::addWatermark() in CDataForm
- Enh: added possibility to remove whole section in FormView by using 'disabled'=>true
- Enh: minimum requirements for PHP is defined as 5.4.0
- Bug: fixed error on witting to file in CFile helper
- Bug: fixed warning on double call of CView::renderContent()
Version 1.1.5 - 06 Jan, 2018
----------------------------
- New: added CDbCommand - query builder core class
- New: added possibility to define select list in CActiveRecord::FindAll() method
- New: added new type of CSRF tokens "multipages", that allows to generate tokens for separate pages
- Enh: minimum requirements for PHP is defined as 5.3.0
- Enh: for date and datetime fields default value defined as NULL, '0000-00-00' is deprecated
- Enh: TCPDF library updated to v6.2.13
- Enh: showed all variables that were defined in current view in Debug Panel
- Enh: added automatically added back quotes in SQL statements according to database driver
- Enh: minor changes in CLocale, CTime, CGridView, CString, CHtml helpers
- Enh: changes in CDatabase core class
- Enh: minor changes in code for PHP7 compatibility
- Enh: CHash::salt() is now compatible with PHP7.1 or later
- Bug: fixed registration of empty components in _registerAppComponents()
- Bug: fixed output handler 'ob_gzhandler' conflicts with zlib output compression' - special thanks to Ilias Minogiannis
- Bug: isNewRecord was staying with previous value after using save() method in CActiveRecord
- Bug: fixed possibility to upload unexpected file extensions
- Bug: fixed warning on empty buffer when calls ob_end_clean()
Version 1.0.3 - 23 Jun, 2017
----------------------------
- New: added possibility to catch and handle global exceptions
- New: added possibility to use in config default error controller
- New: added possibility to return CActiveRecord find() result as array
- New: added new helper CMinify
- Enh: changes in CHtml, CArray, CValidator, CFile, CGridView helpers
- Enh: changed format of compression if config
- Enh: added multi-select for SELECT tags
- Enh: modules/ and vendors/ directories moved to assets/ directory
- Enh: PHPMailer upgraded to 5.2.22
- Enh: removed check for "magic_quotes" functions for PHP < 5.3
- Enh: added new parameter "redirection code" for method redirect() for controllers
- Enh: added possibility to define custom methods for model in CGridView
- Enh: added possibility to define db connection via sockets
- Enh: changed names for classes that compatible with PHP 5.3.0 or higher
- Enh: added alternative for PHP > 7.0.0 for mcrypt_encrypt/mcrypt_decrypt functions in CHash helper
- Enh: added styling for debug panel on mobile devices
- Bug: fixed error on including module classes in "hidden" mode
- Bug: fixed error in Facebook social login
- Bug: added missing locales in CLocalTime
Version 0.9.0 - 10 Dec, 2016
----------------------------
- New: added new components: CLogger, CMobileDetect
- New: added new helper: CLog
- New: added support for layouts
- New: added new field type in CDataForm and CFormView - "color"
- Enh: changes in A::app()->getLanguage()
- Enh: added _onEndRequest events in class A
- Enh: added isWritable() method for CFile system helper
- Enh: changes in helper Currencies
- Enh: added in COauth strategy for LinkedIn
- Enh: added validation for Short Open tags in utils/requirements
- Enh: PHPMailer upgraded to 5.2.16
- Enh: automatically adding $htmlOptions['enctype'] = 'multipart/form-data'; if it's missing in form options
Version 0.8.3 - 01 Jul, 2016
----------------------------
- New: added A::app()->load() method that allows to load library files
- New: added application libraries and files CLoader helper class
- New: added global backtrace for application
- New: namespaces support for modules
- New: added SOAP vendor - nusoap
- New: added OPAUTH vendor - opauth
- Enh: minor changes in CDebug core class
- Enh: minor changes in CHtml::link() method - added automatically added rel="noopener noreferrer" for target="_blank"
- Enh: minor changes in helper CGeoLocation
- Enh: translation in Spanish for core messages
- Enh: minor changes in CDatabase db class
- Enh: added new options for DB-level caching: "auto" and "manual"
- Bug: fixed non-working 'definedValues'=>'' attribute for label fields in CDataForm widget
- Bug: fixed error on not defined PDO::MYSQL_ATTR_INIT_COMMAND for PHP < 5.3.6
- Bug: fixed issue with key length for enccrypt functions in CHash.php
Version 0.7.7 - 05 Dec, 2015
----------------------------
- New: added possibility to create view files in sub-directories upto 3rd level
- New: added new helpers: CGeoLocation, CConvert
- New: added new component: CShoppingCart
- New: added new translate method te() that allows to encode output
- Enh: added new helper CLocale that allows to display data in local settings format and language
- Enh: minor changes in CValidator, CLanguageSelector, CBreadCrumbs, CFile, CDataForm, CGridView, CValidator helpers
- Enh: added new functionality agregate functions to CGridView helper
- Enh: added decimalPoints attribute for decimal fields in CGridView helper
- Enh: added new validation type isHtmlSize to CDataForm and CFormValidator
- Enh: allowed to use CCaptcha for few forms on the same page
- Enh: allowed to return content in CView::render()
- Enh: added possibility to sort by numeric value for CGridView
- Enh: improved security in getting server port in CHttpRequest
- Enh: in CDebug panel added possibility to see all included files, executing time and more...
- Enh: if language constant doesn't exist in Debug Mode it gets a prefix '@@@'
- Enh: added possibility to disable filter fields in CGridView by 'disabled'=>true
- Enh: in CHttpSession startSession() redone into public method
- Bug: wrong showing two or more datetime fields in CFormView
- Bug: in registration JS scripts before </body> in CClientScript
- Bug: in moving focus on error fields for CFormView
- Bug: in drawing datePicker script in CGridView and CFormView
- Bug: in CGridView when link text does not accept linkText as {field_name}
- Bug: missing "." in CGridView on "decimal" fields in european format
- Bug: fixed drawing wrong text in CMessageSource when language constant value is empty
Version 0.6.9 - 16 May, 2015
----------------------------
- New: added new vendor dBug component
- New: added new vendor CI_Security class
- New: added new vendor TCPDF component
- New: added new field type "fileUpload" for CDataForm widget
- New: added new component CUri for parsing of URIs
- New: added possibility to include one view from another view with $this->renderView() syntax
- Enh: placement of component views moved from directory protected/components/views/ to directory protected/views/components/
- Enh: added possibility to extend framework core classes
- Enh: added possibility to create helpers on application and module levels
- Enh: added possibility to override default Controller/Action from modules config files
- Enh: PHPMailer vendor updated to v5.2.9
- Enh: CDebug::display() renamed into CDebug::dump()
- Enh: added possibility to write log into console: CDebug::console() or CDebug::c()
- Enh: added new methods to CHttpRequest core class: isAjaxRequest(), isPutRequest(), isDeleteRequest() and getBrowser()
- Enh: minor changes in CDbHttpSession and CHttpSession core classes
- Enh: minor changes in CFile, CFormValidator, CValidator, CFormView helpers
- Enh: in CDebug panel added possibility to close debug panel with double click on active tab
- Enh: minor changes in syntax of models
- Enh: in class A added aliases to components - request, session, cookie etc.
- Enh: in components class CHttpRequest added aliases post() and get() to getPost/SetPost, getQuery/SetQuery
- Enh: added new method distinct() for CActiveRecords
- Enh: added possibility to define callback controller method for CDataForm
- Enh: added translation into Polish
- Bug: missing description of error on empty or wrong definition of _tableTranslation on models
- Bug: fixed warning - non-static method CTime::dateParseFromFormat()
- Bug: fixed UTF-8 issue in debug mode
- Bug: fixed wrong redirection on empty action in CRouter core class
- Bug: fixed wrong URL routing when 2 or more parameters were defined
- Bug: missing table prefixes in CDbHttpSession component class
- Bug: error in reading session data in CDbHttpSession component class
- Bug: syntax error on definition of init() and model() methods in CComponent and CActiveRecords classes
- Bug: unexpected debug error message of missing locale for current language
- Bug: fixed security issue in uploading files in CFormValidation helper
Version 0.5.9 - 29 Dec, 2014
----------------------------
- New: added new helper class CArray
- Enh: added translation into Hebrew
- Enh: in CActiveRecords added new method updateByPk
- Enh: in CActiveRecords findByPk() returns object instead of array
- Enh: in CActiveRecords added new method refresh() and improved method count()
- Enh: in CActiveRecords added new method sum()
- Enh: in CActiveRecords improved method count()
- Enh: minor changes in CGridView, CBreadCrumbs, CValidator, CDataForm
- Enh: minor changes in CDatabase db class
- Enh: added new method updateAll in CActiveRecords
- Enh: minor changes in CDebug core class
- Enh: minor changes in CHttpRequest
- Enh: minor changes in CHttpSession component
- Enh: minor changes in CMenu, CValidator helpers
- Enh: minor changes in CLanguageSelector
- Enh: minor changes in CFile in copy folder permissions
- Enh: minor changes in CConfig collection class
- Bug: fixed issue using cache in application bootstrap component
- Bug: fixed wrong SQL in max() method of CActiveRecords
- Bug: fixed missing COUNT(*) in count() method of CActiveRecords
- Bug: fixed in returning current language
- Bug: fixed in CDebug class
- Bug: fixed in CMailer class phpMail() for sending HTML messages
- Bug: fixed in CFormView when drawing disabled or hidden fields
- Bug: fixed issue when error 404 is not shown for module CMS
- Bug: fixed access permissions issue in CFile::copyDirectory()
Version 0.4.4 - 29 Apr, 2014
----------------------------
- New: added new helper CCurrency and CCurrencySelector, that provides a set of helper methods for common currency operations
- New: added new helper CNumber
- New: added new widget CCaptcha
- New: added new helper CImage, that provides a set of helper methods for common image system operations
- New: added new helper CCache and support to db caching operations
- New: added new core component CDbHttpSession for custom session data storage
- Enh: minor changes in CPagination helper class
- Enh: minor changes in CTime, CDataForm, CString, CGridView, CValidator and CFormValidator helper classes
- Enh: minor changes in CDatabase core class
- Enh: minor changes in CHtml, CPagination helper classes
- Enh: minor changes in CDebug core class
- Enh: in CActiveRecords added possibility to define multiple relations from the same key
- Enh: improved language and currency handler procedures
- Enh: added additional options to CHtml::listOptions method
- Enh: changes in CMessageSource to accept translation from setup module
- Enh: changes in Apphp class - added router property
- Enh: minor changes in CRouter core class
- Enh: minor changes in CMailer helper class
- Enh: changes in syntax for some model methods
- Bug: fixed case-sensitivity problem of view file names
- Bug: fixed "base" tag problem in Internet Explorer
- Bug: fixed in CValidator::isDate()
- Bug: double call of beforeDelete() in ActiveRecord class
- Bug: fixed issue with using some reserved names for CView
Version 0.3.4 - 17 Sep, 2013
----------------------------
- New: added new widget "tabs" in helper CWidget
- New: added new widget "gridView" in helper CWidget
- New: added new component CHttpCookie for cookie management operations
- New: added new component CLocalTime for work with timezones and locale
- New: added new helper CFile, that provides a set of helper methods for common file system operations
- New: added i18n internationalization and translation
- New: added new field type 'imageUpload' to CFormView widget
- New: added possibility to create application modules
- New: added CTime helper class
- Enh: minor changes in pagination widget
- Enh: minor changes in CWidget::formView() and CWidget::menu()
- Enh: minor changes in View core class
- Enh: setting default time zone placed to CLocalTime component
- Enh: CAuth::handleLogged() renamed into CAuth::handleLoggedIn()
- Enh: minor changes in CAuth helper class
- Enh: minor changes in CValidator helper class
- Enh: CWidget::form() renamed into CWidget::formView()
- Enh: added global test for database connection for application with db in Apphp class
- Enh: minor changes in CHttpRequest
- Enh: all widgets places in separated classes under helpers/widgets/ directory
- Enh: improved debug info for fatal database errors
- Bug: fixed strict errors for model classes
- Bug: fixed UTF-8 issue with insertion/retrieving strings from database
- Bug: fixed mapping error for model classes named like AaaBbbCcc
- Bug: fixed mapping error for model component classes
Version 0.2.4 - 01 Apr, 2013
----------------------------
- New: added new demo - Simple Blog
- New: added new core class CActiveRecords implements "Active Record" pattern
- New: added real check for "mod_rewrite" in utils requirements checker
- New: added core base class CComponent, now all application component classes extends CComponent
- New: added get/SetResponseCode() for A class
- New: added new widget "pagination" in helper CWidget
- New: added possibility to create and register application-level components
- New: added new component CMessageSource for localization purposes
- Enh: suffix Model for model classes is now optional (not required)
- Enh: added new elements and properties in CWidget::form() and CWidget::formValidation()
- Enh: added new elements to Html helper
- Enh: minor changes in Auth helper
- Enh: minor changes in CController->errorAction()
- Enh: improved error handling in Database class
- Enh: all framework classes get prefix "C" to avoid name overlapping
- Enh: removed passing registry to CRouter::route()
- Enh: in CDatabase added possibility to define named placeholder with data type. e.g: i:id
- Bug: fixed error while uploading empty image field in CWidget::formValidation()
- Bug: fixed error on processing of wrong render() parameters
- Bug: fixed magic quotes issue for sql statements in Database class
- Bug: fixed unauthorized access to PHP files in templates directory
Version 0.1.2 - Feb 14, 2013
----------------------------
- New: added new application component ClientScript
- New: added possibility to define direct URL rewrite rules via config file
- New: added new helper Auth, that responsible to handle authentication things
- New: added new core class Database, that responsible to handle database connections, queries, etc.
- New: added new widget "message" in helper Widget
- New: added new helper Hash
- New: added new widget "form" in helper Widget
- New: added new online setup wizard for applications
- Enh: added new vendor phpMailer, that allows sending emails using php mail() function or smtp
- Enh: added possibility to send HTML messages in CMailer helper class
- Enh: new features and changes in some tests
- Enh: improved redirect() method of Controller class
- Enh: added possibility to HttpRequest::getQuery() recognize parameters in following way: param1/val2/...
- Enh: autoload method in Apphp class for loading model classes
- Enh: Apphp class renamed into A class
- Enh: changes in configuration settings
- Enh: changes in Controller class - removed property "request"
- Bug: fixed T_PAAMAYIM_NEKUDOTAYIM error in Apphp class for PHP < 5.3.0
- Bug: fixed issue with trailing slash (//) in HttpRequest::setBaseUrl
- Bug: fixed drawing empty node in Widget::menu()
Version 0.1.1 - Dec 23, 2012
----------------------------
- New: added new application component HttpSession
- New: added events handler to Apphp class
- New: added possibility to perform CSRF Validation
- New: added new helper class Validator
- New: added possibility to create templates
- New: added new helper class - Mailer, that allows to send emails using php mail() function
- Enh: added new property to Apphp class - charset
- Enh: added more methods to Html helper
- Enh: improved Filter helper
- Enh: HttpRequest::getPost() now allow to sanitize data (2nd parameter)
- Enh: added possibility to define whether to use csrf validation via config file
- Enh: removed passing registry to Controller constructor
- Enh: minor changes in HttpRequest class
- Enh: added Getter for View class, allows to retrive values by Class->field
- Enh: in template file added echo Apphp::app()->view->getContent(); instead of using echo $content;
- Enh: Widget moved to helpers
- Enh: added setMetaTags method for View core class, that allows to set meta tags from controller
- Enh: improved debug info for fatal database errors
Version 0.1.0 - Dec 8, 2012
----------------------------
- New: re-designed architecture of the framework, added Apphp application class
- New: added framework requirements checker
- New: added new core class Widget that allows to add widgets to page
- New: added new core class Filter that allows to filter data
- New: added new helper class Html that allows to create HTMl elements
- New: added new demo - Static Site
- New: added possibility to access all application components with Apphp::app()
- New: added components loader
- Enh: render method of ViewBase class accepts now 2 possible values: "action" or "controller/action"
- Enh: redirect method of ControllerBase class accepts now 2 possible values: "action" or "controller/action"
- Enh: changed Config class chaining properties method into Config;;get(param1.param2...)
- Enh: added writing errors intto log file in protected/tmp/log/ directory on production mode
- Enh: added errorAction for ControllerBase class that shows default erro on missing action
- Enh: added new method breadCrumbs for Widget class
- Enh: added new methods for BaseUrl in Aphp class
- Enh: added new property to View that allows to store active menu
- Bug: fixed issue with definition of default datetime zone
Version 0.0.3 - Aug 18, 2012
----------------------------
- New: added possibility to call custom view in Template->Show()
- New: added possibility to create whole HTML template in application/templates/{template name}/ and public/{template name}/
- New: added core class Debug.php that allows to collect/trace all debug info
- New: added possibility to create/use different templates in one project
- New: added possibility to define default controller in config/index.php with DEFAULT_CONTROLLER
- Enh: re-designed views structure: now it looks like views/controller/action.php
- Enh: improved general cleaning of input in shared.php
- Enh: added 2nd param to Templates->Show() to allow loading whole template ot just a single view
- Enh: added index page for demos directory that allows to view all available demo applications
- Enh: __autoload function placed in a separate file, called from bootstrap.php
- Enh: base class Template renamed into BaseView
- Enh: main config file for each application changed from main.php into index.php
- Bug: fixed case-sensitivity problem of controller file names
- Bug: fixed parsing of query string in Router class
Version 0.0.2 - July 21, 2012
----------------------------
- New: added shared.php file with removing of Magic Quotes and unregistered of Globals
- New: 2 files to config/ directory - main.php and db.php
- New: added possibility to run 2 or more applications on the same framework
- New: added writing error log into tmp/logs/ directory in production mode
- New: added simple Hello World demo application to the script archive
- Enh: re-designed framework folders/files structure
- Enh: all paths in framework changed from relative to absolute with ROOT.DS.
- Enh: improved documentation, created README, UPDATE and other files in doc/ directory
- Enh: improved __autoload() - now it load all classes for applications and framework
Version 0.0.1 - July 12, 2012 (Initial release)
----------------------------
- New: created main structure
- New: created main entry to the application /public/index.php