RADICORE v2.16.0 released

This version contains some enhancements, including the way in which tables are locked during a database transaction, and a few bug fixes.

This version contains the following changes:

Database changes:

- none

Other changes:

  • updated ‘include.batch.inc’ to add the $rdc_wait argument to the signature of the batchScriptSequence() function. This is used at the end of the current background task to run another background task, and if set to FALSE it will start the new task but not wait for it to finish before it continues with its own processing.
  • updated ‘std.data_field.xsl’ so that the filepicker template encloses picker-image in a <span> instead of a <div>. This fixes the issue reported at http://forum.radicore.org/index.php?t=msg&th=3467
  • updated all CSS files to include an entry for ‘span.picker-image’ to replace ‘div.picker-image’.
  • updated ‘std.table.class.inc’ so that the startTransaction() method will use the contents of $this->lock_tables (if it is not empty) instead of calling _cm_getDatabaseLock(). This is to allow different calls to startTransation() in the same process to more easily specify different sets of tables for locking. Please refere to http://www.tonymarston.net/php-mysql/infrastructure-faq.html#faq48 for details.
  • updated ‘std.table.class.inc’ so that the _cm_getDatabaseLock() method uses $this->lock_tables and $this->row_locks instead of $GLOBALS[‘lock_tables’] and $GLOBALS[’row_locks’].
  • updated all ’dml.???.class.inc’ files to simplify the locking mechanism. See https://www.tonymarston.net/php-mysql/infrastructure-faq.html#faq47 for details.
  • updated various classes in the DICT subsystem to remove the redundant _cm_getDatabaseLock() method.
  • updated various classes in the MENU subsystem to remove the redundant _cm_getDatabaseLock() method.
  • fixed bug in ‘dict_table_s01.class.inc’ so that the _cm_getInitialDataMultiple() method returns the correct value.
  • fixed bug in ‘mnu_saved_selection.class.inc’ which had ‘=’ instead of ‘==’ inside a condition.
  • updated ‘std.list2.inc’ to simplify the creation of $inner_where.
  • updated ‘std.search1.inc’ to fix bug concerning numeric columns with precision set to 38.
  • updated ‘include.xml.php5.inc’ so that it refreshes the contents of $fieldspec after a call to _cm_formatData() in case anything has changed.
  • updated ‘std.enquire1.inc’ so that it will automatically return to the previous script if the _cm_initialise() method puts anything into $this->errors.
  • updated ‘include.session.inc’ so that if the runInBackground() method is called from a web service server then it will not try to automatically run the ‘batch_log(filepicker)’ task.
  • updated ‘include.library.inc’ so that the append2ScriptSequence() function has an additional $allowed argument which by default is set to false. This will cause any calls made with a web service server to be ignored unless this argument is explicitly set to TRUE.
  • updated ‘include.library.inc’ to fix several issues found in the extractOperatorValue() function.
  • updated ‘include.library.inc’ to add an extra argument to the mergeWhere() function. See http://www.tonymarston.net/php-mysql/functions-and-variables.html#func.mergewhere for details.
  • updated ‘std.table.class.inc’ to fix an issue with the findDBVersion() method.
  • updated ‘std.table.class.inc’ to fix an issue with the unsetting of the ‘nodisplay’ option in the $fieldspec array.
  • updated ‘std.table.class.inc’ to move code from the getFieldSpec() method to the setFieldAccess() method.
  • updated ‘std.table.class.inc’ so that the popupReturn() method deals correctly with a NULL value returned from a filepicker.
  • updated ‘std.table.class.inc’ so that the sqlQuickSearch() method deals correctly with numeric fields having a precision of 38.

Published: 03 June 2020