Commit 78fda461 authored by Marc Egger's avatar Marc Egger
Browse files

Refs #10120 todos

parent 1061a5a1
Pipeline #3688 passed with stages
in 4 minutes and 14 seconds
......@@ -9,19 +9,22 @@ use IMATHUZH\Qfq\Core\Helper\OnString;
use IMATHUZH\Qfq\Core\Helper\SqlQuery;
use IMATHUZH\Qfq\Core\Store\Store;
// TODO: Carsten Fragen: Habe keine Unittests zu QuickFormQuery->doForm gefunden. Wird nicht getestet. FormAsFile nicht testen oder vielleicht nur mit selenium?
// TODO: Carsten Fragen: Form backups erstellen vor deleteFormFile und exportForm?
// TODO: Carsten Fragen: "git rm" anstatt "rm" benutzen falls ordner ein git repo? Einziger unterschied: macht "git add"
// TODO: Carsten Fragen: Form Copy ist broken. Aber jetzt auch unnötig, da man einfach die files kopieren kann.
// TODO: Carsten Fragen: Koennte die column "lastImport" zu Form hinzufuegen. Dieser wird dann manuell zusammen mit "changed" beim import und export gesetzt. Mittels Left Join query mit den created columns von FormElement koennte man in importForm() feststellen, ob sich ein form geaendert hat und dieses expotieren, falls der fingerabdruck des files noch gleich ist.
// in doForm: wenn ein fehler auftritt, nachdem die datenbank gespeichert wird und bevor das file geschrieben wurde, dann ist das file nicht mehr up to date. "lastImport" koennte dies loesen.
// ---------------------- //
// Besprechen mit Carsten //
// ====================== //
// Form backups erstellen vor deleteFormFile und exportForm?
// "git rm" anstatt "rm" benutzen falls ordner ein git repo? Einziger unterschied: macht "git add"
// Form Copy ist broken. Aber jetzt auch unnötig, da man einfach die files kopieren kann.
// Koennte die column "lastImport" zu Form hinzufuegen. Dieser wird dann manuell zusammen mit "changed" beim import und export gesetzt. Mittels Left Join query mit den created columns von FormElement koennte man in importForm() feststellen, ob sich ein form geaendert hat und dieses expotieren, falls der fingerabdruck des files noch gleich ist.
// in doForm: wenn ein fehler auftritt, nachdem die datenbank gespeichert wird und bevor das file geschrieben wurde, dann ist das file nicht mehr up to date. "lastImport" koennte dies loesen.
// >> nicht unbedingt noetig. passiert nur sehr selten, dass db und file nicht synch ist und dann faellts auf, wenn der developer testet.
// TODO: Carsten Fragen: QFQ formulare haben id unter 1000 und user forms ueber 1000. Wird ein QFQ formular neu importiert, erhaelt es aber eine id ueber 1000. ist dies ein problem?
// TODO: Carsten Fragen: Kann es sein, dass records in Dirty tabelle nicht mehr richtig abegraeumt werden, weil forms die ID wechseln?
// TODO: Carsten Fragen: Exceptions werden teilweise ohne Developer message angezeigt (API). Deshalb habe ich die Message teilweise in User message getan.
// TODO: Carsten Fragen: PHP version von gitlab runner hochstellen, damit ?string und void type syntax fuer funktionen erlaubt ist? verhindert einige fehler
// TODO: Carsten Fragen: Regex fuer erlaubte file names und form names im editor (+ erlauben?): ^([-\.\w]+)$ VS [a-zA-Z0-9._+-]+
// TODO: Carsten Fragen: add log messages somewhere?
// QFQ formulare haben id unter 1000 und user forms ueber 1000. Wird ein QFQ formular neu importiert, erhaelt es aber eine id ueber 1000. ist dies ein problem?
// Kann es sein, dass records in Dirty tabelle nicht mehr richtig abegraeumt werden, weil forms die ID wechseln?
// Exceptions werden teilweise ohne Developer message angezeigt (API). Deshalb habe ich die Message teilweise in User message getan.
// PHP version von gitlab runner hochstellen, damit ?string und void type syntax fuer funktionen erlaubt ist? verhindert einige fehler
// Regex fuer erlaubte file names und form names im editor (+ erlauben?): ^([-\.\w]+)$ VS [a-zA-Z0-9._+-]+
// add log messages somewhere?
// TODO: BEFOORE PRUDUCTION
// TODO: Fix all broken tests
......@@ -66,14 +69,9 @@ use IMATHUZH\Qfq\Core\Store\Store;
//SELECT CONCAT('p:{{pageId:T}}&form=form&r=', f.id) as _pagee, f.id, f.name, f.title, f.tableName, CONCAT('form=form&r=', f.id) as _Paged from Form AS f ORDER BY f.name
//END;
// TODO: DON'T DO
// TODO: DONT DO: add column import-modification-date to Form and FormElement and set them to the same as modification date in both exportForm and importForm. compare the two modification dates in the beginning. If the actual modification is after importModification and fileStats are the same in file and in form, then exportForm.
// TODO: DONT DO: what to do if importModificationDate and fileStats have changed? > 1) export Form to new form file named <formName>mergeConflict_timestamp 2) importForm form file, overwrite DB
///////////////// JUST A TEST, DELETE ME! //////////////
// FormAsFile::exportForm($formName, $this->dbArray[$this->dbIndexQfq]);
// FormAsFile::importForm($formName, $this->dbArray[$this->dbIndexQfq]);
///////////////// TEST FINISHED ////////////////////////
// DON'T DO
// DONT DO: add column import-modification-date to Form and FormElement and set them to the same as modification date in both exportForm and importForm. compare the two modification dates in the beginning. If the actual modification is after importModification and fileStats are the same in file and in form, then exportForm.
// DONT DO: what to do if importModificationDate and fileStats have changed? > 1) export Form to new form file named <formName>mergeConflict_timestamp 2) importForm form file, overwrite DB
/////// DEBUG /////////
// throw new \UserFormException(json_encode([
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment