*********************************************** Qcodo Change Log http://www.qcodo.com/view.php/release_changelog Managed by QuasIdea Development, LLC *********************************************** Qcodo v0.3.43 (Beta 3) DEVELOPMENT 2008-02-24 * Added ERROR_LOG_FLAG, which is now to be used to specify whether or not to log errors to the filesystem * Fixed QApplication::Redirect on Ajax-based responses if called outside of a qform class * Fixed qcodo.js and post.js to allow for ajax calls after downloading an attachment * Fixed control_dialog.js to allow for multiple register() calls * Added MYSQLI_TYPE_NEWDECIMAL to QMySqliDatabase (Atrium Dweller) * Fixed qcodo.js to use CssAssets path for LoadStyleSheet (vakopian) * Fixed calendar.js to correctly position calendar (dhtml) within a table * Added initial support (structural) for AnimatedGif in QImageBase * Improved error handling in QPaginatedControl * Improved AJAX detection in QApplicationBase Qcodo v0.3.42 (Beta 3) DEVELOPMENT 2007-11-05 * Small fix to QQuery in reusing conditional joins across multiple query calls * Small fix to QQuery to not auto expand association tables * Added AddJoinCustomItem and AddJoinCustomSqlItem to QQuery (VexedPanda) * Fixed PostgreSql database adapter to better support Big INT (krusty) * Fixed QDateTime required translation (saganxis) Qcodo v0.3.41 (Beta 3) DEVELOPMENT 2007-11-04 * Added QPaginatedControl passing to the DataBinder * Fixed QQuery, now properly adds join conditions on hierarchical joins * Fixed QQuery, now properly expands a full hierarchical join structure * Fixed Codegen templates incorrect casing of filenames * Fixed QDateTimePicker to translate "Invalid Date" * Fixed codegen templates InstantiateDbRow on null strcolumnalias (brynjar) Qcodo v0.3.40 (Beta 3) DEVELOPMENT 2007-10-29 * Fix to SubSql call in QQuery (Shannon Pekary) * Fix to PersistPrepare() in QQcontrol (Shannon Pekary) Qcodo v0.3.39 (Beta 3) DEVELOPMENT 2007-10-29 * Fixed bug in QControlBase to allow changes to wrapper styles when Visibility is off * Created QBlurControlAction * Original QCalendar control (with popup) renamed to QCalendarPopup * Created new QCalendar control which links with QDateTimeTextBox and utilizes DHTML * Created QShowCalendarAction and QHideCalendarAction, for use with the new QCalendar control * Created a new DateTime QControls Examples Site page to explain it all * Created a new QSampleControl to aid developers wanting to create their own custom QControls * Created a new QSampleControl Examples Site page to discuss this a bit more * Fixed QControlBase to have a PersistPrepare() method to be called during the Persist interaction (Shannon Pekary) * Added a PersistPrepare override in QDataGridBase (Shannon Pekary) * Fixed bug to correctly pass parent query nodes in QQ::SubSql (Shannon Pekary) * Fixed bug in QPaginatedControl when no paginator is used (Shannon Pekary, VexedPanda) * Updated QCheckBox, QCheckBoxList, QDateTimePicker and QFileControl "required" messages to support I18n (GiBSwiss) * Added MySqlFetchField() for direct fetch_field call to the MySQL connector in the MySQL DB Adapters * Added localization support (via setlocale()) to QDateTimePicker (Igor Puchkov) * Fixed invalid "Invalid Date" warning on unselected datetimepickers for php < 5.2.0 * Added QLexer and QRegex classes from Mike Hostetler for lexing and regex support (Mike Hostetler) Qcodo v0.3.38 (Beta 3) DEVELOPMENT 2007-10-24 * qcodo.inc.php path to QImageRollover fixed * QImageRollover update to not call JavaScript when no hover image defined * Fixed QDateTime to reconstruct using default datetimezone parameter * Fixed QFileFormStateHandler to not error with an empty FileNamePrefix (Alex94040) * Fixed QRadioButton and QRadioButtonList to translate 'required' validation message (GiBSwiss, VexedPanda) * README txt updates on include_path and Windows permissions (davidc) * Templates cleaned up to always use semicolons on single-command render calls (fimbulvetr) * Fixed error message in MultiQuery() call in QMySqli5 db adapter (Robert Muchnick) * Fixed documentation mistakes on I18n examples page (Stijn Vermeeren) * Updated notes/instructions on include/exclude tables in codegen_settings.xml (Christophe Damour, VexedPanda) * Form and Panel draft Templates updated with Translation calls * Fixed QPaginator and QDataGrid XHTML compliance issues, switched UL/LI back to SPAN in the CSS (Sannon Pekary) * Fixed header.inc.php XHTML compliance issue * Fixed QDataGridColumn to use style-based alignment instead of legacy attributes (alex94040) * Fixed QMySqli db adapter to account for HEAP storage engine (Vex) * Corrected QControlProxy's error message on Render() * Fixed QQuery to not us row_count or count_table (rvenky20001) * Converted QQuery-generated statements to used Shortened Aliases (Vass Arpad, VexedPanda) * Added SubQuery support to QQuery (Shannon Pekary) * Added Persistent Controls support to QControl (Shannon Pekary) * Added Conditional Joins functionality to QQuery (Shannon Pekary) * Added extended column support on TYPE tables on CodeGen (Alex94040) * Updated templates to split MetaControls and Meta DataGrids into Subclass / Gen Class * Added SQL_CALC_FOUND_ROWS option to QMySqli Database Adapter, when using the usefoundrows directive (Atrium Dweller) * Modified AutoLoader to support case-insensitive class names * Added a return true/false to AutoLoader * Added @property phpdoc tags to generated code (VexedPanda) * Added "Friendly" error page and error ajax message handling (see configuration.inc.php for more) * Added Error Logging functionality (see configuration.inc.php for more) Qcodo v0.3.37 (Beta 3) DEVELOPMENT 2007-09-24 * Added Label create helpers in MetaControls * Added Reload() functionality to DB Orm Gen class files * Added Refresh() and Refresh w/ Reload functionality to MetaControl * Added MetaControl and Meta DataGrid examples pages * Slightly restructured the Drafts section of the Examples site * Fixed small QCheckBox bug with "checked" (Christophe Damour) * Fixed typo in early_bind examples site page (Vexed Panda) Qcodo v0.3.36 (Beta 3) DEVELOPMENT 2007-09-24 * _qpanel_edit.tpl fixed to correctly use ::Create on MetaController (gibran, animekun) * QQuery GetDataGridHtml updated to account for Null objects and PHP < 5.2 cast from object issue (comet7) Qcodo v0.3.35 (Beta 3) DEVELOPMENT 2007-09-23 * Fixed MetaDataGrid and Drafts to support null DB TYPE columns (animekun) * Fixed MetaDataGrid and sorting on Unique reverse references * Slight restructuring of MetaControl constructors and static create methods * Added functionality for all Qcodo Query calls in ORM objects: Now takes in EITHER array of QQClause objects OR just a single QQClause object * Added AddCssClass() and RemoveCssClass() to QControlBase * Added __Restored public property getter on all ClassGen ORMs * Fixed control naming and casting in MetaControl templates * Added Format option to QTextBox control * Fixed $_FORM availability in Panel template rendering Qcodo v0.3.34 (Beta 3) DEVELOPMENT 2007-09-22 * Added javascript select() type of capability to QTextBox (similar to focus()) * Updated examples site to show select() functionality * Created a new QDateTimeTextBox control * Added functionality to perform CausesValidation overrides on specific events for a given control * Fixed errant warning message on qcodo updater * Fixed configuration_pro.inc.php to match configuration.inc.php Qcodo v0.3.33 (Beta 3) DEVELOPMENT 2007-09-20 * Fixed QDateTimePicker to not parse post data when not rendered (brynjar) * Fixed QEmailServer issues with "=" in body and attachments. (Chris Peterson) * Fixed JS Blink() to revert to original background color after completing color fade * Improvements on Serialization hashing in QImageBase * Rearchitected Code Generator templates file and directory structure (see readme in the qcodo/codegen/templates folder for more info) * Implemented MetaControls template for ORM objects * Implemented Meta DataGrid template for ORM objects * Rearchitected Form and Panel drafts to use MetaControls and Meta DataGrids * Removed original FormBase and PanelBase ORM Templates * Rearchitected for a more streamline / useful default CSS organization / structure in styles.css * Updated the following controls to use the new CSS structure: - QDateTimePicker - QPaginator - QDataGrid - QFileAsset - QListBox * Implemented THEAD, TFOOT and TBODY into QDataGrid * Removed needless default styling in QDataGrid (per new CSS organization / structure) * Updated QFormBase to switch any remaining "private" methods/variables to "protected" (Kristof) * Updated QFormBase's error message on invalid HtmlTemplatePath (Nicolas Immelman) * Updated post.js to better support all GECKO-based browsers on PostAjax (Francesco Abbattista and Skaffen) * QPaginator minimum indexcount lowered to 7 (alex94040) * Fixed typo spelling error in QFileAssetDialog (krusty) * Fixed CheckForRemoteAdmin to account for requests via proxy (Matthew L) * New QImageRollover control Qcodo v0.3.32 (Beta 3) STABLE 2007-09-07 * No changes made to code. Release upgraded to stable. Qcodo v0.3.32 (Beta 3) DEVELOPMENT 2007-09-05 * Fixed QImageBase.class.php to not explicitly pass null paramters to GD (VexedPanda) * Added support for the MEMORY Engine in the MySQLi Database Adapter * Typo in comments for Form Draft templates (Nicolas) Qcodo v0.3.31 (Beta 3) DEVELOPMENT 2007-09-05 * Fixed JS include error for dynamically created control during initial page load in QFormBase Qcodo v0.3.30 (Beta 3) DEVELOPMENT 2007-09-04 * Fixed Regression bug with QServerAction ("qc not defined" error) * Fixed "disappearing data" issue with RadioButtonList and CheckBoxList when rendered in a not-visible panel * Optimized ControlModifications rendering code in post.js and control.js * Updated ControlProxy examples page to no longer use RenderAsHref * Updated error handler to ignore via "@" directive (pokorpa) * Added ImageMagick support to QImageBase class Qcodo v0.3.29 (Beta 3) DEVELOPMENT 2007-08-31 * Added support in QControlBase for StyleSheetFiles * Improved support for dynamic, AJAX-based loading of both StyleSheets and JavaScript files in QFormBase * _form.js (compressed/compiled javascript) is now deprecated. _qc_packed.js has taken its place * Deprecated SingleJavaScriptFile functionality in QFormBase * Added IgnoreJavaScriptFileArray and IgnoreStyleSheetFileArray functionality in QFormBase * Added SetTime(), SetDate(), Now() and FromTimestamp() methods to QDateTime LEGACY class for better forward compatability * Removed PHP Version-specific handling in QDateTimePicker and QCalendar * Added QQSum class to Qcodo Query (fimbulvetr) * Made GetErrorControls and GetErrorMessages public in QFormBase Qcodo v0.3.28 (Beta 3) DEVELOPMENT 2007-08-24 * QDialogBox fixes for long forms on Firefox for Mac * QDialogBox fixes for hiding cursors on Firefox for Mac and Windows Qcodo v0.3.27 (Beta 3) DEVELOPMENT 2007-08-24 * QQConditionIn and QQConditionNotIn updated to return false and true, respectively, on null IN parameters (VexedPanda) * Fix on check for plain "true" to determine if WHERE clause should be rendered (VexedPanda) * Fixed regression in QFormBase.class.php to have controls updated on client-side updates Qcodo v0.3.26 (Beta 3) DEVELOPMENT 2007-08-22 * Fixed regression bug of registerClickPosition in control.js (Alec) * Added Chris Peterson's QQuery Updates with NotIn, Between, NotBetween, NotLike, etc. (Chris) * Added a variant of Chris's EmailAttachments support in QEmailServer and QEmailMessage (Chris) * Created a new QMimeType core framework class with MIME-related utilities Qcodo v0.3.25 (Beta 3) DEVELOPMENT 2007-08-20 * Removed consistency checking from QType::Cast() to string as its not needed * Fixed post.js to allow for errant % characters in postajax calls * QFormBase updated to take in any qcontrol to validate * QFormBase fixed so that causesvalidation can properly take in an array of qcontrols (vakopian) * Updated default timezone to be an acceptable/standard value (Ben) * QSqlServerDatabase port designation fixed on Windows PHP Servers (Ken) * QEmailServer updated to use CharEncoding on plaintext emails (Edward Kay) * Added Iceweasel (firefox variant) support * index_load_array_manytomany documentation fix (VexedPanda) * new _b() function to print text as a HTML text block * new QImageBase class which will (eventually) be the base class for any/all image-related controls * QFileAsset control - fix to work with Virtual Directories (Krusty) * QFileAsset added "Document" type * Fixed Multiple Database class/subclass include bug with mysqli/mysql/mysqli5 adapters * Updated MySql database adapter's FetchField to allow for custom columns (VexedPanda) * Fixed post.js to correctly handle checkbox values on ajax calls (VexedPanda) * QQConditionNone and QQConditionAll fixed to use 1=0 and 1=1 instead of "true" and "false" (VexedPanda) * QDateTimeSpan GetYears() fixed and GetTimearray() cleaned up a bit (danielrc) * QQuery fix for distinct count queries (VexedPanda) * QDatabaseCodeGen will warn when generating against two databases with tables of the same name * Support for mod_rewrite (see configuration.inc.php for more info) (Mike Hostetler) * QPostgresSqlDatabase adapter SqlVariable() updated to match QDatabaseBase version * DB Profiler fix for debug backtrace methods with objects (Hunter) * Fixed control.js to account for scroll position in registerClickPosition (Alec) * Added query visibility support for qdatabindexceptions (VexedPanda) * Added translation support for requred QCalendar controls (GiBSwiss) * Updated QMySql (legacy) adapter to use set names on encoding (VexedPanda) * Updated QSqlServer adapter to avoid truncation on long strings (VexedPanda) Qcodo v0.3.24 (Beta 3) DEVELOPMENT 2007-04-23 * Fixed "Indirect modification of overloaded property" issue on Codegenning non-indexed FK relationships (GiBSwiss) * Fixed qimagecontrolbase::run with non-specified file paths * Fixed QMySqlDatabase (legacy) adapter for default value support (VexedPanda) * Fixed QFileAssetBase to not truncate last character of uploaded file basename (RugbyFan) * Updated QColumn to support null-defaults for date and datetime columns (VexedPanda) * Added customizable SetupIconFilePathArray to setup icon filepaths in QFileAssetBase Qcodo v0.3.23 (Beta 3) DEVELOPMENT 2007-04-13 * Added GetAllColumns to QDataGridBase * Added PageCount to QPaginatedControl * Small fix for 200- messages in QEmailServer (Edward Kay) * QImageControl Examples Page typo on properties (VexedPanda) * QImageControl imagegif fix (VexedPanda) * MySQL (legacy) fix for default values (VexedPanda) Qcodo v0.3.22 (Beta 3) DEVELOPMENT 2007-04-09 * New QImageControl control and example page * New QFileAsset control and example page * MySql Database Adapter cleaned up to have GetRows and GetNextRows correctly inherit * PHP_SAPI now used to detect CliMode in QApplicationBase (twallace) * QFileControl fixed to correctly reset internal properties on repost * CodeGen template fixes for 5.2.1 arrays (for virtual FKs against non indexed columns) * Alerts in QApplication's RenderJavaScript no longer calls HtmlEntities * SqlServer adapter maxlength fix for BLOB/TEXT fields (Christophe Damour) * QAjaxAction fix on page exiting during an ajax process - no longer reports an error * Improved QAjax actions with QSessionFormStateHandler to take up less space on ajax-to-ajax actions * Error handler no longer requires QApplication to be already loaded * Fixed re-bind inefficiency in QPaginatedControl (Matthew Lieder) * Added missing ID attribute in QDataGridBase * Added MultiQuery method to MySqli5 adapter (Mike Hostetler) * Added HtmlIncludeFilePath property to QFormBase * Added Database Connect-on-Demand functionality * Added 'Encoding' DB Config option for MySqli-related databases * Cleaned up passing/storing of DB CONFIG variables * Updated all core database adapters to reflect this change * Removed $ConnectionStringArray from QApplicationBase * Updated QEmailServer to allow for one-off Encoding types * Fixed QEmailServer in connecting to SMTP Servers with large welcome messages (Kristof) * Fixed Large Command javascript error on AjaxActions (Matthew Lieder) * Added GetHeaderSortedHtml to QDataGridBase to allow for easier customization of sorted column headings * ValidateControlAndChildren and TriggerActions now made to be protected in QFormBase * Added CssClass to QFormBase * Added an ORM-Only version of qcodo.inc.php that can be loaded from prepend.inc.php * Modified Top-Line template metadata to account for empty names of directories within the docroot. Now, for example, specifying null for __FORM_DRAFTS__ will tell CodeGen to NOT generate Form Drafts. * Fixes for "Cannot set on a Null Date/Time" errors in QDateTimePicker and QCalendar with PHP > 5.2.0 * Fixes for QDateTime in the set hour and time-getters to not modify 24-hour to 12-hour value (Shannon Pekary) * Fixes to QDateTime to correctly set Timestamp value * Cleaned up QDateTimeSpan to use Consts instead of private member variables * Fixes to QDateTimeSpan to year calculations and code consistency * Added AddDays, AddMinutes, etc. methods to QDateTime * Modified all modifier methods, including the Add* and Modify methods, to allow for stringing of datetime values (Fernando) Just remember that Add* and Modify methods will mutate the DateTime object being calculated upon * QListControl now has setters for SelectedName, SelectedValue, SelectedNames and SelectedValues * QListControl SelectedIndex fixed to now accept -1 or null to "deselect all" * QFormBase TriggerActions fixed to more-correctly validate in multi-panel forms * Added DefaultValue support in QColumn and in final ORM Codegen templates Qcodo v0.3.21 (Beta 3) STABLE 2007-01-19 * Release 0.3.21 upgraded to be a STABLE release * No other changes made Qcodo v0.3.21 (Beta 3) DEVELOPMENT 2007-01-03 * Small fix in Checkbox Validation Error message * Updated all JS files to be slightly more compliant (to support JS compressing) * Re-introduced _form.js as a single, compressed JS file for all Qcodo Core JS files * Added more granularity to CausesValidation functionality (by "vakopian") * Added KeyPressCloses support to QControlDialog * Added Blink() mechanism on any QControlBase * Better error reporting on QUpdateUtility (by "disaster") * Fixed bug for dynamic JS includes in QFormBase * Added "Null Setting" capability in QControlBase and _actions. Setting Custom actions, attributes or styles to NULL will remove the style/action/attribute declaration * Fixed event.js for firefox qcodo.client values * Fixed focus() in IE in control.js * Fixed terminateEvent() IE6 strict JS compliance * Added ability to null-out a template in QBlockControl * Small QEmailServerFix (by Chad Koski) * Small QDialogBox fix for showing/hiding non-rendered dialog boxes * Added RGB Calculation functions in qcodo.js Qcodo v0.3.20 (Beta 3) DEVELOPMENT 2007-01-02 * Cleaned up JS Event Handling for Firefox Browsers * Added Browser Check capability in JS and Qcodo QApplication code for browser version numbers * Fixed move handle problem where buttons were clickable in a MH before MH was used * Fixed QueryCount in db_orm_class.tpl to allow for counting of grouped results (Fernando) * Fixed QSoapService to allow for SSL hosting (jcinacio) * Added SVN ignoring in QUpdateUtility (Alec) * Updated CheckBox, Radio Button, and the list versions of these controls to support HtmlEntities * Added ItemGrouping capability to ListItem and ListBox (may break ListItemStyle functionality... ListItem constructor was reordered) * Fixed RadioButton ParsePostData() on ServerCalls (Gadianton) Qcodo v0.3.19 (Beta 3) DEVELOPMENT 2006-12-20 * Fixed bug on QFormBase for QFileControl and any other controls that access FormAttributes * Fixed bug in QDialogBox -- now centering correctly, added onscroll events, and background matte fills entire client space Qcodo v0.3.18 (Beta 3) DEVELOPMENT 2006-12-19 * Added new QDialogBox support * Fixed ability to have dynamic .js include files and form attribute changes during AJAX calls * Added new actions to support showing/hiding QDialogBox controls * Added new examples to demonstrate QDialogBox Qcodo v0.3.17 (Beta 3) DEVELOPMENT 2006-12-18 * Fixed QDateTimePicker for 5.2.0 time values * Added updateStyle('text') capability for labels/panels in the javascript library * Fixed previously rendered-now not-rendered validation issue for child controls * Fixed misnaming issue for reversereferences on tables with compsite PKs * Fixed client-side __FormUpdates with null values Qcodo v0.3.16 (Beta 3) DEVELOPMENT 2006-12-15 * Better error reporting on Database CodeGen for tables with no Primary Key * Added QDateTime::FromTimestamp() factory/constructor for QDateTime (Standard) * Removed legacy prototype definition from QDataGridRowStyle->GetAttributes() (Hunter) * Fixed double XML Escaping in QFormBase JS handler (Mike Hostetler) * Fixed http"s" parsing in QWriteBox Qcodo v0.3.15 (Beta 3) DEVELOPMENT 2006-12-13 * Many fixes for QDateTime (standard) and QDateTimePicker for backward compatability * Added CssClass-ing of the checkbox, itself, in QCheckBox when no ->Text is defined. Qcodo v0.3.14 (Beta 3) DEVELOPMENT 2006-12-12 * Updated QQ Condition example to better explain and/or logic branching * Added Examples to illustrate JavaScript and Alert-based actions, as well as other clientside actions, and to explain QControlProxy * Added the new QDateTimeSpan class (Martin Kronstad) * Completely rewrote QDateTime for PHP 5.2.0+, which now extends from PHP DateTime. Should be fully backward compatible. * Added the new QDateTime.legacy class for backward (PHP < 5.2.0) compatability * Added new DateTimeSpan functionality and Age functionality for QDateTime (Standard) (Martin Kronstad) * Added a new QControlProxy control * Fixed CodeGenning QQN class on multi-database codegens * Added the new QListItemStyle (Hunter Jensen) * Added new QActions for clientside-only updates of CSS Styles (e.g. for mouseover/hover highlighting) * Added new MaxLength support on generated data classes and on textboxes in generated forms/panels * Fixed DataGridBase->ParseColumnHtml to be protected instead of private * Added ValidateTrimmed property for TextBox validation * Added new Focus() method on all QControls * Fixed QAlertAction and QConfirmAction to accept any characters, including \r\n for mid-message line feeds. Qcodo v0.3.13 (Beta 3) DEVELOPMENT 2006-11-29 * Fixed Validation error in QTextBox for max/min lengths. Qcodo v0.3.12 (Beta 3) DEVELOPMENT 2006-11-27 * Updated CodeGen classes to fix broken GenerateAggregate inheritence on some PHP installs * Added $DefaultFormat functionality to QDateTime (used by __toString() and NowToString()) * Added MaxLength validation to QTextBoxBase * Fixed QControlBase to refresh itself on AJAX calls on simple property updates * Added a few missing read-properties in QBlockControl for ResizeHandles * Added ItemWidth property to QTreeNav Qcodo v0.3.11 (Beta 3) STABLE 2006-11-17 * Official Beta 3 Release! * Fixes for QApplication::ExecuteJavaScript during an AJAX call for PHP 5.2 * Recreated/Rearchitected QTreeNav and QTreeNavItem, performance is MUCH improved. * Added a internally-used $ProcessOutput static flag on QApplicationBase * Cosmetic fix on DataBaseCodeGen reporting (krusty) Qcodo v0.3.10 (Beta 3 Pre-Release) DEVELOPMENT 2006-11-13 * Modified QType library to support new PHP 5.2 typing constructs * Fixes to QSoapService to fix bugs in PHP 5.2 SOAP array of objects support * Updated error code in QUpdateUtility Qcodo v0.3.9 (Beta 3 Pre-Release) DEVELOPMENT 2006-11-03 * Removed strongly typed object parameters from edit panel base templates * Removed strongly typed object parameters from paginated control and formbase * Updated multiform intro to more accurately create buttons in the datagrid * Cache file creation fix in Soap Service Qcodo v0.3.8 (Beta 3 Pre-Release) DEVELOPMENT 2006-11-02 * Fix so that reverse relationships can have reverse relationships when using QQ * Added EXPERIMENTAL support for Panel Drafts -- see blog post on 0.3.8 and panel drafts for more information * QQNode class inclusion fix Qcodo v0.3.7 (Beta 3 Pre-Release) DEVELOPMENT 2006-11-01 * Added reverse relationships (unique and non-unique) support to qq * QQ relationships support is now considered "feature complete" * Fix for MultiPK objects that act as an Association Table * Fixes to DataGrid, adding SetDataBinder capability * Small fix to checkbox * Samll fix to calendar * Small fix to MySQL database adapater * Added example for Reverse Relationships * Updated examples with the new datagrid SetDataBinder capability * Added Sorting to the datagrid in the Multiple Qform example Qcodo v0.3.6 (Beta 3 Pre-Release) DEVELOPMENT 2006-10-25 * Small DatabaseCodeGen and db_orm_class changes to provide proper support for duplicate keys Qcodo v0.3.5 (Beta 3 Pre-Release) DEVELOPMENT 2006-10-24 * Added back Beta 2-style manual query support * Fixed QDateTimePicker for null dates and required=true Qcodo v0.3.4 (Beta 3 Pre-Release) DEVELOPMENT 2006-10-23 * Multiple PK support is back in to the framework and in Qcodo Query * Timestamp (Optimistic Locking) will now update on saved objects * Graph support is fixed in Qcodo Query * CodeGen now has excludeTables and includeTables support (Mike Hostetler) * QQ __get property fix for PHP v5.0.* (Fernando) * QListControl fix on null arrays * javascript fixes on logger and for drop targets on FireFox * a few typos fixed on the examples site * Original MySQL database adapter now supports comma-ed column lengths (for Decimal) * UpdateUtility fixes -- will no longer traverse the entire docroot * QApplicatioN::Redirect now successfully escapes (Fernando) * Small SoapService fix Qcodo v0.3.3 (Beta 3 Pre-Release) DEVELOPMENT 2006-10-17 * Pretty gross typo in the Code Gen templates that prevented Association Load arrays from working Qcodo v0.3.2 (Beta 3 Pre-Release) DEVELOPMENT 2006-10-17 * Small fixes to SQL Server library * Added SQL Server script and instructions to Examples site * Eliminated most of the "final" object protection in most class methods * QAction::RenderScript is now public * UTF-8 is now the encoding type that qcodo "ships" with (easily overridable in prepend.inc.php) * Command Line Devtools has better error reporting if paths are misconfigured Qcodo v0.3.1 (Beta 3 Pre-Release) DEVELOPMENT 2006-10-16 * Added new global Change Log (e.g. *this* file ;) to the build/release process * New Release Management System via the QUpdateService * Rearchitected the entire filesystem and directory structure * No more dependency on .inc include files -- all include files now end in .php (either .class.php, .inc.php, or .tpl.php) * configuration.inc.php has been completely changed to support the new filesystem/driectory structure * Updated entire QForm and QControl library to support all versions XHTML (1.0 Trans, 1.0 Strict and 1.1) standards compliance * All examples rewritten/updated for (and validated against) W3C XHTML 1.1 compliance * New querying functionality via the Qcodo Query API * All ORM templates updated to use Qcodo Query API * Deprecated QQueryExpansion class and related code, as it is now replaced by Qcodo Query * Rearchitected Code Gen to be completley modularized * Centralized htmlentities() to QApplication::HtmlEntities() * "Locked Down" most standard "output HTML" commands to first perform QApplication::HtmlEntities() on content before outputting -- this is done in _p(), QLabel and QDataGrid. This is overridable (if you are explicitly wanting to output HTML tags). * "Locked Down" codegen.php and the form_drafts so that by default only localhost can execute them (configurable in configuration.inc.php) * Updated QForm validation code to only validate visible controls on the screen (fixed bugs for nonrendered child controls) * Buttons no longer validate by default -- CausesValidation by default is set to false. * Add Form_Validate() functionality * Added QCausesValidation::SiblingsOnly and SiblingsAndChildren functionality * Added examples to illustrate all of the above new functionality * Added new Multiple QForms via Custom QPanels example Qcodo v0.2.15 (Beta 2, Final Beta 2 Release) STABLE 2006-10-16 * Encompasses most of the reported bug fixes for the Beta 2 tree * New Resizable Panels functionality Note: for a detailed transcript of all the Beta 2 point releases, refer to the Qcodo Development Blog at http://www.qcodo.com/forums/forum.php/5 Qcodo v0.2.1 (Beta 2 Pre-Release) DEVELOPMENT 2006-02-09 * Adds support for AJAX * New Events/Actions handlers * Updating Class Naming structure Qcodo v0.1.1 (Beta 1.1, Final Beta 1 Release) STABLE 2006-02-09 * Encompasses all reported bug fixes for the Beta 1 tree Qcodo v0.1.0 (Beta 1, Initial Release) STABLE 2005-10-18 * Initial Release