------- 0.1.11 released on Monday 08th of December 2003 12:31:56 ------- - A bug in RSDEngineDBApplicationBaseClass::getCode was fixed: No code was returned if both, $config['auth'] and $config['liveUser'] were set to false. - A bug in the table modifier /**file**/ was fixed: only file type containers were functional. - The table modifier /**excludeSelectMethod**/ was added. It allows you to prevent the RSDEngine from generating the specified selectIncluding-methods. Note: you cannot exclude selectIncludingAll, selectIncludingDirectlyRelated and all methods required to retrieve a LiveUser right or were explicitly specified with the selectMethodName option of the table modifier /**file**/. - The table modifier /**includeSelectMethod**/ was added. It allows you to include selectIncluding-methods excluded with /**excludeSelectMethod**/. ------- 0.1.10 released on Sunday 30th of November 2003 17:08:31 ------- The table modifier LiveUserRight was extended to allow the following usage: /**LiveUserRight:insert:table.column**/ Until this release the type 'table.column' could not be used with the operation 'insert'. A bug in the implementation of the table modifier LiveUserRight was fixed. LiveUserRight:condition=PHP_CODE was not handled correctly. The class RSDTable was modified to disallow the specification of a column value as an array. From now on it is only possible to specify a column value as a simple string or as an instance of RSDColumnValue. The use of arrays would lead to serious security issues. The column modifier /**canBeNull**/ was added. The configuration option $config['showKeyColumns'] was added. If set to true, columns defined as primary or as foreign key will be displayed as well via the templates. To allow a per-table setting the table modifier file was modified so that it now knows the option showKeyColumns. This option can be `true' or `false'. The column modifier /**doNotSelect**/ was implemented. It allows you to hide a column from all get and search templates. The table base classes now overwrite the method getIsValidMethodName. This allows the use of an other column prefix than `f_'. All exclude_* configuration options were removed. You can now configure for every file individually if it should be written or not; via the corresponding write* configuration option or a per-table setting using the table modifier file. keep rocking, Lukas ------- 0.1.9 released on Monday 24th of November 2003 19:20:17 ------- This release contains a few new features: /**inputType:checkbox**/ was extended to the following format: /**inputType:checkebox:array('checked' => PHP_EXPR, 'unchecked' => PHP_EXPR)**/ /**inputType:password**/ is now valid as well. If make $config['makeInputTypeAssumption'] is set to true, default input types will now as well be chosen for DATE, TIME and DATETIME. The following table modifiers were added: /**beforeInsert:PHP_CODE**/ /**afterInsert:PHP_CODE**/ /**beforeUpdate:PHP_CODE**/ /**afterUpdate:PHP_CODE**/ /**beforeDelete:PHP_CODE**/ /**afterDelete:PHP_CODE**/ /**label:SQL_EXPRESSION**/ /**deleteLiveUserRightOnDelete**/ is now just a synonym for /**afterDelete:$this->app->callLiveUserPermAdminMethod('removeRight', array($record['f_columnname']));**/ /**deleteLiveUserAreaOnDelete**/ is now just a synonym for /**afterDelete:$this->app->callLiveUserPermAdminMethod('removeArea', array($record['f_columnname']));**/ /**deleteLiveUserGroupOnDelete**/ is now just a synonym for /**afterDelete:$this->app->callLiveUserPermAdminMethod('removeGroup', array($record['f_columnname']));**/ The first FOREIGN KEY modifier was implemented: /**deleteReferencedRecordOnDelete**/ If used, the referenced record will be deleted right after a record of this table was deleted. The documentation now contains some examples for /**file**/. The specification of a table type like InnoDB is now possible in $config['sql']. ------- 0.1.8 released on Tuesday 18th of November 2003 07:15:11 ------- New column modifiers: /**inputType**/ /**label**/ New table modifiers: /**file**/ New configuration options: getPaging searchPaging makeInputTypeAssumption separateRecordTemplate allowUserOrderBy useHeader useFooter getControllersArePublic getOneControllersArePublic searchControllersArePublic deleteControllersArePublic updateControllersArePublic createControllersArePublic writePagingTemplate writeHeaderFiles writeFooterFiles writeControllerGet writeControllerGetOne writeControllerUpdate writeControllerDelete writeControllerSearch writeControllerCreate writeTemplateGet writeTemplateGetOne writeTemplateUpdate writeTemplateDelete writeTemplateSearch writeTemplateCreate writeSmartyBaseClass makeSequenceAssumption makeIsValidAssumption getOneSelectMethodName getSelectMethodName searchSelectMethodName recordsPerPage ------- 0.1.7 released on Wednesday 15th of October 2003 14:28:45 ------- The table option /**LiveUserRight**/ was modified to allow a condition and a recordCondition. The column options /**editLiveUserRight**/, /**editLiveUserArea**/ and /**editLiveUserGroup**/ were implemented. The interface of the RSDTable-classes was extended in order to allow the controller to check permissions: boolean canUpdate(Array &$record) boolean canDelete(Array &$record) boolean canSelect(Array &$record) boolean canInsert(Array &$inserts) UNIQUE INDEX idx_ehr_workgroup_workgroupid(f_workgroupid) is now equal to UNIQUE (f_workgroupid). Primary keys can now be as well defined as table constraints. Index definitions inside a table like 'INDEX idx_ehr_applicant_country_id(f_country_id)' are now ignored. Foreign key definitions can now spread over multiple lines and have a ON DELETE/ON UPDATE statement appended: FOREIGN KEY (f_folder_id) REFERENCES rsdtest_folder(f_folderid) ON DELETE NO ACTION ON UPDATE NO ACTION IsValid- and sequence assumptions are now made for columns defined without /**isValid:...**/ or as a primary key but without a sequence. In a later release, it will be possible to turn on and off these features. And finally, a lot of bugs were fixed! ------- 0.1.6 released on Sunday 10th of August 2003 12:26:31 ------- RSDEngine is now officially released under LGPL. See http://www.gnu.org/copyleft/lesser.html for details. ------- 0.1.5 released on Tuesday 05th of August 2003 18:07:58 ------- The support for LiveUser was improved. All application classs generated with LiveUser support now inherit from RSDLiveUserApplication which inherits from RSDApplication. Support for MDB will be added ASAP. ------- 0.1.4 released on Friday 01st of August 2003 02:12:17 ------- A small bug was discovered in RSDEngineDBApplicationBaseClass::getCode. This release fixes this bug. ------- 0.1.3 released on Thursday 31st of July 2003 09:43:49 ------- This release is a bug fix release. Various bugs in RSDTable and RSDEngineColumn::generateIsValidMethod were discovered and immediately patched! ------- 0.1.2 released on Tuesday 29th of July 2003 20:35:29 ------- This release includes bug fixes and a lot of new features: - A serious bug involving RSArrayUtil and the generation of the selectIncluding* methods was fixed. - The column modifier /**default**/ was splitted into /**defaultInsert**/ and /**defaultUpdate**/. - The column modifier /**doNotInsert**/ now has only effect on the insert template & controller (whatever it done before). - The column modifier /**doNotUpdate**/ was added. It has only affect on the update template & controller - Table Modifieres are now possible as well! - The new Table Modifier /**ignore**/ makes the RSDEngine ignoring the whole table. - Support for LiveUser was added! Integration of LiveUser in the SQL DDL is possible through using the Table Modifier /**LiveUserRight**/. - Support for RSPerm was removed! The power of LiveUser eliminates the need for any other permission management framework. ------- 0.1.1 released on Monday 30th of June 2003 23:35:02 ------- The following bugs where fixed: Problem: The class RSDEngineTemplateFileFatalError does not overwrite an existing fatalError.tpl even if the configuration option 'overwrite_templates' is true Solution: RSDEngineTemplateFileFatalError now extends RSDEngineTemplateFile Problem: RSDEngineErrorManagerClass does overwrite an existing error manager class. Solution: The property $overwriteExisting is defined and set to false: var $overwriteExisting = false; ------- 0.1.0 released on Monday 30th of June 2003 23:16:36 ------- This is the first release of RSDEngine as it is included in RSD 0.1.0.