This file contains the change log for the PHP GEN project. --- PHP GEN ver 1.6.1 07-Jul-2006 --- * relaxed permissions of generated output (engine/generate_scripts.php): - umask(0022) - mkdir( $dir, 0777) - $old_perms = fileperms($src) && copy( $src, $dst) && chmod( $dst, $old_perms) * added new content_type to textarea-fields: BBCode, using Pear::HTML_BBCodeParser. Configure BBCODE_FILTERS in common/config.php. * added script to perform some basics tests on your PHP GEN installation (engine/install.php) * added new configuration variable in common/config.php: PEAR_DIR. Use it in case you the path to your PEAR installation isn't included in PHP's include_path. * added new variable to generated config_all.php: $CFG_commondir, which should point to the directory 'common/' and therefor makes it easier to extract an application * tuned paginating links: always show 10 paginating links, added first/last page links and support for uneven number of paginating links * dodged bug in IE with forms, which sofisticated translation unnecessary (only in templates of 'generated' scripts) * fixed bug in image resize: calculating image sizes was faulty at times * fixed bug in list.php when posting a too big $from value * updated generic templates to use more CSS for the layout (engine/generic/styles/default.css) * upgraded to Smarty 2.6.14 * updated BUGS file * updated README file --- PHP GEN ver 1.6 16-Apr-2006 --- * added new option for sorting master/details outputs * added support for multi-column references to a foreign table. (this should fix a bug reported by JLPerez) * add new field types: datetime, date, time, year (search currently unsupported for datetime and time) * updated scripts to generate "Valid XHTML 1.0 Transitional" with iso-8859-1 encoding * improved structure of generated config 'config_all.php' (found in 'output/table/' directory) * fixed bug where PHP GEN wouldn't work when PHP's 'short_open_tag' was disabled * fixed bug where mandatory fields checks for 'select foreign' would fail in some cases * fixed bug where export would fail to show values for 'select foreign' when not fetching foreign values (reported by hellsa) * fixed bug where a lot of blue would be used when using (older?) IE-browser on PHP GEN * fixed bug where 'current file is:'-links for file-fields were corrupt after failed edit action * preparation for multiple sort order in list page (table method getRecords() handles parameters $order_arr and $order_type_arr correctly now) * added new method for table class: getFieldsByCrit() * minor bugfixes/typo fixes/code cleanups * upgraded to Smarty 2.6.13 * updated BUGS file --- PHP GEN ver 1.5 31-Jan-2006 --- * added images resize using GD (requires >= 2.0.1) * added thumbnail support for 'image file'-fields * added custom Smarty template function 'form_element' to handle rendering of appropiate form element in add.tpl and edit.tpl * fixed bug where wrong values would be registered for content_type's during the configuration --- PHP GEN ver 1.4 15-Jan-2006 --- * added export feature (currently CSV and HTML are supported) * fixed bug where empty values for a column specified in 'select foreign'-pattern would make other fields disappear from list/details page * fixed bug where PHP GEN would refuse to start if register_globals was _disabled_... where we actually meant the other way around: refuse to start if it's _enabled_. Anyways, we're quite sure you weren't exposed to any vulnerabilities, since we try to initiliaze every variable properly before we use it. And if that doens't suffice... it's still beta software you know? * further prevention of SQL-injection and XSS attacks, think we're safe now... * general code cleanup (small bugfixes, typo fixes, removal of unused/unnecessary variables, ...) --- PHP GEN ver 1.3 11-Nov-2005 --- * multiple fields can now be selected for ID, hope there are no bugs left, my spray can is almost empty * added configurable pattern for 'select (master/detail)' outputs, next to usual select * added option 'form hint' for each field * added 'restrict file extensions' to 'file'-fields (warning: this method is still vulnerable to various attacks trying to trick the webserver or the user downloading the file) * added 'content type' to 'file'-fields, with options: generic file and image file * first attempt to prevent possible XSS attacks * optimized some queries (though you'll only notice the difference when using MySQL) * reverted back to ' AND ' instead of ' OR ' for joining search fields in SQL query * new design for the generated pages, made by EYCE Creative Lab (http://www.eyce.be), thanx! * when using MySQL as a database there is now an option to add a record to a foreign table while adding/editting the detail/master record (WARNING: blatantly assumes the foreign table uses MySQL's auto_increment feature, there are no checks in place yet) * upgraded to Smarty 2.6.10 * fixed bug with 'select (master/detail)'-fields, where no two fields could point to same table * fixed bug where records with empty value for a 'select (master/detail)'-field would not show on list page * fixed bug where html code would show up on add pages when using a 'select fix'-field with 'content type' html * last but not least the various small bugfixes and code tweaks --- PHP GEN ver 1.2 11-Oct-2005 --- * fixed/implemented multiple file uploads * added mandatory option for field * removed filter function, replaced by 'content type' * removed multiple foreign keys, which was just a very bad implementation. But will hopefully be re-implemented some day... * fixed checkbox type of field, although there are still some restrictions: field should be at least char(2), search not functionable,... * reverse sort order (click triangle to remove sort order) * upgraded to Smarty 2.6.9 (shoud run fine on 2.6.10 also) --- PHP GEN ver 1.1 14-Nov-2004 --- * table configurations are now stored in a file like: 'table_config/..php' You can/should rename them yourself easily (sorry) * Added two field types: 'url' and 'multiple foreign keys' The latters acts as 'select(master/detail)', but stores the multiple keys as ';ID;ID;ID;' (warning: data integrity is not enforced if this type is used, so if you need so, use a different table to hold the N to M relationship and single foreign keys instead). * Added configurable display filter: select a php-function to be performed on the field value before passing it to template * 'select(fix)' fields are now also selectable in the search form * updated to Smarty 2.6.3 (keep up the good work!) * public list pages contain a bit of dhtml (credit goes to phpMyAdmin :) * search query is passed along while editing, adding,... * some more minor bug- and typofixes * added error_reporting() to ignore E_NOTICE (although one day, PHP GEN should be able to run without it) --- PHP GEN ver 1.0 --- * Added powerful file upload: file size checked, random file name used for avoiding collisions, old file delete configurable on edit and update events, etc. * Added password and file fields * Suffix to variable names comming from database fields added to avoid collisions with internal variables (add & edit). * Assorted minor bug corrections and code improvements (thanks to Jeroen Wynen!) * Now foreign values are selectable in searches (thanks to Jeroen again :-) * Edit script bug when primary key was being updated fixed --- PHP GEN ver 0.9 --- * table configurations save/restore functionality added! (Code contributed by Jeroen Wynen, thanks!!) * register_globals not used any more. You can (and should) now turn it off :) * bug in del.php loosing from & order settings when returning to list.php corrected * testdb mysql script + sample configuration files + sample output files now included (see tables_config, testdb and output folders) --- PHP GEN ver 0.8 --- * One more generation step present for adding additional data. * Added master/detail implementation by using select (drop-down) boxes. One can do several master/detail links in the same table. List, details, sorting and search uses the information in the foreign table (details). * Non master-detail select is also more powerful: real value may be different of what it is shown/choosen by user. * Display of errors in a template following all other pages style (still needs some more work). * Recoded big part of generate_scripts.php. Still needs some minor work but now acceptable. * Added links configuration and generation to navigate between tables * db.php renamed to db_gen.php to avoid problems against DB.php from PEAR::DB for windows users --- PHP GEN ver 0.7 --- * Added pagining to the list with records per page configurable at generation time * Added sorting of the list by clicking in the field name * Added search by fields which are choosen at generation time --- PHP GEN ver 0.6 --- * There is no more MySQL-specific code at generation time, thanks to some code contributed by Lorenzo Ciani and some other modifications. Thanks! All the code should now properly work with PEAR::DB supported database. * Charles Galpin contributed a patch for adding a details script, which is now included into this version. It is a great addition, thanks! --- PHP GEN ver 0.5 --- * +++quote from its (old) README file: * This project is a complete rewrite of a previous project I started and that some friends (greets to Fer Curra, Gabito & Dena) helped me improving. This was far away in the year 2000 and 2001. The rewrite tries to profit from the experience and to solve the big issues that the previous one had by: * being itself database independent and generating database independent code by using the Pear::DB module * making use (again itself and the generated code) of the Smarty templates engine * generating more structured code (e.g.: using arrays and loops instead of lots of lines of code) * much more, but no time to list it... * +++end quote