1. 17 Feb, 2018 2 commits
  2. 19 Nov, 2017 1 commit
  3. 02 Nov, 2017 1 commit
  4. 10 Oct, 2017 1 commit
  5. 07 Oct, 2017 1 commit
  6. 17 Sep, 2017 1 commit
  7. 09 Sep, 2017 1 commit
  8. 28 Aug, 2017 1 commit
  9. 04 Aug, 2017 1 commit
  10. 01 Aug, 2017 1 commit
  11. 09 Jul, 2017 1 commit
  12. 07 Jun, 2017 1 commit
    • Carsten  Rose's avatar
      #3863 / DB Update Fails: Expected no record, got 2 rows: SHOW TABLE STATUS WHERE Name='Form' · 7fc80c24
      Carsten Rose authored
      Introduce new config var 'DB_UPDATE' in config.qfq.ini. Update the handling, if there exist table 'form' and 'Form'.
      Manual.rst:  document the new config option DB_UPDATE.
      Database.php: Typo fixed.
      DatabaseUpdate.php: Iterate over all found 'Form' tables, take the newest version number. Respect config option DB_UPDATE. Fixed a problem: if in the PHP DB updates a newer DB Version is configured than the PHP source itself is, such updates are now not played anymore.
      Config.php, QuickFormQuery.php, config.example.ini: handle config setting DB_UPDATE.
      7fc80c24
  13. 29 May, 2017 1 commit
  14. 27 May, 2017 1 commit
  15. 20 May, 2017 2 commits
    • Carsten  Rose's avatar
      #3768 / log to sql.log: ip, formname, feuser · a7500926
      Carsten Rose authored
      Fixed
      a7500926
    • Carsten  Rose's avatar
      #3766 / SQL_LOG per tt_content record einstellbar machen · 4b0d1413
      Carsten Rose authored
      Add `sqlLog` and `sqlLogMode` to QFQ tt-content records.
      Add mode 'error' and `none` to sqlLogMode.
      Manual.rst: Added explanations for SQL_LOG, SQL_LOG_MODE, and tt-content pendants sqlLog, sqlLogMode. Update config.qfq.ini to latest attributes.
      Database.php: rename $mode to $currentQueryMode to make it more descriptive. Recode dbLog().
      Logger.php: do nothing if there is no file defined.
      Report.php: new function checkUpdateLog().
      Config.php: Set defaults for config.qfq.ini SQL_LOG and SQL_LOG_MODE
      Store.php: Fix problem that an empty SQL_LOG will be prependad with SYSTEM_PATH_EXT.
      4b0d1413
  16. 12 May, 2017 1 commit
  17. 09 May, 2017 2 commits
    • Carsten  Rose's avatar
      #3679: Automatic DB Update · d1b203dd
      Carsten Rose authored
      Fixed: unnecessary exception if there is no Form / FormElement table
      Database.php: New function playSqlFile().
      DatabaseUpdate.php: missing table Form won't throw an exception anymore.
      Manual.rst: note that formEditor.sql will be played automatically.
      d1b203dd
    • Carsten  Rose's avatar
      #3679, Automatic DB update - Schema & FormEditor · 05b32a30
      Carsten Rose authored
      For updates of QFQ prior to 0.17.0, do:   ALTER TABLE  `Form` COMMENT =  'Version=<your old QFQ version>'
      DatabaseUpdate.php, DatabaseUpdateData.php: new class.
      QuickFormQuery.php: Add DB UpdateCheck
      Database.php: moved to new subdirectory `database`. Add 'ALTER' as a new SQL command.
      FormAction.php, TypeAhead.php, Report.php, Sendmail.php, FillStoreForm.php, Store.php, AbstractBuild.php, Delete.php, Evaluate.php: Update path to Database.php.
      05b32a30
  18. 24 Apr, 2017 1 commit
    • Carsten  Rose's avatar
      Implemented new escape class 'mysql' (realEscapeString). · ba817c0e
      Carsten Rose authored
      Implemented defaultEscapeType. configurable via config.qfq.ini (global) and per Form.
      Implemented max GET parameter lenght. Default: 50. BTW: in phpunit test there have been a parameter 'file' which exceeds the limit of 32.
      
      Config.qfq: Skip empty variable names - happens in phpunit tests. Read new `systemEscapeTypeDefault`.
      Constants.php: renamed  TOKEN_LDAP_ESCAPE_* to TOKEN_ESCAPE_LDAP_*. Add TOKEN_ESCAPE_MYSQL, TOKEN_ESCAPE_NONE
      Database.php: Set charset to real_escape_string() functions properly. Proxy for mysqli::real_escape_string()
      Evaluate.php: Respect global escapeTypeDefault. Implement
      formEditor.sql: add column `escapeTypeDefault`. Add FormElement 'escapeTypeDefault'.
      ba817c0e
  19. 02 Apr, 2017 1 commit
    • Carsten  Rose's avatar
      #3385 / templateGroup: insert/update/delete non primary records · 8db50d60
      Carsten Rose authored
      Manual.rst: update doc how to insert/update/delete non primary templateGroup records.
      FormAction.php: removed $templateGroupIndex - solved implicit by defining a LIMIT on 'slaveId' . Implemented '%D' (one below %d). Implemented FE_SQL_HONOR_FORM_ELEMENTS - reduces unecassary SQL queries.
      HelperFormElement.php: moved function 'explodeTemplateGroupElements()' to 'QuickFormQuery.php'
      Database.php: remove call to explodeTemplateGroupElements() - not necessary at that place.
      QuickFormQuery.php: fill STORE_RECORD during Formload - to read templateGroup records very early. Local copy of `getNativeFormElements()`, new `explodeTemplateGroupElements()`
      8db50d60
  20. 26 Mar, 2017 2 commits
    • Carsten  Rose's avatar
      #3433 | templateGroup on primary Record: Values of removed copies are not deleted · 5d817af7
      Carsten Rose authored
      The new implementation creates empty fake instances of all copies of templateGroup FormElements. Those are empty. Before save, the submitted form values will be expanded with the empty fake templateGroup FormElements and such empty values will be saved.
      FormAction.php: Rename constant SQL_FORM_ELEMENT_TEMPLATE_GROUP to SQL_FORM_ELEMENT_TEMPLATE_GROUP_FE_ID - to be more precise.
      HelperFormElement.php, Database.php: new function explodeTemplateGroupElements()
      5d817af7
    • Carsten  Rose's avatar
      #3431 / typeAheadSql: columnname 'key' is a reserverd SQL statement - replace... · f906b671
      Carsten Rose authored
      #3431 / typeAheadSql: columnname 'key' is a reserverd SQL statement - replace by 'id'. Additional the parametername 'typeAheadLdapKeyPrintf' renamed to 'typeAheadLdapIdPrintf'.
      typeAhead.php: fixed typo.
      TypeAhead.php: introduced new mapping from 'id' (SQL) to 'key' (API).
      AbstractBuildForm.php: Constant renamed.
      Database.php: update function makeArrayDict() to reflect name mapping.
      f906b671
  21. 24 Mar, 2017 1 commit
  22. 14 Mar, 2017 1 commit
  23. 02 Mar, 2017 1 commit
  24. 09 Feb, 2017 1 commit
    • Carsten  Rose's avatar
      Create function `Database->getNativeFormElements()` to unify all needed... · 2b29d2ca
      Carsten Rose authored
      Create function `Database->getNativeFormElements()` to unify all needed actions on fresh loaded FormElements like explodeParameterInArrayElements, duplicateRetypEelements, copyAttributesToFormElements. Native FormElements will be loaded on 4 different places in 3 classes.
      
      HelperFormElement.php: Moved copyAttributesToFormElements() from QuickFormQuery to HelperFormElement.
      AbstractBuildForm.php, BuildFormBootstrap.php, QuickFormQuery.php : Use of Database->getNativeFormElements()
      Database.php: HelperFormElement::copyAttributesToFormElements()
      2b29d2ca
  25. 02 Feb, 2017 1 commit
  26. 31 Jan, 2017 1 commit
  27. 29 Nov, 2016 1 commit
  28. 19 Oct, 2016 1 commit
  29. 05 Oct, 2016 1 commit
  30. 23 Sep, 2016 1 commit
  31. 01 Jun, 2016 1 commit
    • Carsten  Rose's avatar
      KeyValueStringParser.php: phpdoc · 58a1f24c
      Carsten Rose authored
      Link.php, AbstractBuildForm.php, BuildFormBootstrap.php, Database.php: introduced constants for glyph. Code rearranged
      testtabbles.sql: extended to test Delete with filenames
      58a1f24c
  32. 31 May, 2016 1 commit
  33. 30 May, 2016 1 commit
  34. 26 May, 2016 1 commit
  35. 11 May, 2016 1 commit
  36. 28 Apr, 2016 1 commit