WaBis

walter.bislins.ch

Aufbau einer Wiki-Instanz

Auf einer Website lassen sich beliebig viele Wiki-Instanzen erzeugen. Die Wiki Software, also die Wiki-Engine, muss nur einmal vorhanden sein. Jede Wiki-Instanz entspricht einem eigenen Wiki mit eigener Konfiguration. Die Wikis einer Website lassen sich jedoch per Config-Datei beliebige gruppieren, sodass die Seiten der verschiedenen Wikis untereinander verlinkt werden können.

Eine Wiki-Instanz entspricht einem ASP-File, welches den nachfolgenden Aufbau hat. Der Aufruf dieses ASP-Files per URL im Browser entspricht dem Aufruf des enstprechenden Wikis der Website.

ASP-File einer Wiki-Instanz

Die folgenden Verzeichnisse sind für das Beispiel definiert:

/wiki_app/
enthält die Wiki-Engine (alle *.inc Dateien usw.)
/demo/
enthält das ASP-File der Demo Wiki-Instanz index.asp
/demo/shared/
enthält alle Dateien, die mit allen Wiki-Instanzen geteilt werden
/demo/shared/layout/
enthält die Dateien, die das Layout der Seite erzeugen (layout.inc, styles.css)
/demo/shared/wiki_data/
enthält die Config-Datei und die Datei mit den Registrierten Usern

index.asp im Verzeichnis /demo/

<%@ Language=VBScript %>
<% option explicit %>
<!--#include file="../demo/shared/wikidefaults.inc" -->
<!--#include file="../demo/shared/layout/layout.inc" -->
<%
' Wiki configuration
WIKI_ID           = "Demo"
WIKI_ROOT         = "../"
TOOLBAR_POSITION  = ""
SHOW_BLIND_LINKS  = true

%>
<!--#include file="../wiki_app/lang_de.inc" -->
<!--#include file="../wiki_app/wikiengine.inc" -->

Beschreibung

Die markierten includes sind nötig, um eine Wiki-Instanz zu bilden. Alle Pfade sind relativ zum ASP-File index.asp:

wikidefaults.inc
definiert alle konfigurierbaren Variablen und besetzt sie mit Standardwerten, welche im ASP-File oder per Config-Datei überschrieben werden können.
lang_de.inc
Enthält alle sprachabhängigen Texte. Durch das Austauschen dieser Datei kann das Wiki in einer beliebigen anderen Sprache betrieben werden.
wikiengine.inc
Enthält die Wiki-Engine, welche die eigentliche Wiki-Anwenung programmiert.
layout.inc
Ist eine Datei, in der das Seitenlayout des Wikis programmiert ist. Alle Wiki-Instanzen, die dasselbe Aussehen haben sollen, können dasselbe layout.inc verwenden.
index.asp
Hier müssen ein paar Wiki-spezifische Einstellungen vorgenommen werden, die wichtigsten sind oben aufgeführt.

Konfiguration der Wiki-Instanz

Viele Einstellungen lassen sich in der Config-Datei tätigen. Einige müssen jedoch im ASP-File einer Wiki-Instanz gemacht werden, damit die Config-Datei überhaupt gefunden wird und das Wiki dort seine spezielle Einstellungen finden kann. Die folgenden zwei Einstellungen sind zwingend:

Zwingende Einstellungen

WIKI_ROOT = "../"
Pfad des Wurzel-Verzeichnisses relativ zum ASP-File. Von diesem Wurzel-Verzeichnis aus werden alle anderen Dateien gesucht. Da sich in diesem Beispiel das ASP-File im Verzeichnis /demo/ befindet, erreicht man das Wurzelverzeichnis mit der Angabe "../".
WIKI_ID = "Demo"
Eindeutiger Name für das Wiki. Unter diesem Namen findet das Wiki seine Einstellungen in der Config-Datei. Ausserdem werden aus diesem Namen einige Arbeits-Verzeichnisse abgeleitet, wenn sie nicht explizit an anderer Stelle (Wikidefaults.inc, Config-Datei, ASP-File) definiert sind.

Wiki-Defaults

In der Datei /demo/shared/wikidefaults.inc werden Wiki-Einstellungen vorgenommem, welche für alle Wiki-Instanzen einer Website gelten sollen. Sie sieht z.B. wiefolgt aus:

wikidefaults.inc

<!--#include file="../../wiki_app/wikiglobals.inc" -->
<%
'---------------------------------------------------------------------
' Common definitions

WEBSITE_ID        = "My Name"
HTML_PUBLISHER    = "My Name: http://www.mysite.com"

' paths relative to WIKI_ROOT:
WIKI_CONFIG       = "demo/shared/wiki_data/wikiconfig.txt"
WIKI_USERS        = "demo/shared/wiki_data/wikiusers.txt"
CACHE_ROOT        = "demo/shared/wiki_cache/"
INDEX_ROOT        = "demo/shared/wiki_index/"

JSMATH_PACKET     = "jsMath/easy/load.js"
'MATHJAX_PACKET    = "MathJax/MathJax.js"
'MATHJAX_PACKET    = "http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML"

%>

Einstellungen

WIKI_CONFIG = "demo/shared/wiki_data/wikiconfig.txt"
Pfad zur Config-Datei relativ zu WIKI_ROOT. Wenn diese Variable nicht definiert wird, wird keine Config-Datei eingelesen und es erscheint eine Fehlermeldung.
WIKI_USERS = "demo/shared/wiki_data/wikiusers.txt"
Pfad relativ zu WIKI_ROOT zu einer Datei, in der Benutzer mit ihren Zugriffsrechten auf die Wikis aufgelistet werden. Wird diese Variable nicht definiert erscheint eine Fehlermeldung.
CACHE_ROOT = "demo/shared/wiki_cache/"
An diesem Ort werden die ins HTML-Format umgewandelten Wiki-Seiten zwischengespeichert. Diese Seiten werden angezeigt, solange die zugehörige Wiki-Seite nicht verändert wird. Dadurch erspart man sich das Umwandeln von Wiki nach HTML bei jedem Aufruf.
INDEX_ROOT = "demo/shared/wiki_index/"
An diesem Ort werden die Such-Indizes der Seiten abgelegt.

Es empfiehlt sich aus Datenschutzgründen, die obigen Ordner und Dateien in einem Verzeichnis auf dem Server abzulegen, das per Browser nicht erreichbar ist!

JSMATH_PACKET = "jsMath/easy/load.js"
Falls das Mathematik-Modul installiert werden soll, muss dieser Pfad angegeben werden.

Weitere Einstellunen

ENABLE_EDIT = true
Wenn das Wiki nicht editiert werden soll, kann dieser Wert auf false gesetzt werden.
ENABLE_UPLOAD = true
Aktiviert die Upload-Funktion.
EDIT_LOCKED = false
Ermöglicht das Editieren per mit #LOCKED gesperrter Seiten.
TEXTEDIT_LINES = 25
Gibt die Grösse des Editier-Fensters in Anzahl Zeilen an.
TOOLBAR_POSITION = "top"
Gibt die Position (top, middle, bottom) des Wiki-Toolbar an. Mit "" kann der Toolbar auch deaktiviert werden, zum Beispiel wenn die Funktionen in einem Menu auf der Seite zur Verfügung gestellt werden.
More Page Infos / Sitemap
Created Montag, 22. Juni 2009
Scroll to Top of Page
Changed Samstag, 18. Juli 2015