Skip to content
Snippets Groups Projects
Release.rst 138 KiB
Newer Older
Carsten  Rose's avatar
Carsten Rose committed
.. ==================================================
.. ==================================================
.. ==================================================
.. Header hierarchy
Carsten  Rose's avatar
Carsten Rose committed
.. ==
..  --
..   ^^
Carsten  Rose's avatar
Carsten Rose committed
..     ;;
..      ,,
..
.. --------------------------------------------used to the update the records specified ------
.. Best Practice T3 reST: https://docs.typo3.org/m/typo3/docs-how-to-document/master/en-us/WritingReST/CheatSheet.html
..             Reference: https://docs.typo3.org/m/typo3/docs-how-to-document/master/en-us/WritingReST/Index.html
Carsten  Rose's avatar
Carsten Rose committed
..
.. Italic *italic*
.. Bold **bold**
.. Code ``text``
Carsten  Rose's avatar
Carsten Rose committed
.. External Links: `Bootstrap <http://getbootstrap.com/>`_
.. Internal Link: :ref:`downloadButton` (default url text) or :ref:`download Button<downloadButton>` (explicit url text)
Carsten  Rose's avatar
Carsten Rose committed
.. Add Images:    .. image:: ./Images/a4.jpg
..
.. Admonitions
..           .. note::   .. important::     .. tip::     .. warning::
.. Color:   (blue)       (orange)           (green)      (red)
..
.. Definition:
.. some text becomes strong (only one line)
..      description has to indented

Carsten  Rose's avatar
Carsten Rose committed
.. -*- coding: utf-8 -*- with BOM.


.. include:: Includes.txt

.. _release:

Release
=======

Carsten  Rose's avatar
Carsten Rose committed
Version 23.x.x
Carsten  Rose's avatar
Carsten Rose committed
Notes
^^^^^
Carsten  Rose's avatar
Carsten Rose committed
Features
^^^^^^^^

Bug Fixes
^^^^^^^^^
Carsten  Rose's avatar
Carsten Rose committed

Version 23.10.1
---------------

Date: 22.10.2023

Notes
^^^^^

Features
^^^^^^^^

* #15098 / Implemented qfqFunction in QFQ variable for usage in forms.
* Doc: Replace many places single back tick by double back tick. Add hint for 'Row size too large'.  Added Enis & Jan
  as Developer. Add hint use mysqldump with one row per record.

Bug Fixes
^^^^^^^^^

* #17003 / inline edit - dark mode has wrong css path.
* #17075 / Fix broken '... AS _restClient'.
* #17091 / upload_Incorrect_integer_value_fileSize.
* RTD: Fix broken readthedocs rendering.

Carsten  Rose's avatar
Carsten Rose committed
Version 23.10.0
---------------

Date: 05.10.2023

Features
^^^^^^^^

* #16350 / QFQ Table 'FormSubmiLog': update recordid after insert.
* #16350 / sql.log: reference to FormSubmitLog entry. All SQL statements generated by one HTTP Post (Form Submit) can
  be identified.
* #16350 / Do not log Dirty.
* #16350 / If the T3 instance is behind a proxy, log HTTP_X_REAL_IP instead of REMOTE_ADDR in logfiles.
* #16584 / FormEditor Report: Default without statistics.
* #16589 / Implemented language configuration in backend for tt-content type qfq.
* #16798 / Report inline edit v2. Improved search inside inline edit report. Whole content will be searched. Added
  ability to switch the editor to dark mode.
* Doc: Refactor description of {{random:V}}.
* Doc: Add config option 'protectedFolderCheck'.

Bug Fixes
^^^^^^^^^

* #16573 / Fixed wrong built date and datetime string if default value was given.
* #16574 / Added multiple siteConfigurations compatibility for typo3 v10 and 11.
* #16616 / Fixed typeahead api query response problem if typeahead sql is not used.
* #16664 / Fix multi db user error.
* #16975 / Fix problem if a 'Form Submit' contains more than 64kB data. This can happen easily for 'fabric' elements.

Carsten  Rose's avatar
Carsten Rose committed
Version 23.6.4
--------------

Date: 26.06.2023

Bug Fixes
^^^^^^^^^

* #16485 / TypeAhead: strpos() string, array given error.
* #16488 / Missing default values break saving records. New custom FE.parameter.defaultValue.
* #16491 / FE Typ Upload - JS failure: document.querySelector() is null.

Carsten  Rose's avatar
Carsten Rose committed
Version 23.6.3
--------------

Date: 22.06.2023

Bug Fixes
^^^^^^^^^

* #16478 / Rest API: Fixed stream_get_contents failure in PHP8.1 Generic Error.

Carsten  Rose's avatar
Carsten Rose committed
Version 23.6.2
--------------

Date: 21.06.2023

Bug Fixes
^^^^^^^^^

* #16475 / Spontaneous spaces in HTML emails.
* #16476 / SQL columns Text/Blog with default empty string becomes "''"


Carsten  Rose's avatar
Carsten Rose committed
Version 23.6.1
Carsten  Rose's avatar
Carsten Rose committed
--------------

Carsten  Rose's avatar
Carsten Rose committed
Date: 16.06.2023
Carsten  Rose's avatar
Carsten Rose committed
* QFQ is Typo3 V11 compatible

Bug Fixes
^^^^^^^^^

* #16372 / Upload Element 'Undefined index htmlDownloadButton' und 'unknown mode ID'
Carsten  Rose's avatar
Carsten Rose committed
* #16381 / Form title dynamic update broken.
* #16392 / Reevaluate sanitize class for each store.
* Fix db column enum dropdown 'data truncated'
* DB Update 'alter index' pre check if exists
* FE: Upload - fix undefined index.

Version 23.6.0
--------------

Date: 09.06.2023

Carsten  Rose's avatar
Carsten Rose committed
Features
^^^^^^^^

* Typo3 V11 compatible
Carsten  Rose's avatar
Carsten Rose committed
* #9579 / Multiform with Process Row.
* #15770 / httpOrigin: Parameter missing in QFQ Config.
* #16285 / PHP V8 Migration.
* #16364 / T3 >=V10 pageSlug and ForwardPage.
* Add .phpunit.result.cache to .gitignore.
* Add bullet-orange.gif.
* Add index createdFeUserFormId to table FormSubmitLog.
* Doc: Add link to icons. Update use-case self-registration and add info in case of namesake. Unify word 'spam' to 'junk'.
  Add bootstrap links.
* Remove Form/FormElement parameter 'feGroup'.
* QFQ Typo3 Updatewizard: Sort output by page and tt-content ordering. Add page uid an title to be reported.
  Inline Edit: add tt_content uid and header as tooltip.
* Update package.json.
* Update to PHPUnit version 9.

Bug Fixes
^^^^^^^^^

* #12468 / Form: Dynamic Update Form.title after save.
* #14636 / 'Clear Me'-cross lighter and 2 px up.
* #15445 / Doc: JS Output Widged added.
* #15497 / Delete link: a) broken for 'table', b) broken with 'r:3'.
* #15527 / Form/subrecord: class 'qfq-table-50' no impact.
* #15654 / Form FE required 'Undefined index Error'.
* #15659 / Multi Form: Datetime Picker not aligned.
* #15691 / T3 V10: Export PDF (PDF Generator) invalid link causes error.
* #15726 / Formelement upload stays required when changed from required to hidden.
* #15729 / Form: text readonly input should show newline as '<br>'.
* #15747 / Typeahead does not work with special character. Added croatian special chars (Ć,ć,Č,č,Đ,đ,Š,š,Ž,ž) to alnumx
  whitelist.
* #15763 / Search/Refactor: a) search for ID, b) message if nothing is found - New highlighting for disabled content.
  Added output for not found in search.
* #15773 / TypeAhead missing check type warning.
* #15813 / Pressing 'Enter' in Form asks: Do you really want to delete the record?
* #15875 / Unecessary qfq-config save.
* #15905 / FE type time undefined index.
* #15913 / Refactor: Footer displayed at the wrong place.
* #15921 / Frontend edit Report Codemirror resizeable.
* #16004 / Template Group Fields broken.
* #16046 / Datepicker not initialized in Template Group.
* #16051 / Dropdown menu: Download file broken with ZIP File.
Carsten  Rose's avatar
Carsten Rose committed
* #16055 / Dropdown option with render mode 3 format problem.
Carsten  Rose's avatar
Carsten Rose committed
* #16064 / Dynamic Update Checkbox and Form Store in parameter.
* #16073 / saveButtonActive is disabled after first save.
* #16201 / Character Count Class Quotation Mark.
* #16204 / TypeAhead Prefetch Expects String Array Given.
* #16228 / extraButtonPassword unhide broken.
* #16264 / Multi DB Broken since QFQ V23.2.0.
* #16273 / TinyMCE image upload path incorrect for T3 v10 and upwards.

Carsten  Rose's avatar
Carsten Rose committed
Version 23.3.1
--------------

Date: 31.03.2023

Bug Fixes
^^^^^^^^^

* #15920 / QFQ variable evaluation broken: wrong variable name

Carsten  Rose's avatar
Carsten Rose committed
Version 23.3.0
--------------

Date: 30.03.2023

Carsten  Rose's avatar
Carsten Rose committed
* #15491 / Search refactor redesign and T3 V10 compatiblity: underscore character, counter fixed, page alias and slug handling.
* #15529 / Form/subrecord: Design Titel / Box.
* #15570 / Changed DB handling in class FormAction. Fixed multi-db problem with this. Included change for check of
  existing form editor report.
* #15579 / Ability for searching all possible characters, includes not replaced QFQ variables.
* #15627 / Added character count and maxLength feature for TinyMCE.
* Add various icons to documentation.
* Doc Form.rst: reference 'orderColumn'.
* Doc Report.rst: fix typo, add icons, improved example for tablesorter.
* Add indexes for table FormSubmitLog.
* FormEditor: Show Tablename in pill 'table definition'.
* FormEditor: FE subrecord > show container id below name.
Carsten  Rose's avatar
Carsten Rose committed
Bug Fixes
^^^^^^^^^

Carsten  Rose's avatar
Carsten Rose committed
* #14754 / Using double quotes in tableview config caused sql error.
* #15483 / Protected folder check fixed. Changed default of wget, preventing errors. Changed handling from protected
  folder check, new once a day.
* #15521 / FormEditor assigns always container, even none is selected. Change handling of form variables from type select,
  radio and checkbox. Expected 0 from client request instead of empty string.
* #15523 / Search/Refactor broken for Multi-DB.
* #15626 / Multi-DB: FormEditor save error.
Carsten  Rose's avatar
Carsten Rose committed
Version 23.2.0
--------------

Date: 05.02.2023

Notes
^^^^^

Carsten  Rose's avatar
Carsten Rose committed
* QMANR, QMARK: new SQL prepared function to format Swiss Matrikelnumbers and mark found text.
* Refactoring: Search form to support refactoring. Search over tables FormElement,Form,tt_content,pages.
  On T3 page 'form', replace `file=_formEditor` by `file={{file:SU:::_formEditor}}`
Carsten  Rose's avatar
Carsten Rose committed

Features
^^^^^^^^

Carsten  Rose's avatar
Carsten Rose committed
* #7650 / For FormElement which are required: `indicateRequired=0|1` show or hide the 'required asterix'.
* #10013 / FormEditor: Several textarea inputs changed to 'editor' incl. SQL syntax highlighting.
* #14995 / Support for refactoring: search in QFQ Form/FormElement and Typo3 pages/tt-content tables.
* QMANR: SQL prepared function to format Swiss Matrikelnumbers
Carsten  Rose's avatar
Carsten Rose committed

Bug Fixes
^^^^^^^^^

Carsten  Rose's avatar
Carsten Rose committed
* #7899 / Fe.type=password / retype / required: always complain about missing value - bug has been fixed earlier.
* #8668 / Fix that if a pill becomes disabled, child FE should not respected during save.
* #15168 / Fixed language form save problem for t3 v >= 9.
* #15420 / TypeAhead Prefetch triggers 'form changed' after save.
* #15482 / Added missing password font file.
Carsten  Rose's avatar
Carsten Rose committed
Version 23.1.1
--------------

Date: 22.01.2023

Notes
^^^^^

 * Additional option to dynamically fill the STORE_SYSTEM: fillStoreSystemBySqlRow

Features
^^^^^^^^

Carsten  Rose's avatar
Carsten Rose committed
* #11980 / check protected folder for access from outside after new qfq installation or update.
* #13566 / Cleanup: Delete config-example.qfq.php
* #15053 / New dynamic QFQ config option: fillStoreSystemBySqlRow.
* Update SANITIZE_ALLOW_EMAIL_MESSAGE to be more generic: 'Invalid email format'
* Update Documentation/Form.rst: Added QFQ Function QMANR(manr),  broken ref to restAuthorization, fixed typos.
* Update copyright year
Carsten  Rose's avatar
Carsten Rose committed

Bug Fixes
^^^^^^^^^

Carsten  Rose's avatar
Carsten Rose committed
* #2665 / Fixed not working dynamic update with tinymce and codemirror. Improved frontend edit visualization, elements in window will be resized automatically.
* #11517 / Fixed Bug not showing extraInfoButton on certain FormElements like: TextArea, Select, Checkbox, Radio, Upload, Editor.
* #12066 / Form: Enter as submit forward not working.
Carsten  Rose's avatar
Carsten Rose committed
Version 23.1.0
--------------

Date: 05.01.2023

Features
^^^^^^^^

Carsten  Rose's avatar
Carsten Rose committed
* #6250 / Enhance layout subrecord.
* #10003 / Fieldset: stronger visualize group.
* #15036 / FormElement subrecord summary additional row(s).
* #15154 / FormElement input check via regexp: trim whitespace before regexp.
Carsten  Rose's avatar
Carsten Rose committed

Bug Fixes
^^^^^^^^^

Carsten  Rose's avatar
Carsten Rose committed
* #14305 / Bug "No form found with this id".
* #14997 / Tablesorter: Filter value shown but no effect after 'Browser Back'
* #15191 / Broken datepicker in template group.
* #15214 / Inline report save history.
* #15229 / Typeahead and qfq-clear-me will be initialized after adding new fields.
* #15230 / Set own button class for dropdown.
* #15314 / FE & BE Email now filled in 'sipForTypo3Vars' and therefore available in API calls.
* #15316 / config.baseUrl might be overwritten if no scheme or multiple urls are given.
* Doc: Fix missing ! in doc: sqlValidate. Fix index undefined htmlAllow. Fix filemtime() Warning.
* Fixed date to datetime convert bug.
* Fixed error coming from typeahead when array is empty.
Carsten  Rose's avatar
Carsten Rose committed
Version 22.12.1
---------------

Date: 18.12.2022

Notes
^^^^^

* New Button Sizes: btn-tiny, btn-small.
* Caching for on the fly rendered files (PDF, Excel, ZIP).
Carsten  Rose's avatar
Carsten Rose committed
* Inline Report edit saves history to T3.

Features
^^^^^^^^

Carsten  Rose's avatar
Carsten Rose committed
* #5715 / Caching for on the fly rendred files (PDF, Excel, ZIP).
* #6250 / Enhance form layout: a) Subrecord, b) Subrecord-Title
* #9927 / Do QFQ Update (config, table defintion) only if there is a BE user logged in the current session.
* #12503 / Detect likely unwanted UPDATE statement with missing WHERE.
* New Button Sizes: btn-tiny, btn-small
Carsten  Rose's avatar
Carsten Rose committed

Bug Fixes
^^^^^^^^^

Carsten  Rose's avatar
Carsten Rose committed
* #14305 / Inline Report edit saves history to Typo 3.
* #14506 / Tablesorter: after form close, already defined filter criteria in tablesorter will be applied.
* #15188 / Clean up config to T3 parameter.
* #15193 / No form found with this id error in MultiDB Setup.
* #15206 / Form Save: Internal Error in MultiDB Setup.
* Fix Doc: latest CCS/JS includes.
Carsten  Rose's avatar
Carsten Rose committed
Version 22.12.0
Carsten  Rose's avatar
Carsten Rose committed
---------------
Carsten  Rose's avatar
Carsten Rose committed

Date: 11.12.2022

Notes
^^^^^

* Customable list of FE names that won't be logged to SubmitFormLog. Default is 'password'. List of FE can be customized
  per QFQ installation and/or per form.
* Subrecord:

  * Dynamically computed 'new' button in subrecord: FE.parameter.new. Use regular `... AS _link` syntax.
Carsten  Rose's avatar
Carsten Rose committed
  * Per row customizeable edit and delete button. Use special column name `_rowEdit` and `_rowDelete`. Use regular `... AS _link` syntax.
Carsten  Rose's avatar
Carsten Rose committed

* Link/Tablesorter: New link qualifier `|Y:...` which is invisible to the user, but will be respected by tablesorter and filter.
* Link: Text before and/or after a link - `|v:...|V:...`. Example: if fbeg/fend (</td>) is used and there should be more
  than one link inside::

    'p:{{pageAlias:T}}|t:Reload 1|v:<td>Some text before |V: - ' AS '_link|_noWrap',
    'p:{{pageAlias:T}}|t:Reload 2|V:</td>' AS '_link|_noWrap'

* QFQ Config option: forceSmtpSender - force sendmail to use specified sender address.

Features
^^^^^^^^

* #8187 / Subrecord: Dynamically computed subrecord 'new' button. Per row customizeable edit and delete button.
* #11892 / Link/Buttons in HTML table column sort/filterable via tablesorter. Qualifier 'Y:...'.
* #13945 / Link/Buttons: Text before and after link.
* #14320 / TinyMCE: htmlAllow parameter - client and  serverside check. Removes not allowed html tags.
* #15075 / New QFQ config sendmail configuration: forceSmtpSender
* #15111 / Special column name: _saveZip. Save zip on server.
* Documentation-develop/*.md: CONFIG.md, Reformat
* Fix undefined index in SendMail.php. Show message 'forceSmtpSender is active' in catch all mail. Skip forcing sender
  address in redirectAll mode.


Bug Fixes
^^^^^^^^^

* #8891 / doNotLogColumn: list of FE.name in qfq config and/or form parameter. Value of such column will be logged as
  '*hide in log*'. List default is 'password'.
* #13716 / Mask typed password: Added new (local) font file.
* #14245 / After change via datetimepicker form save button keeps disabled.
* #14303 / Datetime broken with picker
* #14323 / Render mode: Fixed unit test.
Carsten  Rose's avatar
Carsten Rose committed
* #15013,#15014 / (Again) Excel Import: fix import of regions.
Carsten  Rose's avatar
Carsten Rose committed
* #15026 / Multiple checkbox dynamic update not working correctly.
* #15027 / Excel Export error when BE user is logged in.
* #15028 / Encryption with special column name broken.
* #15079 / Dynamic Update / Readonly: lost value
* #15090 / typeahead: fixed bug with given empty array.
* #15091 / Hidden FormElement: After save, value in typeahead input will be refreshed with actual data. Usability
  of processReadOnly is given even when dynamic update is active. Jquery serialize caused problems with checkbox setup.

Carsten  Rose's avatar
Carsten Rose committed
Version 22.11.0
---------------

Date: 27.11.2022

Features
^^^^^^^^

 * #15075 / sendmail: special option forceSmtpSender

Bug Fixes
^^^^^^^^^

Carsten  Rose's avatar
Carsten Rose committed
* #11325 / SQL CALL() - insert() and select() should be supported now.
* #14622 / FormElement `unexpected error` on save.
* #15005 / TypeAhead Dynamic Update Mode Hidden to Required
* #15014 / Excel import broken if multiple regions defined.
* #15048 / STORE_USER broken.
Carsten  Rose's avatar
Carsten Rose committed
Version 22.10.1
---------------

Date: 24.10.2022

Notes
^^^^^

Carsten  Rose's avatar
Carsten Rose committed
* Migration of existing Typo3 V9 to V10: Check #12584, #12440
Carsten  Rose's avatar
Carsten Rose committed

Features
^^^^^^^^

Carsten  Rose's avatar
Carsten Rose committed
* #12584, #12440  / Typo3 V10 Migration Script Replace Alias Patterns
* #14738 / Datetimepicker: verify various setups
* #14802 / DateTime own class and unit tests
* Add doc to table vertical column via CSS,
* Add qfq-badge-* to doc
Carsten  Rose's avatar
Carsten Rose committed

Bug Fixes
^^^^^^^^^

Carsten  Rose's avatar
Carsten Rose committed
* #14618 / Changed logic behind getting first value from array (check for typeahead array was already given but was
 placed after the checkForEncryptedValue function). No exception possible. Function name changed to generic. Added new
 function is_multi_array to check if array is multidimensional and return true or false.
* #14736 / Datetimepicker: FormElement.parameter.dateFormat - required.
* #14755 / Fix for typeahead problem in t3 v9 and higher. Typeahead url will be setup same as save.php. Results to an absolute path.
* #14813 / Report: dbIndex - missing per level definition
* #14844 / Fixed bug of no working dynamic update and empty output in Form Store with Datetimepicker.
* #14857 / String expected, array given.
* #14885 / Fabric zoom problem.
Carsten  Rose's avatar
Carsten Rose committed
Version 22.10.0
---------------

Date: 04.10.2022

Notes
^^^^^

Carsten  Rose's avatar
Carsten Rose committed
* TinyMCE Feature "upload images via drag'n'drop" now supported.
Carsten  Rose's avatar
Carsten Rose committed

Features
^^^^^^^^

Carsten  Rose's avatar
Carsten Rose committed
* #14813 / Report: dbIndex - missing per level definition
* #12474 / Check BaseConfigURL if it is given and the the last char is '/'
* #12452 / baseUrl: add automatically '/' at end
* #10782 / Tiny MCE: Image Upload & Image drag'n'drop
Carsten  Rose's avatar
Carsten Rose committed

Bug Fixes
^^^^^^^^^

Carsten  Rose's avatar
Carsten Rose committed
* #14803 / MultiDB (different DB hosts): broken 'show table definition' in FormEditor -
* #14791 / datetimepicker: undefined index: timeParts[2]
* #14619 / Added note to missed bug fix.
* #12630 / Added code commentary. Reformatted code. getUniqueFileName function changed. New logFileMessages implemented.
* #14463 / llow statusbar (resize button included) to show as default.
* #14455 / Drag and drop triggers record lock.
* #13818 / htmlspecialchars_decode() - expects parameter 1 to be string, array given
Carsten  Rose's avatar
Carsten Rose committed
Version 22.9.2
--------------

Date: 22.09.2022

Features
^^^^^^^^

Carsten  Rose's avatar
Carsten Rose committed
* #12630 / dateTimePicker refactored. Mode: 'qfq', 'browser', 'no'. Default: 'qfq'
* Add release notes to update UZH CD to latest version and to remove QFQ JS/CSS includes from custom typoscript template.
Carsten  Rose's avatar
Carsten Rose committed

Bug Fixes
^^^^^^^^^

Carsten  Rose's avatar
Carsten Rose committed
* #14619 / dateTimePicher: missing popup on first click, record not dirty
Carsten  Rose's avatar
Carsten Rose committed
Version 22.9.1
--------------

Date: 18.09.2022

Notes
^^^^^

In 22.5.0 CodeMirror has been implemented for Report editing in the front end. QFQ delivers now the minimized Javascript
version too. Please check http://docs.qfq.io/en/master/Installation.html#setup-css-js for updated JS includes.

T3 extension 'UZH_CD' should be updated to latest version >=22.09.18!

Attention: since 22.09.07 UZH_CD includes all JS/CSS (exception: fabric). Remove all QFQ standard JS/CSS includes
like datetimepicker, codemirror, ... from your typoscript template(s).


Carsten  Rose's avatar
Carsten Rose committed
Features
^^^^^^^^

Carsten  Rose's avatar
Carsten Rose committed
* #14616 / Fabric updated to version 5. Annotation of images should now be supported again by modern browsers.
Carsten  Rose's avatar
Carsten Rose committed
* #10011,#10012 / RedirectAllMailto: optionally dynamically set by current logged in FE or BE User.
Carsten  Rose's avatar
Carsten Rose committed
* #14718 / Added prepared MySQL statement: QLEFT(), QRIGHT().
* #14635 / Add comment to update /etc/ImageMagick-6/policy.xml in case of 'convert-im6.q16: no images defined'.
* #9052 / Report: CodeMirror with SQL Syntax Highlight in FE - minimized JS versions.
* #T3 QFQ extension config: change 'enter-as-submit' from string to boolean.
Carsten  Rose's avatar
Carsten Rose committed

Bug Fixes
^^^^^^^^^

Carsten  Rose's avatar
Carsten Rose committed
* #12452 / T3 QFQ extension setup: Fixes broken string in doc for 'baseUrl'.
Carsten  Rose's avatar
Carsten Rose committed

Carsten  Rose's avatar
Carsten Rose committed
Version 22.9.0
--------------

Carsten  Rose's avatar
Carsten Rose committed
Date: 04.09.2022
Carsten  Rose's avatar
Carsten Rose committed

Features
^^^^^^^^

* Report.rst: Add description details to tablesorter view saver. Fix Typo QESC_SQUOTE.

Bug Fixes
^^^^^^^^^

Carsten  Rose's avatar
Carsten Rose committed
* #14660 / Tablesorter View Saver: Broken in Multi-DB Setup
* #14622 / Temp workaround for broken exception - Encrypt/Decrypt detection.
Carsten  Rose's avatar
Carsten Rose committed

Carsten  Rose's avatar
Carsten Rose committed
Version 22.8.1
--------------

Date: 28.08.2022

Features
^^^^^^^^

* #9221 / If FE_TYPEAHEAD_LDAP or FE_TYPEAHEAD_SQL is set, skip forcing maxlength to table column definition. Instead
  use custom supplied value.
* Minor update form 'FormElement'
* Refactor $buildElementFunctionName: remove indirect function calls from AbtractBuildForm.php to simplify debugging.
* Extend Support::getColumnSize with further MariaDB column type sizes
* Extension config description baseUrl: updated.

Bug Fixes
^^^^^^^^^

* #14618 / string expected, null given.
* #14611 / MultiDB: broken 'show table definition' in FormEditor. Add pill 'Table Definition' to form FormElement.
* #14590 / emptyTypeAheadRequest'.
* #9281 / QFQ system tables: Allow STRICT_TRANS_TABLES - Default '0' is now set for all INT columns. DB-Update will
  change column definition. TEXT columns still don't have a default: Before MariaDB 10.2.1, BLOB and TEXT columns could
  not be assigned a DEFAULT value. This restriction was lifted in MariaDB 10.2.1.
* Removed empty typeahead request at the beginning

Carsten  Rose's avatar
Carsten Rose committed
Version 22.8.0
--------------

Date: 22.08.2022

Notes
^^^^^

* Add Enis Nuredini as developer.

Features
^^^^^^^^

* #11262 / stored Procedure: QNBSP - replace space by '&nbsp;'.
* #14270 / FormEditor: add pill 'Table Definition'.
Carsten  Rose's avatar
Carsten Rose committed
* #14321 / Remember last used pill: on/off via QFQ config or per form.
* #14588 / FormEditor: Remove bell for debugging Form/Session mode.
Carsten  Rose's avatar
Carsten Rose committed
* FormEditor: Column fe.mode shows now fe.modeSql by default. If empty, fe.mode will be shown.
* QFQ_Encrypt_Decrypt - pre version - not finalized.

Carsten  Rose's avatar
Carsten Rose committed

Carsten  Rose's avatar
Carsten Rose committed
Bug Fixes
^^^^^^^^^

* #4018 / Typeahead Attack Detected: Implement renamed keywords _ta_query, _ta_prefetch. Fix broken detection of typeahead mode.
* #13689 / Enter auf Eingabefeld mit ungültigem Wert führt zu blurry Seite.
* #14288 / Upload: removed upload + save > triggers general error.
* #14291 / Doc minor fix: Upload Doku table broken.
* #14292 / Upload: mode=required broken for advanced upload (non primary column) after first save.
* #14302 / Doc minor fix. SanitizeTest.php: minor const replacement.
* #14587 / Use case: Self Registration - table definiton broken in doc: Changed Table Person, to include index and
  auto increment + authExpire default Null.
* SYSTEM_SECURITY_GET_MAX_LENGTH: take care that minimum is 32.
* Update Release.rst and Installation.rst: add missing Codemirror.css|js
* RestClient undefined array element fix.

Carsten  Rose's avatar
Carsten Rose committed
Version 22.5.0
--------------

Carsten  Rose's avatar
Carsten Rose committed
Date: 16.05.2022
Please update your CSS and JS (T3 Main Template > Setup) to include the new DateTime Picker. Forms cannot save if the JS files are missing::

  page.includeCSS.file08 = typo3conf/ext/qfq/Resources/Public/Css/bootstrap-datetimepicker.min.css
  page.includeCSS.file09 = typo3conf/ext/qfq/Resources/Public/Css/codemirror.css
  page.includeJS.file14 = typo3conf/ext/qfq/Resources/Public/JavaScript/moment.min.js
  page.includeJS.file15 = typo3conf/ext/qfq/Resources/Public/JavaScript/bootstrap-datetimepicker.min.js
  page.includeJS.file16 = typo3conf/ext/qfq/Resources/Public/JavaScript/codemirror.min.js
  page.includeJS.file17 = typo3conf/ext/qfq/Resources/Public/JavaScript/code-mirror-mode/sql/sql.min.js
Carsten  Rose's avatar
Carsten Rose committed
Features
^^^^^^^^

* #9052 / Report frontend editing: CodeMirror with syntax highlight.
* #10096 / Date time picker.
* #10782 / TinyMCE: image upload via drag'n'drop. 'fileUploadPath=fileadmin/...'.
* #13440 / Form: remember last used pill in localstore.
* #13543 / System - base url: multiple base url can be configured.
* #13562 / System - base url: if not set, set base url.
Carsten  Rose's avatar
Carsten Rose committed
* #13572 / Form Load: better error message on try to load non existent record.
* #13581 / Copy to clipboard: small animation on icon.
* #13657 / Added two new twig report files to system: FormEditorTwig and autoCronTwig.
* #13679 / tablesorter/subrecord: view-saver added.
* #13788 / Date time picker: selectable weekdays.
* Update / doc: datetimepicker requires moment.js - put it in example code before datetimepicker.
* Update / QFQ config note to baseUrl.
* Skip selenium to speed up.
* Move Marc Egger to further contributor.

Bug Fixes
^^^^^^^^^

* #9520 / Button Save inside form.
* #10646 / typeAhead: maxLength by default 512.
* #11134 / Set samesite header for cookies.
* #11325 / SQL CALL is handled seperate. All statements will execute. If only a SELECT statement is used in PROCEDURE then the output will shown, otherwise not.
* #13658 / qfq.json: remove world readable.
* #12483 / qfq.json - Doc: update all references of config.qfq.php to qfq.json
Carsten  Rose's avatar
Carsten Rose committed
* #12484 / config.render: old Both, new: Single.
* #13084,9724 / Dropdown list on iOS not clickable.
* #13527 / Form Multi: by default set r=0.
* #13677 / FormEditor: Preview disabled if 'new.required' is given.
* #13722 / Detect and fix pdfunite problems "Gen inside xref table too large (bigger than INT_MAX)" via pdf2ps, ps2pdf.
* #13767 / Date time picker: up down button better design if required.
* #13827 / Date time picker should not offer user credentials (like username / password).
* #13751 / Date time picker dynamic update aware.
Carsten  Rose's avatar
Carsten Rose committed
* #13797 / Checkbox: dynamic update (single and multi) fixed.
* #13818 / typeahead: fix for key/value problem: expects parameter 1 to be string, array given.
* #13842 / Broken SIP: wkhtml and qfqpdf.
Carsten  Rose's avatar
Carsten Rose committed
* #13933 / Broken SIP: exception handling buggy.
* #13860 / Safari: broken typeahead input.
Carsten  Rose's avatar
Carsten Rose committed

Carsten  Rose's avatar
Carsten Rose committed
Version 21.12.0
--------------

Date: 13.12.2021

Notes
^^^^^

* New HTML to PDF renderer: puppeteer. Wrapped and used by qfqpdf. Solves various JS and CSS problems of wkhtml. Install:

    mkdir /opt/qfqpdf; cd /opt/qfqpdf
    curl -L -o qfqpdf https://www.math.uzh.ch/repo/qfqpdf/current/qfqpdf-linux
    chmod a+x qfqpdf

* Module php-curl not needed anymore - has been replaced by php-stream.

Features
^^^^^^^^

* #4812 / Subrecord - check for reserved Typo3 keywords (id, type, L) and throw exception.
* #10145 / Typeahead Min Length = 0 is now possible.
* #10715 / qfqpdf (puppeteer).
* #13113 / Rewrite REST Client as php stream, add contentFile option.
* #13242 / Apply given sanitize class to all defined stores.
* #13330 / Multi Form: Upload.
* #13333 / Option: Switch off attack detect.
* #13496 / TinyMCEfontselect - Fontselect and fontsize are removed from the default configuration.
* #12511 / Typo3 Store: new variables.
* #13526 / QFQ tablesorter: Rename 'private view' to 'personal view' and 'public view' to 'group view'.
* #12541 / Page and link without pageAlias.

Bug Fixes
^^^^^^^^^

* #3446 / Unknown permission mode: 'logged_in'
* #9268 / SELECT with outer brackets not recognized as SELECT
* #13030 / Max length cuts - line endings \r\n has been counted as two chars. During input they are counted as 1 and
Carsten  Rose's avatar
Carsten Rose committed
  therefore on data load the string has been cutted.
Carsten  Rose's avatar
Carsten Rose committed
* #13139 / Tablesorter: some elements are in front of a sticky title row
* #13507 / QFQ function should work without 'sql='
* #13525 / makefile adjusted for multiple users


Carsten  Rose's avatar
Carsten Rose committed
Version 21.6.0
--------------

Carsten  Rose's avatar
Carsten Rose committed
Date: 29.06.2021
Carsten  Rose's avatar
Carsten Rose committed

Notes
^^^^^

* For full image HEIC/HEIF support, please install package ``libheif-examples``.

Features
^^^^^^^^

Carsten  Rose's avatar
Carsten Rose committed
* #8945 / Best practice `self-registration`_
Carsten  Rose's avatar
Carsten Rose committed
* #12551 / Add QFQ bootstrap diagram
Carsten  Rose's avatar
Carsten Rose committed
* #12615 / Implements silent HEIC/HEIF conversion to png.
Carsten  Rose's avatar
Carsten Rose committed
* #12636 / New FormElement.encoding = 'single tick'
* Form.rst: Update doc of Multi-Form

Bug Fixes
^^^^^^^^^

* #12701 / Bug 'spaces in mails'. Replaces '<br>' by '<br>\r\n'
* #9371 / MultiSQL now accepts `_id` too.
* #12674 / QFQ Function subheader: skip deleted
* Remove keySemId and keySemIdUser - outdated / deprecated since 0.19.0 (pre 09.2017)
* Download.php: Fix broken variable $this->$downloadDebugLog.

Carsten  Rose's avatar
Carsten Rose committed
Version 21.5.1
Carsten  Rose's avatar
Carsten Rose committed
Date: 17.05.2021

Notes
^^^^^

* The `log` directory was moved into the `qfqProject` directory in version 21.2.0 for new installations. But if the
  directory `fileadmin/protected/log` already exists then QFQ keeps storing logs there. This was added to release notes
  of 21.2.0 in hindsight.

Features
^^^^^^^^

Carsten  Rose's avatar
Carsten Rose committed
* #12183 / Download table as csv
* #12159 / Make url paths absolute (relative to baseUrl)

Carsten  Rose's avatar
Carsten Rose committed
* #12516 / Password Hashing Exception

Carsten  Rose's avatar
Carsten Rose committed
Version 21.5.0
--------------

Date: 02.05.2021

Features
^^^^^^^^

* CodingGuideline.rst: add Form Best practice

Bug Fixes
^^^^^^^^^

* #10505 / Drag'n'Drop broken on Multi DB Instance - all checks done
* #10754 / Clean up stale requirements.txt
* #11769 / Missing description table in Form.rst
* #12352 / Form As Json: copy via JSON in FormEditor broken.
* #12398 / Fix check required for uploads
* #12475 / During QFQ update take care that all system tables exist.
* #12479 / Remove unwrap('p-tag') for TinyMCE - currently, this breaks regular consecutive <p> tags


Carsten  Rose's avatar
Carsten Rose committed
Version 21.4.0
--------------

Date: 11.04.2021

Notes
^^^^^

* The new introduced 'Form As File' Feature in QFQ Version  21.3.* has been disabled. Instead every form can be imported
  and exported as JSON. The automatic import/export was not stable and a manual process promises less problems.

Features
^^^^^^^^

* #12015 / useAdvancedFormEditor: disable form sync using feature flag
* #12346 / Add new formJson.json to system forms
* #12345 / Update documentation of special column formJson
* REST.rst: small reformat.
* Add Test copyToClipboard
* HTTP Header: Add 'X-Api-Key'. Fix problem for token without argument name. Update doc.
* Add margin to qfq-badge
* Fix undefined clearMe
* File formEditor.sql only contains QFQ system table definitions anymore.
Carsten  Rose's avatar
Carsten Rose committed

Bug Fixes
^^^^^^^^^

* #12341 / FormSubmitLog also saves FormName (not only FormId)
* #11265 / Dropdown Menu: wrap with <p> breaks dropdown
* #12268 / Enhanced FormSubmitLog Page Sample Code
* gitlab-ci.yml: `mkdir -p ... ` suppresses warning if directory already exist. Add more descriptive message.
* docker/run_qfq_docker.sh: 'source' eines files, das nicht existiert, gibt immer einen Fehler auf stdout.
* Fix problem: /var/www/html/my/typo3conf/ext/qfq/Classes/Core/Form/FormAction.php / Line: 394 / Undefined index: saveFormJson
* extension/Classes/Core/Helper/SessionCookie.php: Index 'host' was empty


Carsten  Rose's avatar
Carsten Rose committed
Version 21.3.2
--------------

Date: 22.03.2021

Features
^^^^^^^^

* #9528 / Implement option 'clearMe' to show a small X in input & textaera fields per FormElement, per Form or global.

Bug Fixes
^^^^^^^^^

* #12015 / use Advanced Form Editor - problem with uppercase f in Form for form name.

Carsten  Rose's avatar
Carsten Rose committed
Version 21.3.1
--------------

Date: 21.03.2021

Notes
^^^^^

* Custom QFQ Function:

  * Call QFQ function from inside a report, at any place, as often as needed. The QFQ function code will be parsed only
    one time. Variables will be replaced in time.
  * Based on QFQ function: a new download source can be specified : source:<function name>

Features
^^^^^^^^
Carsten  Rose's avatar
Carsten Rose committed

Carsten  Rose's avatar
Carsten Rose committed
* #11998 / Custom QFQ-Function
* #12015 / Use Advanced FormEditor

Bug Fixes
^^^^^^^^^

* Bug with empty Fabric string fixed

Carsten  Rose's avatar
Carsten Rose committed
Version 21.3.0
--------------

Date: 07.03.2021

Notes
^^^^^

Carsten  Rose's avatar
Carsten Rose committed
* To enforce usage of the new form-list we throw an exception on QFQ update if the line "file=_formEditor" is not
  present in any tt-content bodytext. :ref:`form-editor`.
* Persistent download links, combined with SQL based access check. :ref:`download`.
* Check new file based definition of forms :ref:`form-as-file` - this makes it easier to work in team with GIT based files.

Carsten  Rose's avatar
Carsten Rose committed
Features
^^^^^^^^

Carsten  Rose's avatar
Carsten Rose committed
* #12085 / Persistent download links.
* #12022 / New Escape class HtmlSpecialChar 'h'
* #11957 / Get European Timezone {{start:R::t}}
* #11926 / Update Form As File Documentation
* #12015 / Add formEditor as a system QFQ report and enforce formEditor existence
* #11926 / Use alternate form and report directories for phpunit (form_phpunit)
* #11953 / Logger.php: replace makePathAbsolute with Path functions
* #11931 / Report minimal required PHP version and stop, if PHP version is too low.
* #9213 / Add note for tablesorter.
* Add EV tips for tablesorter as a table in doc

Carsten  Rose's avatar
Carsten Rose committed
Bug Fixes
^^^^^^^^^

Carsten  Rose's avatar
Carsten Rose committed
* #12016 / Run Typo3 autoloader before password hashing if API request
* #5444 / Typeahead FE value is now prefetched after save.

Carsten  Rose's avatar
Carsten Rose committed
Version 21.2.0
--------------

Date: 01.02.2021

Notes
^^^^^

* The `log` directory was moved into the `qfqProject` directory in version 21.2.0 for new installations. But if the
  directory `fileadmin/protected/log` already exists then QFQ keeps storing logs there. This was added to release notes
  of 21.2.0 in hindsight.
Carsten  Rose's avatar
Carsten Rose committed
Features
^^^^^^^^

* #10286 / Download Links: Glyphicon selbst wählen/ausblenden
* #11878 / Purge extension option config.documentation
* #6793 / Source files for ZIP archives might now specified with a path/filename how they are called inside the ZIP.
* log directory was moved into qfqProject directory
Carsten  Rose's avatar
Carsten Rose committed

Bug Fixes
^^^^^^^^^

* #11925 / downloadButton Parameter 'd:Filename'
* #9355 / Increase column width header & attach
* #11865 / Form Editor exception when edited after saved
* #11798 / Use T3 password hashing API instead of hack
* #11750 / Checkbox does not work together correctly with required fields
* #11666 / PHP 7.4: Trying to access array offset on value of type int
* #11245 / If forwardMode column is set to '', set forwardMode to 'auto'

Carsten  Rose's avatar
Carsten Rose committed
Version 20.11.0
---------------

Date: 12.11.2020

Features
^^^^^^^^

* #7156 / Throw exception when a report level is defined twice.
* #11335 / Sanitize Alnumx: allow 'ß'
* #11325 / Allow SQL CALL(). Unsupported: Multiple (like query_multi()) - only the first one will be returned.
* #11269 / REST Post might return a customized answer.
* #11512 / Twig: add access to Var store
* #11118 / Uniqueness is now guaranteed in {{random:V}}
* #11513 / Add special column AS _script
* #11509 / PDF split fails for broken PDF
* #10979 / Ajax Calls an API - dataReport

Bug Fixes
^^^^^^^^^

* #11430 / phpSpreadsheet throws exception that '' is not numeric
* #10257 / Delete AS _link only worked with certain parameter order.
* #11511 / Tablesorter: fix encoding error, sanitize base64 encoding
* #11146 / Sendmail dynamic PDF broken
* #10554 / Fix extrabuttonlock also for select, radio and checkbox
* #11245 / If forwardMode column is set to '', set forwardMode to 'auto'

Carsten  Rose's avatar
Carsten Rose committed
Version 20.9.0
--------------

Date: 06.09.2020

Notes
^^^^^

Carsten  Rose's avatar
Carsten Rose committed
* New SIP protected AJAX calls.
* Report now fires calls to websocket (remote hosts).
* Report now fires REST calls to remote hosts.
Carsten  Rose's avatar
Carsten Rose committed

Features
^^^^^^^^