Patch #2 Released for V2.6.0

Friday, December 31, 2021 Tags: patch, release, bugs

This patch fixes support for PHP v8.0 and provides initial support for PHP v8.1. It compensates for MySQL v8 which uses a new '`rank`' keyword and prevents some database interaction on tables using the '`rank`' field. In addition to many other fixes and tweaks, it updates many 3rd party libraries.

NOTE: DO NOT INSTALL THIS PATCH ON A SERVER RUNNING PHP v5.5.x!!! Your web site will no longer run! PHP versions older than v5.6 are very obsolete and we do not support them. The next version may also remove support for PHP v5.6 and v7.0, v7.2, and v7.2 since they are now considered obsolete.

All Exponent CMS users running at least PHP version 5.6 are encouraged to move their installations to v2.6.0 and to install this patch!! Patch #2 to v2.6.0 is found at https://sourceforge.net/projects/exponentcms/files/exponent-2.6.0-patch-2.zip/download

v260patch2 adds these features to v260 and previous patches:

  • updates support for Twitter Bootstrap v5.0 final (requires BS5 addon)
  • add Bootstrap Icons option for Bootstrap5 framework (requires BS5 addon)
  • add responsive bootstrap framework maintenance view
  • allow custom (theme) administration views (_maintenance, _msg_queue, etc...)
  • allow custom (theme) billing and shipping calculators (ecommerce)
  • change db definition processing to prioritize custom (theme) definitions
  • allow for optional loading of jquery migrate v3 (default is to load)
  • add json data preview to adminer db manager
  • add bootstrap styles to ckeditor in sample bootstrap themes
  • add location based upcharges to flatrate, peritem, perweight, & tablebased shipping calculators
  • activate parser caching in less & scss stylesheet compilers
  • initial support for php v8.1
  • update ecommerce dashboard to add 'last month' as new default period
  • add optional support for Kint v4.0 enhance debugger output

v260patch2 fixes these issues in v260 and previous patches:

  • regression fix shipping option price list mislisted prices over $1,000
  • regression fix bootstrap message queue views (allows responsive maintenance views)
  • regression fix some passwords too long to store in db table
  • regression fix several Bootstrap 5 issues (requires BS5 addon)
  • regression fix forms not saving/viewing selected report columns
  • fix possible sql injection vulnerability reported by pang0lin
  • regression fix edit discounts date zeroization
  • autoprefixer support was not fully implemented/coded
  • regression fix radiogroups to select the first radio (0 value) when set
  • regression fix attempting to edit/configure category within product edit fails
  • fix possible Host Header Injection vulnerability reported by dumpling-soup CVE-2021-38751
  • fix mysqli driver to work with MySQL v8 '`rank`' keyword
  • regression fix file upload control and edit form image display issues

v260patch2 updates these 3rd party libraries in v260 and previous patches:

  • jQuery to v3.6.0
  • jquery-migrate to v3.3.2
  • fontawesome to v5.15.4
  • Swiftmailer to v6.3.0
  • Emailvalidator to v3.1.2
  • elfinder to v2.1.60
  • tinymce5 to v5.10.2
  • ckeditor to v4.17.1
  • plupload to v2.3.9
  • EasyPost v4.0.2
  • adminer db manager to v4.8.1
  • code snippet codemirror editor cdn to v5.65.0
  • code snippet ace editor cdn to v1.4.13
  • scssphp to v1.9.0
  • sortable.js to v1.14.0
  • jquery datatables to v1.11.3
  • jquery datatables.checkboxes.js to v 1.2.13
  • jstree to v3.3.12
  • getid3 to v1.9.21
  • jqueryui to v1.13.0
  • mediaelement to v5.0.4 & mediaelement-plugins to v2.6.2
  • smarty to v4.0.0
  • class.upload.php to v2.1.0
  • bootstrap/bootswatch to v4.6.1
  • simplepie to v1.5.8
  • php xmlrpc to v4.6.0