REX_VALUES per Ajax nicht auslesbar

Jede Art von Fehler die REDAXO betreffen.

REX_VALUES per Ajax nicht auslesbar

Beitragvon Ingo » 23. Jun 2010, 23:50

Moin

Ich arbeite gerade an einem Addon für Frontend-Editing. In 4.2.1 läuft das ganz auch schon sehr rund. Nun habe ich mir 4.3 installiert und ein Problem mit den REX_VALUES in der Moduleingabe.

Ich hole mir die Moduleingabe per jQuery ins Frontend:
Code: Alles auswählen
$.post(urls.edit(), function (response) {
    $('#admin_right').
        append($(response).find('#REX_FORM'));
});

wobei urls.edit() die Adresse zum Aufruf des gewünschten Formulares im Admin Bereich ist. Funktioniert in 4.2.1 wie gewünscht, in der aktuellen Version werden die REX_VALUES nicht mehr ersetzt, ich bekomme für einen REX_VALUE garnix zurück. In der Standard Moduleingabe im Adminbereich funktionieren die REX_VALUES wie gewohnt. Ich bin etwas ratlos. Natürlich kann ich mir die Werte direkt aus der Datenbank holen, aber das wollte ich eigentlich vermeiden.

Viele Grüße Ingo
Ingo
 
Beiträge: 290
Registriert: 23. Jun 2010, 23:34

Beitragvon Xong » 24. Jun 2010, 00:48

Das darf bei einer sicheren Redaxoinstallation auch unter 4.2 eigentlich nicht gehen.
Alle Dateien im Ordner "include" sind geschützt und dürfen von außen nicht aufrufbar sein.
LG,
Xong

Bild Määääääääääääääääääääääääh!
Benutzeravatar
Xong
 
Beiträge: 1560
Registriert: 5. Jun 2008, 07:30
Wohnort: Hohndorf in Sachsen

Beitragvon Ingo » 24. Jun 2010, 07:51

Moin

Danke für deine Antwort. Ich rufe die /redaxo/index.php mit den entsprechenden Parametern auf, um an das Eingabeformular zu kommen, z.B.:
Code: Alles auswählen
http://dev.loc/redaxo/index.php?page=content&article_id=2&mode=edit&slice_id=6&clang=0&ctype=1&function=edit#slice6

Mein Problem ist auch nicht, dass das nicht funktionieren würde - mein Problem ist, dass bei dieser Art des Aufrufs per Ajax unter 4.3 die REX_VALUES verschütt gehen.

Viele Grüße Ingo
Ingo
 
Beiträge: 290
Registriert: 23. Jun 2010, 23:34

Beitragvon Xong » 24. Jun 2010, 09:13

Ingo hat geschrieben:Ich rufe die /redaxo/index.php mit den entsprechenden Parametern auf, um an das Eingabeformular zu kommen, z.B.:
Code: Alles auswählen
http://dev.loc/redaxo/index.php?page=content&article_id=2&mode=edit&slice_id=6&clang=0&ctype=1&function=edit#slice6
Das wird nur solange funktionieren, wie du noch im Backend angemeldet bist. Für den Aufruf im Frontend kann das nicht zuverlässig funktionieren.

Ingo hat geschrieben:Mein Problem ist auch nicht, dass das nicht funktionieren würde - mein Problem ist, dass bei dieser Art des Aufrufs per Ajax unter 4.3 die REX_VALUES verschütt gehen.
Doch genau der nicht wiederholbar funktionierende Aufruf wird dein Problem werden.

Und wenn du dennoch darauf bestehst, weil der Benutzer sowieso im Backend angemeldet sein muss, dann musst du mir nochmal erklären, wie du an einen bestimmten REX_VALUE-Wert herankommst und was genau nicht funktioniert.
LG,
Xong

Bild Määääääääääääääääääääääääh!
Benutzeravatar
Xong
 
Beiträge: 1560
Registriert: 5. Jun 2008, 07:30
Wohnort: Hohndorf in Sachsen

Beitragvon Ingo » 24. Jun 2010, 10:59

Xong hat geschrieben:Das wird nur solange funktionieren, wie du noch im Backend angemeldet bist. Für den Aufruf im Frontend kann das nicht zuverlässig funktionieren.

Natürlich funktioniert das nur solange, wie ich im Backend angemeldet bin. Und solange ich im Backend angemeldet bin, funktioniert das sehr zuverlässig. Nochmal: ich arbeite an einem Addon für Frontend-Editing.

1. der User loggt sich fürs Backend ein
2. nach erfolgreichem Login wird er zum Frontend weitergeleitet, wo er direkt bei den Slices Buttons zum editieren des Slices findet
3. klickt er auf einen der Editieren Buttons, öffnet sich ein Dialog, in den ich per Ajax das Eingabeformular des Slices aus dem Backend lade (über den eingangs geposteten Javascript Schnippsel)

Xong hat geschrieben:Und wenn du dennoch darauf bestehst, weil der Benutzer sowieso im Backend angemeldet sein muss, dann musst du mir nochmal erklären, wie du an einen bestimmten REX_VALUE-Wert herankommst und was genau nicht funktioniert.

Ich möchte keine speziellen REX_VALUE haben, sondern hole mir das komplette Formular aus dem Backend. Das funktioniert wunderbar, allerdings werden aus einem mir nicht ersichtlichen Grund die REX_VALUEs nicht verarbeitet. Dort, wo z.B. in einer textarea der Inhalt eines REX_VAUEs ausgegeben werden sollte, steht gar nichts.

Viele Grüße Ingo
Ingo
 
Beiträge: 290
Registriert: 23. Jun 2010, 23:34

Beitragvon Xong » 24. Jun 2010, 11:43

Jetzt habe ich´s verstanden. =)

Ich kann das Problem auch nachvollziehen. Es liegt an der Abfrage via POST.
Wenn du dir das Formular mittels GET holst, bekommst du auch die Werte übergeben.

Ich vermute mal, dass es in Redaxo >= 4.3 irgendwelche Änderungen bzgl. der Verarbeitung von $_POST gegeben hat.

Also: $.get statt $.post nutzen.
LG,
Xong

Bild Määääääääääääääääääääääääh!
Benutzeravatar
Xong
 
Beiträge: 1560
Registriert: 5. Jun 2008, 07:30
Wohnort: Hohndorf in Sachsen

Beitragvon Xong » 24. Jun 2010, 12:09

Und noch die Erklärung: Bei der Ausgabe der Edit-Anzeige für einzelne Slices wurde eine Abfrage nach der HTTP-Anfrageart eingebaut.

Der Code mit seinen Kommentaren erklärt ziemlich gut, warum bei einem POST-Request keine Werte mehr vorhanden sind:
Code: Alles auswählen
// nach klick auf den übernehmen button,
// die POST werte übernehmen
if(rex_request_method() == 'post' && rex_var::isEditEvent())
  // ...
// Sonst die Werte aus der DB holen
// (1. Aufruf via Editieren Link)
else
  //...
LG,
Xong

Bild Määääääääääääääääääääääääh!
Benutzeravatar
Xong
 
Beiträge: 1560
Registriert: 5. Jun 2008, 07:30
Wohnort: Hohndorf in Sachsen

Beitragvon Ingo » 24. Jun 2010, 13:37

Xong hat geschrieben:Und noch die Erklärung

Ein dickes fettes Dankeschön ! :D

Viele Grüße Ingo
Ingo
 
Beiträge: 290
Registriert: 23. Jun 2010, 23:34

Beitragvon Skerbis » 24. Jun 2010, 15:24

Hi. Habe Interesse an Deinem Addon.
Wirst Du es veröffentlichen? (auch gegen Bezahlung?)
Skerbis
 
Beiträge: 889
Registriert: 4. Aug 2006, 13:06
Wohnort: Rheinberg

Beitragvon Ingo » 25. Jun 2010, 09:15

Moin

Da habe ich mir ehrlich gesagt noch keine Gedanken zu gemacht. Ich hoffe, ich werde dieses oder nächstes Wochenende damit fertig - wenn du möchtest, setz ich dir ne Installation auf, damit du dir die Sache mal angucken kannst.

Viele Grüße Ingo
Ingo
 
Beiträge: 290
Registriert: 23. Jun 2010, 23:34

Beitragvon Skerbis » 25. Jun 2010, 11:04

Gerne. Würde mich freuen.
:D
Sende mir doch dann bitte eine pm.
Skerbis
 
Beiträge: 889
Registriert: 4. Aug 2006, 13:06
Wohnort: Rheinberg

Beitragvon Richard.Laing » 25. Jun 2010, 12:51

ich häng mich mal drann, auch interesse haben... ;)
gruß richy
REXvideo Videotutorials für Redaxo www.REXvideo.de
Webseite www.on-laing.de smokezig.de www.smokezig.de
Benutzeravatar
Richard.Laing
 
Beiträge: 2109
Registriert: 27. Aug 2005, 23:55
Wohnort: Brühl / Rheinland

Beitragvon enk » 6. Aug 2010, 14:45

Moin Ingo.

Ich wurde gerade - bedingt durch eine eigene Anfrage zum Frontend-Editing - an dich verwiesen 8)

Wie schauts denn aus mit deinem Addon? Bist Du schon weiter, wirst Du es veröffentlichen und überhaupt... Fragen über Fragen. Vielleicht findest Du ja die Zeit für ein kurzes Statement.

Gruß aus'm Norden...
"Der Mensch ist immer noch der außergewöhnlichste Computer von allen."
John F. Kennedy
enk
 
Beiträge: 22
Registriert: 29. Jul 2010, 08:55

Beitragvon openmind » 1. Sep 2010, 09:18

Hi zusammen,
ist Euch vielleicht noch nicht aufgefallen, aber es gibt schon ein Addon, das sehr gut mit Redaxo 4.1 bis 4.3 funktioniert.
Das Addon kann auch noch ein wenig mehr als nur frontend-editing.

Nur ist es leider nicht umsonst, weil ich geschlagene drei Monate für die Entwicklung gebraucht habe und es kein Abfallprodukt aus einem Projekt ist.

Es gibt eine Online-Demo, wo man sehen kann wie es generell geht, wobei natürlich der letzliche Editier-Zugang zum Backend hier für die Öffentlichkeit gesperrt ist.
Die Buttons und Menues seht Ihr auf der Demo aufgrund einer speziellen Freischaltung. Im Normalbetrieb sind die natürlich nicht öffentlich sichtbar.

Wer interesse hat kann ja mal hier schauen:
http://directedit.asgari-design.de
Benutzeravatar
openmind
 
Beiträge: 134
Registriert: 11. Dez 2006, 11:45


Zurück zu Bugs [R4]

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 0 Gäste