Anda di halaman 1dari 46

Yii Framework Change Log

========================
Version 1.1.15 June 29, 2014
----------------------------
- Bug (CVE-2014-4672): CDetailView may be exploited to allow executing arbitrary
PHP script on the server (cebe, qiangxue)
Version 1.1.14 August 11, 2013
------------------------------
- Bug: There was unnecessary echo in CRUD views generated by Gii (samdark)
- Bug: CJavaScript::encode was formatting floats in a wrong way during encoding
(samdark)
- Bug: Fixed minLength and maxLength range check in CCaptchaAction::generateVeri
fyCode so values are now always stay in bounds (samdark)
- Bug #101: CActiveFinder::buildJoinTree() no longer uses 'false' for 'select' v
alue (klimov-paul)
- Bug #135: Fixed wrong CActiveRecord rows count with having (klimov-paul)
- Bug #139: Fixed Active Record lazy load through relation with condition (klimo
v-paul)
- Bug #150: Fixed CWidget was not switching between view paths when using themes
(antoncpu)
- Bug #159: CUploadedFile::getInstancesByName() has been fixed allowing correct
fetching files, which name is a part of other file name (klimov-paul)
- Bug #196: CActiveForm: models list whose errors should be displayed in error s
ummary is now customizable when using AJAX validation (resurtm)
- Bug #662: Fixed incorrect Active Record lazy loading of relation through BELON
GS_TO relation (klimov-paul)
- Bug #1464: Fixed transparent background for ImageMagick in CCaptchaAction (man
uel-84, cebe)
- Bug #1669: CNumberValidator used to add wrong error messages in case non-numer
ic values being validated (resurtm)
- Bug #1692: CWebUser::renewCookie() and CWebUser::restoreFromCookie() now make
use of the identityCookie options (f10i)
- Bug #1693: Fixed log file will rotate twice when high performance (monque)
- Bug #1724: Allow CClientScript registering scripts and script files with the H
TML options (klimov-paul)
- Bug #1732: CWebLogRoute and CProfileLogRoute with enabled $showInFireBug: fixe
d bug related to JS `console` object in MSIE 8 and 9 (resurtm)
- Bug #1763: CSqlDataProvider was appending another ORDER BY string to an existi
ng ORDER BY statement when using fieldname with dot (szako)
- Bug #1827: Gii wasn't properly handling table name with the schema part for Po
stgreSQL (resurtm)
- Bug #1895: Fixed erroneous language attributes in french views (located at `fr
amework\views\fr`) (Ragazzo)
- Bug #1909: CGridView::$filterSelector now prevents default action after event
has completed by returning false result in event handler function (matih)
- Bug #1911: MigrateCommand does not rely on cached value about migration table
existance anymore as this info could be outdated in testing enviroment (cebe)
- Bug #1915: CDataProviderIterator: fixed init in case of disabled pagination (a
ntoncpu)
- Bug #1916: CMssqlSchema::findColumns() issues an "invalid object name" error (
resurtm)
- Bug #1924: CLogFilter::$dumper added: this property can be used to get around
circular reference issue when using standard `var_export` dumper by changing it
to `print_r` (resurtm)
- Bug #1933: fixed using "multiple" parameter with a value of false in CHtml::ac
tiveDropDownList, CHtml::ListBox and CHtml::DropDownList (adminnu)
- Bug #1941: yiiactiveform.js form reset now uses CHtml::errorCss instead of a h
ardcoded value (mdomba)
- Bug #1942: CActiveForm client/ajax validation will now remove error class from
server side validation (mdomba)
- Bug #1945: Reference to undefined variable $column in CDbMigration::dropPrimar
yKey (paystey)
- Bug #1955: Some validators used to cause warnings or errors in case non-scalar
array typed values being checked (resurtm)
- Bug #1957: Add primary key support for MySQL schema (paystey)
- Bug #1984: CDbMigration: fix of undeclared variable usage in debug information
in dropPrimaryKey (papulovskiy)
- Bug #1990: CDateFormatter::formatWeekInMonth(): incorrect result for a week wh
ich was last in a previous year and first in a next year simultaneously (resurtm
)
- Bug #1996: Using yiic help for commands with parameters with array as default
value resulted in PHP error with latest PHP versions (dInGd0nG, samdark)
- Bug #1997: Cache key in CGettextMessageSource::loadMessages wasn't specific en
ough (odevyatkov)
- Bug #2023: CHttpRequest::stripSlashes() now modifies array keys as well (etien
neq)
- Bug #2030: Fixed problem with MySQL 4.x: Undefined Index: Comment in CMysqlSch
ema (cebe)
- Bug #2048: AR now uses alias from CActiveRecord::getTableAlias instead of alwa
ys using default "t" (s-larionov)
- Bug #2049: CStatElement relation with join option throw exception when key-fie
ld present on joined table (Yiivgeny)
- Bug #2078: Fixed problem with "undefined" parameter in query string when using
CListView or CGridView with enableHistory (Parpaing)
- Bug #2086: Fixed .hgignore rule for assets folder (GeXu3, Koduc)
- Bug #2087: CLocale: getLocaleDisplayName() was only returning the language dis
play name, not the full locale display name (brandonkelly)
- Bug #2112: Fixed broken yiic shell CRUD command (mbischof)
- Bug #2121: CMssqlSchema::resetSequence() incorrectly resets sequence (resurtm,
joewoodhouse)
- Bug #2122: CActiveRecord, lazy load: 'params' from relations used in 'through'
option were not applied to the final SQL statement (resurtm)
- Bug #2123: Fixed error in plural rules handling if locale has no plural rules
defined (cebe, stepanselyuk)
- Bug #2146: CEmailValidator fix when fsockopen() can output uncatched error 'Co
nnection refused (61)' (armab)
- Bug #2159: Fixed SQL syntax for delete command with join in MySQL (serebrov)
- Bug #2184: CDbHttpSession now supports MS SQL Server BLOB data type (cheuschob
er, resurtm)
- Bug #2201: Cannot use "having" with bound params in CActiveRecord::count() (iv
okund)
- Bug #2216: CDbCommandBuilder::createInCondition() has been updated, allowing t
o pass array of values with mixed keys for the single type column (klimov-paul)
- Bug #2223: CActiveForm::error does not respect CHtml::$errorMessageCss (ivokun
d)
- Bug #2239: Fixed CHtml::refresh() method to use proper syntax (mdomba)
- Bug #2241: COciSchema::resetSequence() now works the same way as the same meth
ods for the other RDMBSes. PHPDocs of the CMssqlSchema::resetSequence(), CMysqlS
chema::resetSequence(), CPgsqlSchema::resetSequence(), COciSchema::resetSequence
() and CSqliteSchema::resetSequence() methods have been adjusted to fit their re
al functionality (resurtm)
- Bug #2244: MessageCommand has been updated, allowing to merge string with valu
e '0' correctly (klimov-paul)
- Bug #2258: CJuiSliderInput didn't support string typed 'range' option (bookin)
- Bug #2283: Gii Model Generator's tooltips are not working and always invisible
(resurtm)
- Bug #2289: CDbCacheDependency with reuseDependentData did not invalidate cache
when getting cache across different requests (marcovtwout)
- Bug #2299: CMssqlSchema: findTableNames(), getTables() and getTableNames() met
hods used to prepend schema prefix to the table names twice (resurtm)
- Bug #2311: Fixed SQlite default value for timestamp CURRENT_TIMESTAMP (zeeke)
- Bug #2321: CGettextPoFile is now able to parse multiline msgid and msgstr decl
arations (resurtm)
- Bug #2325: Fixed UTF-8 troubles in CDateTimeParser (error in parsing chinese a
nd thai dates) (s-larionov)
- Bug #2336: PostgreSQL: CDbCommandBuilder used `NULL` instead of `DEFAULT` as d
efault value for the primary keys of serial type (resurtm)
- Bug #2368: Reset error CSS for ':input', which includes SELECT elements (bluey
ed)
- Bug #2398: Fixed 'Undefined variable: results' E_NOTICE at CProfileLogRoute (k
limov-paul)
- Bug #2402: Fixed clientValidation incorrectly rendered as HTML attribute, when
used in CActiveForm::error() (mdomba)
- Bug #2406: CUrlManager::$urlRuleClass now supports path alias value (as it was
described in its PHPDoc before this fix) (resurtm)
- Bug #2423: Fixed CHtml::button() enforces "value" attribute for the image butt
ons (klimov-paul)
- Bug #2426: CDbCriteria::__wakeup() used to issue an error in case SQL containi
ng fields were arrays and criteria parameters were specified (resurtm)
- Bug #2438: CViewAction now checks if requested view is a string to not fail wh
en array was given (cebe)
- Bug #2449: CSqlDataProvider causes an error when CDbCommand with enabled PDO::
FETCH_OBJ mode used as SQL source (resurtm)
- Bug #2454: Fix CMysqlColumnSchema::extractLimit for ENUM values containing com
ma (blueyed)
- Bug #2491: Prevent SQL exception being thrown when inserting a row into the se
ssion table whilst regenerating the session ID (mynameiszanders)
- Bug #2502: Fix match controller in access rule, match uniqueId instead id (sla
vcodev)
- Bug #2508: Fix CHtml::activeLabel() to resolve attribute input name for tabula
r input with custom 'for' (klimov-paul)
- Bug #2516: Fixed the bug that some $.fn.yiiGridView methods were not working a
lways if a custom CGridView::template was used (buakos)
- Bug #2524: Fixed incorrect HTTPS detection (resurtm)
- Bug #2551: CWebUser::loginRequired() AJAX response now properly sends 403 (cre
ocoder)
- Bug #2554: Fixed CRangeValidator when allowEmpty is false (samdark, creocoder)
- Bug #2565: CCaptchaAction in ImageMagick mode used to issue an exception in ca
se $backColor or $foreColor have had leading zeros (resurtm)
- Bug #2581: Fixed the bug with empty ajaxVar in jquery.yiilistview.js and jquer
y.yiigridview.js (seregagl)
- Bug #2602: CUrlValidator and CEmailValidator now works correctly with display_
errors = on and validateIDN = true (creocoder)
- Bug #2662: CLocale::getTerritory() used to return null value even for proper i
nput values, bug fix #1622 made in 1.1.13 has been reverted (resurtm)
- Bug #2632: Fixed inability import non-build aliases by config on some case (Yi
ivgeny)
- Bug #2651: CHttpSession was using hardcoded GC probability/divisor values (mar
covtwout, cebe, samdark)
- Enh: Better CFileLogRoute performance (Qiang, samdark)
- Enh: Refactored CHttpRequest::getDelete and CHttpRequest::getPut not to use _r
estParams directly (samdark)
- Enh #100: CLogFilter::$logVars can now be array of arrays intended for designa
ting particular items of the $GLOBALS (resurtm, tomtomsen)
- Enh #129: Proper support of namespaced models in forms (LastDragon-ru, Ekstazi
, pgaultier)
- Enh #169: Allow to set AJAX request type for CListView and CGridView (klimov-p
aul)
- Enh #289: Gii module could be submodule of an another module (resurtm)
- Enh #315: COciSchema::checkIntegrity() method added: allows to toggle integrit
y check (resurtm)
- Enh #755: Allow to get currently running command from CConsoleApplication (kli
mov-paul)
- Enh #1065: CJuiSliderInput now supports ranged slider when using it without mo
del (resurtm)
- Enh #1142: CSecurityManager::computeHMAC() has been made public (resurtm)
- Enh #1353: Added onBeforeCount event to CActiveRecord (jakob-stoeck)
- Enh #1391: CDetailView: callables (including anonymous functions for PHP 5.3+)
could be used as value generators of the attributes (resurtm)
- Enh #1447: CSqliteSchema: added enabling/disabling integrity check for sqlite
(gleb-sternharz, resurtm)
- Enh #1589: Added HTTP range responses support to CHttpRequest::sendFile (Ragaz
zo, samdark)
- Enh #1604: Added method CDbCommandBuilder::createMultipleInsertCommand() to su
pport multiple insertion (klimov-paul)
- Enh #1725: Added CFileHelper::removeDirectory() static method (resurtm)
- Enh #1743: Added CActiveForm::searchField() and CHtml::activeSearchField() to
create HTML input field of type SEARCH (njasm)
- Enh #1794: Added ability to change widget ID via $htmlOptions['id'] array item
in: CTabView, CBaseListView, CListView, CGridView, CDetailView, CMenu, and CPor
tlet (umrs)
- Enh #1796: Separate count criteria has been added to the CActiveDataProvider,
it's useful for the counting queries simplification (resurtm)
- Enh #1818: Created a CLocalizedFormatter application component that allows for
matting values according to current locale (cebe)
- Enh #1842: Added support for MySQL BIT(M) data type default values (migelsabre
, cebe)
- Enh #1847: Added COutputCache::varyByLanguage to generate separate cache for d
ifferent languages (Obramko)
- Enh #1863: Added CActiveFinder::getModel, added CActiveRecord::getActiveFinder
, CExistValidator::getModel, CUniqueValidator::getModel, CActiveDataProvider::ge
tModel, CSort::getModel (denisarius, samdark)
- Enh #1928: Gii is now able to use table columns' comments as the attribute lab
els of a new generated model (resurtm, tlikai)
- Enh #1948: Tidy up and improve html5 input support in CHtml and CActiveForm (p
hpnode)
- Enh #1977: CFormatter::normalizeDateValue() now is protected instead of privat
e to enable child classes to override it (etienneq)
- Enh #2003: Gii now allows namespaced base classes to be defined in generators
(etienneq)
- Enh #2038: CFormatter::formatNtext() method can replace newlines with `<p></p>
` not just with `<br />` as it was before (resurtm)
- Enh #2053: CPasswordHelper has been refactored, CSecurityManager has been enha
nced and is now able to generate cryptographically strong random bytes and strin
gs (resurtm, tom--, ekerazha, samdark)
- Enh #2062: CWsdlGenerator now supports soap indicators (sequence, choice), inj
ecting of custom WSDL string block and generation of human-friendly documentatio
n for complex types. Added unit test. (lubosdz)
- Enh #2090: Allow passing array of columns to CDbSchema::addPrimaryKey() (payst
ey)
- Enh #2096: CAPTCHA: non-free Duality.ttf font replaced by open/free SpicyRice.
ttf (licensed under SIL OFL v1.1) (resurtm)
- Enh #2131: Added Accept header parsing to CHttpRequest to give an array of acc
epted types in order of preference (Rupert-RR)
- Enh #2135: MessageCommand can now handles Yii::t() messages with files in subf
olders (firsyura)
- Enh #2205: CActiveForm::error() now depends on CHtml::$errorContainerTag (maly
shev)
- Enh #2213: Added comment with hint on ajax validaton which may lead to duplica
te entries in the database to gii form template (elmig, cebe)
- Enh #2217: Support of the empty option for CHtml::radioButtonList() has been i
ntroduced (resurtm)
- Enh #2254: CForm::$showErrors property has been added, it controls whether err
or elements of the form attributes should be rendered (resurtm)
- Enh #2275: Added primary log rotation by copy and truncate to CFileLogRoute (b
dstevens)
- Enh #2415: Cancel current ajax request before create a new one in CGridView an
d CListView (gusnips)
- Enh #2416: Avoid instantiating HTMLPurifier on each CHtmlPurifier::purify() ca
ll. Allow to pass array as argument of CHtmlPurifier::purify() (twisted1919)
- Enh #2435: CFileCache entry expiration time could now be embedded into the cac
he file instead of changing file's modification time to be in future (resurtm)
- Enh #2459: Absolute session timeout in CWebUser (ivokund)
- Enh #2494: Allow to configure CBaseListView emptyText container tag name (ifda
ttic)
- Enh #2529: Silenced all chmod calls to prevent "chmod() operation not allowed"
error on NTFS (samdark)
- Enh #2602: CEmailValidator and CUrlValidator now uses native PHP `idn` extensi
on in case it is available (`idn_to_ascii` and `idn_ to_ utf8` functions) and Ne
t_IDNA2 otherwise (resurtm, creocoder)
- Enh #2642: Support third party autoloaders when importing classes via Yii::imp
ort() (phpnode)
- Chg: Upgraded HTMLPurifier to v4.5.0 (samdark)
- Chg #645: CDbConnection now throws CDbException when failed to open DB connect
ion instead of failing with a warning (kidol, eirikhm, samdark, cebe)
- Chg #895: Add second argument $params to client validation function (slavcodev
)
- Chg #1891: Changed order of methods in models generated by Gii and yiic, added
better description of search method (hijarian, samdark)
- Chg #2069: Upgraded jQuery BBQ Plugin to 1.4pre to fix jQuery compatibility pr
oblems (samdark)
- Chg #2183: Vendors: phlymail's Net_IDNA was replaced by PEAR Net_IDNA2 (resurt
m, DaSourcerer)
- Chg #2187: Vendors: punycode.js updated from 1.1.1 (June 27, 2012) to 1.2.0 (O
ctober 10, 2012) (resurtm)
- Chg #2461: Upgraded jquery star rating to 4.11 (samdark)
- Chg #2531: Upgraded jquery masked input to 1.3.1 (samdark)
- New: Added CRedisCache which uses redis key value store as cache backend (cebe
, maxlun86)
- New #575: Yii registering at Packagist, added composer info file (schmunk42)
- New #1785: Added CPasswordHelper (tom--)
- New #2178: Added Catalan Translation (ArnauAregall)
- New #2370: New template placeholders for CHtml::radioButtonList() and CHtml::c
heckBoxList() (creocoder)
- New #2530: Added 'through' option to CActiveRecord::BELONGS_TO relation (creoc
oder)
Version 1.1.13 December 30, 2012
--------------------------------
- Bug #93: Criteria modification in CActiveRecord::beforeFind() did not apply wh
en record was loaded in relational context. See UPGRADE instructions for details
on behavior change. (cebe)
- Bug #109: formatNumber() now uses number_format() instead of round(), because
of round() error in IEEE754 accuracy limitations (SonkoDmitry)
- Bug #110: MSSQL: fixed empty $primaryKey value after saving CActiveRecord mode
l (resurtm)
- Bug #112: MSSQL: database abstraction layer now uses native transaction suppor
t of the SQLSRV driver (resurtm)
- Bug #124: Added CMysqlCommandBuilder to handle JOIN directive on update comman
ds correctly (cebe, DaSourcerer)
- Bug #126: Fixed CWebUser::getReturnUrl(), allowing to determine default URL co
rrectly, if CUrlManager::showScriptName is set to false (klimov-paul)
- Bug #138: CMysqlSchema fixed to support MySQL ANSI mode (cebe)
- Bug #140: Fixed validation CJuiButton with type buttonset (adminnu)
- Bug #162: Eventhandler attached twice when behavior is set enabled after attac
hing it (cebe)
- Bug #218: Fixed problem when using 'union' and 'order/limit/offset' in CDbComm
and::buildQuery (nsanden)
- Bug #276: Tweaked CGridView stylesheet to include a hover style for the select
ed row (acorncom)
- Bug #810: Gii now adds a number to the end of relation name if same named rela
tion already exists instead of not generating relation (n30kill, samdark)
- Bug #835: CApplication::onEndRequest is now called at the script shutdown to m
ake sure log is written on forceful script termination (samdark, cebe)
- Bug #837: Fixed method CDbCriteria::__wakeup(), allowing to keep custom names
for params and update all string parts for automatic params (klimov-paul)
- Bug #959: Bug where non-lowercase keys cannot be found in CConsoleApplication:
:$commandMap fixed (resurtm)
- Bug #962: Fixed handling of negative timestamps in CDateFormatter::format() (j
ohnmendonca)
- Bug #1094: CListView with enabled history used to clear page title in case sor
ting or paging performed (Opera and Firefox only) (mdomba, resurtm)
- Bug #1095: Added missing retry_interval parameter of addServer function call i
n CMemCache (Lisio)
- Bug #1181: Fixed can read but not save binary data e.g. BYTEA on PostgreSQL (k
armakaze)
- Bug #1212: Added missing .gitignore files to the application generated by WebA
ppCommand (resurtm)
- Bug #1249: CHttpRequest::sendFile() outputs malformed file content in some spe
cific circumstances (andyhu)
- Bug #1279: CHttpRequest::sendFile() now always sends valid content-header (Rag
azzo)
- Bug #1330: SQLite column default value was incorrect for column of type string
and DEFAULT NULL (cebe)
- Bug #1344: Fixed URL problem in CGridView and CListView when enableHistory was
true and unicode chars where used (mdomba, Redjik)
- Bug #1347: CDbTestCase: table name in fixtures list enclosed into double curly
brackets (e.g. 'tasks'=>':{{task}}') didn't worked properly (resurtm)
- Bug #1351: CClientScript::registerMetaTag() now allows to register multiple me
ta tags with the same set of attributes (klimov-paul)
- Bug #1364: Empty CHtml::$errorCss cause class attribute rendering errors (creo
coder)
- Bug #1381: Ignore select given by criteria or scope on stat relation (cebe)
- Bug #1392: HostInfo was appended to CHttpRequest::redirect() location in case
of using protocol relative URLs (dInGd0nG, samdark)
- Bug #1406: Fixed the issue that false value returned from CDbCommand could not
be cached properly (mdomba)
- Bug #1407: CDbCommandBuilder::createCountCommand() used to bind parameters for
unused ORDER clause and unused SELECT part (resurtm)
- Bug #1444: Fixed CGoogleApi::register call to registerScriptFile (mdomba)
- Bug #1478: Fixed CWsdlGenerator error when using namespaced classes (Diego-Roc
ha)
- Bug #1485: CSort does not quote table alias when using CDbCriteria (undsoft)
- Bug #1492: Fixed jQuery calls when noConflict feature was used and jQuery code
was returned by ajax calls (l-nagash)
- Bug #1499: Fixed CVarDumper highlighting "\" (antoncpu)
- Bug #1549: Fixed CFormatter::sizeFormat() to use translations from 'yii' categ
ory and corrected english default translation, also improved number formatting (
cebe)
- Bug #1552: Fixed potential vulnerability in CJavaScript::encode(): $safe param
eter didn't used to be passed to the recursive method calls (resurtm)
- Bug #1575: MessageCommand::extractMessages fails to ignore invalid category de
finitions (softark)
- Bug #1584: Fixed CGridView and CListView urls when enableHistory was used with
"path" urlFormat (mdomba)
- Bug #1621: Fixed CCompareValidator to support {compareAttribute} in $message a
lso on client-side (cebe)
- Bug #1622: CLocale::getTerritory() used to return invalid territory name when
locales (language tags) were specified without territory part (e.g. 'de', 'fr')
(resurtm)
- Bug #1624: Requirements page now tries all other preferred languages when the
most preferred one is missing (ArtVal)
- Bug #1625: CEmailLogRoute does not properly encode UTF8 characters contained i
n logs, CEmailLogRoute::$utf8 property added (mdomba, resurtm)
- Bug #1628: Active HTTP sessions overwrote the Cache-Control header set by CHtt
pCacheFilter (DaSourcerer)
- Bug #1646: CLocale::getTerritory() used to return invalid territory name when
locales (language tags) were specified with script part (e.g. 'zh-Hans-CN', 'zh-
Hant-HK') (resurtm)
- Bug #1652: Fixed incorrect syntax of CDbSchema::renameTable() for SQLite, adde
d CSqliteSchema::renameTable() method (Sarke)
- Bug #1673: CHttpRequest::getPreferredLanguage now works according to RFC2616.
Added CHttpRequest::getPreferredLanguages that returns all user accepted languag
es in order of preference (Rupert-RR, bwoester, cebe, samdark)
- Bug #1676: Fixed listData() grouping when no group was specified (mdomba)
- Bug #1716: Fixed CCodeModel::pluralize() and CConsoleCommand::pluralize() so i
t doesn't force lowercase the first letter in any words (nsanden)
- Bug #1726: Fixed the error Undefined variable: json in CJSON.php when json_dec
ode function did not exist (heyhoo)
- Bug #1792: Fixed persistent access permissions when two identities were used i
n a single application run. (jhenriquemc, Franois Gannaz)
- Bug #1853: CAssetManager::publish() method will throw an exception if $forceCo
py and $linkAssets are both true (resurtm, mdomba)
- Bug: Table schema is refreshed on Gii model generation when schemaCachingDurat
ion is used (SonkoDmitry)
- Bug: CDbCommand::setFetchMode wasn't accepting additional arguments needed for
PDO::FETCH_CLASS (samdark)
- Bug: CCaptchaAction::validate check wasn't working properly in some cases (sam
dark, Qiang)
- Enh #84: Log route categories are now accepted in form of array. Added CLogRou
te::except and parameter to CLogRoute::getLogs that allows you to exclude specif
ic categories (paystey)
- Enh #104: Added CWebLogRoute::$collapsedInFireBug property to control whether
the log should be collapsed by default in Firebug (marcovtwout)
- Enh #117: Added CPhpMessageSource::$extensionPaths to allow extensions, that d
o not have a base class to use as category prefix, to register message source (r
coelho, cebe)
- Enh #144: baseID in CHtml::checkBoxList and CHtml::radioButtonList can now be
customized via htmlOptions (cebe)
- Enh #217: Added CTypeValidator::validateValue() and CTypeValidator::$strict, b
etter check for arrays (samdark)
- Enh #259: CHttpRequest::getRestParams is now public (samdark)
- Enh #291: CFormatter::formatDate and formatDateTime now also accept strings in
strtotime() format (francis_tm, cebe)
- Enh #486: CHttpSession::$gCProbability and CDbHttpSession::$gCProbability are
floats now. Minimal possible $gCProbability value has been changed to the 0.0000000
5% (1/2147483647), was integer 1% before, default value left unchanged (1%) (res
urtm)
- Enh #545: Add CDataProviderIterator to allow iteration over large data sets (p
hpnode)
- Enh #556: CDbColumnSchema::$comment property has been added. It stores comment
for the table column, comment retrieving is working for MySQL, PgSQL and Oracle
(resurtm)
- Enh #724: Third argument of CHtml::listData() now receives anonymous function
as calculator of the text field value, PHP 5.3+ only (resurtm)
- Enh #846: Added addPrimaryKey() / dropPrimaryKey() commands to CDbMigration (r
idget)
- Enh #949: Added COciSchema::resetSequence (jazahn, samdark)
- Enh #990: Added CArrayDataProvider::$caseSensitiveSort property which allows t
o control whether sorting should be case sensitive (resurtm)
- Enh #999: Changed md5() to crypt() in docs/guide/topics.auth, docs/blog and de
mos/blog. Added Wiki 425 tutorial on use of crypt() (tom--)
- Enh #1084: CDateTimeParser: MMM pattern for parsing short month names is now l
ocale aware (resurtm)
- Enh #1146: CFileHelper::copyDirectory recursive directory creation (senz)
- Enh #1183: CDbCommand: added andWhere()/orWhere() which appends condition to t
he WHERE part of the query, in contrary of CDbCommand::where() which replaces it
(resurtm)
- Enh #1184: CEmailValidator now supports IDN (Internationalized Domain Names),
added CEmailValidator::$validateIDN property (resurtm)
- Enh #1134: CAssetManager filepath creation now can be extended thru generatePa
th(). Path creation is now recursive in publish(). (senz)
- Enh #1201: CMenu now supports HTML attributes for the links' wrap element spec
ified in $linkLabelWrapper (resurtm)
- Enh #1228: Added ability to MessageCommand to generate translation files for m
ultiple functions (Arne-S, samdark)
- Enh #1238: CJuiDatePicker is now using the native altField option to handle th
e hidden input when type flat is used (mdomba, christiansalazar)
- Enh #1282: CDateTimeParser: added MMMM pattern for parsing standard month name
s such as 'January', 'Dcembre' or 'Mrz' (resurtm)
- Enh #1286: CUrlValidator now supports IDN (Internationalized Domain Names), ad
ded CUrlValidator::$validateIDN property (resurtm)
- Enh #1289: Added support for column comments for MSSQL (CDbColumnSchema::$comm
ent property) (resurtm)
- Enh #1299: Added CSRF token validation for PUT and DELETE (miraage, samdark)
- Enh #1369: Added CCheckBoxColumn::disabled that accepts PHP expression or anon
ymous function determining if checkbox for the row should be disabled (sucotroni
c)
- Enh #1386: Second parameter of the CHtml::value() is now able to accept anonym
ous function which calculates value to be used (Qiang, resurtm)
- Enh #1396: Added 'text/csv' mime-type for the 'csv' file extension in utils/mi
meTypes.php (effectively used by e.g. CHttpRequest::sendFile()) (rawtaz)
- Enh #1426: Behaviors are now affecting memory consumption significantly less (
slavcodev, creocoder, Qiang, samdark)
- Enh #1443: Added CHttpRequest::getRawBody() that allows reading RAW HTTP reque
st body multiple times (itamar82, resurtm, samdark)
- Enh #1464: CCaptchaAction now supports rendering through ImageMagick, CCaptcha
::checkRequirements() changed (resurtm, SonkoDmitry)
- Enh #1500: CSqlDataProvider now supports CDbCommand in constructor (slavcodev)
- Enh #1507: Added support for minOccurs, maxOccurs, nillable to CWsdlGenerator.
Changed most of the methods visibility to protected. Added unit tests (lubosdz)
- Enh #1518: Allow to configure CHtml::$closeSingleTags and CHtml::$renderSpecia
lAttributesValue. Useful for HTML5 code (creocoder)
- Enh #1527: Added $id argument to CClientScript::registerMetaTag that allows yo
u to override existing tags (Alex-Code)
- Enh #1531: CArrayDataProvider is now able to sort cutted array, where sorting
column is not available in every entry (Yiivgeny)
- Enh #1535: HTML5 special attributes added to CHtml::renderAttributes() (creoco
der)
- Enh #1538: Added CListView::ajaxUpdateError for the possibility to use a custo
m ajax error handler (mdomba)
- Enh #1567: Added filterSelector property to CGridView (MonkeyMaster)
- Enh #1581: Added 'unselectValue' to CHtml::dropDownList() and CHtml::activeDro
pDownList() to define default post value if no option is selected in multiple mo
de (creocoder, mdomba)
- Enh #1596: Added CGridView::rowHtmlOptionsExpression to allow set HTML attribu
tes for the row (Ryadnov)
- Enh #1657: CDbCommandBuilder::createUpdateCounterCommand now can be used with
float values (samdark, hyzhakus)
- Enh #1658: CFormatter::formatHtml() is now more flexible and customizable thro
ugh new CFormatter::$htmlPurifierOptions property (resurtm)
- Enh #2343: Added CRequiredValidator::$trim property which determines to trim a
ttribute value or not (AnatolyRugalev)
- Enh: Fixed the check for ajaxUpdate false value in jquery.yiilistview.js as th
at never happens (mdomba)
- Enh: Requirements checker: added check for Oracle database (pdo_oci extension)
and MSSQL (pdo_dblib, pdo_sqlsrv and pdo_mssql extensions) (resurtm)
- Enh: Added CChainedLogFilter class to allow adding multiple filters to a logro
ute (cebe)
- Enh: Allow CDataProvider to use custom pagination and sorter (creocoder)
- Enh: Value of the CHtml::activeTextArea() can now be set through $htmlOptions[
'value'] (resurtm)
- Enh: Allow to customize CHtml::error() container tag (creocoder)
- Enh: CModule::setComponents() now can reconfigure already loaded components (c
reocoder)
- Enh: CLocale::getWeekDayName() weekday-number argument is now more compatible
with date() function, allowing 0 and 7 for sunday (Yiivgeny, cebe)
- Enh: Added minified jQuery BBQ (samdark)
- Chg #1193: Upgraded jQuery to 1.8.3 (samdark)
- Chg #1373: Upgraded jquery star rating to 3.14 (samdark)
- Chg #1548: Upgraded jQueryUI to 1.9.2 (samdark)
- Chg #1563: Updated CTestCase for PHPUnit 3.7.7+ (tanakahisateru, samdark)
- Chg #1746: CDbCriteria::mergeWith() is now more consistent with all other clas
s methods (hyzhakus, samdark)
- Chg: MSSQL unit tests updated and actualized, added SQLSRV driver support (res
urtm)
- Chg: Added Oracle unit tests (resurtm)
- Chg: Updated CHttpCacheFilter to use dates as specified by RFC 1123 (bramp)
- Chg: Added punycode.js v1.1.1 (http://mths.be/punycode) and IDNA Converter v0.
8.0 (http://phlymail.com/en/downloads/idna-convert.html) to the vendors (third p
arty libraries and utilities) (resurtm)
- New: Ported offline documentation viewer from yiidoc project. Mainly usable fo
r translations but can be used for reading offline as well (samdark)
Version 1.1.12 August 19, 2012
------------------------------
- Bug #190: WSDL return tag was not generated by CWsdlGenerator when Macintosh l
ine endings were used inside service describing docblock (resurtm)
- Bug #1066: CMemCache: expiration time higher than 60*60*24*30 (31536000) secon
ds led the value to expire right away after saving (resurtm)
- Bug #1072: Fixed the problem with getTableAlias() in defaultScope() (creocoder
)
- Bug #1076: CJavaScript::encode() was not compatible with PHP 5.1 (samdark)
- Bug #1077: Fixed the problem with alias in CSort (creocoder)
- Bug #1083: CFileValidator is now unsafe by default. This will prevent setting
attribute when no file was uploaded (samdark)
- Bug #1087: Reverted changes to CCookieCollection::add() introduced in 1.1.11 a
s they were triggering E_STRICT on some old PHP-versions (suralc)
- Bug #1088: Fixed usage of proper CActiveForm id property when it's supplied wi
th htmlOptions (mdomba)
- Bug #1094: CGridView with enabled history used to clear page title in case sor
ting or paging performed (Opera and Firefox only) (resurtm)
- Bug #1109: Fixed "js:" encoding BC-break in CHtml::ajax() and related methods
introduced in 1.1.11 (samdark)
- Bug #1120: Fixed duplicate events processing in CGridView when ENTER was press
ed for filtering (mdomba)
- Bug #1192: CHttpCacheFilter failed to comply with RFC 2616, section 10.3.5 (Da
Sourcerer)
- Bug #1207: Fixed an issue in CHtml::resolveValue() which occurs when handling
tabular data input (Qiang)
- Bug #1225: Fixed the bug that $.fn.yiiGridView.getChecked was not working alwa
ys if a custom CGridView::template was used (mdomba)
- Bug #1243: Fixed the bug that when using CUrlManager::addRules with $append=fa
lse rules were added in reverse order (samdark)
- Enh #243: CWebService is now able to deal with the customized WSDL generator c
lasses, was hardcoded to the CWsdlGenerator before, added CWebService::$generato
rConfig property (resurtm)
- Enh #636: CManyManyRelation now parses foreign key for the junction table data
internally, and provide public interface to access it (klimov-paul)
- Enh #1163: CGridview does not create empty class attributes anymore (cebe)
- Chg #1099: Changed connectionId dropdown to sticky text field in Gii model gen
erator (mdomba)
- Chg #1167: Reverted back the change to CComponent::evaluateExpression() about
global function support (Qiang)
Version 1.1.11 July 29, 2012
----------------------------
- Bug #098: No correct identity value being returned when using Active Record an
d mssql (c-schmitz)
- Bug #114: CUniqueValidator and CExistValidator now respect table alias while c
reating db query condition (klimov-paul)
- Bug #145: CGettextMoFile now can parse strings with no context (eagleoneraptor
)
- Bug #148: Fixed the bug in the blog demo that was not deleting right comment w
hen not on the first page (mdomba)
- Bug #161: CCookieCollection::remove() now accepts an array of cookie options a
s a second argument to facilitate correct cookie removal (maximcherny)
- Bug #164: CEmailValidator.checkPort now checks the port 25 of listed MX server
s (DaSourcerer)
- Bug #178: webapp creation with relative paths like ../ was not working correct
ly (cebe)
- Bug #193: Changed datetime column type for postgresql from 'time' to 'timestam
p' (cebe)
- Bug #238: Fixed the problem that empty row could be selected in CGridView when
there was no data (mdomba)
- Bug #295: Sometimes CJSON::decode returns null because native json_encode has
bugs and returns null. Workaround to continue decoding when result of json_decod
e is null (luislobo)
- Bug #381: Fixed the bug that Gii model name input could get misspelled when au
tocomplete is used (mdomba)
- Bug #417: CAttributeCollections::mergeWith() does not take into account the ca
seSensitive (dmtrs)
- Bug #433: Fixed the bug that Gii model name input autocomplete was not working
sometimes (mdomba)
- Bug #449: CDbHttpSession and CDbLogRoute now use query builder instead of DAO
for proper quoting (mdomba, redguy)
- Bug #454: Removed translation on CDbConnection exception as it was creating an
endless loop if the application used CDbCache (mdomba)
- Bug #517: Rule parameter sub-patterns are not checked correctly (ranvis)
- Bug #539: Fixed CUrlRule::createUrl() to treat sub-patterns as Unicode as pars
eUrl() does (ranvis)
- Bug #553: Criteria of related AR finders was affected after performing find wi
th relational scopes (marcovtwout)
- Bug #618: Fixed caching of CWebUser::checkAccess() when it is called first tim
e with and second time without $params (cebe)
- Bug #660: Fixed error when calling CDbCache::getValues (zilles)
- Bug #697: Fixed WSDLGenerator now generating proper namespace for certain comp
lexTypes (BBoom)
- Bug #749: CActiveRecord::refresh() did not work in afterSave() for new records
, will now always refresh, when db entry exists (cebe)
- Bug #769: Fixed the bug that $.fn.yiiGridView.getSelection was not working alw
ays if a custom CGridView::template was used (mdomba)
- Bug #772: CHttpRequest::getIsSecureConnection() was failing on some conditions
(bulletbee, samdark)
- Bug #773: CGridView filters now filter on enter key in Internet Explorer (BBoo
m)
- Bug #803: Arbitary non-sorting links in CDataColumn's header were not working
proper way (resurtm)
- Bug #827: Fixed the problem that CJuiSliderInput was rendering a name attribut
e for div element (mdomba)
- Bug #842: Active Records insert fails in MSSQL if a column has a default value
of (NULL) (c-schmitz)
- Bug #852: Fixed the problem that CActiveForm was not revalidating fields if aj
ax submit was used (mdomba)
- Bug #859: Fixed CSort::applyOrder() and CSort::getOrderBy() to use custom tabl
e aliases (troch, samdark)
- Bug #865: CLogRoute called processLogs() even if log array was empty and cause
d empty emails and log files (cebe)
- Bug #879: Fixed a possible PHP error caused by CWebUser::restoreFromCookie() i
n combination with CHttpRequest.enableCookieValidation (kidol)
- Bug #901: Fixed possible encoding problem on exception (mdomba, samdark, cebe)
- Bug #1000: Added params to profiling token in CDbCommand::execute() to be cons
itent with CDbCommand::queryInternal() (cebe)
- Bug #1045: Building a query with empty array as parameter will not result in a
broken sql-string anymore(suralc)
- Bug: Fixed CMenu::isItemActive() to work properly when there is a hash in the
item's url (SlKelevro)
- Bug: Added missing return statement to CAuthItem->revoke() (mdomba)
- Bug: CHtml::resolveValue() ignoring of array elements accessor at the beginnin
g of the $attribute argument now works properly (resurtm)
- Enh #120: Added ability to set cookies in an object based style without specif
ying the cookie-name twice (suralc)
- Enh #136: Added ability to select database connection in Gii model generator (
samdark)
- Enh #157: Added ability to use models with objects implementing ArrayAccess as
properties in CHtml::resolveValue (samdark)
- Enh #165: Allow CCacheDependency to be reusable across multiple cache calls (p
hpnode)
- Enh #171: Added support for PUT and DELETE request tunneled through POST via p
arameter named _method in POST body (musterknabe)
- Enh #179: CLogger now supports filtering profile timings by multiple & wildcar
d categories (intel352)
- Enh #191: Added ability to customize HTML classes of CLinkPager via its public
properties (mashingan)
- Enh #206: Added ability to pass CDbCriteria object as AR relation parameter (s
amdark)
- Enh #215: Added tokens to CGridView::updateSelectors to allow adding custom se
lectors instead replacing only (mdomba)
- Enh #220: The URL pointing to the Google API in CGoogleApi is now protocol rel
ative (suralc)
- Enh #237: The tabs of CTabView now support the property 'visible' (DaSourcerer
)
- Enh #255: Sort CArrayDataProvider when elements is CActiveDataProvider or othe
r object (rusmaxim)
- Enh #266: Add support for HTML5 url, email, number, range and date fields to C
Html (gregmolnar)
- Enh #267: CDbHttpSession is now able to store binary payload such as the outpu
t of the igbinary serializer (DaSourcerer, samdark)
- Enh #282: Added CCheckBoxColumn::headerTemplate to allow custom headers (mdomb
a)
- Enh #286: Added wildcard token to CDateTimeParser (cebe)
- Enh #294: Added deniedCallback to CAccessControlFilter and CAccessRule to allo
w forwarding control to a method on denial (luislobo)
- Enh #342: Added ability to pass parameters for RBAC bizRules from CAccessContr
olFilter configuration (claudejanz, samdark)
- Enh #356: Improved extendability of CDetailView by adding method renderItem()
(cebe)
- Enh #369: Added $hashKey to CCache (kidol)
- Enh #414: Added sort parameter to yiic message command that sorts messages by
key when merging (ranvis)
- Enh #455: Added support for default value in CConsoleCommand::prompt (eagleone
raptor)
- Enh #551: Added $safe parameter to CJavaScript::encode. If set to true, 'js:'
will not be allowed. If you need to pass JavaScript, wrap your code with CJavaSc
riptExpression instead (samdark)
- Enh #552: Added support for http-level caching via CHttpCacheFilter (DaSourcer
er)
- Enh #568: CHtml::getIdByName() will now convert spaces to underscore to get pr
oper ID for HTML elements (mdomba)
- Enh #578: Added extension checks to CMemCache (samdark)
- Enh #581: Added formatSize method in CFormatter to format file sizes into unit
s of different order - KB, MB, etc (brilyuhns, samdark)
- Enh #584: Refactored WebAppCommand to be more customizable, added more PHPDoc
(samdark)
- Enh #599: Added case sensitivity check when autoloading classes (qiangxue)
- Enh #601: added the method loginRequired() to the IWebUser interface (mdomba)
- Enh #616: CVarDumper is now correctly highligting integer array keys (vernes,
samdark)
- Enh #641: Added support for customizing serialization methods for cache compon
ents (DaSourcerer, Qiang)
- Enh #648: Added filterHtmlOptions property to the CGridColumn component (juban
)
- Enh #652: Added namespace to yiiGridView events, so they can be easily removed
by .off() jQuery method (Bethrezen)
- Enh #673: Changed CClientScript::scripts to be public (mdomba)
- Enh #675: CDateFormat::format() now returns null if the parameter $time is nul
l (mdomba)
- Enh #690: Added sender name and proper headers for UTF8 encoding when sending
e-mail in SiteController->actionContact() (mdomba)
- Enh #766: Added 'userId' to $params in CDbAuthManager::checkAccess() and CPhpA
uthManager::checkAccess() (cebe)
- Enh #666: Added property $except to CValidator, a list of scenarios that the v
alidator should not be applied to (resurtm)
- Enh #839: CListView::renderItems now resolves view file only once (nizsheanez)
- Enh #938: CFileValidator::sizeToBytes() is now public and available for using
in the whole application (resurtm)
- Enh #943: CDateTimeParser is now able to parse short textual representation of
month, e.g. Jan, Jun, Aug (resurtm)
- Enh #967: Commands from YII_CONSOLE_COMMANDS environment variable are now alwa
ys added to yiic console application (schmunk)
- Enh: CFileValidator could validate uploaded file by its MIME-type, added $mime
Types and $wrongMimeType properties (resurtm)
- Enh: Fixed romanian translation to use the better-supported cedilla characters
(tudorilisoi)
- Enh: Added default value to CConsoleCommand::confirm (musterknabe)
- Enh: Allowed returning integer values as application exit code in CConsoleComm
and actions (cebe)
- Enh: Added third parameter to CHttpCookie to configure the cookie by array (su
ralc)
- Enh: Added getIsFlashRequest(), proper handling of Flash/Flex request when usi
ng CWebLogRoute with FireBug (resurtm)
- Enh: Added CBreadcrumbs::$activeLinkTemplate and CBreadcrumbs::$inactiveLinkTe
mplate properties which allows to change each item's template (resurtm)
- Enh: Added full-featured behaviors and events CConsoleCommand::onBeforeAction
& CConsoleCommand::onAfterAction (Yiivgeny)
- Enh: Added HTML5 history support on ajax requests on CGridView and CListView u
sing History.js v1.7.2-r2 (https://github.com/balupton/history.js) from Benjamin
Arthur Lupton (lightglitch)
- Enh: Changed CldrCommand to use medium dateTimeFormat and updated 18n data usi
ng newest(6546) CLDR (tanakahisateru)
- Enh: Added CErrorHandler::getHttpHeader() to send correct HTTP error codes (pg
aultier)
- Enh: CGridView, only rows in tbody should have hover effect (mdomba)
- Enh: CClientScript::$defaultScriptFilePosition and CClientScript::$defaultScri
ptPosition for controlling default $position argument for registerScriptFile and
registerScript (resurtm)
- Enh: CHttpCookie now implements __toString (suralc)
- Enh: Ability to set namespace for module controllers using CWebModule::control
lerNamespace, documentation about using namespaced controllers and modules (samd
ark)
- Enh: Added possibility to set the container for CHtml::radioButtonList and CHt
ml::checkBoxList() (pgaultier)
- Enh: Added zii romanian(ro) translation; edited core messages to include prope
r romanian characters with diacritic marks (tudorilisoi)
- Enh: Added ILogFilter interface as an alternative to using CLogFilter as base
class for implementing log filters (cebe)
- Enh: CAssetManager, added $forceCopy property which globally forces publicatio
n of asset files and directories (resurtm)
- Enh: WebAppCommand has ability to generate fresh application with git or hg sp
ecific files (resurtm)
- Enh: Gii default templates: added additional metadata (PHPDoc) of the variable
s passed into views for better IDE autocompletion (resurtm)
- Enh: WebAppCommand generated application: added additional metadata (PHPDoc) o
f the variables passed into views for better IDE autocompletion (resurtm)
- Enh #1053: CComponent::evaluateExpression will allow using global functions as
callbacks (Ekstazi)
- Chg #384: CWebUser::changeIdentity() will now delete old unused session data f
ile (Qiang)
- Chg #440: Upgraded JQuery UI to 1.8.22 (samdark)
- Chg #497: Added log component and preloaded it in default console application
config in order to properly log errors (samdark)
- Chg: Upgraded jQuery to 1.7.2 (samdark)
- Chg: More unit tests added for CHtml (resurtm)
- Chg: Upgraded bundled markdown parser to v1.2.5 (DaSourcerer)
- New: Added TranslationsCommand build command aimed to help translation teams (
samdark)
Version 1.1.10 February 12, 2012
--------------------------------
- Bug Fixed the bug introduced in 1.1.9 CActiveForm required field was not valid
ated if left empty (mdomba)
- Bug #1799: Better fix for bug #1799 old fix was breaking CJuiDatePicker tabula
r input (mdomba)
- Bug #2284: Fixed the CActiveForm clientvalidation for tabular input (mdomba)
- Bug #3062: Fixed the bug that using yiilite.php and CLocale will cause excepti
on (Qiang)
- Bug #3070: Fixed the CActiveForm JS error if there is no field rendered (mdomb
a)
- Bug #3071: Fixed the bug that afterValidateAttribute was not called properly (
mdomba)
- Bug #3096: Fixed the bug when reporting an error and CHtml is not loaded (mdom
ba)
- Bug #3103: Fixed the bug that CActiveForm->error() was not overloading htmlOpt
ions (mdomba)
- Bug #3107: Fixed the wrong encoding issue of Italian messages (Qiang)
- Bug #3108: Fixed the bug introduced in CActiveFinder::applyLazyCondition (Qian
g)
- Bug #3166: Fixed the bug that CDbColumnSchema typecasted to NULL even for NOT
NULL columns (Sam Dark)
- Enh #3063: Gii, when generating models, tableNames will be checked against res
erved PHP keywords when '*' is used (mdomba)
- Enh #3097: Added CHttpRequest::decodePathInfo() (Y!!)
- Enh #3101: The methods of CSecurityManager do now work correctly for the case
that mbstring.func_overload is in effect (Y!!)
- Enh #3112: Fixed the exception error display on ajax calls when YII_DEBUG is t
rue (mdomba)
- Enh #3121: Added more rules for proper pluralization to the pluralize() method
in CCodeModel and CConsoleCommand (mdomba)
- Enh #3153: CClientScript::addPackage() now returns CClientScript instance to s
upport method chaining (Sam Dark)
- Enh #3154: Removed file existance check to allow relative path and added addit
ional headers option to xSendFile() (mdomba)
- Enh #3169: Added CSort::SORT_ASC and CSort::SORT_DESC (Sam Dark)
- Enh: Added CActiveForm::validateTabular() to simplify ajax validation for tabu
lar input (mdomba)
- Chg: HTML-encoded input values for exist and unique validators (Qiang)
- Chg: Upgraded JQuery UI to 1.8.17 (mdomba)
- Chg: Upgraded HTMLPurifier to v4.4.0 (Sam Dark)
Version 1.1.9 January 1, 2012
-----------------------------
- Bug: Removed unnecessary COciCommandBuilder::createInsertCommand quotes (Sam D
ark)
- Bug: CHttpRequest.sendFile() gives incorrect content length when output_handle
r is enabled through code or non output_handler directive (Sam Dark)
- Bug #1356: Fixed CActiveForm ajax validation when checkBoxList or radioButtonL
ist are used (mdomba)
- Bug #1968: Fixed inconsistence in CActiveForm error highlighting when checkBox
List or radioButtonList are used (mdomba)
- Bug #2603: Fixed the bug that CDbHttpSession::regenerateID call when session i
sn't started results in SQL error (Sam Dark)
- Bug #2623: Fixed the bug that by setting multiple classes in CGridView itemsCs
sClass prevents rows being selected (mdomba)
- Bug #2635: MigrateCommand migration execution time is now measured correctly (
Sam Dark)
- Bug #2636: CConsoleCommand::init() wasn't called in yiic shell mode (Sam Dark)
- Bug #2773: Fixed possible CUrlManager::createUrl parameters conflict when usin
g custom URL rule classes (Sam Dark)
- Bug #2581: Fixed CJuiTabs - not replacing id slug in header tool tips (sebas)
- Bug #2643: Output buffer wasn't properly cleaned on displaying error screen (S
am Dark)
- Bug #2733: Fixed CDbCriteria parameter names collision on unserialize (mcheale
, Sam Dark)
- Bug #2786: Fixed inheritance in CLDR months parsing (mcheale, Sam Dark)
- Bug #2822: Fixed warning when "Host:" isn't present or is empty in HTTP reques
t headers (Sam Dark)
- Bug #2853: Fixed sending of the button name in CActiveForm with enableAjaxVali
dation enabled (mdomba)
- Bug #2861: Removed the nested container css class in the skeleton application
views (Qiang)
- Bug #2915: Fixed client validation in CCompareValidator to compare numbers ins
tead of strings (mdomba)
- Bug #2932: CAuthItem::getType() returns string while using CDbAuthManager (Sam
Dark)
- Bug #2999: CSort::getDirections, error when array is passed via $_GET (Sam Dar
k)
- Bug #3018: Fixed CACtiveForm ajax validation when checkBox or radioButton are
used (mdomba)
- Bug #3029: Fixed the bug that empty items were not hidden when CMenu::hideEmpt
yItems is true (mdomba)
- Bug #3033: Fixed proper array merging in CDirectoryCacheDependency->generateTi
mestamps (mdomba)
- Bug #3041: Fixed possible infinite loop while processing logs (Yiivgeny, Sam D
ark)
- Bug #3042: Fixed the bug that CHttpSession::setCookieMode wasn't setting sessi
on.use_only_cookies when 'none' value was used (Sam Dark)
- Chg: Upgraded JQuery UI to 1.8.16 (Sam Dark)
- Chg: Upgraded jQuery to 1.7.1 (Sam Dark,mdomba)
- Chg: Upgraded CMaskedTextField jQuery plugin (Masked Input) to 1.3, added mini
fied version (Sam Dark)
- Chg: Reverted back the changes made to fix issue 2284 (Qiang)
- Chg #2647: Fixed inconvenient way of defining through relation (creocoder, Sam
Dark)
- Chg #2951: Removed CConfiguration::createObject, CController::paginate and CHt
ml::getActiveId deprecated since 1.0.x (Sam Dark)
- Chg #3054: CComponent::__isset properly checks for null values (mdomba)
- Enh #2029: Added scope support to Model::relations() (creocoder, Sam Dark)
- Enh #2129: Added Monospace font as a fallback for source code on the exception
view page (mdomba)
- Enh #2231: Added CMenu::itemCssClass for the possibility to assign one CSS cla
ss to all menu items (mdomba)
- Enh #2334: CHttpRequest::getPathInfo() now properly decodes both UTF-8 and ISO
-8859-1 encoded URIs (Sam Dark)
- Enh #2387: Numeric keys are now displayed in error/exception stacktrace call a
rgument if array isn't 0..X indexed (Sam Dark)
- Enh #2602: Better error handling in CHttpSession::open() when using PHP <5.3.0
(Sam Dark)
- Enh #2604: CArrayDataProvider::keyField can now be set to false to use keys fr
om $rawData array instead of a named keyField (creocoder, Sam Dark)
- Enh #2637: Related table alias set dynamically in relational query is now avai
lable in the scopes of related model (creocoder, Sam Dark)
- Enh #2646, #2706: Added ability to join on a specific keys (creocoder, Sam Dar
k)
- Enh #2654: Enhanced CUrlManager::addRules() by allowing new rules to be insert
ed in front of the existing rules (Qiang)
- Enh #2715: CMap::mergeArray now can accept multiple arrays to be merged (firej
dl, Sam Dark)
- Enh #2717: Extracted MigrateCommand::createMigrationHistoryTable method from M
igrateCommand::getMigrationHistory (Sam Dark)
- Enh #2751: Added removeOld parameter to yiic message command that allows not t
o add obsolete lines to translation file generated (luislobo, Sam Dark)
- Enh #2795: Added Yii::t() to YiiBase::powered() (Sam Dark)
- Enh #2808: Added ability to override core classes using YiiBase::classMap (Sam
Dark)
- Enh #2811: Fully automated CLDR data update, updated data to 2.0.1. Added getL
anguageID, getScriptID, getTerritoryID, getRegionID, getLocaleDisplayName, getLa
nguage, getScript, getTerritory methods to CLocale (kshaw, Sam Dark)
- Enh #2823: Added autocomplete for Gii "Table Name" field (Sam Dark)
- Enh #2855: CWebUser::login() returns the login status (mdomba)
- Enh #2872: Added CConsoleCommand::prompt() that asks for input and CConsoleCom
mand::confirm() that asks for confirmation (Sam Dark)
- Enh #2890: Added CInlineValidator::clientValidate to set custom client validat
ion (mdomba)
- Enh #2914: Added CClientScript::addPackage (Sam Dark)
- Enh #2929: Added forceDownload to xSendFile options to choose between attachme
nt and inline disposition. (mdomba)
- Enh #2981: Added CHtml::liveEvents to set the default global style for attachi
ng jQuery event handlers. (mdomba, Sam Dark, Ekstazi)
- Enh #3020: Added HTTP_REFERER information to the exception log (mdomba)
- Enh #3024: Added CDbMigration::refreshTableSchema() that refreshes specified t
able schema cache (Sam Dark)
- Enh: Documented component accessors with @property for significantly better ID
E autocomplete (Sam Dark, Detonator, Athari)
- Enh: Added CWebUser->loginRequiredAjaxResponse - value to be returned for ajax
calls in case the user session has expired (mdomba)
- Enh: CFileCache::get() does now suppress a possible PHP error which might occu
r on concurrent requests (Y!!)
- Enh: jquery.yiiactiveform.js added check for form visibility to validate() to
prevent JS error when using CActiveForm with jQuery dialog (mdomba)
- Enh: removed the check for ajax call in CErrorHandler::handleException() (mdom
ba)
- Enh: CAssetManager now generates different hash for files/directories with dif
ferent mtime (Sam Dark)
- Enh: Yii error screen will now display proper message like error/warning/notic
e (mdomba)
- Enh: CHtml::clientchange() now uses the new jQuery on() method for event bindi
ng (mdomba)
Version 1.1.8 June 26, 2011
---------------------------
- Bug: Fixed a typo that may cause issue when setting custom script packages wit
h baseUrl option for CClientScript (Qiang)
- Bug #2001: CGridView now renders the body after the footer in order to conform
to the standard (Qiang)
- Bug #2236: CJuiTabs - added id to ajax tabs (sebas)
- Bug #2272: Fixed the bug of undefined index css in CTreeView (mdomba)
- Bug #2274: CDbCriteria can't merge "with" anymore if a scope applied another "
with" condition (Sam Dark, Michael)
- Bug #2275: Fixed the bug that ajax error handler was not called in case of exc
eption (mdomba)
- Bug #2284: Fixed the bug that CActiveForm clientValidation did not work with t
abular input forms (Qiang)
- Bug #2292: Fixed the bug that CActiveDataProvider may ignore the specified cri
teria for the sorting configuration (Qiang)
- Bug #2294: Fixed the bug that duplicated PK columns may appear in the join SQL
statement if custom select option is used (Qiang)
- Bug #2303: Fixed not logging anything on WSDL service failure (Sam Dark)
- Bug #2312: Fixed the bug that auto-incremental columns for MSSQL may return no
n-integers as last insert ID (Qiang)
- Bug #2328: Fixed the bug that table names was not quoted in CDbAuthManager (md
omba)
- Bug #2338: Fixed a typo in the client validation code for CNumberValidator (Qi
ang)
- Bug #2359: Fixed the bug that checkbox in Gii view template may be hidden auto
matically (Qiang)
- Bug #2377: Fixed the bug that jsonp was expected instead of JSON when using AJ
AX and CAutoComplete at the same page (Sam Dark)
- Bug #2382: Fixed the bug that yiic wasn't able to run if there is no commands
dir in application (Sam Dark)
- Bug #2394: Fixed a typo in CDbCache that may cause mget() to fail (Qiang)
- Bug #2409: Fixed the bug that CCaptcha::buttonOptions is not respected (Qiang)
- Bug #2411: Fixed the bug that CCaptcha will fail when setting buttonType to be
'button' (Qiang)
- Bug #2422: Fixed the bug that calling CLogger::flush(true) multiple times may
cause duplication of dumped messages (Qiang)
- Bug #2426: Fixed the bug in Gii about calling a non-static method in a static
way (Qiang)
- Bug #2463: Fixed the bug that INSERT statement created by COciCommandBuilder m
ay fail in some cases (Qiang)
- Bug #2475: Fixed the bug that CMssqlCommandBuilder and COciCommandBuilder don'
t respect parameters declared in CDbExpression when doing insertion and updating
(Qiang)
- Bug #2485: Fixed the bug that CMssqlPdoAdapter is not used when the driver is
sqlsrv (Qiang)
- Bug #2509: Fixed the bug that AR for MSSQL may fail if on different catalogues
(Qiang)
- Bug #2516: CTimestamp::getDate() produced wrong output with the default timest
amp (Y!!)
- Bug #2538: Fixed the bug that AR may join with incorrect columns (Qiang)
- Bug #2544: Fixed the bug that setting CJuiDatePicker.language to be 'en' will
use wrong language (Qiang)
- Bug #2574: Fixed the bug that overriding CActiveRecord::primaryKey() does not
set the isPrimaryKey flag for columns (Qiang)
- Bug: CMapIterator current key wasn't initialized properly (Sam Dark, Detonator
)
- Bug: Controller generated with Gii CRUD wasn't able to handle non-integer prim
ary key (Sam Dark)
- Bug: Query caching may give incorrect caching results when bindParam or bindVa
lue is used (Qiang)
- Bug: Changing CActiveForm.errorMessageCssClass had no effect when ajax and cli
ent validation were disabled (Y!!)
- Bug: Error when using CUniqueValidator with models indexed by specific field (
Sam Dark, Yiivgeny)
- Bug: Fixed the bug that CAssetManager doesn't set permission mode according to
newDirMode and newFileModel properties when publishing a directory (Qiang)
- Enh #2319: Added support to call behavior scope through criteria 'with'=>array
('scopes'=>'behaviorScope') (Sam Dark, creocoder)
- Enh #2262: Added warning log when a session fails to start by CHttpSession (Qi
ang)
- Enh #2264: Added an option to the model code generator such that the relation
generation can be disabled (Qiang)
- Enh #2268: Added CClientScript::getPackageBaseUrl() (Qiang)
- Enh #2273: Used better merging algorithm to build query parameters that are of
array type in CUrlManager (Qiang)
- Enh #2299: Added CAssetManager.newFileMode and newDirMode (Qiang)
- Enh #2325: Added $option parameter to CDbCommand::select() to support special
SELECT syntax (Qiang)
- Enh #2341: More verbose log message for CModel::onUnsafeAttribute. Added model
class (Sam Dark)
- Enh #2357: Documented CWebApplication accessors with @property for better IDE
autocomplete (Sam Dark)
- Enh #2361: Added CDbConnection::pdoClass that allows to specify and use custom
PDO wrapper class (Sam Dark)
- Enh #2365: Added support for creating more complex index by using createIndex(
) of query builder. (Qiang)
- Enh #2386: Added CController::renderClip() (Qinag)
- Enh #2389: MessageCommand now accepts overwrite option determining if merge re
sult will overwrite existing file (Sam Dark)
- Enh #2410: Improved CHtml::error() so that it can take attribute names in tabu
lar format (Qiang)
- Enh #2424: CDbConnection::beginTransaction() will now trigger a trace message
for better debugging (Y!!)
- Enh #2436: Added support for allowing console applications to call createUrl()
(Qiang)
- Enh #2450: Added Ctype extension check to Yii requirements checker (Sam Dark)
- Enh #2474: Enhanced CDbCommand::insert() and update() to support CDbExpression
(Qiang)
- Enh #2483: Added CGridView::$ajaxUrl and CListView::$ajaxUrl (Qiang)
- Enh #2493: Added money column type to the query builder (Qiang)
- Enh #2500: Added possibility to use a custom click handler for CButtonColumn d
efault delete button (mdomba)
- Enh #2524: CActiveRecord::exists() now respects the scopes applied (Qiang)
- Enh #2532: Improved Yii class autoloader to support Web servers that do not al
low changing PHP include paths. (Qiang)
- Enh #2534: Added CHtml::decode() (Qiang)
- Enh #2535: Added YiiBase::setLogger() (Qiang)
- Enh #2555: Exposed CFileCache::gc() so that garbage collection can be explicit
ly invoked (Qiang)
- Enh #2556: Improved exception display in ajax mode (Qiang)
- Enh #2571: Improved the code for cleaning output buffers in CErrorHandler (Qia
ng)
- Enh: XHR is now passed to CButtonColumn error JavaScript callback as a first a
rgument (Sam Dark)
- Enh: Added CHttpSession::regenerateID() and improved CWebUser::changeIdentity(
) by regenerating session ID (Qiang)
- Enh: Added CActiveRecord::saveCounters() (Qiang)
- Enh: Added Brazilian Portuguese translation (pt_br) of the core messages (bast
ardgoblin)
- Enh: CJSON::encode() can now encode non-UTF8 data (Qiang)
- Enh: Added CLogger::autoDump to allow writing log messages to destinations in
"real time" (Qiang)
- Enh: Added support for using custom URL rule classes with CUrlManager (Qiang)
- Enh: Added input length check to email and url validators to improve security
(Qiang)
- Enh: Added support to allow registering a class autoloader after Yii's default
autoloader (Qiang)
- Enh: Unit tests for validators (Kevin Bradwick)
- Chg #2251: Changed the constructor of CUploadedFile to be public (Qiang)
- Chg #2258: Added support to invalidate cached content by setting COutputCache:
:duration to be 0 (Qiang)
- Chg #2261: Upgraded HTMLPurifier to v4.3.0 (Sam Dark)
- Chg #2309: Changed XML mimetype to application/xml for more interoperability (
Sam Dark)
- Chg #2370: Upgraded JQuery UI to 1.8.13 (Sam Dark)
- Chg #2401: Upgraded jQuery to 1.6.1 (Sam Dark)
- Chg #2452: Upgraded Blueprint CSS to 1.0.1 (Sam Dark)
- Chg #2482: CWebService will not display source file name and error line number
in production mode (Qiang)
- Chg #2496: Setting CDbConnection::$emulatePrepare to be false will now explici
tly set PDO::ATTR_EMULATE_PREPARES to be false (Qiang)
- Chg: Changed CHtml::clientChange event binding to support custom event types a
nd avoid conflicts when using AJAX (Sam Dark)
- Chg: Changed all js live() calls with on() as live() is deprecated (mdomba)
Version 1.1.7 March 27, 2011
----------------------------
- Bug #1080: Correct recursive merging for CDbCriteria::with (creocoder, Sam Dar
k)
- Bug #1624: Fixed the bug that Gii would generate only one relation for a paren
t that has a child with more FK linking to it (mdomba)
- Bug #1809: Fixed the bug that CPgsqlSchema did not detect sequence names corre
ctly in some scenarios (Qiang)
- Bug #1984: Fixed firing event multiple times when using live()/delegate() on A
JAXified pages (Ekstazi, Sam Dark)
- Bug #2026: Fixed the bug that migration command does not respect the connectio
nID property value (Qiang)
- Bug #2032: Fixed the bug that beginCache with renderDynamic was not working if
used multiple times (mdomba)
- Bug #2037: Fixed CGridView js bug on selectionChanged "sboxname is undefined"
(mdomba)
- Bug #2060: Fixed the bug that CWebUser::getFlashes() would return a counter ar
ray in the result (Qiang)
- Bug #2097: CHttpRequest::getUrl() should be the same as getRequestUri (Qiang)
- Bug #2099: Fixed CDbCriteria::mergeWith error (creocoder, Sam Dark)
- Bug #2107: Fixed the bug that calling CSqliteSchema::resetSequence() may throw
exception when no autoincrement column (Qiang)
- Bug #2130: Fixed bug that Gii code/diff view was not starting from top (mdomba
)
- Bug #2131: Fixed the bug that CGridView ajax calls would sometime display erro
r alert when leaving the current page (mdomba,Qiang)
- Bug #2136: CGridView filter now uses jQuery serialize() instead of param() so
that a checkbox can be used as a filter (mdomba)
- Bug #2140: Fixed the problem that CGridView even rows where not properly rende
red in Firefox and Chrome (mdomba)
- Bug #2146: Fixed the bug in CFileHelper::getExtension, validatePath and getMim
eTypeByExtension that was not finding the file extension correctly (mdomba)
- Bug #2169: Fixed the bug that some columns are not properly quoted in MigrateC
ommand (Qiang)
- Bug #2178: Fixed the bug that query builder did not recognize the AS keyword w
hen using table alias (Qiang)
- Bug #2183: Fixed the bug that calling CActiveDataProvider::getTotalItemCount()
explicitly would make the applied scopes disappear (Qiang)
- Bug #2188: 'join' in default scopes is now respected by STAT relations (creoco
der, Sam Dark)
- Bug #2202: Fixed the bug that when setting CJuiDatePicker.flag=true, the date
picker would not appear (Qiang)
- Bug #2214: Fixed the bug that renameColumn for MSSQL did not work correctly (Q
iang)
- Bug: Fixed the bug that a PHP notice may occur in exception view if a method i
n the call stack has a very complex signature (Qiang)
- Bug: Fixed error that CGridview breaks when updating non-cgridview elements (m
domba)
- Bug: Fixed the bug in CCheckBoxColumn, "check all" checkbox was not being chec
ked/unchecked when needed (mdomba)
- Bug: Fixed the bug in CGridView, selectionChanged was not called when "check a
ll" was clicked (mdomba)
- Bug: Fixed resetting sequence in CDbCommand::truncateTable (Sam Dark)
- Bug: Fixed CMemCache incompatibility with some pecl-memcache and memcached ver
sions (Sam Dark)
- Enh #558, #1755: Added parametrized named scopes, added scopes to criteria, im
plemented scope criteria merging (creocoder, Sam Dark)
- Enh #802: Added RESTful URL management (Qiang)
- Enh #923: Improved CUrlManager::parsePathInfo() to support multi-dimensional i
nput arrays (Qiang)
- Enh #1117: Added support for "through" in Active Record relations allowing to
handle association table data (creocoder, Sam Dark)
- Enh #1285: Added support for using custom script packages with CClientScript (
Qiang)
- Enh #1741: Exposed CActiveForm::attributes and summaryID (Qiang)
- Enh #1770: Added CDbColumnSchema::autoIncrement property to allow checking whe
ther a DB column is auto-incremental (Qiang)
- Enh #1782: Added updateSelector property to both CGridView and CListView (Qian
g)
- Enh #1786: Enhanced CUrlValidator by adding 'validSchemes' and 'defaultScheme'
property (Y!!)
- Enh #1784: Enhanced CWidget::getViewPath() to support returning themed view pa
th (Qiang)
- Enh #1792: Enhanced CGridView: on ajax error a proper message is composed and
displayed or optionally sent to the custom error handler (mdomba)
- Enh #1795: Added CFormInputElement::$enableAjaxValidation and $enableClientVal
idation to allow turning on/off AJAX validation for individual input fields (Qia
ng)
- Enh #1816: Added $dumpLogs parameter to CLogger::flush() so that log messages
can be forced to be dumped at will (Qiang)
- Enh #1843: Added 'uncheckValue' option to CHtml::activeRadioButtonList and CHt
ml::activeCheckBoxList. It allows to avoid hidden field rendering (creocoder, Sa
m Dark)
- Enh #1847: Exposed CClientScript::$hasScripts (Qiang)
- Enh #1852: Added CWebUser::authTimeout to support separation between authentic
ation timeout and session timeout (Qiang)
- Enh #1868: CDbConnection will now open a DB connection only when needed, unles
s autoConnection is set true (Qiang)
- Enh #1937: Added support to use custom input ID for input fields that need AJA
X-based validation (Qiang)
- Enh #1993: Allow AR relations across separate db connections (Qiang)
- Enh #1996: Added support for using parameter binding with class-based actions
(Qiang)
- Enh #1999: Added CCaptchaAction::offset property in order to decrease or incre
ase the readability of the captcha (Y!!)
- Enh #2011: Added CDbCommand::setFetchMode to allow setting PDO result fetching
mode (Sam Dark)
- Enh #2013: When creating model with Gii, database field names will be checked
to conform with PHP variable naming rules (mdomba)
- Enh #2024: Added CHttpRequest::getPut() and getDelete() to fully support RESTf
ul requests (Qiang)
- Enh #2059: Added support to respect the "target" attribute of an element gener
ated by CHtml with "submit" HTML options (Qiang)
- Enh #2063: The CActiveForm JavaScript should now correctly trigger validaton f
or checkbox and radio type input fields (Y!!)
- Enh #2068: CTimestampBehavior::timestampExpression can now be a DB expression
(Qiang)
- Enh #2093: CDataColumn will now always render a filter if the filter property
is a string (Qiang)
- Enh #2094: Added SQL statement display in debug mode when an error occurs whil
e executing a SQL (Qiang)
- Enh #2105: Added CButtonColumn::afterDelete so that a custom javascript functi
on can be called after the delete function (mdomba)
- Enh #2108: Added CGridView::blankDisplay to allow customizing blank cell displ
ay (Qiang)
- Enh #2125: Added memcached check and hint to requirements checker (Sam Dark)
- Enh #2133: Set default focus to the password input for Gii login page (Qiang)
- Enh #2141: Allow the 'label' option of CMenu menu items to be optional and tak
e an empty string value (Qiang)
- Enh #2142: Added CWebUser::autoUpdateFlash (Qiang)
- Enh #2143: Added htmlOptions to CTreeView::data so that additional options can
be set for any tree view node (mdomba)
- Enh #2172: Added CDbMigration::execute() (Qiang)
- Enh #2179: Added CMultiFileUpload::options so that additional options can be p
assed to the constructor of the multifile object (mdomba)
- Enh #2185: Allow the column type to be optional when specifying columns for CG
ridView (Qiang)
- Enh #2197: Added $escape parameter to CDbCriteria::compare() (Qiang)
- Enh #2198: Improved CJuiTabs so that the tab content can be skipped (Qiang)
- Enh #2199: Added CListView::separator (Qiang)
- Enh #2206: Added $clearErrors parameter to CModel::validate() (Qiang)
- Enh #2209: Added CDbConnection::setAttributes() and getAttributes() to support
initializing DB connection with PDO attributes (Qiang)
- Enh #2226: Added more tokens to summaryText when CBaseListView.enablePaginatio
n is set false (Qiang)
- Enh #2227: Exposed CActiveRecord::query() (Qiang)
- Enh: Added CGridView::ajaxUpdateError for the possibility to use a custom ajax
error handler (mdomba)
- Enh: Allowed using CController instead of Controller with webapp generated app
lication (Sam Dark)
- Enh: Added ability to perform Relational query without getting related models
(creocoder, Sam Dark)
- Enh: Error page now displays associative array keys in parameter list (Sam Dar
k)
- Enh: Added CController::getActionParams() and invalidActionParams() to allow c
ustomizing action parameter binding feature (Qiang)
- Enh: Added CEvent::$params (Qiang)
- Enh: CStringValidator now uses application charset by default if mb_strlen is
available (Sam Dark)
- Chg #2001: CGridView now renders footer after the body content (Qiang)
- Chg #2111: Calling CActiveRecord::getRelated($name, true) now will redo the DB
query even if isNewRecord is true (qiang)
- Chg #2144: Upgraded jQuery UI to version 1.8.11 (Sam Dark)
- Chg #2148: Upgraded jQuery to version 1.5.1 (Sam Dark)
- Chg #2163: CConsoleCommand::usageError() will now exit with error code 1 (Qian
g)
- Chg: jQuery UI now uses minified CSS (Sam Dark)
- Chg: Removed jQuery dimensions plugin since it's in jQuery core (Sam Dark)
- Chg: Upgraded bgiframe to 2.1.2 (Sam Dark)
- New #1763: Added support for performing seamless client-side data validation u
sing CActiveForm (Qiang, hightman)
- New #2069: Added CDateValidator (Qiang)
- New: Added support for query caching (Qiang)
- New: Added Lithuanian translations (tomas.valacka)
Version 1.1.6 January 16, 2011
------------------------------
- Bug #997: Fixed the bug that relational AR query with page-by and sorting may
fail to work for SQL Server (Qiang)
- Bug #1775: Fixed the bug that AR and Gii may fail for tables not in default sc
hema in Oracle DB (Qiang)
- Bug #1790: Fixed the bug that CJSON::encode may generate invalid encoding resu
lt when data contains float numbers (Qiang)
- Bug #1799: Fixed the bug that CJuiDatePicker::$name may cause a PHP error (Y!!
)
- Bug #1819: CHttpRequest::getPathInfo() now respects encoded characters (Sam Da
rk, creocoder)
- Bug #1851: CFileHelper::getMimeType() was causing an error if used with PHP 5.
2 and PECL fileinfo extension (Sam Dark)
- Bug #1858: Fixed the bug that CDbCommandBuilder::createInCondition() doesn't w
ork with composite keys (Qiang)
- Bug #1864: Fixed a typo in CDbCommandBuilder that disables correct handling of
group and having in createCountCommand (Qiang)
- Bug #1878: Fixed the issue that keys rendered in grid view and list view shoul
d be encoded (Qiang)
- Bug #1879: Fixed the issue the AR does not work with PostgreSQL array column t
ype (Qiang)
- Bug #1891: Fixed the bug that on CListView ajax request was generating a DOM c
ontainer inside itself (mdomba)
- Bug #1902: Fixed the issue that CActiveRecord::exists() may cause ambiguous co
lumn error when used in relational query (Qiang)
- Bug #1920: Fixed the issue that the summary displayed by CGridView and CListVi
ew may be incorrect for SQL Server (Qiang)
- Bug #1936: Fixed the issue that flat CJuiDatePicker is not closing it's tag co
rrectly (sebas)
- Bug #1942: Fixed the bug that CSecurityManager::computeHMAC() generates non-st
andard HMAC (Qiang)
- Bug #1945: Fixed the bug that user-supplied form ID is not honored when buildi
ng a form using CForm with a model (Qiang)
- Bug #1948: Fixed a bug in generating the number symbols of I18N data from CLDR
(Qiang)
- Bug #1975: Fixed the bug that caused a PHP error when CAssetManager::publish()
tried to create a symlink in a non-existing directory (Y!!)
- Bug: Fixed the bug that CActiveForm generates unnecessary js code about settin
g focus (Qiang)
- Bug: Fixed CDateTimeParser::parse() default hour, minute and second handling w
hen they are not used in pattern (Sam Dark)
- Enh #1733: Updated multifile plugin used by CMultiFileUpload to version 1.47 (
mdomba)
- Enh #1771: Added $driverOptions parameter to CDbCommand::bindParam() method (Q
iang)
- Enh #1785: Added CAssetManager::$excludeFiles property to support exclusion of
irrelevant files from the publishing process (Y!!)
- Enh #1836: The contact form model of the blog demo does now make use of CCaptc
ha::checkRequirements (Y!!)
- Enh #1842: CHtml::button will not render the name attribute if it is set null
(Qiang)
- Enh #1860: Changed the signature of CValidator::createValidator() to make it e
asier to use (Qiang)
- Enh #1849: Updated Blueprint CSS to version 1.0 (sebas)
- Enh #1872: Added $defaultUrl parameter to CWebUser::getReturnUrl() (Qiang)
- Eng #1875, #1987: Added support for CLDR-based plural forms format and number
placeholders to Yii::t (creocoder, Sam Dark, Qiang, dmitriy.trt)
- Enh #1877: createAbsoluteUrl in CWebApplication and CController will now respe
ct URL rules that already have host info built-in (Qiang)
- Enh #1885: Added ipFilters to the Gii-created config file to reduce user confu
sion (Sam Dark, Steve Friedl)
- Enh #1895: Added CDbDataReader implements Countable interface (mdomba)
- Enh #1899: Added checkIntegrity and resetSequence for SQL Server (Qiang)
- Enh #1929: Improved CActiveForm so that it can be used multiple times on the s
ame page for the same type of data model (Qiang)
- Enh #1931: CDbConnection.tablePrefix can now use an empty string as table pref
ix (Qiang)
- Enh #1962: Added submenuOptions option to CMenu::items (Qiang)
- Enh #1995: Added CDbConnection::driverMap to allow more easily customizing sch
ema classes (Qiang)
- Enh: Updated CLDR data to version 1.9 (Sam Dark)
- Enh: Allowed passing multiple forms or choice format quantity parameter withou
t wrapping it with array (Sam Dark)
- Enh: CDbConnection::quoteColumnName and quoteTableName will properly quote tab
le prefix and schema prefix. (Qiang)
- Enh: Added CConsoleCommand::init() (Qiang)
- Enh: Improved the exception display with source code for each call stack (Sam
Dark, Qiang)
- Enh: Improved the error display in console command mode (Qiang)
- Enh: Added support for using anonymous parameters and global options in consol
e commands (Qiang)
- Enh: Added message translations in Czech and Croatia (Qiang)
- Enh: Enhanced CFileLogRoute to process the logs faster (Y!!)
- Enh: Improved IDE code completion for Yii::app()-> (Sam Dark)
- Enh: CSort now supports relation.field notation to sort grids by related model
fields (Sam Dark, denis909)
- Enh: Added CHttpRequest->xSendFile() to process file download requests by usin
g X-Sendfile header (mdomba)
- Enh: Refactored CMenu by adding CMenu::renderMenuItem to make it easier to be
extended (Qiang)
- Enh: Refactored CCheckBoxColumn for better use, added CCheckColumn->selectable
Rows (mdomba)
- Chg #1914: Composite foreign keys should be separated by commas in CActiveReco
rd::relations() (Qiang)
- Chg #1949: CGridView will now display the first page after changing filters (Q
iang)
- Chg: isset($model->x) and isset($model['x']) are now identical for CActiveReco
rd models (Sam Dark)
- Chg: Changed CHtml::clientChange() to make $live a configurable option in $htm
lOptions (Qiang)
- New #1191: Implemented the database migration feature (Qiang)
- New: Added query builder (Qiang)
Version 1.1.5 November 14, 2010
-------------------------------
- Bug #997: Fixed the bug that relational AR query with page-by and sorting may
fail to work for SQL Server (Qiang)
- Bug #1130: Fixed the bug when renderDynamic and beginCache was used together w
ithout page caching (mdomba)
- Bug #1244: Fixed the bug that CDbCommandBuilder::createCountCommand may genera
te invalid SQL when having and/or group options are used (Qiang)
- Bug #1420: Fixed the bug that the table alias set in the model was not honored
in STAT AR queries (Qiang)
- Bug #1565: Fixed the bug that COutputCache may fail to work when used to cache
whole pages (Qiang)
- Bug #1577: Fixed the bug in CMssqlSchema::compareTableNames() (Qiang)
- Bug #1592: Fixed the bug that the hidden field generated by CHtml::checkBox ma
y have the same ID as the checkbox. (Qiang)
- Bug #1615: Fixed the bug that caused CLogFilter::filter() to add context infor
mations when the log was empty (Y!!)
- Bug #1643: Fixed the bug that CFileValidator may cause a PHP error when using
maxFiles>1 and the model attribute returning unexpected array (Qiang)
- Bug #1647: Fixed the bug that CActiveRelation may attempt to set an undefined
'together' property when merging with a criteria (Qiang)
- Bug #1653: Fixed the bug that in PHP 5.3 CArrayDataProvider will fail due to i
ncorrect parameters sent to array_multisort (Qiang)
- Bug #1655: Fixed the bug in COciSchema about checking DB schema (Qiang)
- Bug #1673: Fixed the bug that CDbSchema::getTables() might return null table s
chemas (Qiang)
- Bug #1685: Fixed the bug in COciSchema that will fail when used with DB schema
(Qiang)
- Bug #1696: Fixed the bug that CJSON and CJavaScript might serialize float numb
ers into local-dependent strings (Qiang)
- Bug #1715: Fixed the bug that CActiveDataProvider.sort does not respect table
alias set in the query criteria (Qiang)
- Bug #1718: Fixed the bug that Gii may fail if the error handler or user compon
ent is customized in the main application (Qiang)
- Bug #1719: Fixed the bug that CActiveForm->focus was not working if enableAjax
Validation was set to false (mdomba)
- Bug #1730: Fixed the bug that CDbConnection may attempt to use "SET NAMES" to
set charset for Oracle DB (Qiang)
- Bug #1735: Fixed the bug that CGridView and CListView may fail to work in AJAX
mode if setting pagerCssClass with multiple classes (Qiang)
- Bug #1748: Fixed the bug that CDbDataReader does not properly reset internal p
ointer when it has multiple rowsets (Qiang)
- Bug: Fixed the bug that some HTTP requests may cause a PHP notice complaining
HTTP_HOST undefined in CHttpRequest (Qiang)
- Bug: Fixed a bug in CGridView JavaScript that would fail the deletion action i
n IE when ajaxUpdate is set false (Qiang)
- Bug: Fixed a bug that CFileCache may slow down performance when strlen is over
loaded by mb_strlen (Qiang)
- Enh #202: Added support for console command actions and parameter binding (Qia
ng)
- Enh #970: Added CController::beforeRender() and CController::afterRender() (Qi
ang)
- Enh #1081: Refactored application global state management to allow loading and
saving states explicitly for long-run tasks (Qiang)
- Enh #1126: CHtml can now properly render special HTML attributes, such as read
only, disabled, according to their boolean values (Qiang)
- Enh #1419: CMaskedTextField, CAutoComplete, CStarRating, CJuiDatePicker, CJuiA
utoComplete and CJuiSliderInput now can be used with tabular input (Sam Dark)
- Enh #1450: Added support for theming widget views (Qiang)
- Enh #1481: Added support for autoloading namespaced classes (Qiang)
- Enh #1522: The attributes of CDetailView now support the property 'visible' (Y
!!)
- Enh #1546: Fixed the bug that disabling behaviors did not detach behavior even
t handlers (Qiang)
- Enh #1555: Added support to allow unloading/resetting an application component
by calling CModule::setComponent() (Qiang)
- Enh #1561: Enhanced Gii tooltip feature to allow disable tooltips for certain
input fields (Qiang)
- Enh #1599: Refactored CMultiFileUpload by extending from CInputWidget (Qiang)
- Enh #1560: Removed potential circular references in relational AR queries (Qia
ng)
- Enh #1578: Added support to parse AM/PM by CDateTimeParser (Qiang)
- Enh #1583: Upgraded HTMLPurifier to v4.2.0 (Sam Dark)
- Enh #1591: Fixed yiic.bat to make sure it works even if the path of PHP execut
able contains spaces (Qiang)
- Enh #1594: Added CWebLogRoute::ignoreAjaxInFireBug to make sure ajax calls wor
k when showInFireBug is set to true (mdomba)
- Enh #1596: Added 'not' property to CRangeValidator and CRegularExpressionValid
ator in order to support inversion of the validation logic (Y!!)
- Enh #1598: Fixed CHttpRequest::getUserAgent() to make sure it works even if HT
TP_USER_AGENT is not defined (Qiang)
- Enh #1607: Added CDbCache::setDbConnection (Qiang)
- Enh #1611: Added support for using composite keys in CActiveDataProvider (Qian
g)
- Enh #1618: Fixed CHttpRequest::getAcceptTypes() to make sure it works even if
HTTP_ACCEPT is not defined (Y!!)
- Enh #1625: Replaced rand() with mt_rand() for generating random private keys (
Qiang)
- Enh #1627: Added check if FreeType support is installed and enabled in GD (mdo
mba)
- Enh #1633: Added $defaults to CDateTimeParser::parse() to support more reasona
ble datetime parsing (Qiang)
- Enh #1641: Added PhpUnit 3.5.0RC1 and up support (Sam Dark)
- Enh #1644: Added CModel::onAfterConstruct event and allowed CModelBehavior to
respond to this event (Qiang)
- Enh #1651: Added 'name' and 'model' properties to the attribute objects used i
n CActiveForm javascript code (Qiang)
- Enh #1658: Added CAssetManager::linkAssets to support publishing assets via sy
mbolic links (Qiang)
- Enh #1659: Improved CHttpRequest::sendFile() and CWebService::renderWsdl() to
make them more secure in case mbstring.func_overload is in effect (Qiang)
- Enh #1661: Added CActiveForm 'reset' event handler to reset validation errors
if using CHtml::resetButton() (mdomba)
- Enh #1667: Added CDbCriteria::index to support indexing the AR query result ar
ray with the specified attribute values (Qiang)
- Enh #1668: Added validation to ensure PHP keywords be not used as class names
(Qiang)
- Enh #1688: Refactored CDbMessageSource to allow easier extension (Qiang)
- Enh #1699: Added capability to remove duplicated script files registered for d
ifferent positions in CClientScript (Qiang)
- Enh #1710: Upgraded treeview JavaScript to version 1.4.1 (mdomba)
- Enh #1711: JavaScript registered in POS_LOAD will now be put in jQuery window
load event instead of the previous global window load event (Qiang)
- Enh #1742: Exposing the class map feature that was previously only available t
o core classes (Qiang)
- Enh #1738: Upgraded JQuery UI to 1.8.6 (Sam Dark)
- Enh #1740: Added CModelEvent::criteria so that in onBeforeEvent event, the que
ry criteria can be accessed (Qiang)
- Enh #1753: Added method chaining support for CClientScript (Qiang)
- Enh: Added checking for empty keywords in addSearchCondition(), to prevent add
ing unnecessary conditions (mdomba)
- Enh: Added flushValues() method to the cache classes (Y!!)
- Enh: Added buttonset for CJuiButoon (sebas)
- Enh: Improved error handling to catch errors occurring in CApplication::end()
(Qiang)
- Enh: Improved CHttpRequest::sendFile() to avoid timeout errors caused by long
file downloading time (Qiang)
- Enh: Improved action parameter binding by detecting if a parameter requires ar
ray or not (Qiang)
- Enh: Added logging of DB query params in DB query profiling (Sam Dark, Vitaliy
Stepanenko)
- Enh: Added CDbCommand::bindValues() (Qiang)
- Chg #1355: CHtml will no longer render null attributes in HTML tags (Qiang)
- Chg #1540: The 'name' option set in CCheckBoxColumn::checkBoxHtmlOptions will
be kept as is without any change (Qiang)
- Chg #1678: The prompt and empty options used in CHtml methods will NOT be HTML
-encoded anymore. (Qiang)
- Chg #1680: Upgraded jQuery to version 1.4.4 (Sam Dark)
- Chg #1756: Changed CGoogleApi::BOOTSTRAP_URL to CGoogleApi::$bootstrapUrl to a
llow customization (Qiang)
- Chg: The javascript files of CListView and CGridView are now registered at the
end of the page (Qiang)
- Chg: Log filters will now be invoked only when there are some log messages ava
ilable (Qiang)
- Chg: removed destructor from CDbCache, CDbAuthManager and CDbLogRoute to avoid
potential DB connection issue (Qiang)
- New #1542: Added CTypedMap (Qiang)
Version 1.1.4 September 5, 2010
-------------------------------
- Bug #698: Now you can get and modify criteria of the current query in beforeFi
nd() event handler (Sam Dark)
- Bug #1031: Fixed the bug that the filters in CGridView does not work in IE (Qi
ang)
- Bug #1119: Added CUploadedFile::reset() to make it more test-friendly (Qiang)
- Bug #1176: Fixed the bug that CVarDumper doesn't highlight well strings with q
uotes (Qiang)
- Bug #1376: Fixed the bug that the timestamps displayed in Web application log
may not be formatted properly (Qiang)
- Bug #1377: Fixed the bug that CStarRating did not work when not setting the mo
del property (Qiang)
- Bug #1382: Fixed space removal in CDbCriteria::compare() (Sam Dark)
- Bug #1384: SET NAMES problem with MSSQL PDO Provider (Qiang)
- Bug #1390: AR may lose precision if a column is declared as unsigned int for M
ySQL database (Qiang)
- Bug #1404: CSecurityManager::validateData() fails when the data is an array (Q
iang)
- Bug #1408: CDbAuthManager may throw exception when unserializing data from aut
h items in PHP 5.3 (Qiang)
- Bug #1432: AR find methods with JOIN in query criteria may populate AR objects
with attribute values belonging to other tables (Qiang)
- Bug #1435: Table alias declared in scopes may be ignored when performing relat
ional findByPk and findByAttributes queries (Qiang)
- Bug #1476: Fixed the bug that setting 'id' to be false will still render 'id'
attribute in CHtml::radioButton and checkBox (Qiang)
- Bug #1455: CFormButtonElement generates wrong type for button tags (Qiang)
- Bug #1488: When using cookies with CJuiWidget jquery.cookie.js is not register
ed (sebas)
- Bug #1493: ShellCommand wouldn't process logs after exiting. (Qiang)
- Bug #1521: CUniqueValidator may incorrectly fail the validation of a non-PK co
lumn when updating both this column and the PK column (Qiang)
- Bug #1526: CFormInputElement by default should only show error if CForm::showE
rrorSummary is false (Qiang)
- Enh #954: Refactored CActiveRecord and CActiveFinder so that CActiveRecord::wi
th() always returns the AR object itself (Qiang)
- Enh #1019: Improved CDataFormatter for formatting numeric weekdays (Qiang)
- Enh #1073: Allow dependencies to be set in constructor of CChainedCacheDepende
ncy. Also allow dependencies to be specified as configurations. (Qiang)
- Enh #1087: Allow CDbCriteria to be used as dynamic relational query options (Q
iang)
- Enh #1104: Added argument "$" to jQuery block to prevent $ alias conflict (mdo
mba)
- Enh #1108: Added option to CFileHelper::getMimeType() to allow enable and disa
ble falling back to extension-based MIME detection (Qiang)
- Enh #1120: Improved error handling in session write handler of CDbHttpSession
(Qiang)
- Enh #1128: Improved error reporting when assets directory does not exist or is
not writable (Qiang)
- Enh #1222: Added relations information to Gii generated model's PHPDoc (Sam Da
rk)
- Enh #1244: CActiveRecord::count() now respects GROUP-BY and HAVING settings (Q
iang)
- Enh #1347: Added CPagination::validateCurrentPage (Qiang)
- Enh #1358: Enhanced the 'together' option of HAS_MANY/MANY_MANY relations so t
hat setting it true will ensure the related table is joined with the primary tab
le in a single SQL (Qiang)
- Enh #1359: Added CActiveRecord::countByAttributes (Qiang)
- Enh #1361: Added linkLabelWrapper, firstItemCssClass and lastItemCssClass to C
Menu (Qiang)
- Enh #1366: Added CListView::itemsTagName (Qiang)
- Enh #1371: Improved js code in gii view templates to allow easier subclassing
(Qiang)
- Enh #1392: Added CCaptchaAction::fixedVerifyCode (Qiang)
- Enh #1400: Enhanced CActiveRecord::getAttributeLabel() to support returning la
bels for related object's attribute (Qiang)
- Enh #1412: Yii::import() now throws an exception when trying to include nonexi
sting PHP file (Qiang)
- Enh #1414: Several enhancements to MSSQL driver used by AR (Qiang)
- Enh #1433: Added CMessageSource::forceTranslation (Qiang)
- Enh #1434: Added zii message translation in Italian (enrico.detoma)
- Enh #1440: CDbException does now provide a valid error code if possible (Y!!)
- Enh #1443: Added CCheckBoxColumn::checked to allow settings checked state for
each CCheckBoxColumn row (Sam Dark)
- Enh #1444: Added CFilter::init() (Qiang)
- Enh #1449: Changed CDbCriteria's base class to be CComponent to better report
configuration errors (Qiang)
- Enh #1461: Enhanced CEmailLogRoute to support additional email headers (Y!!)
- Enh #1471: CActiveForm AJAX validation should be cancelled when the form is al
ready submitted (Qiang)
- Enh #1509: Improved CMarkdownParser so that it can be used in console mode (Qi
ang)
- Enh #1525: Added support to allow customizing 'name' attribute of checkboxes g
enerated by CCheckBoxColumn (Qiang)
- Enh #1532: Exposed the serviceName and namespace properties of CWsdlGenerator
(Qiang)
- Enh: Added CPortlet::hideOnEmpty property (Qiang)
- Enh: Added CValidator::safe to allow marking a validator as safe or unsafe (Qi
ang)
- Enh: Added CDbCacheDependency::params (Qiang)
- Enh: Added CUrlManager::addRules() (Qiang)
- Enh: Added support for using sqlsrv driver with MSSQL (Qiang)
- Enh: Added CActiveForm::focus to set input focus on page load (mdomba)
- Chg #1102: Added jQuery UI as a core client script package (Qiang)
- Chg #1309: CHttpRequest::getPathInfo() now always returns decoded results (Qia
ng)
- Chg #1494: CHtml::ajaxSubmitButton() will generate a submit button (Qiang)
- Chg #1515: CModel::onUnsafeAttribute() will be invoked only when $safeOnly is
true when calling CModel::setAttributes (Qiang)
- Chg: Replaced jQuery live() with delegate() in CHtml-generated js code (Qiang)
- New: Upgraded JQuery UI to 1.8.4 (Sam Dark)
- New: Upgraded code highlighter: added sh and VBScript, fixed comments in CSS a
nd hex numbers in JavaScript (Sam Dark)
- New: Added CSqlDataProvider and CArrayDataProvider (Qiang)
- New: Added support for automatic action parameter binding from $_GET (Qiang)
Version 1.1.3 July 4, 2010
--------------------------
- Bug #856: Logout doesn't work when CWebUser::identityCookie is configured and
allowAutoLogin is set true (Qiang)
- Bug #1027: CButtonColumn->buttons is ignored (Sam Dark)
- Bug #1039: Table prefix feature did not work with PostgreSQL and AR (Qiang)
- Bug #1046: Fixed the bug that CDbFixtureManager did not properly initialize th
e fixture data (Qiang)
- Bug #0147: Fixed the bug that changing CAuthItem.description value would cause
an exception when using CPhpAuthManager (Qiang)
- Bug #1050: Fixed the bug that filter conditions were prefilled with default va
lues when using an AR model in CGridView (Qiang)
- Bug #1109: CActiveRecord::getRelated() did not refresh when setting the $refre
sh parameter to be true (Qiang)
- Bug #1142: Fixed the character encoding in polish translations (pawel.drylo)
- Bug #1149: CHtml::resolveName() does not work with multiple dimensional attrib
utes (Qiang)
- Bug #1176: CVarDumper may omit some backslashes in the syntax-highlighted disp
lay (Qiang)
- Bug #1190: CLocale::getMonthNames may fail due to a typo (Qiang)
- Bug #1208: Unsigned integer column type was not handled correctly (Qiang)
- Bug #1213: Fixed the bug that skipOnError doesn't have effect on inline valida
tors (Qiang)
- Bug #1226: CWebUser::autoRenewCookie does not handle the case when the user is
already logged in (Qiang)
- Bug #1227: CActiveRecord::resetScope doesn't work with default scope (Sam Dark
)
- Bug #1231: CPgsqlColumnSchema may incorrectly parse the default column when DB
expression is used (Qiang)
- Bug #1241: DB search parameters should have special characters escaped (Qiang)
- Bug #1242: Fixed the bug that CGridView filtering and item deletion would not
work when ajax-update is disabled (Qiang)
- Bug #1252: CJSON::encode() was not able to encode models and model arrays (Sam
Dark)
- Bug #1262: Fixed the bug that CDbFixtureManager was unable to load fixture dat
a if table prefix feature is used (Qiang)
- Bug #1292: CDateTimeParser::parse() did not honor the number of digits in the
required format in some cases (Qiang)
- Bug #1293: Added tag to initial CAPTCHA image URL to avoid caching issue (Qian
g)
- Bug #1295: CHtml::beginForm() would generate useless CSRF field when in GET mo
de (Qiang)
- Bug: Fixed AR memory leaks on PHP<5.3 (Sam Dark, parpaing)
- Enh #217: Added support to allow using related objects as selection values in
CHtml (Qiang)
- Enh #663: Improved CSecurityManager to allow customizing the crypt/hash algori
thms being used (Qiang)
- Enh #716: Improved the performance of statistical query in AR (Qiang)
- Enh #862: Enhanced CSort virtual attributes and support for related tables (Qi
ang)
- Enh #887: Relative URL's will be returned when using a parameterized hostname
url rule that has the current hostinfo (Qiang)
- Enh #930: Updated CStarRating's jQuery plugin to v3.13, updated jQuery Metadat
a plugin (Sam Dark)
- Enh #952: Enhanced support for using defaultParams in CUrlManager (Qiang)
- Enh #1015: Added automatic column initialization when non-active data provider
is used for CGridView (Qiang)
- Enh #1022: Added CMenu::activateItems (Qiang)
- Enh #1041: Added support to allow skinning pagers used in CGridView and CListV
iew (Qiang)
- Enh #1043: Improved view resolution to support using themeable application vie
ws in a module (Qiang)
- Enh #1049: Enhanced label generation when using CDetailView with associative a
rrays (Qiang)
- Enh #1127: Added support to automatically generate maxlength attribute for tex
t/password inputs based on model rules (Qiang)
- Enh #1151: Added support to generate grid column header based on attribute nam
es (Qiang)
- Enh #1158: Added translations in Latvian (lafriks)
- Enh #1166: Added CActiveRecord::setOldPrimaryKey (Qiang)
- Enh #1174: AR's count() now generates more reasonable SQL statement when 'grou
p' option is specified (Qiang)
- Enh #1179: Added CMultiFileUpload::file (Qiang)
- Enh #1180: Exposed several member variables in CClientScript to be protected (
Qiang)
- Enh #1183: Added support to retrieve the currently active table alias in AR sc
opes (Qiang)
- Enh #1188: Removed exception message display in production mode when a DB conn
ection fails to improve security (Qiang)
- Enh #1189: Added $loadedOnly parameter to CModule::getComponents() so that it
can return all application components including unloaded ones (Qiang)
- Enh #1199: AR's count() method now respects the 'select' option in the query c
riteria (Qiang)
- Enh #1202: Added support for using anonymous functions as component property v
alues (Qiang)
- Enh #1203: Gii now respects the newDirMode and newFileMode settings even when
lower umask is set (Qiang)
- Enh #1210: Added support to generate proper labels for relational properties i
n CDetailView (Qiang)
- Enh #1225: Added 'firstError' option to CHtml::errorSummary() to support displ
aying only the first error message of each model attribute (Qiang)
- Enh #1232: Added CAuthManager::showErrors. When value is true Yii will turn on
error_reporting for RBAC bizRules. False by default (Sam Dark)
- Enh #1239: CBreadcrumbs should have the 'Home' label translated (Qiang)
- Enh #1245: Optimized the implementation of checkAccess of CPhpAuthManager and
CDbAuthManager (Qiang)
- Enh #1261: Added magicFile parameter to CFileHelper::getMimeType() and getMime
TypeByExtension() (Qiang)
- Enh #1268: Added isset and unset support to behavior properties in a component
context (Qiang)
- Enh #1271: Added CWebUser::getFlashes() (Qiang)
- Enh #1276: Added CClientScript::coreScriptPosition to support customizing the
insertion position of core scripts (Qiang)
- Enh #1278: Gii model generator will now respect the table prefix when determin
ing which tables the models should be generated for (Qiang)
- Enh #1283: Added port and securePort properties to CHttpRequest (Qiang)
- Enh #1284: Added support to allow passing an AR finder as the first parameter
of the constructor of CActiveDataProvider (Qiang)
- Enh #1286: Upgraded HTMLPurifier to v4.1.1 (Qiang)
- Enh #1289: Added support to allow using non-string values when calling CDbCrit
eria::compare() (Qiang)
- Enh #1290: Added cssClass to individual item in CDetailView (Qiang)
- Enh #1306: Hide log route outputs when no messages are collected after filteri
ng (Qiang)
- Enh #1311: Added {page} and {pages} tokens to CBaseListView::summaryText (Qian
g)
- Enh #1326: Added CBaseActiveRelation::join property (Qiang)
- Enh: CActiveRecord::beforeFind event is now triggered in all cases including r
elated models with both lazy and eager loading (Sam Dark, creocoder)
- Enh: Added support for using array-typed model attributes in active methods in
CHtml (Qiang)
- Enh: Added beforeValidate, afterValidate, beforeValidateAttribute and afterVal
idateAttribute options to CActiveForm (Qiang)
- Enh: Changed @var declarations to class @property declarations in gii and yiic
shell model templates (Sam Dark)
- Enh: IDE code completion for CActiveRecord::attributes (Sam Dark)
- Enh: Added beforeLogin, afterLogin, beforeLogout and afterLogout to CWebUser (
Qiang)
- Enh: Enhanced CSort::defaultOrder to allow using virtual attribute names (Qian
g)
- Chg #1323: Conditions declared in scopes of the related AR classes will be put
in the ON clause of the JOIN statement (Qiang)
- Chg: CAutoComplete is now deprecated (Sam Dark)
- New: Added CJuiButton (sebas)
Version 1.1.2 May 2, 2010
-------------------------
- Bug #676, 891: merging criterias with parameters is impossible (Sam Dark)
- Bug #1006: Setting CForm::attributes may cause exception (Qiang)
- Bug #1007: CActiveForm did not update the validation result correctly when cha
nge of one attribute affects the validity of another (Qiang)
- Bug #1014: CDataProvider was accessing non-existing property modelClass (Qiang
)
- Bug #1021: Missing return in CAuthItem::removeChild (Sam Dark)
- Bug #1031: Added a temporary fix for dropdown filter in CGridView not working
in IE (Qiang)
- Bug #1035: RBAC BizRule security violation (Sam Dark)
- Bug #1048: CAutoComplete conflicts with jQueryUI 1.8.x (Sam Dark)
- Bug #1115: Fixed the bug that using bigint with MySQL, PostgreSQL and SQL Serv
er may lose precision (Qiang)
- Bug #1121: typo in CActiveRecord::setPrimaryKey() (Qiang)
- Bug #1136: Fixed wrong API call in CXCache::flush() (Qiang)
- Bug #1147: zii widget messages are not translated via Yii::t() (Sam Dark)
- Bug: Removed the debugging line in CActiveFinder that caused many-many relatio
nal query to fail if FKs are not defined (Qiang)
- Bug: Fixed the bug that doing performance profiling while turning on YII_TRACE
_LEVEL would throw exception (Qiang)
- Bug: user was redirected to AJAX URLs after logging in (Sam Dark)
- Bug: RBAC rules with bizRule and caching enabled worked wrong (Sam Dark)
- Bug: CSort may cause exception if an invalid column is to be sorted (Qiang)
- Bug: AR count() does not generate correct SQL when distinct is set true in the
criteria (Qiang)
- Bug: Relational AR query may complain column not well defined when the column
select spans multiple lines (Qiang)
- Enh #943: dynamic AR relations (Sam Dark)
- Enh #946: Added a new parameter to CBaseController::widget() method to allow c
apturing the output of the widget (Qiang)
- Enh #977: Added CModel::getValidatorList() to allow adding/removing validation
rules on the fly (Sam Dark, creocoder)
- Enh #1001: Added CActiveRecord::resetScope() that resets all scopes and criter
ias applied including default scope (Sam Dark)
- Enh #1009: Allow quoted columns in CDbCriteria::select when performing relatio
nal query (Qiang)
- Enh #1025: added 'uncheckValue' option to CHtml::radioButton() and CHtml::chec
kBox() (Jonah)
- Enh #1042: CForm __construct now uses setModel() instead of assigning _model d
irectly (Sam Dark)
- Enh #1062: Added CDbCriteria::addBetweenCondition() (Sam Dark)
- Enh #1071: Optimized file copying in CUploadedFile::saveAs() (Sam Dark)
- Enh #1084: Added CLocale::getOrientation() to return character orientation inf
ormation of a locale (Qiang)
- Enh #1091: Added support to allow using normal PHP views with special views re
cognized by the installed view renderer (Qiang)
- Enh #1093: CJSON now tries to use native PHP functions prior to use Yii implem
entation (Sam Dark)
- Enh #1140: Added CHttpSession::get() (Qiang)
- Enh #1156: Updated jQuery BBQ to 1.2.1 (Sam Dark)
- Enh #1282: Added support to configure widget default values in application con
figuration (Qiang)
- Enh: Improved IDE code completion for generated AR models (Sam Dark)
- Enh: CCaptchaAction now supports unlimited tests by setting its testLimit to b
e 0 (Qiang)
- Enh: Added $forceCopy parameter to CAssetManager::publish() (Qiang)
- Enh: CTypeValidator now supports checking array data (Qiang)
- Enh: Added CFileHelper::getExtension() (Qiang)
- Enh: Added CModule::hasModule() (Qiang)
- Enh: CFileValidator now works with php.ini's upload_max_filesize strings with
K, G, k, m, g (Sam Dark)
- Enh: Enhanced CActiveForm to make it more robust in case some code error occur
s when performing ajax validation (Qiang)
- Enh: CMaskedTextField's jquery.maskedinput updated to 1.2.2 (Sam Dark)
- Enh: Added support to allow CActiveRecord::getAttributes() to return custom at
tributes if required (Qiang)
- Chg #1118: CActiveRecord::refresh() now updates the record by directly updatin
g the attributes array (Qiang)
- Chg #1125: Ability to use model metadata in behavior's attach() method (Sam Da
rk)
- Chg #1163: CLinkPager will enable first and last page buttons unless the curre
nt page is first or last. (Qiang)
- Chg #1164: CUrlRule will not throw 404 exception when unable to parse a URL un
der strict parsing mode (Qiang)
- New #1005: added CWinCache (Sam Dark)
- New #1013: Added CJuiAutoComplete (sebas)
- New: Added Ukrainian translations (Valeriy)
- New: Upgraded JQuery UI to 1.8.1 (Qiang)
Version 1.1.1 March 14, 2010
----------------------------
- Bug #727: AR may lose precision for numbers of bigint type (Qiang)
- Bug #738: COciColumnSchema must return 'double' if precision and scale designa
tors of NUMBER field are absent (Qiang)
- Bug #816: CUniqueValidator did not work with CFormModel (Qiang)
- Bug #823: typo in CLinkColumn about linkHtmlOptions (Qiang)
- Bug #839: typo in CFormatter about calling method_exists() (Qiang)
- Bug #865: CWidgetFactory didn't set the owner of the newly created widgets cor
rectly (Qiang)
- Bug #869: CDateFormatter::formatTimeZone() may report error for certain locale
data (Qiang)
- Bug #871: A module generated by the yiic module command did not use the applic
ation layout by default (Qiang)
- Bug #890: The 'alias' option set in default scope was ignored when performing
an eager relational query (Qiang)
- Bug #932: CLocale::getWeekDayName() causes PHP error when requesting 'narrow'
format data (Qiang)
- Bug #947: CTabView does not target tab links correctly when extra elements are
put in the header (Qiang)
- Bug #957: CGettextPoFile should allow optional msgctxt (Qiang)
- Bug #967: CFormInputElement doesn't respect element-id if set (Sam Dark)
- Bug #988: COcSchema::quoteTableName() and quoteColumnName() should quote the n
ames (Qiang)
- Bug #995: The 'alias' option set in default scope was ignored when some find m
ethods in AR (Qiang)
- Bug #996: "yiic message" command generates incorrect message file name when us
ed in a module context (Qiang)
- Bug #14 (zii): Added documentation about the "js:" prefix in CJuiSortable (seb
as)
- Bug #18 (zii): Change the way CJuiDatePicker sets its language option (sebas)
- Bug #27 (zii): Fixed the issue that when CSRF is turned on, delete button does
n't work for CGridView (Qiang)
- Bug: Setting the 'with' option in criteria array doesn't trigger eager loading
for AR (Qiang)
- Bug: CActiveRecord should update oldPrimaryKey after calling save() (Qiang)
- Bug: CForm renders invalid 'name' and 'type' attributes when used to generate
nested forms (Qiang)
- Bug: Fixed the bug that beforeAjaxUpdate/afterAjaxUpdate of CGridView/CListVie
w do not take effect.
- Bug: Fixed the bug that the names of URL parameters were not encoded (Qiang)
- Bug: CGridView and CListView may not register the needed CSS file for the page
r (Qiang)
- Enh #38: Added support to allow CHtml links and buttons work in AJAX responses
(Qiang)
- Enh #392: Added CStringValidator::encoding to support checking the length of m
ultibyte strings (Qiang)
- Enh #686: Added CUrlManager::setBasePath() (Qiang)
- Enh #726: Added CDbExpression::params (Qiang)
- Enh #794: Added support to allow using * to select all primary table columns i
n relational AR query (Qiang)
- Enh #820: Added CAccessRule::message to allow customizing authorization error
message (Qiang)
- Enh #826: Added CMenu::itemTemplate property and template option for each menu
item (Qiang)
- Enh #857: Added $exit parameter to CController::forward() (Qiang)
- Enh #872: Added CFlexWidget::allowFullScreen (Qiang)
- Enh #888: Added CBaseUserIdentity::setPersistentStates (Sam Dark)
- Enh #898: Added support to allow defining global yiic commands (Qiang)
- Enh #912: Added CModel::onUnsafeAttribute() which will log a warning message w
hen massively assigning unsafe attributes (Qiang)
- Enh #916: Added visible option to buttons in CButtonColumn (Qiang)
- Enh #918: Added support to show attribute name as the label when displaying an
array using CDetailView (Qiang)
- Enh #936: Current module ID is no longer needed when calling CController::forw
ard() (Qiang)
- Enh #941: AR now allows MANY_MANY relation to be specified more flexibly (Qian
g)
- Enh #953: Added CGridView::hideHeader (Qiang)
- Enh #955: Added validateValue() to CUrlValidator and CEmailValidator (Qiang)
- Enh #971: Added CDbCriteria::addNotInCondition() (Sam Dark)
- Enh #992: Added 'data' option to CTabView.tabs property (Qiang)
- Enh: Refactored the blog demo to make use of the new CActiveForm and the filte
ring feature of CGridView (Qiang)
- Enh: Improved the code generated by yiic, including menu refactoring, filterin
g/search support, and using active form (Qiang)
- Enh: Improved CHtml::beginForm() to auto-generate hidden fields for a GET form
whose action contains query string (Qiang)
- Enh: Added CDataProvider::setTotalItemCount() (Qiang)
- Enh: Added skipOnError property to built-in validators (Qiang)
- Enh: Added CDbConnection::initSQLs (Qiang)
- Enh: Added CHtml::refresh() (Qiang)
- Enh: Added CListView.loadingCssClass and CGridView.loadingCssClass (Qiang)
- Enh: Added filtering support for CGridView (Qiang)
- Enh: Added 'template' option to each attribute specification in CDetailView (Q
iang)
- Chg #841: Changed CUrlManager::parsePathInfo() to non-static (Qiang)
- Chg #851: yiic tool no longer turns off E_NOTICE (Qiang)
- Chg #949: The init() method will be invoked after an AR instance is created by
the find methods (Qiang)
- Chg #974: CComponent::evaluateExpression() no longer suppresses expression err
or (Qiang)
- Chg #978: CActiveRecord::afterSave() will now be invoked only when the saving
is successful (Qiang)
- Chg: Upgraded jquery to version 1.4.2 (Qiang)
- Chg: CMenu will render the 'active' CSS class in the container tag of the link
(Qiang)
- Chg: Set the default theme for JQuery UI widgets to be 'base' (Qiang)
- New: Added CActiveForm that performs model validations via AJAX (Qiang)
- New: Added 'form' command to the 'yiic shell' tool (Qiang)
- New: Upgraded JQuery UI to 1.8rc3 (Qiang)
Version 1.1.0 January 10, 2010
------------------------------
- Bug #720: The new table prefix feature does not work with many-many relationsh
ip in AR (Qiang)
- Bug #735: CDbCriteria should save 'with' attribute when toArray() is called (Q
iang)
- Chg #796: The alias name for the primary table in a relational AR query is cha
nged to be 't' (Qiang)
- Chg: renamed CDetailView::model to be 'data'. renamed 'dataField' and 'dataExp
ression' to be 'name' and 'value' for grid view columns. (Qiang)
- Enh #656: Added support to indicate the size of enum column type for MySQL sch
ema (sebas)
- Enh #767: Added CUrlRule::matchValue option to support creating URLs only when
a rule's parameter value patterns are matched. (Qiang)
- Enh: Improved the default code generated by the yiic tool (Qiang)
- Enh: Refactored the blog demo (Qiang)
- New: Added CFormatter and CApplication::format (Qiang)
- New: Added CController::forward() and CController::route (Qiang)
- New: Added CTimestampBehavior to automatically set timestamps in AR (Jonah)
- New: Added CBaseMenu and CListMenu to aid in creating menus (Jonah)
- New: Added CJuiWidget (sebas, Qiang)
- New: Added CJuiInputWidget (sebas, Qiang)
- New: Added CJuiSlider (sebas, Qiang)
- New: Added CJuiSliderInput (sebas)
- New: Added CJuiAccordion (sebas, Qiang)
- New: Added CJuiProgressBar (sebas, Qiang)
- New: Added CJuiTabs (sebas, Qiang)
- New: Added CJuiDatePicker (sebas, Qiang)
- New: Added CJuiSortable (sebas)
- New: Added CJuiDialog (sebas)
- New: Added CJuiSelectable (sebas)
- New: Added CJuiDroppable (sebas)
- New: Added CJuiResizable (sebas)
- New: Added CJuiDraggable (sebas)
- New: Added CGridView (Qiang)
- New: Added CDetailView (Qiang)
- New: Added CListView (Qiang)
- New: Added CPortlet (Qiang)
- New: Added CBreadcrumbs (Qiang)
Version 1.1rc December 13, 2009
-------------------------------
- Bug #713: webapp command generates incorrect test bootstrap script (Qiang)
- Bug #724: the rememberMe attribute is not validated in generated webapp code (
Qiang)
- Enh #666: Added support for auto-flushing log messages (Qiang)
- Enh #668: Nested forms generated by CForm will render attributes in the fields
et tag (Qiang)
- Enh #695: Upgraded HTML Purifier to 4.0.0 (Qiang)
- Enh #711: Added CWebUser::autoRenewCookie to support automatically renew cooki
e-based login (Qiang)
- Enh: Added CSS class for links generated by CSort to differentiate sorting dir
ections (Qiang)
- Enh: Added CComponent::evaluateExpression() (Qiang)
- Enh: Added CPagination::offset and CPagination::limit (Qiang)
- Chg: CSort.multiSort is changed to sort by single attribute by default (Qiang)
- New: Added CDataProvider and CActiveDataProvider (Qiang)
- New: Updated I18N data to CLDR 1.7.1.2 and added support for stand-alone month
and day names (Qiang)
- New: Added CDbCriteria::with to support eager loading via a criteria with this
property (Qiang)
Version 1.1b November 1, 2009
-----------------------------
- Bug #611: When using relation name as table alias, it should be properly quote
d to avoid name conflict (Qiang)
- Bug #642: CPgsqlSchema::findTableNames() should not include view names in the
result (Qiang)
- Bug #652: Calling CFormElementCollection::remove() triggers a method-not-defin
ed error (Qiang)
- Bug: Using CFileValidator causes an error about accessing a method of a non-ob
ject (Qiang)
- Enh #570: Improved CSort so that it can support sorting by complex expressions
or compound attributes (Qiang)
- Enh #597: Added support for modifying primary key of an AR instance by calling
save() directly (Qiang)
- Enh #622: Added support for using HTML button tags in form builder (Qiang)
- Enh: Added getFixtureData() and getFixtureRecord() to CDbTestCase and CWebTest
Case (Qiang)
- Chg #574: session ID is no longer hashed for CDbHttpSession (Qiang)
- New #633: Added support to allow using customized locale data (Qiang)
- New: Added support for using table prefixes (Qiang)
Version 1.1a October 1, 2009
----------------------------
- New #429: CFileValidator and CUploadedFile now accept multiple uploads (pestaa
)
- New: Refactored scenario-based validation and massive assignments (Qiang)
- New: Added CDbSchema::checkIntegrity() and resetSequence() (Qiang)
- New: Added phpunit-based testing framework (Qiang)
- New: Added CForm and relevant classes to allow reusing form representation and
rendering (Qiang)
- New: Added support for widget skins (Qiang)
- New: Added support for accessing behavior's properties via the component it is
attached to (Qiang)
- Chg #433: Changed application and module parameter names to be case-sensitive
(Qiang)
- Chg #556: CHtml::resolveName now supports array-typed properties (pestaa)
- Chg: Changed AR eager loading so that it generates and executes a single SQL s
tatement by default (Qiang)
- Chg: Changed AR table aliasing so that it uses relation names as default table
aliases (Qiang)
- Chg: Changed the default value of allowEmpty to be false for CCompareValidator
. (Qiang)
Version 1.0.12 March 14, 2010
-----------------------------
- Bug #731: When using CWebService to generate WSDL, it may cause the error abou
t Premature end of data in tag definitions in SoapClient (Qiang)
- Bug #740: CDbCriteria::addColumnCondition() should handle NULL parameter corre
ctly (Qiang)
- Bug #742: CEmailValidator should allow upper case email addresses (Qiang)
- Bug #776: CWebUser may fail when unserializing invalid cookie data (Qiang)
- Bug #788: CHttpRequest.sendFile() gives incorrect content length when output_h
andler is enabled (Qiang)
- Bug #801: CCaptcha allows unlimited tests if the CAPTCHA image is not reloaded
(Qiang)
- Bug #832: CJavaScript::quote() should also escape the sequence "</" (Qiang)
- Bug #843: CApcCache::mget() may fail if some entries of the specified keys are
not cached (Qiang)
- Bug: CVarDumper sometimes doesn't dump object value correctly (Qiang)
- Bug: COciSchema::findTableNames() should use upper case for the keys of query
results (Qiang)
- Bug: Fixed several bugs related with readdir problem. If the directory contain
s a file named '0', the iteration would quit prematurely. (Qiang)
- Enh #730: Relational queries now respect changes made to CActiveRecord::dbCrit
eria in the onBeforeFind event (Qiang)
- Enh #737: CUrlManager::createUrl() now supports multidimensional array params
(Jonah)
- Enh #757: Allow CDbCriteria::addInCondition() to use parameter array that is n
ot integer-indexed (Qiang)
Version 1.0.11 December 13, 2009
--------------------------------
- Bug #608: yiic webapp command may generate incorrect path referring to yii scr
ipts (Qiang)
- Bug #637: CDateTimeParser::parse() may generate unexpected result offset by th
e timezone in some environment (Qiang)
- Bug #639: CJSON::decode() should respect the second parameter recursively (Qia
ng)
- Bug #641: CDbCache::gc() is not defined (Qiang)
- Bug #651: Fixed a bug in Oracle driver that may cause big loop (Qiang)
- Bug #653: CDbMessageSource does translate messages when caching is enabled (Qi
ang)
- Bug #670: Requirements checker page shows wrong minute (Qiang)
- Bug #691: CUploadedFile::saveAs() may not return correct value for some PHP ve
rsions (Qiang)
- Bug #692: CHtml::listOptions() ignores the HTML options when handling nested o
ptions (Qiang)
- Bug #710: CRequiredValidator does not work as expected when its requiredValue
is not null (Qiang)
- Bug: CQueue::peek() should return the first item in the queue (Qiang)
- Enh #629: Added support for specifying shell command search path via an enviro
nment variable YIIC_SHELL_COMMAND_PATH (Qiang)
- Enh #643: Enhanced CAccessControlFilter::expression, COutputCache::varyByExpre
ssion and CExpressionDependency::expression so that they can use PHP callback (Q
iang)
- Enh #665: Added support for using CStarRating to collect tabular input (Qiang)
- Enh #672: Added Italian translation of error views (Qiang)
- Enh #674: Improved CPgsqlSchema to support auto-incremental column in composit
e primary key (Qiang)
- Enh #677: Improved CPgsqlColumnSchema to recognize more column data types (Qia
ng)
- Enh #679: Added support for parsing and creating URLs with parameterized hostn
ames (Qiang)
- Enh #684: Improved Yii::import() to throw exception when set_include_path fail
s (Qiang)
- Enh #685: Added support for recognizing "Z" in CDateFormatter (Qiang)
- Enh #690: Enhanced the email validator pattern to capture 99% valid email addr
esses (Qiang)
- Enh #694: CActiveRecord count methods will ignore criterias that are incomatib
le with COUNT SQL statement (Qiang)
- Enh #697: Relational AR queries now also invoke CActiveRecord::beforeFind() (Q
iang)
- Enh #703: Upgraded autocomplete js code to version 1.1.0 (Qiang)
- Enh #715: CHtml::textArea and CHtml::activeTextArea should respect the 'encode
' option (Qiang)
- Enh: Added core message translation in Thai (Peerajak)
- Enh: Allow CHtml::label() and CHtml::activeLabel() not to render the 'for' att
ribute when it is set false (Qiang)
- Chg #723: When merging a CDbCriteria with another, the latter's order clause w
ill take precedence over the former (Qiang)
- New #709: Added core message translation in Bosnian language (kenci81)
Version 1.0.10 October 18, 2009
-------------------------------
- Bug #550: Fixed image alt bug in CCaptcha (Qiang)
- Bug #551: CCache::mget() should return values (Qiang)
- Bug #561: CTabView fails to switch tabs on IE (pestaa)
- Bug #567: PHP <5.2 cannot convert exception class to string (pestaa)
- Bug #573: Typo in API (pestaa)
- Bug #584: CAutoComplete API was missing a fact (pestaa)
- Bug #594: The for-loop in jquery.yii.js breaks on IE (Qiang)
- Bug #596: CActiveFinder undefined $parent variable on line 1297 (Qiang)
- Bug #606: CMemCache does not work when useMemcached is set true (Qiang)
- Bug: Fixed a bug in Oracle driver when performing relational AR queries (Qiang
)
- Bug: Fixed the problem of executing an SQL using CDbCommand may cause subseque
nt SQL executions to fail (Qiang)
- Enh #571: Enhanced CDbCriteria by adding several methods to help building comm
on query conditions (Qiang)
- Enh #585: Added CChainedCacheDependency::setDependencies() (Qiang)
- Enh #598: Added CCaptchaAction::transparent (Qiang)
- Enh #600: Modified CHttpSession to allow open and close session multiple times
(Qiang)
- Enh #612: Added YiiBase::registerAutoloader (Qiang)
- Enh #613: Enhanced Oracle driver to allow using views with AR (Qiang)
- Enh #615: Added cacheID property to several core components to allow specifyin
g which cache component to use (Qiang)
- Enh #616: Added support to use anonymous functions (PHP 5.3+) as event handler
s (Qiang)
- Enh #620: Enhanced message translation for modules (Qiang)
- Enh #623: Added the optional $params to CDbCommand::execute() and query*() met
hods (Qiang)
- Enh #626: Added labelOptions for checkbox and radiobutton lists in CHtml (Qian
g)
- Enh #627: Improved AR metadata assignment to support single table inheritance
(Qiang)
- Enh #628: Console commands are listed in alphabetical order now (Qiang)
- Enh: Enhanced CRequiredValidator so that it can validate an attribute contains
the specified value (Qiang)
- Chg: Made request and urlManager components to be available for both console a
nd web applications (Qiang)
- New #577: Enhanced the 'empty' option in CHtml so that it can render multiple
extra list options with specific values (Qiang)
- New #621: Added YiiBase::createApplication (Qiang)
- New: Added CBooleanValidator (Qiang)
Version 1.0.9 September 6, 2009
-------------------------------
- Bug #470: Fixed CTimestamp getdate bug which is related with timezone setting
(Qiang)
- Bug #499: Blog demo approve comment page doesn't have proper pagination (Qiang
)
- Bug #510: CHtml::htmlButton() should render the label as the element body rath
er than value attribute (Qiang)
- Bug #513: CNumberValidator does not validate as expected when the attribute va
lue is not string (Qiang)
- Bug #518: CFilterValidator uses call_user_func_array() incorrectly (Qiang)
- Bug #522: array-like parameters in path info are not parsed correctly by CUrlM
anager (Qiang)
- Bug #525: Invalid first chars in jquery.maskedinput.js (Qiang)
- Bug #527: Typo in CActiveFinder.php:581 (Wei)
- Bug #548: STAT queries don't work when the FK constraints are not defined in D
B (Qiang)
- Bug #550: CCaptcha does not respect image alt option (Qiang)
- Bug #551: multiget in caching components does not use proper keys (Qiang)
- Bug: Set sequenceName in Oracle tables to be empty string so that yiic model c
ommand generates correct validation rules for PK (Qiang)
- Enh #417: Added CActiveRecord::beforeFind and onBeforeFind event (Qiang)
- Enh #419: Improved the performance of lazy relational AR by avoiding joining w
hen possible (Qiang)
- Enh #473: Upgraded jquery multifile plugin to version 1.46 (Qiang)
- Enh #500: Added CDbCache::gcProbability (Qiang)
- Enh #505: Added CSS class to the table generated by CWebLogRoute (Qiang)
- Enh #508: CUrlManager should also store parsed GET parameters into $_REQUEST (
Qiang)
- Enh #509: Enhanced CRequiredValidator to check for empty array value (Qiang)
- Enh #511: CHtml::activeCheckBox and activeRadioButton should respect the value
attribute (Qiang)
- Enh #512: CHtml::beginForm() is made XHTML-compliant when CSRF is enabled (Qia
ng)
- Enh #521: Added CActiveRecord::deleteAllByAttributes() (Qiang)
- Enh #526: Added CSort::params and CPagination::params to allow customizing add
itional GET parameters in the generated URLs (Qiang)
- Enh #534: Allow using slash character as URL suffix when strict parsing is ena
bled (Qiang)
- Enh #542: Improved CInputWidget and all its descendant classes so that they ca
n be used in tabular data input (Qiang)
- Enh #547: Changed CSort::resolveLabel and validateAttribute to be public (Qian
g)
- Enh #549: Changed hour pattern in CDateTimeParser so that it is consistent wit
h CDateFormatter (Qiang)
- Enh #554: Added CViewRenderer::fileExtension (Qiang)
- Enh #555: Added CApplication::timeZone (Qiang)
- Enh: Improved AR performance by not raising events when no event handlers (Qia
ng)
- Enh: Added CWebUser::setStateKeyPrefix() (Qiang)
- Enh: Added CLocale::getMonthNames and CLocale::getWeekDayNames (Qiang)
- Enh: Added uncheckValue option for CHtml::activeRadioButton (Qiang)
- Enh: Added CDbCriteria::addCondition() (Qiang)
- Enh: Added support for specifying DISTINCT when performing AR and relational A
R queries (Qiang)
- New: Added core message and system view translations in Bulgarian (Nikolai)
Version 1.0.8 August 9, 2009
----------------------------
- Bug #435: Setting charset for PostgreSQL database connection may fail to work
on some servers (Qiang)
- Bug #440: typo in COciColumnSchema (Qiang)
- Bug #444: typo in blog demo (Qiang)
- Bug #446: Fixed bugs in MSSQL driver that cause problem when updating attribue
s and a column is of timestamp type (Qiang)
- Bug #451: CAssetManager::publish() may not report error when an asset is missi
ng on BSD (Qiang)
- Bug #460: CFileValidator would display wrong error message when the uploaded f
ile size is too small (Qiang)
- Bug #472: Dynamic relational query options should not treat 'condition' as 'on
'. (Qiang)
- Bug #475: MainMenu widget in webapp ignores URL parameters (Qiang)
- Bug #477: CUrlManager generates unwanted homepage URL when URL suffix is used
(Qiang)
- Bug #482: Relational AR would fail when using Oracle due to column case issue
(Qiang)
- Bug #484: CDbCommandBuilder generates an invalid SQL when inserting a row with
all default values (Qiang)
- Bug #486: CDbExpression does not work as expected for PHP versions prior to 5.
2.0 (Qiang)
- Bug: Fixed an issue in CNumberFormatter which incorrectly cached parsed format
s (Qiang)
- New #424: Improved CCaptcha to allow clicking on CAPTCHA image to refresh it (
Qiang)
- New #425: Added defaultParams option to the rules used by CUrlManager (Qiang)
- New #426: Added CApplication::setExtensionPath() (Qiang)
- New #436: Added error templates in Russian (idlesign)
- New #456: Added CCompareValidator::operator to support comparing values using
different operators (Qiang)
- New #461: Added CHtml::htmlButton() (Qiang)
- New #467: Improved the algorithm for determining script URL by CHttpRequest (Q
iang)
- New #474: Added CActiveRecord::refreshMetaData() to allow using the latest tab
le meta data (Qiang)
- New #478: Enhanced CActiveRecord::findByAttributes and findAllByAttributes so
that when an attribute value is array, an IN condition is generated for searchin
g (Qiang)
- New #480: Improved CUniqueValidator to allow specifying AR class and attribute
to validate against (Qiang)
- New #488: Added CCache::mget() to support retrieving multiple cached values at
a time (Qiang)
- New #492: Enhanced form submit script so that it respects to existing submit e
vent handlers (Qiang)
- New #493: Added call stack information to log when a PHP error occurs (Qiang)
- New: CDbCommand::bindParam() and bindValue() now return the command object so
that they can be used in a chainable fashion (Qiang)
- New: Added thead and tbody to the code generated by crud command (Qiang)
- New: Added CFormModel::init() and CActiveRecord::init() (Qiang)
- New: Improved CFileHelper::getMimeType() so that it can return a meaningful re
sult in most cases (Qiang)
- New: Improved yiic shell commands so that they are easier to be extended (Qian
g)
- New: Added CExistValidator.criteria property (Qiang)
- New: Improved CHtml::statefulForm() to make it XHTML-compliant (Qinag)
- New: Added CBaseUserIdentity::clearState() (Qiang)
- New: Added 'ext' root path alias which points to the directory containing all
extensions (Qiang)
- New: Added Greek translation of core messages (Vasileios)
- Chg #479: Imported path aliases now have precedence over existing include path
s (Qiang)
- Chg: Modified the count() method of relational AR to support counting composit
e keys (Qiang)
- Chg: Reverted back the support for assigning a related object to an AR object
(Qiang)
Version 1.0.7 July 5, 2009
--------------------------
- Bug #367: CUploadedFile may fail if a form contains multiple file uploads in d
ifferent array dimensions (Qiang)
- Bug #368: CUploadedFile::getInstance() should return null if no file is upload
ed (Qiang)
- Bug #372: CCacheHttpSession should initialize cache first before using it (Qia
ng)
- Bug #388: 'params' options passed to linkButton are not cleared after submit (
Qiang)
- Bug #393: Greek language code should be 'el' insead of 'gr' (Qiang)
- Bug #402: CNumberFormatter does not format decimals and percentages correctly
(Qiang)
- Bug #404: AR would fail when CDbLogRoute uses the same DB connection (Qiang)
- Bug #421: Undefined variable: seconds in CDateTimeParser.php(140) (Qiang)
- Bug: CMemCache has a typo when using memcached (Qiang)
- Bug: COciCommandBuilder is referencing undefined variable (Qiang)
- Bug: yiic webapp may generate incorrect path to yii.php (Qiang)
- Bug: SQL with OFFSET generated by command builder for Oracle is incorrect (Qia
ng)
- Bug: yiic shell model command may fail when a foreign key is named as ID (Qian
g)
- Bug: yiic shell controller command does not generate correct controller class
file when the controller is under a sub-folder (Qiang)
- Bug: When using MySQL enum type, AR may incorrectly typcasting the column valu
es (Qiang)
- Chg #391: defaultScope should not be applied to UPDATE (Qiang)
- New #360: Added anchor parameter to CController::redirect (Qiang)
- New #375: Added support to allow logout a user without cleaning up non-auth se
ssion data (Qiang)
- New #378: Added support to allow dynamically turning off and on log routes (Qi
ang)
- New #396: Improved error display when running yiic commands (Qiang)
- New #406: Added support to allow stopping saving and deletion by an ActiveReco
rd behavior (Qiang)
- New #415: Added HTML options to CHtml::errorSummary() and error() methods (Qia
ng)
- New: Rolled back the change about treating tinyint(1) in MySQL as boolean (Qia
ng)
- New: Added support for displaying call stack information in trace messages (Qi
ang)
- New: Added 'index' option to AR relations so that related objects can be index
ed by specific column value (Qiang)
- New: Allow CHtml::activeLabel to override the automatically generated 'for' at
tribute (Qiang)
- New: Added 'csrf' to CHtml client options so that js-based form submission can
submit CSRF token (Qiang)
- New: Removed typcasting in CNumberValidator so that it won't lose precision (Q
iang)
- New: Added userAgent parameter to CHttpRequest::getBrowser() (Qiang)
Version 1.0.6 June 7, 2009
--------------------------
- Bug #305: column aliases used in CActiveFinder should be quoted so that their
cases are kept (Qiang)
- Bug #308: typo in CLinkPager CSS class name (Qiang)
- Bug #310: Leading space in auto generated labels if they end with "ID" (Qiang)
- Bug #312: defaultScope not honored when other sopes are applied (Qiang)
- Bug #313: Dynamic parameter for lazy loading resets the parameters specified i
n default scope (Qiang)
- Bug #321: CProfileLogRoute should be disabled for AJAX requests (Qiang)
- Bug #331: HTTP 403 status code should be used to indicate auth failure (Qiang)
- Bug #338: Undefined variables in CTimestamp.php (Qiang)
- Bug #343: HtmlPurifier should register its autoload to allow using its plugins
(Qiang)
- Bug #353: CClientScript may not generate expected output on some PHP version d
ue to preg_replace bug (Qiang)
- Bug: Syntax errors in autoloaded classes are not reported (Qiang)
- New #36: Added column declarations to the generated model class using yiic (Qi
ang)
- New #231: Enhanced yiic shell model command to generate relations automaticall
y (olafure, Qiang)
- New #271: Added CFileCache (Qiang)
- New #300: Added support for using a controller action to display application e
rrors (Qiang)
- New #304: Added flv mimeType to the mimeType array (Qiang)
- New #315: Added CDbConnection.enableProfiling (Qiang)
- New #320: Added support for customizing a single URL rule by setting its urlFo
rmat and caseSensitive options (Qiang)
- New #326: Yii::powered() will show Yii site in a new window (Qiang)
- New #328: Make yiic to work with f-cgi (Qiang)
- New #344: Added support to automatically attach behaviors to a controller (Qia
ng)
- New #346: Enhanced CMemCache so that it can be used with both memcache and mem
cached (Qiang)
- New #347: Added CUrlManager.useStrictParsing to support parsing URLs only base
d on rules (Qiang)
- New #349: Enhanced MySQL driver to recongize tinyint(1) as a boolean (Qiang)
- New #351: Enhanced CModelBehavior so that its beforeValidate() can stop the cu
rrent validation process (Qiang)
- New: Enhanced the 'with' option in relational rules so that it also applies in
eager loading (Qiang)
- New: Enhanced yiic shell model command to generate all models for the whole da
tabase (olafure, Qiang)
- New: Added support to allow using named scopes with update and delete methods
(Qiang)
- New: Refactored support for dynamic query options with relational AR (Qiang)
- New: Added CDbCriteria::toArray() (Qiang)
- New: Added support to allow merging CDbCriteria using 'OR' operator (Qiang)
- New: Added CLogger::getStats() (Qiang)
- New: Added support to import and autoload interfaces (Qiang)
- New: Added tracing statements to cache components (Qiang)
- New: Added CLogFilter to support logging additional context information (Qiang
)
Version 1.0.5 May 10, 2009
--------------------------
- Bug #234: Multi-line Yii::t() not found by 'yiic message' (Qiang)
- Bug #235: Dynamic content does not work when page caching is used together wit
h fragment caching (Qiang)
- Bug #239: Syntax error in translated Portuguese error view file (Qiang)
- Bug #246: Undefined variable in CMaskedTextField (Qiang)
- Bug #252: mimeTypes.php contains clashing types (Qiang)
- Bug #258: Some eager loading queries may result in extra lazy loading queries
(Qiang)
- Bug #261: CWsdlGenerator should not use 'tns:' namespace when declaring a comp
lex type (Qiang)
- Bug #262: Setting 'charset' of CDbConnection causes exception when working wit
h SQLite (Qiang)
- Bug #263: Exception is thrown when column names contain "=" symbol (Qiang)
- Bug #270: CComponent::detachBehavior() uses undefined index (Qiang)
- Bug #290: date formatter generates incorrect narrow day output (Qiang)
- Bug: Lazy loading HAS_MANY or MANY_MANY properties will get NULL instead of em
pty array when the result set is empty (Qiang)
- Bug: CDateFormatter::formatYear() only returns one digit when the year pattern
is 'yy' (Qiang)
- Bug: The ON option is not respected for MANY_MANY relations (Qiang)
- New #210: Added support for named scope of AR (Qiang)
- New #211: Enhanced AR by supporting lazy relational query with on-the-fly quer
y parameters (Qiang)
- New #224: Added CModel::addErrors() method (Qiang)
- New #241: Added support to define root path aliases in configuration (Qiang)
- New #247: Added support to allow using Web services in PHP versions lower than
5.2.0 (Qiang)
- New #249: Added option to CHtml to allow generate tags without encoding attrib
ute values (Qiang)
- New #254: Added support to allow input widgets to be used with tabular inputs
(Qiang)
- New #265: Added support to validate time and datetime inputs (Qiang)
- New #268: Added support to allow using dot syntax to generate list options wit
h CHtml (Qiang)
- New #274: Added support to allow using route sub-patterns in URL rules (Qiang)
- New #284: Refactored code about page states to simplify overriding efforts (Qi
ang)
- New #291: Added support to validate emails with name part (Qiang)
- New #293: Added support to allow Yii to be used with other libraries which rel
y on autoload (Qiang)
- New #294: Added CDummyCache component (Qiang)
- New: Deprecated CHtml::getActiveId() (Qiang)
- New: Added CDbCriteria::mergeWith() (Qiang)
- New: Added Oracle support for Active Record (Ricardo)
- New: Modified CClientScript so that it can be used without the presence of a c
ontroller (Qiang)
- New: Enhanced CWebUser::checkAccess() to allow caching the access check result
s (Qiang)
- New: Enhanced the performance of CDbAuthManager::checkAccess() (Qiang)
- New: Added CAccessControlFilter::accessDenied() (Qiang)
- New: Added CWebUser::identityCookie property (Qiang)
- New: Added new message placeholder to CCompareValidator (Qiang)
- New: Added trace statements to auth components (Qiang)
- New: Added CHtml::value() (Qiang)
- New: Enhanced 'yiic shell model' command so that it generates attribute labels
by default (Qiang)
- New: Added CDbConnection::enableParamLogging to allow logging parameters bound
to SQL statements (Qiang)
Version 1.0.4 April 5, 2009
---------------------------
- Bug #177: CFileValidator::getSizeLimit() not calculate well (Qiang)
- Bug #185: German error views have syntax errors (Qiang)
- Bug #183: Fatal error in CActiveFinder::afterFindInternal() (Qiang)
- Bug #186: MainMenu component in yiic webapp doesn't detect active menu item co
rrectly (Qiang)
- Bug #187: SET CHARACTER SET is not working for MySQL in some cases (Qiang)
- Bug #190: yiic shell command does not work when the Web application redirects
by default (Qiang)
- Bug #192: CDbLogRoute has several issues (Qiang)
- Bug #199: yiic webapp command may fail in some directory setup (Qiang)
- Bug #200: CDateFormatter does not recognize timestamp given as a string (Qiang
)
- Bug #205: CTRL-D puts yiic into endless loop (olafure)
- Bug #206: Property "click" in CStarRating does not work (Qiang)
- Bug #218: Uppercase letter in controller in URL leads to exception (Qiang)
- Bug #226: CJoinElement uses undefined _primaryKey (Qiang)
- Bug #223: Calling CApplication::clearGlobalState causes error (Qiang)
- Bug #229: dynamic content does not work with page caching (Qiang)
- Bug: Setting the 'expression' option in an access url causes error (Qiang)
- Bug: CAccessRule.roles should be case sensitive (Qiang)
- Bug: CDbAuthManager::checkDefaultRoles() uses an undefined variable (Qiang)
- Bug: CPgsqlSchema does not handle quotes well in detecting FK constraints (Qia
ng)
- Bug: CPradoViewRenderer is calling an undefined method (Qiang)
- Bug: CClientScript::scriptMap generates duplicated script tags (Qiang)
- Bug: ActiveRecord may fetch the same PK column twice in a relational query (Qi
ang)
- Bug: CWebUser::hasState does not return consistent result (Qiang)
- Bug: A module layout in a theme cannot be applied (Qiang)
- Bug: Enabling both CSRF prevention and theming may cause a PHP error (Qiang)
- Bug: Eager loading in RAR may join the same table twice in some cases (Qiang)
- New #171: Added version info to yiic help output (Qiang)
- New #172: Added eAccelerator cache driver (Steffen)
- New #176: Added support to make yiic tool working with modules (Qiang)
- New #195: Added CModel::scenario property (Qiang)
- New #197: Added getParam, getQueryParam and getPostParam to CHttpRequest (Qian
g)
- New #203: Added CZendDataCache (Steffen)
- New #207: Enhanced CHtml::activeFileField so that we can still use $_POST to d
etect form submission under some rare cases (Qiang)
- New #212: 'Readline' support in yiic console script (olafure)
- New #225: Added trace statements to CActiveRecord and CActiveFinder (Qiang)
- New #230: Enhanced CHtml so that it can be used in situations where controller
is absent (Qiang)
- New #233: Allow CFileValidator::types to be set with an array (Qiang)
- New #292: Refactored CActiveRecord so that attribute assignment can be overrid
den more easily (Qiang)
- New: Added support to GROUP BY and HAVING in eager loading of AR (Qiang)
- New: Added CClientScript::scriptFiles and CClientScript::cssFiles (Qiang)
- New: Added SQL Server support for Active Record (Christophe)
- New: Added support for performing statistical query with Active Record (Qiang)
- New: Added CHtml::beginForm and endForm (Qiang)
- New: Added 'controllers' option to access control (Qiang)
- New: Added CContentDecorator.data property (Qiang)
- New: Refactored application and module code (Qiang)
- New: Added HTTP status code parameter to CHttpRequest::redirect (Qiang)
- New: Added beforeControllerAction and afterControllerAction to CWebApplication
and CWebModule (Qiang)
- New: Added 'checkAll' option to CHtml::checkBoxList and CHtml::activeCheckBoxL
ist (Qiang)
- New: Added CHtml::encodeArray() to allow HTML-encoding an array recursively (Q
iang)
- New: Added case-sensitivity parameter to CDbCommandBuilder::createSearchCondit
ion (Qiang)
- New: Added COutputCache.varyByExpression to allow variating cached content bas
ed on an expression value (Qiang)
- New: Added CExpressionDependency to represent dependency based on an expressio
n value (Qiang)
- New: Added CAutoComplete.textArea to allow using it as a text area (Qiang)
- New: Added support to allow using AR when a table has no primary key defined (
Qiang)
- New: Added support to CAPTCHA widget so that it can use captcha defined in oth
er controllers (Qiang)
- New: Added CExistValidator (Qiang)
Version 1.0.3 March 1, 2009
---------------------------
- Bug #127: CUploadedFile is using an undefined variable (Qiang)
- Bug #132: CMysqlSchema has a typo (Qiang)
- Bug #133: CSort should properly quote the columns to be sorted (Qiang)
- Bug #135: CSort::link() does not work well with labels with special chars (Qia
ng)
- Bug #145: When layout property of CController is false, main layout is still a
pplied (Qiang)
- Bug #153: Accessing related objects in afterFind() causes a duplicated SQL que
ry (Qiang)
- Bug #154: Calling behavior method in relations() does not work (Qiang)
- Bug #161: Date formatting with timezones (Qiang)
- Bug: CHttpRequest.hostInfo may give wrong port number (Qiang)
- Bug: CHtml::activeListBox does not work when multiple selection is needed (Qia
ng)
- Bug: Inconsistency in timezone of log messages for different log routes (Qiang
)
- Bug: Script file registered for POS_BEGIN is rendered twice (Qiang)
- Bug: CHtml::registerMetaTag() failed to be rendered when no other scripts are
registered (Qiang)
- New #117: Added count() support to relational AR (Qiang)
- New #136: Added support to CWebUser to allow directly accessing persistent pro
perties (Qiang)
- New #137: yiic model command should only set a column as required when it does
not have default value (Qiang)
- New #138: Added support to specify additional attributes for OPTION tags (Qian
g)
- New #140: Allow the route in a URL rule to contain parameters by itself (Qiang
)
- New #146: Added CUrlManager.appendParams which allows creating URLs in path fo
rmat whose GET parameters are all in the query part (Qiang)
- New #150: Register CTabView css file with media type='screen' (Qiang)
- New #156: Added CUrlManager.cacheID to allow disabling URL rule caching (Qiang
)
- New #213: Enhanced CEmailValidator by allowing checking server port (Qiang)
- New: Upgraded jquery to 1.3.2 (Qiang)
- New: Upgraded jquery star rating to 2.61 (Qiang)
- New: Added skeleton application and refactored 'yiic webapp' command (Qiang)
- New: Added 'expression' option to access rules (Qiang)
- New: Refactored the code generated by yiic command (Qiang)
- New: Refactored the blog demo (Qiang)
- New: Added ignoreLimit option when joining tables all at once (Qiang)
- New: Added params option to relation declaration (Qiang)
- New: Added the blog tutorial (Qiang)
- New: Added CActiveRelation.together option to allow enforcing a table to be jo
ined with the primary table (Qiang)
- New: Added CActiveRecord.hasRelated() (Qiang)
- New: Enhanced CHtml::listData() to work with raw query results (Qiang)
- New: Controllers under subdirectories are now referenced using "path/to/xyz" (
Qiang)
- New: Added a defaut path alias named "webroot" (Qiang)
- New: Added support for auto-incremental composite primary keys in active recor
d (Qiang)
- New: Added support for application modules (Qiang)
- New: Added "module" command for yiic shell tool (Qiang)
- New: Added support for using default roles in RBAC (Qiang)
- New: Added support for translating a message into multiple languages on the sa
me page at the same time (Qiang)
- New: Added CClientScript::scriptMap to support remapping registered scripts (Q
iang)
- New: Added CGoogleApi (Qiang)
Version 1.0.2 February 1, 2009
------------------------------
- Bug #81: Double backslashes in a clientscript became a singe backslash in the
output (Qiang)
- Bug #83: yiic command may unexpectedly render its starting line on Windows (Qi
ang)
- Bug #87: yiic gives an error when using yiilite.php in the main application (Q
iang)
- Bug #91: Relational AR eager fetching may bring back result even if it shouldn
't (Qiang)
- Bug #109: CLinkPager shows wrong number of page buttons (Qiang)
- Bug: CDbAuthManager::saveAuthAssignment() causes updating all rows (Qiang)
- Bug: Fixed an issue in CUrlManager::createUrl when GET parameters contain arra
ys (Qiang)
- Bug: Fixed an issue that CCaptcha::buttonOptions is not used (Qiang)
- New #88: Added public properties to CActiveRecord::safeAttributes() (Qiang)
- New #92: Empty error messages in models are handled better when being displaye
d (Qiang)
- New #93: Changed CLinkPager and CListPager so that the messages are internatio
nalized (Qiang)
- New #95: Added an option to CHtml::activeCheckBox() to define default value if
unchecked (Qiang)
- New #98: Added support to translate messages in different plural forms. Added
CChoiceFormat (Qiang)
- New #103: Added support to use dynamic query options in relational active reco
rd (Qiang)
- New #104: Added support to encode traversable objects using JSON (Qiang)
- New #111: Implemented nonobtrusive javascript "Get new image" link in CCaptcha
(Qiang)
- New #113: Enhanced CSort so that it is easier to be used with relational activ
e record (Qiang)
- New #116: Enhanced checkBoxList and radioButtonList in CHtml to enclose labels
in label tag (Qiang)
- New #119: Added 'on' option to relational AR (Qiang)
- New #122: Added support to upload and validate files in a tabular form (Qiang)
- New: Added CActiveRecord::getRelated() (Qiang)
- New: Added 'return' option to HTML options in CHtml (Qiang)
- New: Refactored CSS-dependent widgets by adding registerCssFile static methods
(Qiang)
- New: Added CDbSchema::getTables() and getTableNames() (Qiang)
- New: Modified CUniqueValidator so that it can correctly validate non-PK attrib
utes when they are being updated (Qiang)
- New: Added scenario-based massive model attribute assignment (Qiang)
- New: Added support to specify views in terms of path aliases (Qiang)
- New: Enhanced getBaseUrl to allow it to return an absolute URL (Qiang)
- New: Allow flash message to be deleted right after its first access (Qiang)
- New: Upgraded jQuery to 1.3.0 (Qiang)
- New: Added CDbExpression so that AR can save DB expressions into database (Qia
ng)
- New: Added CDefaultValueValidator (Qiang)
- New: Implemented the behavior feature; added CBehavior, CModelBehavior and CAc
tiveRecordBehavior (Qiang)
- New: Added a set of new events to CActiveRecord and CFormModel (Qiang)
- New: Added CModel::getValidatorsForAttribute (Qiang)
- New: Added CHtml::activeLabelEx and added 'required' option to CHtml::label (Q
iang)
- New: Added array access support to CFormModel and CActiveRecord (Qiang)
- New: Added CActiveRecord::instantiate to support class table inheritance (Qian
g)
- New: Added support to allow join tables all at once (Qiang)
Version 1.0.1 January 4, 2009
-----------------------------
- Bug #41: missing function CHttpRequest::getCsrfTokenFromCookie() (Qiang)
- Bug #42: Wrong links in crud generated admin view (Qiang)
- Bug #45: Many-to-many relation does not work when both foreign tables are the
same (Qiang)
- Bug #47: Wrong url parsing when CUrlManager is set in path format (Qiang)
- Bug #48: Typo in CActiveRecord::setAttribute (Qiang)
- Bug #49: Invalid markup generated by yiic tool (Qiang)
- Bug #53: tabular form input causes AR to fail (Qiang)
- Bug #54: typo in CHtml::listOptions (Qiang)
- Bug #57: Explicit column aliasing is not working in relational AR when the col
umn appears in ORDER BY (Qiang)
- Bug #60: Related objects not available in CActiveRecord::afterSave (Qiang)
- Bug #69: Variable undefined error in CController::renderText (Qiang)
- Bug #79: CUrlManager::createUrl does not work for GET parameters that are arra
ys (Qiang)
- Bug #80: Improper unset in CHtml::activeCheckBoxList and activeRadioButtonList
(Qiang)
- New #44: Make "yiic shell" command to support controllers organized in subdire
ctories (Qiang)
- New #51: Add support to import actions declared by a widget (Qiang)
- New #55: Add support for generating meta and link tags (Qiang)
- New #56: Allow specifying customized 'on' when a validator can be applied (Qia
ng)
- New #58: Allow specifying HAVING clause in DB criteria (Qiang)
- New #62: Allow URL routes to be case-insensitive by adding CUrlManager::caseSe
nsitive property (Qiang)
- New #64: Add support to use relational AR when FK constraints are not defined
in DB (Qiang)
- New #65: Added "alias" option to AR relations so that table aliases can be exp
licitly specified (Qiang)
- New #66: Add support to allow using isset() and unset() with component propert
ies (Qiang)
- New #68: Upgrade the javascript for CMaskedTextField to 1.2.0 (Qiang)
- New: Fixed inaccurate error message when adding an item as a child of itself i
n CAuthManager (Qiang)
- New: CHtml::activeId and CHtml::activeName (Qiang)
- New: Added German, Spanish and Swedish core message translations (mikl, sebas,
tri)
- New: Added CController::init() (Qiang)
- New: Changed Yii::createComponent() to support property initialization (Qiang)
- New: Optimized the framework (Qiang)
- New: Added CSort to support multisort (Qiang)
- New: Refactored the code generated by the crud command (Qiang)
- New: Added "contact" page to the skeleton application (Qiang)
- New: Added CMarkdownParser::safeTransform (Qiang)
- New: Added support to allow specifying anchor when using createUrl() to create
a URL (Qiang)
- New: Added blog demo (Qiang)
- New: Added CXCache (Qiang)
Version 1.0 December 3, 2008
----------------------------
Initial release

Anda mungkin juga menyukai