Share

XApperator

File Release Notes and Changelog

Release Name: 0.20

Notes: new contentHeader and contentFooter methods and new contentSelectmenu method to replace old menuHTML. renamed internal property menuHTML to contentBody. this simplifies the controller.cgi as it no longer has to consider Content-type headers (now that we have XML output options) any textarea field in config.xml that has an type attribute value of 'wysiwyg' will direct the UI to include client-side JS neccessary to invoke an editor instance to handle it. A new template in utils.xslt showWYSIWYGEditor() added to render the JS support. added new plugin element in config.xml for specifying JS support libraries for various functions. Currently only used for WYSIWYG editor support, and specifically TinyMCE, allows admin of XApp instance to override buttons rendered in the WYSIWYG editor date types are now stored in data files as condensed ISO8601 format, e.g. 2006-12-31, and a new base attribute 'dateEntryFormat' indicates how the UI should render date values for editing. if 'compound' (the default) will present 3-select lists (ie year, month, day) or if 'ISO8601' will render a single field with Baron Schwartz's excellent date chooser Javascript library for data entry assistance if date or time config.xml entries specify default='0'|'' then are now set to blank instead of the current date/time when creating a new record. a default value of DATENOW will default a date to exactly that, as will TIMENOW on a time record added 'xml' x-mode which spits out raq back-end xml content for a selected fkey with the data wrapped in an application root node and a data parent node sanitising $x-mode in getCGIParams so can only be word chars and defaulting mode to 'select' if null or not recognised. also added new get/set sub mode() changed errorsToUser to detailsToUser and now passing two strings to _dieNice, 1st is generic message which is always displayed, 2nd is detail which may be more sensitive, e.g. containing path or data details and only displayed on detailsToUser=1, both strings are written out to the log via 'warn', updated all calls to _dieNice to reflect this. added new method _warn() for non-fatal errors. added new generate-id attribute to field record in schema to support auto-increment like behaviour on ID type fields. if set to '1' a call to the XSLT generate-id function will generate a default value for fields that dont currently have a value (e.g new ones) added new private method _schemaHasFieldType() to check if a given type is present in the schema for this app, used to check if dependencies are required for certain types split the RunTests.pl script into seperate funtional test.t files in the t/ folder and made sure they all return state to pre-run so they can be run independatly of one-another


Changes: