RADICORE v2.13.0 released

This version includes changes to the FILEPICKER, OUTPUT1 and MULTI4 patterns as well as a few bug fixes.

This version contains the following changes:

Database changes:

- none

Other changes:

  • fixed bug in dict/classes/related_column.class.inc so that if the data is missing for the related_column(multi4)a/b screens it will automatically fill in the key columns for the parent table.
  • updated std.filepicker.inc so that it can deal with a selection which is a directory and not a file.
  • updated popup processing so that if the 'allow_input' option is used it will allow javascript events to be added.
  • updated std.help.inc to deal with invalid characters in the task_id argument.
  • updated include.xml.php5.inc to add 'X-XSS-Protection', 'X-Frame-Options' and 'X-Content-Type-Options' to the header() arguments for the HTML output.
  • updated std.datevalidation.class.inc so that it can deal with input dates containing UTF8 characters.
  • updated std.csv.class.inc to fix bug when the call to $dbobject->appendToCsv() returns a non-empty value.
  • updated include.library.inc to add the array_remove_nulls() function to remove entries from an associative array where the values are empty.
  • updated include.library.inc so that the array_update_associative() function will deal with the situation when the input format for dates is different to the output format.
  • updated include.library.inc to fix various bugs in the array2where() and where2array() functions.
  • added the array2where_missingIsNull() function to include.library.inc which will add '$fieldname IS NULL' to the output instead of ignoring it when a field identified in $fieldlist does not have a corresponding entry in $inputarray.
  • updated std.table.class.inc so that various methods which deal with dates can handle the Buddhist calendar which has a 543 difference in the year.
  • updated std.table.class.inc so that the fetchRow() method can deal with $this->allow_zero_rows = TRUE;
  • updated std.table.class.inc to fix bugs in the getLanguageArray() and getLanguageText() methods so that they will deal with a missing entry for $GLOBALS['classdir'].
  • updated std.table.class.inc to fix a bug in the getPkeyArray() method.
  • updated std.table.class.inc to fix bug in the getValRep() method so that it will set $GLOBALS['class_dir'] when it needs to.
  • updated std.table.class.inc so that the $dbobject->initialise() method, when called in a ENQ1 pattern and the $selection argument contains values for all the primary key columns, then any non-primary key columns will be removed as they are redundant.
  • updated std.table.class.inc so that the $dbobject->initialise() method, when called in an ADD1 pattern, will remove any values for the primary key column(s) in the $selection argument as they are redundant.
  • updated std.table.class.inc so that the $dbobject->insertMultiple() method will check that any error messages in the $errors array are keyed to the correct row.
  • fixed bug in std.add5.inc where it referred to $dbobject->array_update_associative() instead of $dbouter->array_update_associative().
  • fixed bugs in dml.sqlsrv.class.inc where it failed in its conversions of queries from MySQL to SQLSRV format.
  • updated std.multi4.inc to allow for the situation when $dbouter->use_scrollarray is TRUE.
  • updated std.add2.inc to remove some redundant code.
  • updated std.add5/6/7.inc, std.link1.inc, std.multi2/3/5/6.inc and std.output4.inc to include a call to the getPostArray() function before call to $dbouter->customButton().
  • updated std.list2/3/4.inc to include call to identify_id_column() function after calls to array2where().
  • updated std.output1.inc to allow it to be used in a batch job.
  • updated std.output1.inc so that if $dbobject->allow_zero_rows is TRUE it will output an empty CSV file (a header line but no data) if there is no data. This overrides the default behaviour which is to return to the user with the error message "Nothing retrieved from the database".

Published: 01 August 2019