1. 26 Feb, 2017 1 commit
    • Carsten  Rose's avatar
      #2064: Input Elemente die als JSON response 'value=false' bekommen, zeigen 'false' an. · 13d39fbe
      Carsten Rose authored
      #3253: STORE_TYPO3: steht waehrend Update / Save nicht zur Verfuegung - wird aber benoetigt. Bsp: feUser, beUser, pageId, ...
      
      Thought that problem of #2064 is based on #3253 - that was wrong.
      #3253 implemented, but not heavily tested.
      
      #2064: problem was that for a non existing tablecolumn, has been searched for a default value - which obviously does not exist. In AbstractBuildForm.php, Line 419, a check implemented if the current FormElement is an existing tablecolumn. If not, do not change the empty value.
      
      FormAction.php, FillStoreForm.php, Store.php, QuickFormQuery.php, Save.php: Refactor setVarArray() to setStore()
      
      #3253
      FillStoreForm.php: If there is no STORE_TYPO3, get the old values from SIP: CLIENT_TYPO3VARS.
      Store.php: new function fillTypo3StoreFromSip(), copyT3VarstToSip()
      13d39fbe
  2. 23 Feb, 2017 1 commit
  3. 21 Feb, 2017 1 commit
  4. 20 Feb, 2017 1 commit
    • Carsten  Rose's avatar
      Save templateGroup. · d02ad978
      Carsten Rose authored
      AdministratorManual/Index.rst: extend sphinx setup doc, fix typo
      UserManual/Index.rst: add doc for templateGroup
      FillStore.php: Implement save for templateGroup
      d02ad978
  5. 14 Feb, 2017 1 commit
    • Carsten  Rose's avatar
      'Upload advanced mode' implementiert. V2 (kein FormElement Action 'afterSave' mehr noetig) · 2e7b75b6
      Carsten Rose authored
      Default fuer Store Prioritaet hat sich geaendert: alt='FSRD', neu='FSRVD' - damit wird ist es ueberfluessig den V Store anzugeben.
      Variable '_filename' umbenannt in 'filename' und verschoben von STORE_FORM nach STORE_VARS. Damit ist es ueberfluessig eine Sanatize Klasse anzugeben.
      STORE_VAR hat zwei neue Variablen: 'filename', 'fileDestination'.
      Bei Form-Action Elemente gibt es zwei neue Typen: 'sqlBefore' und 'sqlAfter'
      
      Index.rst: Dokumentation auf V2 angepasst. Doku fuer V1 hat es nie gegeben.
      FormAction.php: Moved function initActionFormElement to HelperFormElement::initActionFormElement(), Implement sqlBefore & sqlAfter for Action Elemente.
      HelperFormElement.php: new class initActionFormElement(), initUploadFormElement().
      FillStoreForm.php, AbstractBuildForm.php, Evaluate.php: Implemented the $skip parameter to suppress unwanted variable expansion during form load.
      Constants.php: New STORE_USE_DEFAULT, VAR_FILE_DESTINATION, VAR_FILENAME,FE_SQL_AFTER, FE_SQL_BEOFRE, FE_TYPE_UPLOAD.
      Evaluate.php: moved 'decryptCurlyBraces()' up, in order to  create better error messages.
      Save.php: new doUploadSlave(), implement 'Upload advanced mode'.
      2e7b75b6
  6. 17 Dec, 2016 1 commit
    • Carsten  Rose's avatar
      #2067 · de377b07
      Carsten Rose authored
      CODING.md: update docs for situation 'new record already saved'.
      FillStoreForm.php: In case of form load with r=0, the submitted form element names are does not contain the effective record id - workaround implemented.
      Session.php: refactored clear(), create unsetItem().
      Sip.php: new buildParamStringFromArray(), updateSipToSession().
      Store.php: For r=0 SIPs always add a uniqe parameter.
      AbstractBuildForm.php: modified message for subrecords on new record.
      QuickFormQuery.php: create unique SIP on form load.
      de377b07
  7. 29 Nov, 2016 1 commit
  8. 25 May, 2016 1 commit
  9. 18 May, 2016 2 commits
  10. 10 May, 2016 2 commits
  11. 09 May, 2016 3 commits
  12. 03 May, 2016 1 commit
    • Carsten  Rose's avatar
      Recode: fromelement.mode='readonly' new implemented on client, by using CSS... · 5b899934
      Carsten Rose authored
      Recode: fromelement.mode='readonly' new implemented on client, by using CSS attribute 'disabled'. The HTML atrribute 'readonly' is fine for pure 'input' elements, but does not work sufficient for 'select', 'checkbox', 'radio'. Also, the label (left of input) and note (right of input) are now grayed out if set to 'disable'.
      FillStoreForm.php, Save.php: strings replaced by constants. New central function getfeMode() used by getJsonFeMode() and getAttributeFeMode()
      5b899934
  13. 02 May, 2016 2 commits
  14. 25 Apr, 2016 2 commits
    • Carsten  Rose's avatar
      Date/Time validation, during save, did not respect formelement dateFormat specs. · 8fa8d496
      Carsten Rose authored
      FillStoreForm.php: added HelperFormElement::explodeParameterInArrayElements($feSpecNative);
      8fa8d496
    • Carsten  Rose's avatar
      Input Field date / datetime / time implemented. · d28b523a
      Carsten Rose authored
      AdministratorManual/index.rst, UsersManual/index.rst: Configuration & Documentation.
      Sanitize.php: code rewrote to use Support::dateTime2mysql().
      Support.php: add dateTimeTegexp()
      FillStoreForm.php: use of Support::setFeDefaults($formElement). Format date/datetime/time values
      Store.php: redefined various functions to be 'static'
      AbstractBuildForm.php, Constants.php: added date/datetime/time to tables. Various new functions.
      Save.php: FE die nicht uebertragen wurden (typsicherweise weil leer) werden neu mit eimem leer String gesschrieben - sonst ist es nicht moeglich  Eingaben wieder zu loeschen.
      formEditor.sql: Felder date/datetime/time neun implementiert.
      d28b523a
  15. 18 Apr, 2016 4 commits
  16. 16 Apr, 2016 1 commit
  17. 01 Apr, 2016 1 commit
  18. 24 Mar, 2016 2 commits
    • Carsten  Rose's avatar
      Refactored sanitize functionality: Form save, form update and client are now... · 0f2d60c4
      Carsten Rose authored
      Refactored sanitize functionality: Form save, form update and client are now handled with the same regexp. Form save and update use the same code to sanatize. SANITIZE names are now equal in FormEditor and in Store. New class SANITIZE_ALL_MIN_MAX_DATE.
      
      OnArray.php: moved inputCheckPatternArray() to Sanatize.
      Sanatize.php: complete rewrote of sanitize(). Everything is regexp based now.
      FillStore.php: validateValue() removed, use of Sanitize::sanitize instead.
      Store.php: adjusted change of Sanitize:sanitize signature.
      AbstractBuildForm.php: defined class global variable $inputCheckPattern and initialize them during construct(). Variables, submitted by POST, are now correctly sanatized according their FormElement definition. getInputCheckPattern() adjusted to new/changed SANITIZE definitions.
      Constants.php: added SANTIZE_ALLOW_: MIN_MAX, MIN_MAX_DATE, EMAIL, PATTERN, SANITIZE_EXCEPTION, SANITIZE_EMPTY_STRING
      Save.php: use of Sanitize::sanitize instead of validateValue()
      formEditor.sql: order of FormElement.checkType changed to 'most used first'.
      0f2d60c4
    • Carsten  Rose's avatar
      Dynamic Update implemented · b31fb9eb
      Carsten Rose authored
      load.php: implemented
      FillStoreForm.php: implemented
      Store.php: phpunit test complains about 'store already filled'. Option set to explicitly allow rewrite.
      AbstractBuildForm.php: Added new mode 'FORM_UPDATE'. Elements additionaly create json code. 'data-load' attribute will be added to form elements, if 'dynamicUpdate=yes'
        elements(): added call by reference parameter $json, to return the generated json code.
      BodyTextParse.php: added 'r =' as a new 'start new line' indicator. This was necessary at least for phpunit tests to run.
      BuildFormBootstrap.php: buildPill() passes json data structure.
      BuildFormPlain, BuildFormTable.php: doSubrecords()  passes json data structure.
      Constants.php: New FORM_UPDATE, SQL_FORM_ELEMENT_SIMPLE_ALL_CONTAINER, ERROR_FORM_NOT_FOUND, API_FORM_UPDATE
      Evaluate.php: Exception text enhanced.
      QuickFormQuery.php: FillStoreForm.php included. Automatic detection of FORM_LOAD and FORM_SAVE removed. Instead the mode are given explicitly. mode=FORM_UPDATE implemented.
      Save.php: added TODOs in code.
      formEditor.sql: reformat code. Add 'FormElement.dynamicUpdate'. 'FormElemente.checkType': 'number' replaced by 'digit'. Added 'alnumx', 'digit'. Form 'form', 'formElement': output of 'title' replaced by 'name' - outputting 'title' confuses the user (tries to show records which do fit to the formEditor) and might produce recursion in evaluation (did not understand why, but happens). FormEditor: implemented 'dynamicUpdate', escpecially the 'type' select list will be adjusted dynamically.
      b31fb9eb