yakamara / yform

YForm für REDAXO 5 – Formulare im Frontend und Backend mit Verwaltung von Datenbank-Tabellen.
MIT License
77 stars 55 forks source link

Datensatz klonen #1344

Closed dergel closed 1 year ago

dergel commented 1 year ago

basierend auf https://github.com/FriendsOfREDAXO/tricks/issues/309 und https://github.com/FriendsOfREDAXO/tricks/pull/311

Danke @christophboecker

dergel commented 1 year ago

closes https://github.com/yakamara/redaxo_yform/issues/49

christophboecker commented 1 year ago

@dergel Super, Jan, das ging ja ratz fatz. Sieht so aus, als ob es funktioniert. Ein Kurztest sagt: dobsche.

Darf ich dennoch was anmerken:

dpf-dd commented 1 year ago

Ah, das Problem ist bekannt. Habe auch gerade gemerkt, dass beim Duplizieren der EP YFORM_DATA_ADDED nicht gefeuert wird. Schade, finde das Duplizieren echt nützlich... Mein Skript, was ich über EP einklinke, soll aber erst NACH dem Speichern laufen - deswegen kann ich da jetzt nicht einfach den YFORM_DATA_UPDATE mit benutzen, weil dann greift mein Skript zu früh ein :(

dergel commented 1 year ago

Könnt ihr das noch mal als einzelne Issues aufschreiben. Damit ich die Punkte sinnvoll ansehen und bewerten und hoffentlich lösen kann?

dpf-dd commented 1 year ago

Mach ich gerne. Hättest du es lieber hier bei yForm oder beim Usabilities-AddOn?

christophboecker commented 1 year ago

Habe auch gerade gemerkt, dass beim Duplizieren der EP YFORM_DATA_ADDED nicht gefeuert wird.

Wenn das Formular aufgerufen wird, ist es ja ein vorhandener Datensatz. also YFORM_DATA_UPDATE statt YFORM_DATA_ADD. Beim Speichern, also Aufruf des Formulars nach Klick aus Save, ist es ein neuer Datensatz. Daher werden YFORM_DATA_ADD/ADDED aufgerufen.

Zumindest habe ich das mal so ausbaldovert.

dpf-dd commented 1 year ago

@christophboecker Nein, das kann ich negieren. Ich habe ein Skript in folgendem Aufruf am werkeln: rex_extension::register(['YFORM_DATA_ADDED', 'YFORM_DATA_UPDATED'], function (rex_extension_point $ep) { und wenn ich einen Datensatz dupliziere ´, dann wird mein Skript NICHT getriggert... Ich muss immer erst in irgendeinen Datensatz klicken und nochmal speichern, dann wird der duplizierte Datensatz auch von meinem Skript "erwischt"...

Da mein Skript immer nur NACH dem Speichern werkeln soll, kann ich das für die EPs YFORM_DATA_ADD', 'YFORM_DATA_UPDATE natürlich keine Aussage treffen...

christophboecker commented 1 year ago

Hättest du es lieber hier bei yForm oder beim Usabilities-AddOn?

Sicher, dass wir über dasselbe reden? Dieses Klonen hat null komma nix mit dem Usabilities-AddOn zu tun. Selbiges - und das war ja das Problem - kopiert stumpf den Datensensatz, dann muss man ihn aufrufen und bearbeiten. Was zu Deiner Beschreibung (Ich muss immer erst in irgendeinen Datensatz klicken und nochmal speichern) passt.

dpf-dd commented 1 year ago

Naja, als ich yForm Usabilities noch nicht installiert hatte da konnte ich die Datensätze nicht duplizieren - das war halt einfach nicht da. Hab dann Usabilities installiert und seitdem krieg ich das angezeigt... Hab mir den Zusammenhang jetzt nicht weiter angeguckt, aber jetzt wo du das sagst - klar, ist ein yForm Issue

Bildschirmfoto 2023-02-16 um 17 21 57
christophboecker commented 1 year ago

Das worum es hier geht, ist zwar im Repo, aber noch nicht im Relase. Und funktioniert halt ganz anders!

dpf-dd commented 1 year ago

Ah, naja das kann ich ja nicht riechen. Ich nutze ausschließlich die Installer-Versionen... Dann sorry für die Verwirrung. Ich zieh mir heute Abend mal yForm aus GitHub und teste das Duplizieren mal ohne Usabilities... :)

dpf-dd commented 1 year ago

OK. GitHub-Stand soeben gezogen und getestet. Klonen funktioniert und auch mein Skript am EP YFORM_DATA_ADDED wird getriggert weil das Handling tatsächlich anders ist. Ich klicke auf KLONEN und dann öffnet sich die Datensatz-Maske in dem ich den Klon noch mit Speichern bestätigen muss. Mein Skript rödelt dann auch durch, sodass aus meiner Sicht alles läuft wie geplant und gewünscht... :)

Ich ziehe meinen Einwand also zurück, weil von dem Rest von @christophboecker Beitrag hab ich nicht wirklich einen Dunst ^^