Menü aufrufen
Toggle preferences menu
Persönliches Menü aufrufen
Nicht angemeldet
Ihre IP-Adresse wird öffentlich sichtbar sein, wenn Sie Änderungen vornehmen.

Benutzer:Rene/NewArticle: Unterschied zwischen den Versionen

aus Stargate Wiki, dem deutschsprachigen Stargate-Lexikon
Code V0.90
Neue Version 0.9
Zeile 1: Zeile 1:
==Beschreibung==
==Beschreibung==
Die Erweiterung NewArticle bietet immer wenn ein neuer Artikel angelegt wird eine Auswahl an Vorlagen an die durch anklicken in das Editfeld eingefügt wird. Sinn ist es das Erstellen von Artikeln nach den [[Hilfe:Artikelvorlagen|Artikelvorlagen]] zu erleichtern.
Die Erweiterung '''NewArticle''' erzeugt immer wenn ein neuer Artikel angelegt wird, eine Auswahl an Vorlagen an die durch anklicken in das Editfeld eingefügt wird. Sinn ist es das Erstellen von Artikeln nach den [[Hilfe:Artikelvorlagen|Artikelvorlagen]] zu erleichtern.


===Technik===
===Technik===
NewArticle ist eine MediaWiki Erweiterung die sich an den Hook AlternateEdit anhängt. Dabei wird bei jedem Aufruf des Editors geprüft ob es sich um einen neuen Artikel handelt. Ist dies der Fall wird die Steuerdatei [[MediaWiki:NewArticle]] ausgelesen und entsprechend der Einleitungstext erzeugt. Das Einfügen des Vorlage erfolgt dann online über eine Javascript.
NewArticle ist eine MediaWiki Erweiterung die sich an den Hook AlternateEdit anhängt. Dabei wird bei jedem Aufruf des Editors geprüft ob es sich um einen neuen Artikel handelt. Ist dies der Fall wird die Steuerdatei [[MediaWiki:NewArticle]] ausgelesen und entsprechend der Einleitungstext erzeugt. Das Einfügen des Vorlage erfolgt dann online über eine Javascript. Dazu werden die Vorlagen bei der Erstellung der Seite eingelesen und in eine Javascript Funktion verpackt.
 
Ab der Version 0.9 prüft die Erweiterung auf die Anweisungen <nowiki><noinclude></nowiki> und <nowiki><includeonly></nowiki>. Diese werden erkannt und entsprechend ausgewertet.


''Hinweis'' Es wird geprüft ob es sich um einen neuen Artikel handelt, d.h. ein bereits gespeicherte Artikel ohne Inhalt wird nicht als neu angesehen.
''Hinweis'' Es wird geprüft ob es sich um einen neuen Artikel handelt, d.h. ein bereits gespeicherte Artikel ohne Inhalt wird nicht als neu angesehen.
Zeile 11: Zeile 13:


<pre>
<pre>
Parameter1==Parameter2
Parameter1==Wert1
//
//
Parameter3==Parameter4
Parameter2==Wert2
</pre>
</pre>


Die einzelnen Befehlszeilen werden jeweils durch eine Zeile mit der Zeichenfolge // getrennt.
Die einzelnen Befehlszeilen werden jeweils durch eine Zeile mit der Zeichenfolge // getrennt.


Folgende Werte können für den ersten Parameter in der Zeile benutzt werden:
Folgende Werte können für den Parameter benutzt werden:
*Start - Der Wert nach dem Trennzeichen (==) wird vor der Liste der Vorlagen ausgegeben. Der Text wird direkt als HTML ausgegeben, MediWiki Code wird '''nicht''' ausgewertet.
*Start - Der Wert nach dem Trennzeichen (==) wird vor der Liste der Vorlagen ausgegeben. Der Text wird direkt als HTML ausgegeben, MediWiki Code wird '''nicht''' ausgewertet.
*End - Wie beim Parameter Start, nur wird der Text als Abschluss nach der Liste der Vorlagen ausgegeben.
*End - Wie beim Parameter Start, nur wird der Text als Abschluss nach der Liste der Vorlagen ausgegeben.
*Einleitung - Der Wert wird in der ersten Zeile der Auswahlbox angezeigt. Wird der Parameter nicht angegeben so erscheint dort ''Bitte wählen''.


Bei allen anderen Zeilen ist der erste Parameter der Text der in der Liste angezeigt wird und der zweite Parameter ist der Name des Artikels, ohne die Namensraumangabe. Das folgende Beispiel
Bei allen anderen Zeilen ist der Parameter der Text der in der Liste angezeigt wird und der Wert ist der Name des Artikels, ohne die Namensraumangabe. Das folgende Beispiel


<pre>
<pre>
Zeile 42: Zeile 45:


==Probleme & Ideen==
==Probleme & Ideen==
*In der aktuellen Version wird einfach der komplette Artikel eingefügt. Dabei werden die Anweisungen <nowiki><noinclude> und <includeonly></nowiki> nicht ausgewertet und erscheinen im Artikel.
:Als Abhilfe wird die nächste Version den Artikeltext nach dem einlesen aus der Datenbank per RegExpr filtern.
*Es finden noch kaum Prüfungen auf Fehler statt.
*Es finden noch kaum Prüfungen auf Fehler statt.
*Text als Wikitext interpretieren.


==Code==
==Code==