Rene (Diskussion | Beiträge) Probleme mit Backslash |
Rene (Diskussion | Beiträge) Version 0.65 - slash Problem behoben, auch externe Links mit Zahlen ergeben neues Fenster |
||
| Zeile 1: | Zeile 1: | ||
Mediawiki Erweiterung um den HTML-Code vor der Auslieferung noch zu verändern. | Mediawiki-Erweiterung um den HTML-Code vor der Auslieferung durch den Server noch zu verändern. | ||
==Funktion== | ==Funktion== | ||
| Zeile 8: | Zeile 6: | ||
*Alle Überschriften der Stufe 2 (==) erhalten am rechten Rand einen ~^ als Link auf den Seitenanfang. | *Alle Überschriften der Stufe 2 (==) erhalten am rechten Rand einen ~^ als Link auf den Seitenanfang. | ||
*Bild [[Bild:Bearbeiten.png]] statt Text '''Bearbeiten''' um einen Abschnitt zu bearbeiten | *Bild [[Bild:Bearbeiten.png]] statt Text '''Bearbeiten''' um einen Abschnitt zu bearbeiten | ||
*Werkzeug Spoiler aufdecken einbinden | *Werkzeug Spoiler aufdecken als Javascript-Button einbinden | ||
* | *Pfeile <~, ~>,~^ und ~V im Artikel durch Bilder (<~,~>,~^,~V) ersetzen. | ||
:'''Hinweis:''' ''Die Erweiterung ersetzt die Pfeile auch im Bereich '''<nowiki><pre></nowiki>''' und '''<nowiki><nowiki></nowiki>'''. Die einzige Möglichkeit dies zu verhindern besteht darin statt dem Zeichen ~ im Text den Code &#126; zu schreiben.'' | |||
==Probleme== | ==Probleme== | ||
Wer einen Fehler findet bitte hier melden Danke. -- {{Benutzer:Rene/sig}} 23:16, 16. Sep. 2007 (CEST) | Wer einen Fehler findet bitte hier melden Danke. -- {{Benutzer:Rene/sig}} 23:16, 16. Sep. 2007 (CEST) | ||
==Programmcode== | ==Programmcode== | ||
Aktuell läuft auf Stargate-Wiki der folgende Programmcode. Die Erweiterung benutzt den MediaWiki Hook '''OutputPageBeforeHTML'''. | |||
<pre> | <pre> | ||
| Zeile 31: | Zeile 22: | ||
$wgExtensionCredits['other'][] = array( | $wgExtensionCredits['other'][] = array( | ||
'name' => 'SGHtml', | 'name' => 'SGHtml', | ||
'version' => '0. | 'version' => '0.65', | ||
'author' => '[http://www.stargate-wiki.de/index.php/User:Admin Rene Raule]', | 'author' => '[http://www.stargate-wiki.de/index.php/User:Admin Rene Raule]', | ||
'url' => 'http://www.stargate-wiki.de/index.php/Rene/SGHtml', | 'url' => 'http://www.stargate-wiki.de/index.php/Rene/SGHtml', | ||
'description' => 'MediaWiki Html | 'description' => 'MediaWiki Html veräendern um Stargate-Wiki Besonderheiten einzufügen<br />1. Externe Seiten in eigenem Fenster<br />2. Bild als | ||
bearbeiten-Link<br />3. Link zum Seitenanfang<br />4. Spoiler aufdecken<br />5. Zusätzliche meta-Keywords' | |||
); | ); | ||
| Zeile 43: | Zeile 35: | ||
/* Externe Seiten in eigenem Fenster */ | /* Externe Seiten in eigenem Fenster */ | ||
'class="external text"' => 'class="external text" target="_blank"', | 'class="external text"' => 'class="external text" target="_blank"', | ||
'class="external autonumber"' => 'class="external autonumber" target="_blank"', | |||
'<~' => '<img src="/skins/common/images/16x16/blue_left.gif" alt="<-" />', | '<~' => '<img src="/skins/common/images/16x16/blue_left.gif" alt="<-" />', | ||
'~>' => '<img src="/skins/common/images/16x16/blue_right.gif" alt="->" />', | '~>' => '<img src="/skins/common/images/16x16/blue_right.gif" alt="->" />', | ||
| Zeile 58: | Zeile 51: | ||
// Test ob H2 Ueberschrift, nur dann wird der Link an den Seitenanfang eingefuegt. | // Test ob H2 Ueberschrift, nur dann wird der Link an den Seitenanfang eingefuegt. | ||
$ersatz = '"<h$1>".($1==2?"'; | $ersatz = '"<h$1>".($1==2?"'; | ||
$ersatz .= '<a href=\"#top\" title=\"Seiten Anfang\" style=\"vertical-align: top; float: right;\"><img src=\"/skins/common/images/16x16/blue_up.gif\" alt=\"^\" /></a>'; | $ersatz .= '<a href=\"#top\" title=\"Seiten Anfang\" style=\"vertical-align: top; float: right;\"><img | ||
src=\"/skins/common/images/16x16/blue_up.gif\" alt=\"^\" /></a>'; | |||
$ersatz .= '":"").'; | $ersatz .= '":"").'; | ||
$ersatz .= '"<span class=\"mw-headline\">$4</span> <a href=\"$2\" title=\"$3\">'; | $ersatz .= '"<span class=\"mw-headline\">$4</span> <a href=\"$2\" title=\"$3\">'; | ||
$ersatz .= '<img src=\"/skins/common/images/16x16/edit.png\" alt=\"[bearbeiten]\" style=\"vertical-align:top; margin-top:-3px;\" /></a>"'; | $ersatz .= '<img src=\"/skins/common/images/16x16/edit.png\" alt=\"[bearbeiten]\" style=\"vertical-align:top; margin-top:-3px;\" /></a>"'; | ||
$text = preg_replace($suchen,$ersatz,$text); | $text = stripslashes(preg_replace($suchen,$ersatz,$text)); | ||
/* Spoiler aufdecken einbinden (geht nur im Text) */ | /* Spoiler aufdecken einbinden (geht nur im Text) */ | ||
| Zeile 84: | Zeile 78: | ||
</script>'; | </script>'; | ||
$ | $btext = $jscript.'<button '; | ||
$btext .= 'style="position:fixed; left: 155px; top: 0px; z-index:50;'; | |||
$btext .= ' border: solid 1px black;'; | |||
$btext .= ' background-image:url(/skins/common/images/slice_button.gif); background-repeat: repeat-x;'; | |||
$btext .= ' padding: 0x 4x; font-size:x-small;"'; | |||
$btext .= ' onclick="cssClassChange(\'span\',\'spoiler\',\'spoilerOK\',\'Spoiler verdecken\',\'Spoiler aufdecken\',this)"'; | |||
$btext .= ' type="button"'; | |||
$btext .= '>Spoiler aufdecken</button>'; | |||
$text = $btext.$text; | |||
} | } | ||
| Zeile 94: | Zeile 96: | ||
$out->mKeywords[] = 'Stargate Atlantis'; | $out->mKeywords[] = 'Stargate Atlantis'; | ||
$out->mKeywords[] = 'Stargate Universe'; | $out->mKeywords[] = 'Stargate Universe'; | ||
$out->mKeywords[] = 'Stargate | $out->mKeywords[] = 'Stargate Lexikon'; | ||
$out->mKeywords[] = 'Stargate Wikipedia'; | |||
return true; | return true; | ||