Hinweis: Seit dem ersten Beitrag hier hat sich einiges am Addon geändert, so gibt es beispielsweise das Recht "developer[]" nicht mehr und es genügt Administrator zu sein!
Hallo zusammen,
ich habe ein neues developer-Addon gebastelt und gebe es nun zum testen frei!
Es funktioniert im Grunde genauso wie das alte (bzw. so wie das alte funktionieren sollte oder auch mal funktioniert hat).
Wenn man nach dem Bearbeiten das Frontend aktualisiert, muss man gleichzeitig im Backend eingeloggt sein, damit die Daten synchronisiert werden!
Denkt dran dem Benutzer das Recht "developer[]" zu geben (unter Optionen).
Wenn irgendwas nicht funktioniert, oder ihr Anregungen oder Fragen habt, dann schreibt es hier.
http://www.redaxo.de/180-Addondetails.html?addon_id=338
Gruß, Gregor
Hallo,
Wir haben in letzter Zeit festgestellt, dass die Kommunikation via Slack viel schneller und zielführender ist als ein Beitrag im Forum. Aufgrund der neuen und besseren Möglichkeiten der Kommunikation haben wir uns entschlossen das Forum nur noch als Archiv zur Verfügung zu stellen. Somit bleibt es weiterhin möglich hier nach Lösungen zu suchen. Neue Beiträge können nicht mehr erstellt werden.
Wir empfehlen, für deine Fragen/Probleme Slack zu nutzen. Dort sind viele kompetente Benutzer aktiv und beantworten jegliche Fragen, gerne auch von REDAXO-Anfängern! Slack wird von uns sehr intensiv und meistens "rund um die Uhr" benutzt
Selbst einladen kannst Du dich hier: https://redaxo.org/slack/
Wir haben in letzter Zeit festgestellt, dass die Kommunikation via Slack viel schneller und zielführender ist als ein Beitrag im Forum. Aufgrund der neuen und besseren Möglichkeiten der Kommunikation haben wir uns entschlossen das Forum nur noch als Archiv zur Verfügung zu stellen. Somit bleibt es weiterhin möglich hier nach Lösungen zu suchen. Neue Beiträge können nicht mehr erstellt werden.
Wir empfehlen, für deine Fragen/Probleme Slack zu nutzen. Dort sind viele kompetente Benutzer aktiv und beantworten jegliche Fragen, gerne auch von REDAXO-Anfängern! Slack wird von uns sehr intensiv und meistens "rund um die Uhr" benutzt
Selbst einladen kannst Du dich hier: https://redaxo.org/slack/
- Gregor.Harlan
- Entwickler
- Beiträge: 1130
- Registriert: 4. Jun 2007, 10:35
- Wohnort: Frankfurt am Main
developer 2
Zuletzt geändert von Gregor.Harlan am 1. Mai 2011, 11:40, insgesamt 2-mal geändert.
-
- Beiträge: 488
- Registriert: 29. Jan 2007, 18:32
- Wohnort: Sachsen
- Gregor.Harlan
- Entwickler
- Beiträge: 1130
- Registriert: 4. Jun 2007, 10:35
- Wohnort: Frankfurt am Main
-
- Beiträge: 488
- Registriert: 29. Jan 2007, 18:32
- Wohnort: Sachsen
- Gregor.Harlan
- Entwickler
- Beiträge: 1130
- Registriert: 4. Jun 2007, 10:35
- Wohnort: Frankfurt am Main
Fehler bei der Installation
Hi,
ich hab mir die aktuelle Verion des Dev. AddOn runtergeladen. Wenn ich es installieren will bekomme ich folgende Fehlermeldung:
Jemand ne Idee?
ich hab mir die aktuelle Verion des Dev. AddOn runtergeladen. Wenn ich es installieren will bekomme ich folgende Fehlermeldung:
Code: Alles auswählen
Undefined class name 'self' in /home/xxx/www/domain.de/kunde/redaxo/include/addons/developer/classes/class.rex_a338_liveEdit.inc.php on line 22
- Gregor.Harlan
- Entwickler
- Beiträge: 1130
- Registriert: 4. Jun 2007, 10:35
- Wohnort: Frankfurt am Main
so, erster eindruck: hammer!
vielen dank. mir gefallen viele dinge daran, insbesondere, dass die dateien jetzt die richtigen namen haben. außerdem ist bemerkenswert, dass der name sogar übernommen wird, wenn man ihn im backend ändert - der name der alten datei wird dann gelöscht. evtl muss man dafür unten den haken für template aktualisieren neu setzen. aber das ist echt sehr gut gelöst.
und außerdem bin ich erleichtert, dass endlich dieser dämliche zwischenscreen weg ist, der immer einen doppelten reload in opera erfordert hat.
jetzt bin ich gespannt, wie zuverlässig das langfristig läuft. aber bisher finde ich es super, danke gregor!
vielen dank. mir gefallen viele dinge daran, insbesondere, dass die dateien jetzt die richtigen namen haben. außerdem ist bemerkenswert, dass der name sogar übernommen wird, wenn man ihn im backend ändert - der name der alten datei wird dann gelöscht. evtl muss man dafür unten den haken für template aktualisieren neu setzen. aber das ist echt sehr gut gelöst.
und außerdem bin ich erleichtert, dass endlich dieser dämliche zwischenscreen weg ist, der immer einen doppelten reload in opera erfordert hat.
jetzt bin ich gespannt, wie zuverlässig das langfristig läuft. aber bisher finde ich es super, danke gregor!
Kleines Zeit-Problem wenn Server eine andere Maschine ist
Servus,
ich hatte eben das Phänomen, dass das developer v2 (wie auch schon v1) kein Update der Datei entdeckt hat und immer die Variante aus der DB genommen hat. Grund war, dass fileatime sich nach dem Speichern nicht geändert hat.
Warum dem so ist weiß ich nicht, aber es hängt wohl damit zusammen, dass mein Apache in einer virtuellen Maschine unter Win2K läuft.
Wenn man fileatime in Zeile 60 von developer/classes/class.rex_a338_liveEdit.inc.php durch filemtime ersetzt, ist das Problem behoben.
Gruß
Ingo
PS: Danke für dieses Addon!
ich hatte eben das Phänomen, dass das developer v2 (wie auch schon v1) kein Update der Datei entdeckt hat und immer die Variante aus der DB genommen hat. Grund war, dass fileatime sich nach dem Speichern nicht geändert hat.
Warum dem so ist weiß ich nicht, aber es hängt wohl damit zusammen, dass mein Apache in einer virtuellen Maschine unter Win2K läuft.
Wenn man fileatime in Zeile 60 von developer/classes/class.rex_a338_liveEdit.inc.php durch filemtime ersetzt, ist das Problem behoben.
Gruß
Ingo
PS: Danke für dieses Addon!
- SquirrelFrank
- Beiträge: 186
- Registriert: 9. Sep 2006, 22:40
- Wohnort: Österreich / Wien
- Kontaktdaten: ICQ Website
ich hab immer schon nach so einem Addon gesucht. Das steigert meine Produktivität um weiß nicht wie viel.
Der Frust, dass es nicht klappt, war nach dem Post von iwerstler auch sofort weg. jetzt klappt alles!
Ein kleiner Punkt: Ich fänd es besser, wenn die Einstellungen in einem eigenen Addon-Reiter aktiviert werden kann, und nicht mit dieser Leiste unten, ist aber Geschmackssache.
Vielen Dank für dieses Addon!
lg.
Der Frust, dass es nicht klappt, war nach dem Post von iwerstler auch sofort weg. jetzt klappt alles!
Ein kleiner Punkt: Ich fänd es besser, wenn die Einstellungen in einem eigenen Addon-Reiter aktiviert werden kann, und nicht mit dieser Leiste unten, ist aber Geschmackssache.
Vielen Dank für dieses Addon!
lg.
- Gregor.Harlan
- Entwickler
- Beiträge: 1130
- Registriert: 4. Jun 2007, 10:35
- Wohnort: Frankfurt am Main
Ich habe da auch noch einen Bug soeben festgestellt.
Ändere ich die Daten nur per FTP und spiele diese hoch, dann werden z.B. die Templates einwadnfrei geändert.
Aber wenn ich jetzt im Rex selbst an einem Template etwas änder, dann wird die Kopie im Developer-Ordner nicht geändert und behält somit Ihren alten Stand.
Das ist dann etwas nervig, wenn ich nur mal schnell etwas Online änder und mir später wieder ein Backup dieser Developerdateien herunterziehe.
VG
iceman
Ändere ich die Daten nur per FTP und spiele diese hoch, dann werden z.B. die Templates einwadnfrei geändert.
Aber wenn ich jetzt im Rex selbst an einem Template etwas änder, dann wird die Kopie im Developer-Ordner nicht geändert und behält somit Ihren alten Stand.
Das ist dann etwas nervig, wenn ich nur mal schnell etwas Online änder und mir später wieder ein Backup dieser Developerdateien herunterziehe.
VG
iceman
aber meiner einschätzung nach muss das ja so sein, sonst weiß das addon nie, was der chef ist: dateisystem oder datenbank.iceman-fx hat geschrieben:Ich habe da auch noch einen Bug soeben festgestellt.
Ändere ich die Daten nur per FTP und spiele diese hoch, dann werden z.B. die Templates einwadnfrei geändert.
Aber wenn ich jetzt im Rex selbst an einem Template etwas änder, dann wird die Kopie im Developer-Ordner nicht geändert und behält somit Ihren alten Stand.
Das ist dann etwas nervig, wenn ich nur mal schnell etwas Online änder und mir später wieder ein Backup dieser Developerdateien herunterziehe.
VG
iceman
daher in so einem fall vorher kurz das häkchen für den developer-modus ausschalten, online ändern und häkchen wieder setzen.
hilft das?
grüße
Ja, das hilft soweit. Ich denke da bloss immer nicht dran )
Ich hatte jetzt aber noch 2 andere Sachen mitbekommen.
Vereinzelt werden die Änderungen per FTP nur eingelesen, wenn ich explizit im Rex einen Bereich anklicke (Vorschau aktualisieren reichte nicht). I.D.R. klappt das aber auch beim Aktualisieren in der Vorschau.
Und dann gibt es da ein kleines Manko bei der Namensvergabe.
Wenn man z.B: ein Template angelegt hat (Name xyz) und diesen in einem späteen Verlauf umbenennt auf xyza, dann stehen 2 FTP-Dateien bereit.
Hier wäre es vielleicht besser nur den Originalnamen zu behalten oder aber direkt die Namen immer anhand der ID auszutauschen.
Gruß iceman
Ich hatte jetzt aber noch 2 andere Sachen mitbekommen.
Vereinzelt werden die Änderungen per FTP nur eingelesen, wenn ich explizit im Rex einen Bereich anklicke (Vorschau aktualisieren reichte nicht). I.D.R. klappt das aber auch beim Aktualisieren in der Vorschau.
Und dann gibt es da ein kleines Manko bei der Namensvergabe.
Wenn man z.B: ein Template angelegt hat (Name xyz) und diesen in einem späteen Verlauf umbenennt auf xyza, dann stehen 2 FTP-Dateien bereit.
Hier wäre es vielleicht besser nur den Originalnamen zu behalten oder aber direkt die Namen immer anhand der ID auszutauschen.
Gruß iceman
Das nenn ich mal praktisch, vielen Dank!
Folgende Kleinigkeiten:
- in der /lang/de_de_utf8.lang stehen noch die Strings aus dem be_search-Addon
- das "session_start();" in der config.inc.php (Zeile 53) muss "else session_start();" werden, weil sonst im Backend eine Notice geworfen wird
- wärs denkbar, beim nächsten größeren Versionssprung den live-edit-Ordner nach /files zu verschieben?
Gruß, Fabian
Folgende Kleinigkeiten:
- in der /lang/de_de_utf8.lang stehen noch die Strings aus dem be_search-Addon
- das "session_start();" in der config.inc.php (Zeile 53) muss "else session_start();" werden, weil sonst im Backend eine Notice geworfen wird
- wärs denkbar, beim nächsten größeren Versionssprung den live-edit-Ordner nach /files zu verschieben?
Gruß, Fabian
das hielte ich für riskant; als subordner von include/ ist er geschützt vor zugriffen von außen, im files-ordner nicht.ciss hat geschrieben: - wärs denkbar, beim nächsten größeren Versionssprung den live-edit-Ordner nach /files zu verschieben?
aber ich fände einen schnellen zugang auch gut. so etwas wie /include/_developer/ wäre sicher praktisch.
- Gregor.Harlan
- Entwickler
- Beiträge: 1130
- Registriert: 4. Jun 2007, 10:35
- Wohnort: Frankfurt am Main
Hallo zusammen,
es gibt ein Update!
Ich habe es allerdings kaum getestet, bin also für Meldungen dankbar, ob alles ohne Komplikationen funktioniert.
Gruß, Gregor
es gibt ein Update!
Das sollte nun klappen, dass man auch im Redaxo selbst die Module und Templates ändern kann, und die Dateien dann automatisch neu erstellt werden.iceman-fx hat geschrieben:Ich habe da auch noch einen Bug soeben festgestellt.
Ändere ich die Daten nur per FTP und spiele diese hoch, dann werden z.B. die Templates einwadnfrei geändert.
Aber wenn ich jetzt im Rex selbst an einem Template etwas änder, dann wird die Kopie im Developer-Ordner nicht geändert und behält somit Ihren alten Stand.
Ich habe es allerdings kaum getestet, bin also für Meldungen dankbar, ob alles ohne Komplikationen funktioniert.
Sollte jetzt ebenfalls funktionieren.iceman-fx hat geschrieben:Und dann gibt es da ein kleines Manko bei der Namensvergabe.
Wenn man z.B: ein Template angelegt hat (Name xyz) und diesen in einem späteen Verlauf umbenennt auf xyza, dann stehen 2 FTP-Dateien bereit.
Ist erledigt, danke für den Hinweis.ciss hat geschrieben:- in der /lang/de_de_utf8.lang stehen noch die Strings aus dem be_search-Addon
Das lässt sich so nicht lösen, da der reguläre session_start()-Aufruf im Backend erst nach dem Include des Addons geschieht, ist daher erst mal so geblieben. Ich werde aber noch mal drüber nachdenken.ciss hat geschrieben: - das "session_start();" in der config.inc.php (Zeile 53) muss "else session_start();" werden, weil sonst im Backend eine Notice geworfen wird
ciss hat geschrieben: - wärs denkbar, beim nächsten größeren Versionssprung den live-edit-Ordner nach /files zu verschieben?
Auch diese Sache habe ich erst mal so gelassen, da es mir so eigentlich gut gefällt. Aber auch hier denke ich noch mal drüber nach. Wem es nicht passt, kann ja in der /classes/class.rex_a383_liveEdit.inc.php die Pfade in den Zeilen 11 und 12 anpassen.cukabeka hat geschrieben: das hielte ich für riskant; als subordner von include/ ist er geschützt vor zugriffen von außen, im files-ordner nicht.
aber ich fände einen schnellen zugang auch gut. so etwas wie /include/_developer/ wäre sicher praktisch.
Gruß, Gregor
-
- Beiträge: 53
- Registriert: 26. Jan 2007, 18:11
- Wohnort: Marbella
- Kontaktdaten: Website
Momentan kann man neue Module / Templates nur im Backend anlegen. Wie wäre es, wenn man diese ebenfalls nur als Datei anlegt und diese dann automatisch im System angelegt werden. Dann spart man sich den kompletten Backend-Bereich der Templates und Module.
Der Sinn dahinter ist, dass ich eine Entwicklerversion lokal habe und eine live, zu der ich neue Module gerne einfach nur uploaden möchte, ohne sie vorher im backend anlegen zu müssen.
Ansonsten ist das schon mal ein geniales Addon, das die Arbeit als Developer wesentlich erleichtert.
Der Sinn dahinter ist, dass ich eine Entwicklerversion lokal habe und eine live, zu der ich neue Module gerne einfach nur uploaden möchte, ohne sie vorher im backend anlegen zu müssen.
Ansonsten ist das schon mal ein geniales Addon, das die Arbeit als Developer wesentlich erleichtert.
Ich habe mir gerade die aktuelle Version installiert.
Aber jetzt erhalte ich bereit bei der Installation den folgenden Fehler, welcher bei mir sonst erst bei einem Import eines Backups kam:
Fatal error: Undefined class name 'self' in /www/htdocs/kiddream/cmsweb/redaxo/include/addons/developer/classes/class.rex_a338_liveEdit.inc.php on line 36
Er versteht den Aufruf per self::_get... nicht.
Hat das einen grund, warum es einmal mit self:: und einmal mit rex_a338_liveEdit:: erfolgt?
Aber jetzt erhalte ich bereit bei der Installation den folgenden Fehler, welcher bei mir sonst erst bei einem Import eines Backups kam:
Fatal error: Undefined class name 'self' in /www/htdocs/kiddream/cmsweb/redaxo/include/addons/developer/classes/class.rex_a338_liveEdit.inc.php on line 36
Er versteht den Aufruf per self::_get... nicht.
Hat das einen grund, warum es einmal mit self:: und einmal mit rex_a338_liveEdit:: erfolgt?
Code: Alles auswählen
function generateModuleFiles()
{
global $REX;
rex_deleteDir($this->modulePath, 0);
$sql = new rex_sql;
$sql->setQuery('SELECT id,name,ausgabe,eingabe FROM '.$REX['TABLE_PREFIX'].'module');
for ($i=0; $i<$sql->getRows(); $i++) {
$filename = self::_getFilename($sql->getValue('id').'.output.'.$sql->getValue('name').".module.php");
$file = $this->modulePath.$filename;
rex_put_file_contents($file, $sql->getValue('ausgabe'));
$filename = rex_a338_liveEdit::_getFilename($sql->getValue('id').'.input.'.$sql->getValue('name').".module.php");
$file = $this->modulePath.$filename;
rex_put_file_contents($file, $sql->getValue('eingabe'));
$sql->next();
}
}
Ich habe jetzt das self mit dem rex-Ausdruck ersetzt und es klappt.
Scheint wieder das PHP4->PHP5-Problem von weiter oben zu sein.
Noch ein anderes Problem.
Bei der alten Version hatte ich am unteren Rand diese 2 Schaltflächen zum ändern des Editmodus (Module/Templates).
Diese sind nun trotz Aktivierung nicht mehr da.
Ist das normal oder fehlt da was?
EDIT: ich habe mit Quellcodevergleichen erstmal festgestellt, dass weder der Extensionpoint PAGE-HADER noch der Output ausgeführt werden. Auch andere Addons mit Zugriff aus EXTPoints greifen nicht.
Kann mir einer auf die schnelle sagen, was die EXTP als Voraussetzung (Server, Rechte tc.) benötigen?
Lasse ich das ganze auf einem anderen Server bei einem anderen Provider laufen, dann schaut es gut aus.
Scheint wieder das PHP4->PHP5-Problem von weiter oben zu sein.
Noch ein anderes Problem.
Bei der alten Version hatte ich am unteren Rand diese 2 Schaltflächen zum ändern des Editmodus (Module/Templates).
Diese sind nun trotz Aktivierung nicht mehr da.
Ist das normal oder fehlt da was?
EDIT: ich habe mit Quellcodevergleichen erstmal festgestellt, dass weder der Extensionpoint PAGE-HADER noch der Output ausgeführt werden. Auch andere Addons mit Zugriff aus EXTPoints greifen nicht.
Kann mir einer auf die schnelle sagen, was die EXTP als Voraussetzung (Server, Rechte tc.) benötigen?
Lasse ich das ganze auf einem anderen Server bei einem anderen Provider laufen, dann schaut es gut aus.
Zuletzt geändert von iceman-fx am 5. Dez 2008, 16:45, insgesamt 1-mal geändert.
- Gregor.Harlan
- Entwickler
- Beiträge: 1130
- Registriert: 4. Jun 2007, 10:35
- Wohnort: Frankfurt am Main
Ganz genau, werd ich beim nächsten Update anpassen.iceman-fx hat geschrieben:Ich habe jetzt das self mit dem rex-Ausdruck ersetzt und es klappt.
Scheint wieder das PHP4->PHP5-Problem von weiter oben zu sein.
Hat der Benutzer auch wirklich das Recht devolper[] (auch Admins brauchen es)?iceman-fx hat geschrieben:Noch ein anderes Problem.
Bei der alten Version hatte ich am unteren Rand diese 2 Schaltflächen zum ändern des Editmodus (Module/Templates).
Diese sind nun trotz Aktivierung nicht mehr da.
Ist das normal oder fehlt da was?
Gruß, Gregor
OK, jetzt klappt es. Es fehlte das Recht beim Admin.gr-ha hat geschrieben:Ganz genau, werd ich beim nächsten Update anpassen.iceman-fx hat geschrieben:Ich habe jetzt das self mit dem rex-Ausdruck ersetzt und es klappt.
Scheint wieder das PHP4->PHP5-Problem von weiter oben zu sein.
Hat der Benutzer auch wirklich das Recht devolper[] (auch Admins brauchen es)?iceman-fx hat geschrieben:Noch ein anderes Problem.
Bei der alten Version hatte ich am unteren Rand diese 2 Schaltflächen zum ändern des Editmodus (Module/Templates).
Diese sind nun trotz Aktivierung nicht mehr da.
Ist das normal oder fehlt da was?
Gruß, Gregor
Ist aber etwas irre führend, da der Admin ja sonst alle Rechte auch hat.
Auf jeden Fall danke für den Tipp.
Gruß
iceman
welche rechte müssen denn auf dem server liegen? ich habe hier eine lokale installation, da läuft alles wunderbar. auf dem live-server zickt der developer-mode rum: änderungen im filesystem werden einfach ignoriert.
gibt es bestimmte rechte, die ich den FTP-dateien geben muss, damit sie von developer weiterverarbeitet werden?
gibt es bestimmte rechte, die ich den FTP-dateien geben muss, damit sie von developer weiterverarbeitet werden?