$edit nicht gesetzt
$edit nicht gesetzt
hallo zusammen
ich bin verschiedentlich darauf aufmerksam gemacht worden, dass in einigen installationen im editierbereich in den modulen $edit nicht gesetzt sei. das führt dann bei einigen modulen natürlich zu problemen.
nun zu meiner frage: handelt es sich dabei eventuell um einen bug? ist die variable $edit in der 4.4.5 generell nicht mehr verfügbar oder handelt es sich um ein installationsproblem?
bei dieser gelegenheit (wenn das erlaubt ist) eine anmerkung für die entwicklung in zukunft. aus meiner sicht wäre es besser, wenn 'variablen' deren wert sich während der ausführung des scriptes nicht ändern sollten, nicht als variablen sondern als konstanten definiert würden. dann bestünde nicht die gefahr, dass sie durch ein modul überschrieben werden.
mfg,
andreas
ich bin verschiedentlich darauf aufmerksam gemacht worden, dass in einigen installationen im editierbereich in den modulen $edit nicht gesetzt sei. das führt dann bei einigen modulen natürlich zu problemen.
nun zu meiner frage: handelt es sich dabei eventuell um einen bug? ist die variable $edit in der 4.4.5 generell nicht mehr verfügbar oder handelt es sich um ein installationsproblem?
bei dieser gelegenheit (wenn das erlaubt ist) eine anmerkung für die entwicklung in zukunft. aus meiner sicht wäre es besser, wenn 'variablen' deren wert sich während der ausführung des scriptes nicht ändern sollten, nicht als variablen sondern als konstanten definiert würden. dann bestünde nicht die gefahr, dass sie durch ein modul überschrieben werden.
mfg,
andreas
aitsu.org :: schnell - flexibel - komfortabel :: Version 2.2.0 (since June 22, 2011) (jetzt mit dual license GPL/kommerziell)
ich hab das ganze mal als bug gemeldet, der im cvs_head auch schon behoben ist...
in die 4.4.x serie ist dieser aber nie hineingekommen....
das läßt sich an sich ganz einfach beheben...
includes/include.con_editcontent.php
findet sich am ende der datei in einer foreach schleife
diese zeile muss nur am beginn dieser datei gestellt werden...
ansonsten ist es so das $edit erst dann true ist wenn ein content-typ
gefunden wurde... was natürlich schlecht ist wenn man keinen verwendet...
in die 4.4.x serie ist dieser aber nie hineingekommen....
das läßt sich an sich ganz einfach beheben...
includes/include.con_editcontent.php
findet sich am ende der datei in einer foreach schleife
Code: Alles auswählen
$edit = "true";
ansonsten ist es so das $edit erst dann true ist wenn ein content-typ
gefunden wurde... was natürlich schlecht ist wenn man keinen verwendet...
*** make your own tools (wishlist :: thx)
siehst du denn eine möglichkeit fest zu stellen, dass man sich im editiermodus im backend befindet?
zurzeit verwende ich folgende, etwas umständliche prüfung:
zurzeit verwende ich folgende, etwas umständliche prüfung:
Code: Alles auswählen
if (($contenido && empty($this->get['contenido']) && $changeview =='edit') || ($contenido && !empty($this->get['contenido']) && $this->get['contenido'] == $contenido && $changeview == 'edit')) {
aitsu.org :: schnell - flexibel - komfortabel :: Version 2.2.0 (since June 22, 2011) (jetzt mit dual license GPL/kommerziell)
mit obriger änderung ist an sich nur eine überprüfung der variable $edit notwendig...
da hat man nun zeitweise aber das problem das &edit=1 ja bei der urlzeile ergänzt werden könnte... dann würde man die buttons für das bearbeiten sehen, was nicht so schön ist...
das läßt sich aber ziemlich elegant abfangen sodas wirklich nur funktioniert ohne beieinflussung eines get oder post wertes...
man braucht nur in der front_content.php
nach
diese zeile ergänzen...
okay etwas abgeschweift... ich tippe mal darauf das du diese änderung bei kunden zeitweise nicht vornehmen kannst und dennoch wissen willst ob du dich im edit modus befindest...
ja da gibts ne möglichkeit...
diese variable besser gesagt der array steht nur im edit modus zur verfügung...
wie auch immer es gibt keinerlei möglichkeit festzustellen ob du dich im vorschaumodus (vom backend aus)befindest... zumindestens wüsste ich keine möglichkeit...
ich verwende ne ähnliche konstruktion für einer meiner kommerziellen module... und da ist mir an sich noch nichts aufgefallen was bei 4.4.x - CVS_HEAD nicht laufen würde...
da hat man nun zeitweise aber das problem das &edit=1 ja bei der urlzeile ergänzt werden könnte... dann würde man die buttons für das bearbeiten sehen, was nicht so schön ist...
das läßt sich aber ziemlich elegant abfangen sodas wirklich nur
Code: Alles auswählen
if ($edit) {
}
man braucht nur in der front_content.php
nach
Code: Alles auswählen
/* Mark submenuitem 'Preview' */
if ($contenido) {
$markscript = markSubMenuItem(4, true);
}
Code: Alles auswählen
unset($edit); // disable editmode
ja da gibts ne möglichkeit...
Code: Alles auswählen
if (!isset($a_content)) {
}
wie auch immer es gibt keinerlei möglichkeit festzustellen ob du dich im vorschaumodus (vom backend aus)befindest... zumindestens wüsste ich keine möglichkeit...
ich verwende ne ähnliche konstruktion für einer meiner kommerziellen module... und da ist mir an sich noch nichts aufgefallen was bei 4.4.x - CVS_HEAD nicht laufen würde...
*** make your own tools (wishlist :: thx)
ähm nur das wenn du willst
in der front_content.php
nach
diese zeile ergänzen...
warum und weshalb -> siehe obriges posting
in der front_content.php
nach
Code: Alles auswählen
/* Mark submenuitem 'Preview' */
if ($contenido) {
$markscript = markSubMenuItem(4, true);
}
Code: Alles auswählen
unset($edit); // disable editmode
warum und weshalb -> siehe obriges posting
*** make your own tools (wishlist :: thx)