RADICORE v1.18.0 released

This version contains a few bug fixes and some new features.

This version contains the following updates:

  • added option for each subsystem to show its version number. If a file called 'version.txt' is found in a subsystem's subdirectory then its contents (up to 20 characters) will be displayed at the bottom of the screen.
  • fixed bug in 'include.session.inc' which caused the 'Log SQL queries?' option in the 'Update Session data' screen not to be carried forward.
  • fixed bug in 'std.update2.inc' which prevented it from calling the popup task.
  • fixed bug in 'tree_nde_jnr.popup.php' which prevented it from displaying the correct entries.
  • fixed bug in 'dict_table(generate)b' which did not replace '#popup_table#' in the component script with null if no value has been supplied.
  • fixed bug in 'mnu_task_s02.class.inc' which caused 'mnu_task(rename)' to malfunction.
  • fixed bug in 'std.multi4.inc' which failed to refresh screen after returning from a child form which was activated by a navigation button.
  • fixed bug which caused 'std.multi4.inc' to retrieve primary key from the wrong entity when passing selection to a child form.
  • fixed bug which caused 'std.output2.inc' and 'std.output3.inc' to return to the previous screen after writing the PDF output to disk instead of sending it the browser.
  • fixed bug in 'std.filepicker.list1.xsl' which prevented images from being displayed with the specified width and height.
  • fixed bug in the logon screen when run with Microsoft IIS which caused it to use HTTPS even when an HTTPS server had not been specified.
  • fixed bug with ENUM types as reported in http://www.radicore.org/forum/index.php?t=msg&th=123
  • changed the way the FILEDOWLOAD pattern is implemented. Instead of having the options defined in the _cm_pre_getData() method of the table class they now go into the _cm_initialiseFileDownload() method. Please see http://www.tonymarston.net/php-mysql/dialog-types.html#filedownload for details.
  • changed the way the FILEPICKER pattern is implemented. Instead of having the options defined in the component script they now go into the _cm_initialiseFilePicker() method of the table class. Please see http://www.tonymarston.net/php-mysql/dialog-types.html#filepicker for details.
  • modified 'dict_table(generate)b' so that it will include alias names from relationships in the dropdown list of table names.
  • modified 'mnu_task(rename)' to replace any embedded spaces with '_' (underscore) because when used in navigation buttons embedded spaces are automatically changed to '_' in the $_POST array, and this causes the lookup using that task_id to fail.
  • modified the '_cm_pre_getData()' method so that it now includes the $fieldarray argument.
  • modified XSL stylesheets so that they will accept the 'nosort' parameter to remove all sorting hyperlinks from the column headings. This feature can be turned on by inserting the line '$this->xsl_params['nosort'] = 'y';' in your table class.
  • modified 'Export Subsystem' so that the file '<subsystem>/sql/<subsystem>.menu_export.sql' includes all MNU_ROLE entries which are found on the MNU_ROLE_TASK table for all tasks within the selected subsystem.
  • modified 'Export Subsystem' so that the file '<subsystem>/text/en/<subsystem>.menu_export.txt' is created without the 4 character indent on each line.
  • modified 'std.update1.inc' so that it can generate a 'paste' button if the ''copy' button is pressed (for use in 'dict_table(generate)b').
  • made 'xsl/std.list2.xsl' the same as 'xsl/std.multi2.xsl', which means that 'std.multi2.xsl' is now redundant. This means that all screen structure scripts which refer to 'std.multi2.xsl' should be changed.
  • modified 'std.multi4.inc' so that it generates the message 'N records have been updated on XXX' for both database tables.
  • modified 'sample.validation.class.inc' and 'std.validation.class.inc' so that the $input parameter on the custom methods is passed by reference, thus allowing the value to be changed inside the method.
  • modified 'dml.*.class.inc' so that if a table is read during a database transaction (i.e. between 'start transaction' and 'commit/rollback') then the SELECT statement is altered to include 'LOCK IN SHARE MODE' (MySQL) or 'FOR UPDATE' (PostgreSQL).

Published: 18 November 2006