Hallo!
Zur Zeit wird die Seite in inc.generate_code.php aufgebaut, indem das Layout durchlaufen wird, und jeder Container befüllt wird, wenn er gefunden wird.
Diese Logik würde ich gern geändert sehen: Der Header sollte als letztes ersetzt werden!
Hintergrund der Idee:
Ich hätte gern 2 globale Arrays, eines für CSS- und für JS-Dateien, die von Sefrengo mit den beim Layout angebenen CSS- und JS-Dateien vorbelegt werden. Ein Modul hat nun Zugriff auf diese beiden Arrays und kann selber CSS- und JS-Dateien und auch solchen Code zufügen, oder auch ersetzen. Damit ist es dann zum Beispiel einem Eingabefomularmodul möglich angepaßten JS-Code in den Header einzufügen um Formularüberprüfungen und interaktive Objekte zu erzeugen.
Ich denk da an sowas: http://www.colorful-sky.de/side123.html, das Forumlar wechselt den Drachen aus, je nach gewählter Farbe, füllt bei Eingabe der PLZ (und verlassendes Feldes) den Ort aus, überprüft die E-Mailadresse...
Momentan hab ich ein eigenes Layout dafür mit dem ganzen JS im Header, hätte ich mehrere solcher Formulare müßte ich für jedes ein Layout anlegen, und muß immer händisch den Code anpassen. Dabei hat ein Modul wie "Kontaktformular" schon fast alle Informationen um den Code selber zu erzeugen.
In Zukunft würde dann das Formular-Modul den Code aus den Angaben in der Modulkonfig (Pflichtfelder, Feldtyp, ...) erzeugen und in das JS-Array für den Header schreiben. Sefrengo würde am Ende des Seitenaufbaus dann den Header erzeugen und auch den JS-Code des Moduls in den Header schreiben.
Tschüss
Tiggr
Ich habe mir bei z.B fremden PHP-Scripten oder auch bei JQuery so beholfen.
Zwei Ansatzpunkte (Zwischenlösungen) wären dabei ohne ein neues Layout anzulegen
a ) Einen Container (z.B Sourcecode) vor dem </head> anlegen und auf der gewünschten Seite mit Inhalt (JS,CSS) füllen
b ) Du manipulierst den Output (Beispiel Ketti's Navigation2).
Hiho!
Lösung a) hab ich selbst schon verwendet! Für ne Googlemap-Integration ohne das Modul dafür: http://www.colorful-sky.de/page122.html
Aber Module die JS in den Header schieben können wären prima, das können garnicht so viele CMS-Systeme, wäre sehr Web 2.0, und ich glaube, auch nicht so schwer zu bauen...
Tschüss
Tiggr
Ich find Tiggr's Idee Klasse. Das wär wirklich ein Schritt in die richigie Richtung, denn:
Hiho!
Nee, noch nicht, ich pfusch auch nicht gern am Output rum... :-(
Ein geregelter Weg mit dem sowas Sefrengo-Komform und "richtig" geht wäre besser. Muß ja nicht sofort sein, nur wäre mal ein Ziel!
Tiggr
Auf dem Weg könnten Module auch eigene Metatags hinzufügen.
Gruß, Peter
Wollte einfach nochmal kurz nachfragen, ob sich in dieser Hinsicht etwas tut...
Gibt es eigentlich irgendwo eine Liste der Dinge, die demnächst umgesetzt werden? Sprich wo geht die Entwicklung hin?
Die Roadmap ist ja nur sehr grob...
Hiho!
Was ich mich gerade frage ist: Könnte man das nicht als Plugin realisieren?
Ich probiere das heute Abend mal aus!
Und noch ein Edit: Ja, müßte gehen, im Plugin-Autstart ein globales Objekt instanzieren, das dann alle Module verwenden können. und vor der Ausgabe in den Header pumpen, so wie SmartyPants ja auch die Ausgabe verändert!
Tschüss
Tiggr (aka Marcus)
Hiho!
Ich habe das ganze inzwischen als Plugin mit kleinem Core-Hack umgesetzt, der Thread hier kann dann wahrscheinlich geschlossen werden.
Da gehts weiter: http://forum.sefrengo.org/index.php?showtopic=1401
Achja, es ist Methode b geworden! ;-)
Tschüss
Tiggr (aka Marcus)
Unterstützt von Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)