yakamara / redaxo_xform

XForm für redaxo4
22 stars 21 forks source link

add EP "XFORM_DATA_DATASET_DELETE_SQL" .. #274

Closed jdlx closed 9 years ago

dergel commented 9 years ago

Habe es anders gelöst. wollte keinen neuen EP aufmachen. Ist ja einer da.. Schau mal.. Müsste so auch passen.

https://github.com/yakamara/redaxo_xform/blob/master/plugins/manager/classes/basic/class.rex_xform_manager.inc.php#L220

jdlx commented 9 years ago

so kann man aber die query nicht modifizieren.. mein prob, bzw. warum den EP: Hat man eigene Filter - welche sich teils nur schwer, teils garnicht über die interne Suchfunktion abbilden lassen - und der user klickt auf Datenergebnis löschen, dann löscht er ungewollt alles ..

jdlx commented 9 years ago

Nachtrag: andere Option - und evtl. universeller - wäre ein EP in getDataListQueryWhere() ..

jdlx commented 9 years ago

@dergel @gharlan hm.. is das ne saubere Lösung so? von wegen Call-time pass-by-reference …

dergel commented 9 years ago

eigentlich ist das wirklich nicht sauber so .. hmm.. Ich will aber keinen neuen EP aufmachen, sonst müsste man das vollständigerweise auch bei den anderen machen.. @jdlx hast du dir man die rex_filter params angesehen.. damit kann man die ansichten einschränken und diese sollten dann auch beiden queries beachtet werden.. ist zwar ein umweg, aber vielleict gangbar

jdlx commented 9 years ago

die rex_filter params angesehen.. ist zwar ein umweg, aber vielleict gangbar

Ich hab mal drübergekuckt, ja.. erschien mir aber zum einen ein ziemliches Gefrickel, zum anderen meine ich das es teils nicht abbildbar war.. z.b. ne Suche nach leerem string ala:

SELECT * FROM `rex_trance_langstrings` WHERE (`lang_0`='' OR `lang_1`='') ORDER BY `lang_template`,`lang_key` ASC

… weißt du ausm Ärmel ob das geht?

oder sowas:

SELECT * FROM `rex_trance_langstrings` WHERE (`lang_template`!='2' AND `lang_template`!='1' AND `lang_template`!='3') ORDER BY `lang_key` ASC LIMIT 0,200
dergel commented 9 years ago

weiss ich leider nicht .. müsste mich länger reinschaffen, geht aber leider gerade nicht.

jdlx commented 9 years ago

So, inzwischen hab ich Suchen mit REGEXP drin.. spätestens hier würd ich meinen is Sense… vulgo: Ohne den vorgeschlagene EP, bzw. irgendeine Möglichkeit explizit eine eigene DELETE query einzuschiessen kömmt man nicht weiter.. (gleichwohl find ich die aktuelle Lösung per reference ungut.. auch wenn sie zum Ziel führt)