1. 11 Sep, 2017 1 commit
  2. 10 Sep, 2017 2 commits
  3. 09 Sep, 2017 1 commit
    • Carsten  Rose's avatar
      #4428 / subrecord: mode=readonly · 13647f3a
      Carsten Rose authored
      AbstractBuildFrom.php: Add new symbol 'show'. Honor switch between Edit and Show for subrecord elements.
      QuickFormQuery.php: If F_MODE is not set, check if there is a SIP var with F_MODE_GLOBAL=F_MODE_READONLY
      13647f3a
  4. 28 Aug, 2017 1 commit
  5. 24 Aug, 2017 1 commit
  6. 23 Aug, 2017 1 commit
    • Carsten  Rose's avatar
      #3790 / Multilanguage: German/ English/ ... · a84fc240
      Carsten Rose authored
      Manual.rst: how to use the multi language forms.
      DatabaseUpdateData.php: Update DB with new language fields.
      HelperFormElement.php: modify explodeParameter() to not check already existing definitions.
      QuickFormQuery.php: new setLanguage().
      a84fc240
  7. 14 Aug, 2017 2 commits
  8. 08 Aug, 2017 1 commit
  9. 07 Aug, 2017 2 commits
  10. 04 Aug, 2017 2 commits
  11. 02 Aug, 2017 2 commits
  12. 01 Aug, 2017 2 commits
  13. 30 Jul, 2017 1 commit
  14. 24 Jul, 2017 1 commit
    • Carsten  Rose's avatar
      recordLocking · feaeeffc
      Carsten Rose authored
      DatabaseUpdateData.php: Table Form: recordLockTimeoutSeconds - default changed from 0 to 900 secs. Existing forms get the default timeout timout interval.
      Dirty.php, QuickFormQuery.php: recordLockTimeoutSeconds will be retrieved from the Form.recordLockTimeoutSeconds definition (instead of parsing config.qfq.ini). Therefore a definition per form ist possible.
      feaeeffc
  15. 22 Jul, 2017 1 commit
    • Carsten  Rose's avatar
      recordLocking · ecce620b
      Carsten Rose authored
      file.php, load.php, Html2Pdf.php: minor updates.
      Dirty.php, QuickFormQuery.php: optional $lockTimeout as parameter during instantiating. Return $lockTimeout where necessary. Otherwise read qfq.config.ini. Refactor process(), acquireDirty(), checkDirtyAndRelease().
      ecce620b
  16. 16 Jul, 2017 1 commit
  17. 10 Jul, 2017 4 commits
    • Carsten  Rose's avatar
      Feature #3981 / Record Locking · d231eb20
      Carsten Rose authored
      Dirty.php: record delete is handled - if lock exist, delete is not allowed.
      d231eb20
    • Carsten  Rose's avatar
      Feature #3981 / Record Locking · c9a42543
      Carsten Rose authored
      Dirty.php, QuickFormQuery.php: Update user messages. Renamed releaseDirty() to checkDirtAndRelease()
      c9a42543
    • Carsten  Rose's avatar
      Feature #3981 / Record Locking · 700dd79d
      Carsten Rose authored
      Manual.rst: add documentation for record locking
      DatabaseUpdateData.php: Add new column 'dirtyMode'
      Dirty.php, Config.php, formEditor.sql: remove dirtyMode=readonly. Rename 'timeout' to 'exclusive' and 'overwrite' to 'advisory'.
      700dd79d
    • Carsten  Rose's avatar
      Feature #3981 / Record Locking · a0cd3709
      Carsten Rose authored
      First version for save - not working now.
      Manual.rst: document config var SYSTEM_DIRTY_RECORD_TIMEOUT_SECONDS.
      QuickFormQuery.php, Dirty.php: extend to support QFQ/save().
      Client.php: fixed broken PHP Unit test
      Config.php: set default for dirtyRecordTimeout.
      BuildFormBootstrap.php: No dirtyUrl if dirtyMode=none.
      formEditor.sql: extend definition to Form.dirtyMode, new table 'Dirty'
      Fixed several unit tests for new tables.
      a0cd3709
  18. 17 Jun, 2017 1 commit
  19. 14 Jun, 2017 1 commit
  20. 12 Jun, 2017 1 commit
    • Carsten  Rose's avatar
      #3899 / Copy/Paste · cc55f4fb
      Carsten Rose authored
      Manual.rst: various topics undocumented.
      DatabaseUpdate.php: New table Clipboard, New FE.type='paste', New Form.forwardMode='url-sip' - will be applied for 0.18.3.
      FormAction.php: New: doAllFormElementPaste(), prepareDuplicate(), checkNCopyFiles(), copyRecord()
      Store.php: New member in STORE_CLIENT 'CLIENT_COOKIE_QFQ' - might be used to identify current user.
      BuildFormBootstrap.php: New buildButtonCopyForm().
      QuickFormQuery.php: Calculating the target page now happens after saving the current record and processing all after save actions. New: pasteClipboard()
      formEditor.sql: New form 'copyForm'. New table 'Clipboard'
      cc55f4fb
  21. 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
  22. 05 Jun, 2017 1 commit
    • Carsten  Rose's avatar
      #3568 / Form: fuer alle Buttons (save, close, new, delete) eine optionale... · 61d75fbb
      Carsten Rose authored
      #3568 / Form: fuer alle Buttons (save, close, new, delete) eine optionale class & text konfigurierbar machen
      Manual.rst: new configuration options listed at config.qfq.ini and Form.paramtert.
      Config.php: Defaults configured for F_SAVE|CLOSE|DELETE|NEW_BUTTON_TEXT|TOOLTIP|CLASS|GLYPH_ICON.
      BuildFormBootstrap.php: Changed code to take values from config.qfq.ini or (if given) from form.parameter definitions.
      QuickFormQuery.php: Copy new setup values from config.qfq.ini to Form.
      StoreTest.php: update unit test for new global configuration values
      config.qfq.example.ini: fill with new commented key/value pairs.
      61d75fbb
  23. 04 Jun, 2017 4 commits
    • Carsten  Rose's avatar
      API_ANSWER_REDIRECT_URL_SKIP_HISTORY: Implement 'url-skip-history' as an user selectable option. · 0893a40a
      Carsten Rose authored
      Manual.rst: update doc of 'url-skip-history'.
      DatabaseUpdateData.php: update data structure as well as update given data from 'page' to 'url'.
      QuickFormReport.php: remove temporarily fix page/url.
      formEditor.sql: update table 'Form.forwardMode' to ('client', 'no', 'url', 'url-skip-history'). FormEditor now uses dynamicUpdate to hide/show FE 'forwardPage'.
      0893a40a
    • Carsten  Rose's avatar
      #3854 / Wrong final page: a) New > Save > Close, b) New > Save > Delete · b6cb6285
      Carsten Rose authored
      QfqForm.js: Preparation for client, to handle window.location.replace() by new API status 'url-skip-history'. Also changed "(data.redirect === "url" || data['redirect-url'])" to "(data.redirect === "url" && data['redirect-url'])" - CR did not understand the former logic ('or' instead of 'and'). #OPEN#: window.location.replace = 'index.php....' throws an JS exception that it the attribute 'replace' is readonly. Instead "window.location.replace('index.php....')" works as expected.
      PROTOCOL.md: add 'url-skip-history'.
      save.php: recode to become more readable.
      QuickFormQuery.php: getForwardMode() - temporarily fix to update status 'page' to 'url' (bug never caused a problem as long as '||' has been used on client side). Will change 'page' to 'url' asap.
      b6cb6285
    • Carsten  Rose's avatar
      #3853 / New > Save: Reload des Forms mit neuer SIP und neu erstellter recordId. · ed4efb2a
      Carsten Rose authored
      Recode: new function buildNSetReloadUrl()
      ed4efb2a
    • Carsten  Rose's avatar
      #3853 / New > Save: Reload des Forms mit neuer SIP und neu erstellter recordId. · 1c95ff76
      Carsten Rose authored
      Partly remove unused code 'htmlNameIdZero'. Instead implement generation of a new SIP for the new record and reload the current page with the new SIP.
      QuickFormQuery.php: remove newRecordUpdateSip(). Set URL redirection if none specific is configured. Skip creation of json code if page will be reloaded.
      1c95ff76
  24. 29 May, 2017 1 commit
  25. 27 May, 2017 1 commit
  26. 20 May, 2017 1 commit
    • 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
  27. 10 May, 2017 1 commit
  28. 09 May, 2017 1 commit
    • 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