Willkommen, Gast ( Anmelden | Registrierung )     [ Hilfe | Mitglieder | Suche ]

 
Reply to this topicStart new topic
> Header als letztes abarbeiten, Module fügen JS und CSS hinzu (Web2.0-Fähigkeit)
Tiggr
Beitrag Sun. 4. March 2007, 12:25
Beitrag #1


Advanced Member
*******

Gruppe: AdvancedMembers
Beiträge: 386
Mitglied seit: 12.07.2006
Mitglieds-Nr.: 136



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


--------------------
@bout Kites: Colorful Sky - Typo3
@bout LARP: Orga ohne Namen - Sefrengo
@bout LARP: LARP-Welt - CakePHP
@bout Kites: Rodgauer Workshop - Contao
Go to the top of the page
 
+Quote Post
Guest_bkm_*
Beitrag Sun. 4. March 2007, 14:44
Beitrag #2





Guests






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).
Go to the top of the page
 
+Quote Post
Tiggr
Beitrag Sun. 4. March 2007, 14:56
Beitrag #3


Advanced Member
*******

Gruppe: AdvancedMembers
Beiträge: 386
Mitglied seit: 12.07.2006
Mitglieds-Nr.: 136



Hiho!

Lösung a) hab ich selbst schon verwendet! wink.gif 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


--------------------
@bout Kites: Colorful Sky - Typo3
@bout LARP: Orga ohne Namen - Sefrengo
@bout LARP: LARP-Welt - CakePHP
@bout Kites: Rodgauer Workshop - Contao
Go to the top of the page
 
+Quote Post
smail
Beitrag Sun. 4. March 2007, 18:53
Beitrag #4


Advanced Member
********

Gruppe: AdvancedMembers
Beiträge: 587
Mitglied seit: 01.07.2006
Mitglieds-Nr.: 62



Ich find Tiggr's Idee Klasse. Das wär wirklich ein Schritt in die richigie Richtung, denn:
  • er gibt schon viele "unobtrusive" js-Bibliotheken, die coole Dinge ermöglichen
  • Module, die solche Funktionen implementieren wollen, sind unabhängig, d.h. eine saubere Trennung von Modulen und Layouts
  • es erleichtert die Installation von Modulen, die solche Funktionen implementieren (Bisher musste die js Bibliothek von Hand in den Header eingbaut werden)
Einzige Frage meinerseits:
Was passiert, wenn z.B. zwei Module die gleiche Bibliothek einbinden, weil beide sie benötigen? Das wollen wir doch auch nicht...


Bisher hab ich mir auch mit der "Layoutvariante" geholfen. Bei einer Bildergalerie mit Lightbox gabs dann ein extra Layout (brauchte man in diesem Fall ohnehin smile.gif ) wurde das einfach in den Header hard-gecoded.

Ansonsten galt die Friss-oder-stirb-Taktik: Benötigt ein Modul eine bestimmte Bibliothek, kam sie einfach in Layout rein, auch wenn dieses Layout in 90% der Fälle diese Modul am Ende gar nicht enthielt und die Bibliothek daher nicht benötigte.

Gruß
Jan


--------------------
Zufall ist das Pseudonym, das Gott sich zugelegt hat, wenn er unerkannt bleiben möchte.
Go to the top of the page
 
+Quote Post
Guest_bkm_*
Beitrag Sun. 4. March 2007, 23:57
Beitrag #5





Guests






ZITAT(Tiggr)
Aber Module die JS in den Header schieben können wären prima,......

@Tiggr
Hast Du Dir Variante b denn schon mal angeschaut ?
Go to the top of the page
 
+Quote Post
Tiggr
Beitrag Mon. 5. March 2007, 09:58
Beitrag #6


Advanced Member
*******

Gruppe: AdvancedMembers
Beiträge: 386
Mitglied seit: 12.07.2006
Mitglieds-Nr.: 136



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


--------------------
@bout Kites: Colorful Sky - Typo3
@bout LARP: Orga ohne Namen - Sefrengo
@bout LARP: LARP-Welt - CakePHP
@bout Kites: Rodgauer Workshop - Contao
Go to the top of the page
 
+Quote Post
MaZderMind
Beitrag Thu. 8. March 2007, 22:35
Beitrag #7


Advanced Member
********

Gruppe: AdvancedMembers
Beiträge: 680
Mitglied seit: 09.08.2006
Wohnort: nähe Mainz
Mitglieds-Nr.: 182



Auf dem Weg könnten Module auch eigene Metatags hinzufügen.

Gruß, Peter
Go to the top of the page
 
+Quote Post
Tiggr
Beitrag Thu. 8. March 2007, 23:12
Beitrag #8


Advanced Member
*******

Gruppe: AdvancedMembers
Beiträge: 386
Mitglied seit: 12.07.2006
Mitglieds-Nr.: 136



ZITAT(MaZderMind @ Thu. 8. March 2007, 22:35) *
Auf dem Weg könnten Module auch eigene Metatags hinzufügen.


Stimmt, daran hatte ich noch garnicht gedacht! smile.gif Noch ein Pro-Argument!


--------------------
@bout Kites: Colorful Sky - Typo3
@bout LARP: Orga ohne Namen - Sefrengo
@bout LARP: LARP-Welt - CakePHP
@bout Kites: Rodgauer Workshop - Contao
Go to the top of the page
 
+Quote Post
smail
Beitrag Mon. 18. June 2007, 21:28
Beitrag #9


Advanced Member
********

Gruppe: AdvancedMembers
Beiträge: 587
Mitglied seit: 01.07.2006
Mitglieds-Nr.: 62



Wollte einfach nochmal kurz nachfragen, ob sich in dieser Hinsicht etwas tut... tongue.gif
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...


--------------------
Zufall ist das Pseudonym, das Gott sich zugelegt hat, wenn er unerkannt bleiben möchte.
Go to the top of the page
 
+Quote Post
Tiggr
Beitrag Tue. 14. August 2007, 14:12
Beitrag #10


Advanced Member
*******

Gruppe: AdvancedMembers
Beiträge: 386
Mitglied seit: 12.07.2006
Mitglieds-Nr.: 136



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)


--------------------
@bout Kites: Colorful Sky - Typo3
@bout LARP: Orga ohne Namen - Sefrengo
@bout LARP: LARP-Welt - CakePHP
@bout Kites: Rodgauer Workshop - Contao
Go to the top of the page
 
+Quote Post
Tiggr
Beitrag Thu. 16. August 2007, 19:20
Beitrag #11


Advanced Member
*******

Gruppe: AdvancedMembers
Beiträge: 386
Mitglied seit: 12.07.2006
Mitglieds-Nr.: 136



Hiho!

Ich habe das ganze inzwischen als Plugin mit kleinem Core-Hack umgesetzt, der Thread hier kann dann wahrscheinlich geschlossen werden.

Da gehts weiter: Extended Header

Achja, es ist Methode b geworden! ;-)

Tschüss
Tiggr (aka Marcus)


--------------------
@bout Kites: Colorful Sky - Typo3
@bout LARP: Orga ohne Namen - Sefrengo
@bout LARP: LARP-Welt - CakePHP
@bout Kites: Rodgauer Workshop - Contao
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 Besucher lesen dieses Thema (Gäste: 1 | Anonyme Besucher: 0)
0 Mitglieder:

 



RSS Vereinfachte Darstellung Aktuelles Datum: 26.4.24 - 13:59

Sefrengo ist ein eingetragenes Markenzeichen und urheberrechtlich geschützt.
Copyright 2009 Design & Daten, Alle Rechte vorbehalten.