Index: branches/2.8.x/CHANGELOG
===================================================================
--- branches/2.8.x/CHANGELOG	(revision 1778)
+++ branches/2.8.x/CHANGELOG	(revision 1779)
@@ -13,6 +13,9 @@
 
 
 
+09 Oct-2012 Build 1779 Dietmar Woellbrink (Luisehahne)
+# fixed wrong variable in admin/settings/index.php line 409
+! coreecting url to WB help in readme files module showmenu2
 05 Oct-2012 Build 1778 Dietmar Woellbrink (Luisehahne)
 # fixed empty template variable in admin/start
 01 Oct-2012 Build 1777 Dietmar Woellbrink (Luisehahne)
Index: branches/2.8.x/wb/admin/interface/version.php
===================================================================
--- branches/2.8.x/wb/admin/interface/version.php	(revision 1778)
+++ branches/2.8.x/wb/admin/interface/version.php	(revision 1779)
@@ -51,5 +51,5 @@
 
 // check if defined to avoid errors during installation (redirect to admin panel fails if PHP error/warnings are enabled)
 if(!defined('VERSION')) define('VERSION', '2.8.3');
-if(!defined('REVISION')) define('REVISION', '1778');
+if(!defined('REVISION')) define('REVISION', '1779');
 if(!defined('SP')) define('SP', '');
Index: branches/2.8.x/wb/admin/settings/index.php
===================================================================
--- branches/2.8.x/wb/admin/settings/index.php	(revision 1778)
+++ branches/2.8.x/wb/admin/settings/index.php	(revision 1779)
@@ -406,7 +406,7 @@
 	} else {
     	$oTpl->set_var(array(
 				'PRIVATE_DISABLED' => $checked,
-				'INTRO_PAGE_ENABLED' => '',
+				'PRIVATE_ENABLED' => '',
 				));
 	}
 
Index: branches/2.8.x/wb/modules/show_menu2/README.de.txt
===================================================================
--- branches/2.8.x/wb/modules/show_menu2/README.de.txt	(revision 1778)
+++ branches/2.8.x/wb/modules/show_menu2/README.de.txt	(revision 1779)
@@ -1,15 +1,15 @@
 ﻿show_menu2, version 4.9
 =======================
-Ist ein Code-Snippet für das CMS Website Baker. Es stellt einen kompletten 
-Ersatz für die eingebaute Menüfuntionalität zur Verfügung. Alle, für die 
-Erzeugung des Menüs erforderlichen Daten, werden durch eine einzige 
-Datenbankabfrage erzeugt. Durch umfangreiche Anpassungsmöglichkeiten des 
-erzeugten HTML-Code können alle möglichen Menüarten (Listen, Breadcrumbs, 
+Ist ein Code-Snippet für das CMS Website Baker. Es stellt einen kompletten
+Ersatz für die eingebaute Menüfuntionalität zur Verfügung. Alle, für die
+Erzeugung des Menüs erforderlichen Daten, werden durch eine einzige
+Datenbankabfrage erzeugt. Durch umfangreiche Anpassungsmöglichkeiten des
+erzeugten HTML-Code können alle möglichen Menüarten (Listen, Breadcrumbs,
 Sitemaps, usw.) erzeugt werden.
 
 ---
-Deutsche Übersetzung von BerndJM. Dies ist eine weitgehend direkte Übersetzung 
-des englischen Originals. Bei Übersetzungs- oder Interpretationsfehlern, bitte 
+Deutsche Übersetzung von BerndJM. Dies ist eine weitgehend direkte Übersetzung
+des englischen Originals. Bei Übersetzungs- oder Interpretationsfehlern, bitte
 eine Email an bjm@wwnw.de.
 ---
 
@@ -25,32 +25,32 @@
 5. Im Abschnitt "Modul installieren" das im Schritt 1 heruntergeladene zip-File
    auswählen und installieren.
 
-   
-   
+
+
 BENUTZUNG VON SHOW_MENU2
 ========================
-Um show_menu2 zu benutzen muss das verwendete Template an den Stellen 
-modifiziert werden, an denen das Menü erscheinen soll. Bitte beachten: Wenn alte 
-Menüaufrufe ersetzt werden, müssen unbedingt auch die entsprechenden neuen 
+Um show_menu2 zu benutzen muss das verwendete Template an den Stellen
+modifiziert werden, an denen das Menü erscheinen soll. Bitte beachten: Wenn alte
+Menüaufrufe ersetzt werden, müssen unbedingt auch die entsprechenden neuen
 Parameter verwendet werden die show_menu2 benötigt.
 
-In den meisten Fällen genügt bereits der Standardaufruf ohne weitere Parameter 
-von show_menu2. In diesem Fall werden die Vorgabewerte verwendet, dies erzeugt 
+In den meisten Fällen genügt bereits der Standardaufruf ohne weitere Parameter
+von show_menu2. In diesem Fall werden die Vorgabewerte verwendet, dies erzeugt
 ein Menü das die aktuelle Seite und die Unterseiten der aktuellen Seite anzeigt:
-    
+
     show_menu2();
-    
+
 Bitte beachten: der Aufruf von show_menu2 ist PHP und muss normalerweise in PHP-
-Codezeichen eingeschlossen werden (ausser der Aufruf erfolgt bereits innerhalb 
+Codezeichen eingeschlossen werden (ausser der Aufruf erfolgt bereits innerhalb
 von PHP Code):
 
     <?php show_menu2(); ?>
 
-Dieses Vorgabe Menü erzeugt bereits ein komplettes Menü auf Listenbasis mit 
-etlichen Klassen, die eine leichte Formatierung mittels CSS ermöglichen. Es wird 
-z.B. die Klasse "menu-current" zu dem <li> tag des aktuellen Menüpunktes 
-hinzugefügt. Zusätzlich erhält jeder Menüpunkt der Unterpunkte enthält die 
-Klasse "menu-expand". Das erlaubt es sehr differenzierte CSS Regeln für die 
+Dieses Vorgabe Menü erzeugt bereits ein komplettes Menü auf Listenbasis mit
+etlichen Klassen, die eine leichte Formatierung mittels CSS ermöglichen. Es wird
+z.B. die Klasse "menu-current" zu dem <li> tag des aktuellen Menüpunktes
+hinzugefügt. Zusätzlich erhält jeder Menüpunkt der Unterpunkte enthält die
+Klasse "menu-expand". Das erlaubt es sehr differenzierte CSS Regeln für die
 einzelnen Menüpunkte aufzustellen.
 Zum Beispiel:
 
@@ -57,20 +57,20 @@
     li.menu-expand  { font-weight: bold; }
     li.menu-current { background: red; }
 
-Im Abschnitt "HTML-Ausgabe" findet sich eine detaillierte Beschreibung welche 
-Klassen welchem Element zugeordnet werden. Durch die Verwendung von 
-verschiedenen Parametern bei dem show_menu2 Funktionsaufruf lassen sich auch 
-recht umfangreiche und unterschiedliche Menüstrukturen erzeugen. Um 
-beispielsweise nur Menüpunkte aus der obersten Ebene der Menüstruktur 
+Im Abschnitt "HTML-Ausgabe" findet sich eine detaillierte Beschreibung welche
+Klassen welchem Element zugeordnet werden. Durch die Verwendung von
+verschiedenen Parametern bei dem show_menu2 Funktionsaufruf lassen sich auch
+recht umfangreiche und unterschiedliche Menüstrukturen erzeugen. Um
+beispielsweise nur Menüpunkte aus der obersten Ebene der Menüstruktur
 darzustellen, könnte man folgenden Aufruf verwenden:
 
     show_menu2(0, SM2_ROOT, SM2_START);
-    
+
 Oder um beispielsweise bis zu zwei Unterebenen der aktuellen Seite anzuzeigen:
 
     show_menu2(0, SM2_CURR+1, SM2_CURR+2);
 
-Es gibt jede Menge Möglichkeiten, um die unterschiedlichsten Menüstrukturen zu 
+Es gibt jede Menge Möglichkeiten, um die unterschiedlichsten Menüstrukturen zu
 erzeugen. Zahlreiche Beispiele dazu findet man auf der Demo-Website: http://
 code.jellycan.com/sm2test/
 
@@ -79,28 +79,28 @@
 HÄUFIGE FRAGEN
 ==============
 
-Q:  Ich bin kein Programmierer. Gibt es keine einfachere Dokumentation? 
+Q:  Ich bin kein Programmierer. Gibt es keine einfachere Dokumentation?
 A:  Nein, denn dies hier ist bereits die einfache Dokumentation.
 
 
 Q:  Wie kann ich ein sogenanntes Drop-Down Menü erstellen?
 A:  Dies hat nichts mit show_menu2 zu tun. Um ein Drop-Down Menü zu erzeugen muß
-    lediglich der CSS-Code des jeweiligen Templates angepaßt werden. Die nötigen 
-    Anpassungen findet man z.B. im "allcss2" Template aus dem WB Addon     
-    Repository -> http://addons.websitebaker.org/pages/templates.php
+    lediglich der CSS-Code des jeweiligen Templates angepaßt werden. Die nötigen
+    Anpassungen findet man z.B. im "allcss2" Template aus dem WB Addon
+    Repository -> http://addons.websitebaker.org/
 
 
-Q:  Warum verschwindet das Menü nachdem ich in einer mehrsprachigen WB-Site die 
+Q:  Warum verschwindet das Menü nachdem ich in einer mehrsprachigen WB-Site die
     Suchfunktion benutzt habe?
 A:  Im verwendeten Template fehlen die notwendigen Zeilen:
 
-    1.  Im WB Admin Backend: Optionen -> Erweiterte Optionen anzeigen ->        
-        Suchoptionen -> Kopfzeile - hier direkt nach dem öffnenden <form> tag 
+    1.  Im WB Admin Backend: Optionen -> Erweiterte Optionen anzeigen ->
+        Suchoptionen -> Kopfzeile - hier direkt nach dem öffnenden <form> tag
         folgende Zeile einfügen:
-       
+
         <input type="hidden" name="referrer" value="[REFERRER_ID]" />
 
-    2.  In der index.php des verwendeten Templates folgende Zeile unmittelbar   
+    2.  In der index.php des verwendeten Templates folgende Zeile unmittelbar
         nach dem öffnenden <form> tag der Suche einfügen:
 
         <input type="hidden" name="referrer" value="<?php echo defined('REFERRER_ID')?REFERRER_ID:PAGE_ID;?>" />
@@ -107,50 +107,50 @@
 
 
 Q:  Mehrsprachig? Das klingt toll. Wie macht man das?
-A:  http://help.websitebaker.org/pages/de/advanced-doku/designer-guide/mehrsprachige-webseiten.php
+A:  http://www.websitebaker2.org/de/hilfe/designerhandbuch/mehrsprachige-webseiten.php
 
 
 Q:  Jedesmal wenn eine Seite aufgerufen wird, erzeugt SM2 folgende Warnmeldung:
     "show_menu2 error: $aOptions is invalid. No flags from group 1 supplied!"
-A:  Der Funktion wurden die falschen Werte oder eine falsche Anzahl an 
+A:  Der Funktion wurden die falschen Werte oder eine falsche Anzahl an
     Werten übergeben.
-    Siehe den Abschnitt PARAMETER für die korrekten Flag Werte die dem 
-    $aOptions Parameter zu übergeben sind.    
+    Siehe den Abschnitt PARAMETER für die korrekten Flag Werte die dem
+    $aOptions Parameter zu übergeben sind.
 
 
 Q:  How do I use a different class/picture/color/widget for each entry in a menu?
-A:  Use the [page_id] format string in the $aItemOpen string. Create a unique 
+A:  Use the [page_id] format string in the $aItemOpen string. Create a unique
     class or id for each menu item, then reference that item in your CSS or Javascript
     to do whatever you want.
-    
+
     To add a unique class for each menu item (or similar):
-    
+
         "<li><a href="[url]" target="[target]" class="[class] p[page_id]">[menu_title]</a>"
 
         ... creating menu items like ...
-    
+
         <li><a href="/pages/foo/bar.php" target="_top" class="menu-top p45">Top Menu</a>
 
         Reference this in your CSS like:
-        
+
         a.p45 { color: red; }
-    
+
     To add a unique ID for each menu item (or similar):
-    
+
         "<li><a id="p[page_id]" href="[url]" target="[target]" class="[class]">[menu_title]</a>"
-    
+
         ... creating menu items like ...
-    
+
         <li><a id="p45" href="/pages/foo/bar.php" target="_top" class="menu-top">Top Menu</a>
 
         Reference this in your CSS like:
-        
+
         a#p45 { color: red; }
-        
+
         Note that the ID can only be used if that menu is generated and displayed one time
-        only on the page (because HTML ID's must be unique within a page). 
-    
-    
+        only on the page (because HTML ID's must be unique within a page).
+
+
 FUNKTION
 ========
 
@@ -169,28 +169,28 @@
         $aTopMenuOpen   = false
         )
 
-Im Abschnitt "Parameter" findet sich eine detaillierte Beschreibung jedes 
+Im Abschnitt "Parameter" findet sich eine detaillierte Beschreibung jedes
 einzelnen Parameters.
-Jeder Parameter muß absolut korrekt verwendet werden. Folgende Regeln können 
+Jeder Parameter muß absolut korrekt verwendet werden. Folgende Regeln können
 dabei helfen:
 
     $aMenu = 0 ist in den meisten Anwendungsfällen der beste Wert.
-    
+
     $aStart muß entweder eine page ID oder ein Wert der mit "SM2_" beginnt sein.
-    
+
     $aMaxLevel kann nur Werte erhalten, die mit "SM2_" beginnen.
-    
-    $aOptions bis auf einige wenige Spezialfälle sind hier nur Werte die mit 
+
+    $aOptions bis auf einige wenige Spezialfälle sind hier nur Werte die mit
     "SM2_" beginnen zulässig.
-    
-    Alle weiteren Parameter enthalten die (HTML)Tags die die Ausgabe des Menüs 
+
+    Alle weiteren Parameter enthalten die (HTML)Tags die die Ausgabe des Menüs
     steuern.
-    
-    Ab $aItemOpen kann jedem Parameter der Wert false übergeben werden um den 
+
+    Ab $aItemOpen kann jedem Parameter der Wert false übergeben werden um den
     jeweiligen Vorgabewert zu erhalten.
 
-    Dies kann beispielsweise verwendet werden um eine nummerierte Liste zu 
-    erzeugen, während für die einzelnen Menüpunkte trotzdem die Vorgabewerte 
+    Dies kann beispielsweise verwendet werden um eine nummerierte Liste zu
+    erzeugen, während für die einzelnen Menüpunkte trotzdem die Vorgabewerte
     Verwendung finden:
 
         show_menu2(0, SM2_ROOT, SM2_ALL, SM2_ALL, false, false, '<ol>', '</ol>');
@@ -200,8 +200,8 @@
 
 HTML-AUSGABE
 ============
-Die HTML-Ausgabe hängt wesentlich davon ab, welche Parameter an die Funktion übergeben werden. 
-Unabhängig davon werden nachfolgende Klassen grundsätzlich für jedes Menü verwendet, wobei 
+Die HTML-Ausgabe hängt wesentlich davon ab, welche Parameter an die Funktion übergeben werden.
+Unabhängig davon werden nachfolgende Klassen grundsätzlich für jedes Menü verwendet, wobei
 einzelne Menüpunkte, wenn es erforderlich ist, auch mehrere Klassen erhalten können.
 
     KLASSE          ZUORDNUNG
@@ -215,16 +215,16 @@
     menu-first      Der erste Punkt eines jeden Menüs oder Untermenüs.
     menu-last       Der letzte Punkt eines jeden Menüs oder Untermenüs.
 
-    Folgende Klassen werden nur hinzugefügt, wenn das SM2_NUMCLASS Flag gesetzt 
+    Folgende Klassen werden nur hinzugefügt, wenn das SM2_NUMCLASS Flag gesetzt
     ist:
 
-    menu-N          Jeder Menüpunkt, wobei das N für die ABSOLUTE Menütiefe, 
+    menu-N          Jeder Menüpunkt, wobei das N für die ABSOLUTE Menütiefe,
                     beginnend bei 0, des jeweiligen Menüpunktes steht.
                     Die oberste Ebene ist also immer menu-0, die nächste
                     Ebene menu-1 usw.
     menu-child-N    Jedes Untermenü der aktuellen Seiten, wobei das N für die
                     RELATIVE Tiefe des Untermenüs, beginnend bei 0, steht.
-        
+
 Beispiel einer HTML-Ausgabe:
 
 <ul class="menu-top menu-0">
@@ -267,15 +267,15 @@
 
 PARAMETER
 =========
-$aMenu      
-    Nummer des Menüs. Diese ist nützlich um mehrere Menüs auf einer Seite zu    
+$aMenu
+    Nummer des Menüs. Diese ist nützlich um mehrere Menüs auf einer Seite zu
     verwenden.
     Menü Nummer 0 ist das Vorgabemenü der aktuellen Seite, SM2_ALLMENU gibt alle
     im System verwendeten Menüs zurück.
 
-$aStart  
-    Gibt an, ab welcher Ebene die Erzeugung des Menüs beginnen soll. In den     
-    meisten Fällen wird dies die oberste Ebene des anzuzeigenden Menüs sein. Es 
+$aStart
+    Gibt an, ab welcher Ebene die Erzeugung des Menüs beginnen soll. In den
+    meisten Fällen wird dies die oberste Ebene des anzuzeigenden Menüs sein. Es
     kann einer der folgenden Werte verwendet werden:
 
         SM2_ROOT+N  Beginnt N Ebenen unterhalb der obersten Ebene, z.B.:
@@ -290,24 +290,24 @@
                                   mit allen Unterebenen
 
         page_id     Verwendet die Seite mit der angegebenen page id als Elternelement.
-                    Alle Untermenüs dieser Seite werden angezeigt. 
-                    (Die page id kann ermittelt werden, wenn man die Seite im 
-                    Admin-Backend editiert, sie steht dann in der Adresszeile des      
+                    Alle Untermenüs dieser Seite werden angezeigt.
+                    (Die page id kann ermittelt werden, wenn man die Seite im
+                    Admin-Backend editiert, sie steht dann in der Adresszeile des
                     Browsers: http://SITE/admin/pages/modify.php?page_id=35
 
-$aMaxLevel   
+$aMaxLevel
     Die maximale Anzahl der Ebenen die angezeigt werden. Die Anzeige
-    beginnt ab der in $aStart festgelegten Ebene, bis hin zu der hier 
+    beginnt ab der in $aStart festgelegten Ebene, bis hin zu der hier
     festgelegten Ebene.
-        
+
         SM2_ALL      Keine Beschränkung, alle Ebenen werden angezeigt
 
-        SM2_CURR+N   Zeigt immer die aktuelle Seite + N Ebenen. 
+        SM2_CURR+N   Zeigt immer die aktuelle Seite + N Ebenen.
                      SM2_CURR      Aktuelle Ebene (keine Unterebene)
                      SM2_CURR+3    Alle übergeordneten + aktuelle + 3 Unterebenen
 
         SM2_START+N  Beginnt immer auf der Startebene + N Ebenen.
-                     Die Ebenen werden unabhängig davon angezeigt,egal 
+                     Die Ebenen werden unabhängig davon angezeigt,egal
                      auf welcher Ebene sich die aktuelle Seite befindet.
                      SM2_START     Eine einzelne Ebene ab der Startebene.
                      SM2_START+1   Startebene + eine Ebene darunter.
@@ -317,7 +317,7 @@
                      SM2_MAX       Nur die Startebene (gleiche Wirkung wie SM2_START)
                      SM2_MAX+1     Die Startebene und eine Ebene darunter.
 
-$aOptions   
+$aOptions
     Spezielle Flags für verschiedene Menügenerierungs Optionen. Sie können mittels
     einer ODER Verknüpfung (|) miteinander kombiniert werden. Um beispielsweise
     sowohl TRIM als auch PRETTY zu definieren, verwendet man: (SM2_TRIM | SM2_PRETTY).
@@ -327,9 +327,9 @@
     Aus dieser Gruppe muss stets genau ein Flag angegeben werden. Diese Flags
     bestimmen auf welche Weise die Geschwisterelemente im Menübaum in der
     Ausgabe unterdrückt werden.
-    
+
     SM2_ALL         Zeigt alle Zweige des Menübaums
-                        A-1 -> B-1 
+                        A-1 -> B-1
                             -> B-2 -> C-1
                                    -> C-2 (CURRENT)
                                           -> D-1
@@ -341,13 +341,13 @@
     SM2_TRIM        Zeigt alle Geschwistermenüs der Seite im aktuellen Pfad.
                     Alle Untermenüs von Elemnten die sich nicht im Pfad befinden
                     werden entfernt.
-                        A-1 -> B-1 
+                        A-1 -> B-1
                             -> B-2 -> C-1
                                    -> C-2 (CURRENT)
                                           -> D-1
                                           -> D-2
                                    -> C-3
-                        A-2 
+                        A-2
 
     SM2_CRUMB       Zeigt den Breadcrumb Pfad des Menüs an, also den aktuellen
                     Menüpunkt sowie alle Menüpunkte die dorthin führen.
@@ -365,9 +365,9 @@
     -------
     Diese Flags sind optional, sie können in beliebiger Anzahl kombiniert werden.
 
-    SM2_NUMCLASS    Fügt die nummerierten Menüklassen "menu-N" und 
+    SM2_NUMCLASS    Fügt die nummerierten Menüklassen "menu-N" und
                     "menu-child-N hinzu.
-        
+
     SM2_ALLINFO     Lädt alle Felder aus der Seitentabelle der Datenbank.
                     Dies verursacht einen ziemlich hohen Speicherverbauch und sollte
                     deshalb nur mit Bedacht verwendet werden.
@@ -377,28 +377,28 @@
                     Bitte beachten: dieses Flag muss beim ERSTEN Aufruf von schow_menu2
                     für die jeweilige Menü ID verwendet werden, oder in Verbindung
                     mit SM2_NOCACHE, sonst zeigt es keine Wirkung.
-    
+
     SM2_NOCACHE     Die aus der Datenbank gelesenen Daten werden bei erneutem Aufruf von
-                    show_menu2 nicht wiederverwendet sondern erneut aus der Datenbank 
+                    show_menu2 nicht wiederverwendet sondern erneut aus der Datenbank
                     gelesen.
-    
+
     SM2_PRETTY      Bringt die HTML-Ausgabe des Menüs mittels Leerzeichen und
-                    Zeilenumbrüchen in eine gut lesbare Form. Das ist besonders 
+                    Zeilenumbrüchen in eine gut lesbare Form. Das ist besonders
                     nützlich beim Debuggen der Menüausgabe.
-    
+
     SM2_BUFFER      Gibt den HTML-Code nicht direkt aus, sondern speichert ihn intern
                     zwischen und gibt ihn als kompletten String aus.
-    
+
     SM2_CURRTREE    Schliesst alle anderen Toplevelmenüs von der Betrachtung aus.
                     Es werden nur Menüpunkte des aktuellen Menüzweiges dargestellt.
                     Dieses Flag kann bei Bedarf mit jedem Flag aus der Gruppe 1
                     kombiniert werden.
-    
+
     SM2_ESCAPE      Wendet htmlspecialchars auf den Menüstring an.
                     Dies kann bei älteren Websitebaker Installationen erforderlich
                     sein um eine valide HTML Ausgabe zu erzeugen.
-                        
-    SM2_SHOWHIDDEN  Hidden pages are usually hidden all of the time, including 
+
+    SM2_SHOWHIDDEN  Hidden pages are usually hidden all of the time, including
                     when they are active (i.e. current page or a parent page).
                     Use private pages for time when you want pages to be
                     hidden except when active. However for compatibility with
@@ -418,7 +418,7 @@
     Für diesen Parameter gibt es auch einen erweiterten Modus, bei dem die Optionen
     als assoziatives Array übergeben werden. Näheres dazu im Abschnitt ERWEITERTE
     OPTIONEN. Für die meisten Anwendungsfälle wird dies jedoch NICHT benötigt.
-    
+
 $aItemOpen
     Dies legt den Formatstring fest, mit dem jeder einzelne Menüeintrag begonnen
     wird. Für den allerersten Menüeintrag kann mittels $aTopItemOpen ein anderer
@@ -426,21 +426,21 @@
     Wenn dieser Parameter auf false gesetzt wird, wird der Vorgabe Formatstring
     '[li][a][menu_title]</a>' verwendet um die Kompatibilität zur Website Baker
     Standardfunktion show_menu() zu gewährleisten.
-    Da die Formatierung mittels CSS-Klassen oftmals einfacher ist, wenn sie auf den 
+    Da die Formatierung mittels CSS-Klassen oftmals einfacher ist, wenn sie auf den
     <a> tag angewendet werden, empfiehlt es sich hier folgenden Formatstring zu
     verwenden: '<li>[ac][menu_title]</a>'.
-    
+
     Dieser Parameter kann auch als Instanz eine Formatierungklasse für das Menü
-    verwendet werden. Die nähere Beschreibung dazu findet sich im Abschnitt FORMATTER. 
+    verwendet werden. Die nähere Beschreibung dazu findet sich im Abschnitt FORMATTER.
     Wenn hier ein Formatter angegeben wird, werden alle Argumente
     nach $aItemOpen ignoriert.
 
 $aItemClose
-    Dieser String schließt jeden Menüpunkt ab. 
+    Dieser String schließt jeden Menüpunkt ab.
     Bitte beachten: dies ist kein Formatstring und es werden keine Schlüsselworte
     ersetzt!
     Wenn dieser Parameter auf false gesetzt ist, wird die Vorgabe '</li>' verwendet.
-    
+
 $aMenuOpen
     Mit diesem Formatstring wird eine Liste von Menüeinträgen geöffnet. Für das erste
     Menü kann mittels $aTopMenuOpen ein davon abweichender Formatstring definiert
@@ -447,9 +447,9 @@
     werden.
     Wenn dieser Parameter auf false gesetzt ist wird der Vorgabewert '[ul]'
     verwendet.
-    
+
 $aMenuClose
-    Dieser String schließt jedes Menü ab. 
+    Dieser String schließt jedes Menü ab.
     Bitte beachten: dies ist kein Formatstring und es werden keine Schlüsselworte
     ersetzt!
     Wenn dieser Parameter auf false gesetzt ist, wird die Vorgabe '</ul>' verwendet.
@@ -458,37 +458,37 @@
     Der Formatstring für den allerersten Menüpunkt. Wenn dieser Parameter auf false
     gesetzt wird, wird der selbe Formatstring wie bei $aItemOpen verwendet.
 
-$aTopMenuOpen 
+$aTopMenuOpen
     Der Formatstring für das erste Menü. Wenn dieser Parameter auf false
     gesetzt wird, wird der selbe Formatstring wie bei $aMenuOpen verwendet.
 
-    
 
+
 ERWEITERTE OPTIONEN
 ===================
-Der Parameter $aOptions kann auf zweierlei Arten verwendet werden. Zum einen, wie oben 
-im Abschnitt PARAMETER beschrieben, diese Art sollte für die allermeisten 
-Anwendungsfälle ausreichen. Um allerdings in speziellen Fällen die Sonderoptionen 
-ansprechen zu können, müssen die erforderlichen Werte als assoziatives Array 
+Der Parameter $aOptions kann auf zweierlei Arten verwendet werden. Zum einen, wie oben
+im Abschnitt PARAMETER beschrieben, diese Art sollte für die allermeisten
+Anwendungsfälle ausreichen. Um allerdings in speziellen Fällen die Sonderoptionen
+ansprechen zu können, müssen die erforderlichen Werte als assoziatives Array
 bereitgestellt werden.
-Bitte beachten: Die SM2_* Flags sind auch hierbei erforderlich und müßen als 'flags' 
+Bitte beachten: Die SM2_* Flags sind auch hierbei erforderlich und müßen als 'flags'
 übergeben werden.
 
-    'flags'     **ZWINGEND ERFORDELICH** Dies sind die Flags die oben im Abschnitt 
+    'flags'     **ZWINGEND ERFORDELICH** Dies sind die Flags die oben im Abschnitt
                 PARAMETER unter $aOptions beschrieben wurden.
 
-    'notrim'    Hiermit wird eine Anzahl von Ebenen festegelegt, die relativ bezogen 
-                auf die in $aStart festgelegte Menüebene, immer angezeigt werden. Dies 
+    'notrim'    Hiermit wird eine Anzahl von Ebenen festegelegt, die relativ bezogen
+                auf die in $aStart festgelegte Menüebene, immer angezeigt werden. Dies
                 bewirkt, daß für diese Ebenen das SM2_TRIM Flag ignoriert wird.
 
-Um dieses Array zu verwenden, empfiehlt es sich es erst anzulegen und dann den 
+Um dieses Array zu verwenden, empfiehlt es sich es erst anzulegen und dann den
 $aOptions parameter mit dem angelegten Array zu beliefern:
 
     $options = array('flags' => (SM2_TRIM|...), 'notrim' => 1);
     show_menu2(0, SM2_ROOT, SM2_CURR+1, $options);
-    
-    
-    
+
+
+
 FORMAT STRINGS
 ==============
 Die folgenden Tags können in den Formatstrings für $aItemOpen und $aMenuOpen
@@ -499,11 +499,11 @@
 [li]            <li> tag mit Klasse:   '<li class="[class]">'
 [ul]            <ul> tag mit Klasse:   '<ul class="[class]">'
 [class]         Liste der Klassen für diese Seite
-[menu_title]    Text des Menütitel 
+[menu_title]    Text des Menütitel
                 (HTML entity escaped ausser das SM2_NOESCAPE Flag ist gesetzt)
 [menu_icon_0]	die URL zu einer Bilddatei mit normal - Darstellung (ab WB2.8.4)
 [menu_icon_1]	die URL zu einer Bilddatei mit active/hover - Darstellung (ab WB2.8.4)
-[page_title]    text des Seitentitel 
+[page_title]    text des Seitentitel
                 (HTML entity escaped ausser das SM2_NOESCAPE Flag ist gesetzt)
 [page_icon]		die URL zu einer seitenbezogenen Bilddatei (ab WB2.8.4)
 [tooltip]       Tooltip-Text, der normal im title-Attribut der Links ausgegeben wird (ab WB2.8.4)
@@ -511,7 +511,7 @@
 [target]        das Seitenziel für den <a> tag
 [page_id]       die Page ID des aktuellen Menüpunktes.
 [parent]        die Page ID des übergeordneten Menüpunktes.
-[level]         die Seitenebene, 
+[level]         die Seitenebene,
                 dies ist die gleiche Zahl die im "menu-N" CSS tag verwendet wird.
 [sib]           Anzahl der Geschwister des aktuellen Menüpunktes.
 [sibCount]      Anzahl aller Geschwister in diesem Menü.
@@ -530,29 +530,29 @@
 
     [if(A){B}]
     [if(A){B}else{C}]
-    
+
     A   Die Bedingung. Details dazu, siehe unten.
-    
+
     B   Der Ausdruck der verwendet wird, wenn die Bedingung erfüllt ist.
         Dies kann ein beliebiger String sein, der jedoch nicht das Zeichen '}'
         enthalten darf. Er kann jeden beliebigen Formatstring aus dem Abschnitt
-        'Format Strings' enthalten, jedoch keinen weiteren Bedingungstest (da das 
+        'Format Strings' enthalten, jedoch keinen weiteren Bedingungstest (da das
         Zeichen '}' nicht erlaubt ist).
-    
+
     C   Der Ausdruck der verwendet wird, wenn die Bedingung nicht erfüllt ist.
         Dies kann ein beliebiger String sein, der jedoch nicht das Zeichen '}'
         enthalten darf. Er kann jeden beliebigen Formatstring aus dem Abschnitt
-        'Format Strings' enthalten, jedoch keinen weiteren Bedingungstest (da das 
+        'Format Strings' enthalten, jedoch keinen weiteren Bedingungstest (da das
         Zeichen '}' nicht erlaubt ist).
 
 Die Bedingung ist eine Kombination von einem oder mehreren boolschen Vergleichen.
 Wenn mehr als ein Vergleich erforderlich ist, so muss dieser mit den anderen Vergleichen
-mittels || (boolsches oder - OR) oder && (boolsches und - AND) verknüpft werden.    
+mittels || (boolsches oder - OR) oder && (boolsches und - AND) verknüpft werden.
 
-Ein einzelner Vergleich besteht aus dem linken Operanden, dem Operator und dem rechten 
+Ein einzelner Vergleich besteht aus dem linken Operanden, dem Operator und dem rechten
 Operanden.
 z.B. X == Y  - hierbei ist X der linke Operand, == der Operator und Y der rechte Operand.
-    
+
     Linker Operand. Muss eines der folgende Schlüsselworte sein:
         class       Überprüfung ob diese Klasse existiert. Es sind nur die
                     "==" and "!=" Operatoren erlaubt. In diesem Fall haben die Operatoren
@@ -563,7 +563,7 @@
         sibCount    Überprüfung der Geamtanzahl der Geschwister im aktuellen Menü.
         id          Überprüfung der page id.
 		target		Überprüfung der Target-Angabe
-    
+
     Operator. Muss einer der folgenden sein:
         <           Kleiner als
         <=          Kleiner oder gleich als
@@ -571,7 +571,7 @@
         !=          Nicht gleich
         >=          Grössr oder gleich als
         >           Grösser als
-    
+
     Rechter Operand. Die Art dieses Operanden hängt von dem, für den linken Operanden
                      verwendeten Schlüsselwort ab.
         class       einer der "menu-*" Klassennamen wie sie im Abschnitt "Ausgabe"
@@ -591,9 +591,9 @@
                     Geschwister in diesem Menü zu überprüfen
         sibCount    Eine positive Integerzahl
 		target		Ein String, der eine mögliche Targetangabe darstellt
-        
+
 Folgende Beispiele ergeben "wahr" und der Ausdruck {exp} wird ausgeführt, wenn zutrifft:
-    
+
     [if(class==menu-expand){exp}]   hat ein Untermenü
     [if(class==menu-first){exp}]    ist der erste Eintrag in einem Menü
     [if(class!=menu-first){exp}]    ist NICHT der erste Eintrag in einem Menü
@@ -603,12 +603,12 @@
     [if(sib==2){exp}]               ist der zweite Eintrag in einem Menü
     [if(sibCount>1){exp}]           ist in einem Menü mit mehr als einem Eintrag
     [if(sibCount!=2){exp}]          ist in einem Menü, das nicht genau 2 Einträge hat
-    [if(level>parent){exp}]         ist in einem Geschwistermenü oder dem Untermenü eines      
+    [if(level>parent){exp}]         ist in einem Geschwistermenü oder dem Untermenü eines
                                     Geschwistermenüs
     [if(id==parent){exp}]           ist der übergeordnete Punkt der aktuellen id
 	[if(target==_self){exp}]		im Target-Attribut ist der String '_self' enthalten
 
-Wenn eine sonst-Klausel (else) hinzugefügt wird, so wird diese in allen anderen Fällen 
+Wenn eine sonst-Klausel (else) hinzugefügt wird, so wird diese in allen anderen Fällen
 ausgeführt.
 Zum Beispiel wird "foo" immer dann ausgeführt, wenn die if Überprüfung falsch ergibt, also:
 
@@ -617,12 +617,12 @@
 
 Bei mehrfach Vergleichen wird der Ausdruck "exp" nur ausgeführt, wenn:
 
-    [if(sib == 1 || sib > 3){exp}]  ist der erste Eintrag ODER ist der vierte oder höhere   
-    Eintrag im Menü    
-               
-    [if(id == current && class == menu-expand){exp}  ist der aktuelle Eintrag UND hat 
+    [if(sib == 1 || sib > 3){exp}]  ist der erste Eintrag ODER ist der vierte oder höhere
+    Eintrag im Menü
+
+    [if(id == current && class == menu-expand){exp}  ist der aktuelle Eintrag UND hat
     Untermenüs
-        
+
 Bitte beachten:
 Alle Überprüfungen werden in der Reihenfolge ausgeführt, in der sie notiert sind, denn:
 * es findet keine Überprüfung auf evtl. Schleifen statt (alle Überprüfungen werden immer ausgeführt)
@@ -647,22 +647,22 @@
 {
     // called once before any menu is processed to allow object initialization
     function initialize() { }
-    
+
     // called to open the menu list
     function startList($aPage, $aUrl) { }
-    
+
     // called to open the menu item
     function startItem($aPage, $aUrl, $aCurrSib, $aSibCount) { }
-    
+
     // called to close the menu item
     function finishItem() { }
-    
+
     // called to close the menu list
     function finishList() { }
-    
+
     // called once after all menu has been processed to allow object finalization
     function finalize() { }
-    
+
     // called once after finalize() if the SM2_NOOUTPUT flag is used
     function getOutput() { }
 };
Index: branches/2.8.x/wb/modules/show_menu2/README.en.txt
===================================================================
--- branches/2.8.x/wb/modules/show_menu2/README.en.txt	(revision 1778)
+++ branches/2.8.x/wb/modules/show_menu2/README.en.txt	(revision 1779)
@@ -1,8 +1,8 @@
 show_menu2, version 4.9
 =======================
-A code snippet for the Website Baker CMS software. It provides a complete 
-replacement for the builtin menu functions. All menu data is retrieved using 
-a single database query, all types of menu styles (lists, breadcrums, sitemaps) 
+A code snippet for the Website Baker CMS software. It provides a complete
+replacement for the builtin menu functions. All menu data is retrieved using
+a single database query, all types of menu styles (lists, breadcrums, sitemaps)
 can be generated with extensive customisation of the resulting HTML.
 
 
@@ -16,14 +16,14 @@
    the "Uninstall Module" list and choose the "Uninstall" button.
 5. In the "Install Module" section, enter the path to the show_menu2 zip file
    that you downloaded in step 1, and choose the "Install" button.
-   
-   
-   
+
+
+
 USING SHOW_MENU2
 ================
-You need to modify the PHP files of your template to call show_menu2 where you 
+You need to modify the PHP files of your template to call show_menu2 where you
 wish to have the menu displayed. Remember when you replace calls to the old
-menu functions to use the new parameters that show_menu2 requires. 
+menu functions to use the new parameters that show_menu2 requires.
 
 Often times the default menu generated by show_menu2 is all that you need.
 This menu shows the current page and children of the current page. It is
@@ -30,7 +30,7 @@
 generated by just calling show_menu2 with no parameters. For example:
 
     show_menu2();
-    
+
 Note that the call to show_menu2 is PHP, so you usually need to wrap it in the
 PHP code brackets so that it will execute. Like this:
 
@@ -39,25 +39,25 @@
 This default menu generates a complete list based menu with many classes that
 allow easy CSS styling. For example, the current menu item will have the
 "menu-current" class added to the <li> tag. Additionally, every menu item with
-a sub-menu will have the "menu-expand" class added to the <li> tag. This allows 
+a sub-menu will have the "menu-expand" class added to the <li> tag. This allows
 you to create CSS rules to style those menu items differently. For example:
 
     li.menu-expand  { font-weight: bold; }
     li.menu-current { background: red; }
 
-See the "Output" section for details of exactly what classes are added to each 
-element. More elaborate and different menu structures are able to be created by 
-supplying different parameters to the show_menu2 function call. For example, 
+See the "Output" section for details of exactly what classes are added to each
+element. More elaborate and different menu structures are able to be created by
+supplying different parameters to the show_menu2 function call. For example,
 to show only menu items from the top level of the menu you use:
 
     show_menu2(0, SM2_ROOT, SM2_START);
-    
+
 Alternatively, to show up to two levels of the child menus of the current page:
 
     show_menu2(0, SM2_CURR+1, SM2_CURR+2);
 
 There are many more possible menus that can be generated by show_menu2. See the
-demonstration website at http://code.jellycan.com/sm2test/ for more examples. 
+demonstration website at http://code.jellycan.com/sm2test/ for more examples.
 
 
 
@@ -64,27 +64,27 @@
 COMMON QUESTIONS
 ================
 
-Q:  I'm not a programmer. Do you have simpler documentation? 
+Q:  I'm not a programmer. Do you have simpler documentation?
 A:  Nup. This is it. Go hard. Gambarre.
 
 
 Q:  How do I create a drop-down menu?
-A:  This is unrelated to show_menu2. You need to change the template CSS code 
+A:  This is unrelated to show_menu2. You need to change the template CSS code
     to display the menu as a drop-down. Try the "allcss2" template from the WB
-    addon repository. http://addons.websitebaker.org/pages/templates.php
+    addon repository. http://addons.websitebaker.org/
 
 
 Q:  Why does the menu disappear after I do a search on my multilingual WB site?
 A:  You're missing some required lines in your template.
 
-    1.  Log into WB administration, and go to Settings -> Show advanced settings 
-        -> Search Settings -> Header Code and add the following input field 
-        after the <form> open tag: 
+    1.  Log into WB administration, and go to Settings -> Show advanced settings
+        -> Search Settings -> Header Code and add the following input field
+        after the <form> open tag:
 
         <input type="hidden" name="referrer" value="[REFERRER_ID]" />
 
 
-    2.  In the index.php of your template, add the following input field 
+    2.  In the index.php of your template, add the following input field
         immediately following the search <form> open tag.
 
         <input type="hidden" name="referrer" value="<?php echo defined('REFERRER_ID')?REFERRER_ID:PAGE_ID;?>" />
@@ -91,50 +91,50 @@
 
 
 Q:  Multilingual? That sounds cool. How do I do that?
-A:  http://help.websitebaker.org/pages/en/advanced-docu.php
+A:  http://www.websitebaker2.org/en/help/designer-guide/multilingual-websites.php
 
 
 Q:  SM2 is generating a warning every time the page is accessed:
     "show_menu2 error: $aOptions is invalid. No flags from group 1 supplied!"
-A:  You are passing the wrong values to the function. Have a closer look at the 
-    parameters that you are passing. See the PARAMETERS section below for the 
+A:  You are passing the wrong values to the function. Have a closer look at the
+    parameters that you are passing. See the PARAMETERS section below for the
     correct flag values to pass for the $aOptions parameter.
 
 
 Q:  How do I use a different class/picture/color/widget for each entry in a menu?
-A:  Use the [page_id] format string in the $aItemOpen string. Create a unique 
+A:  Use the [page_id] format string in the $aItemOpen string. Create a unique
     class or id for each menu item, then reference that item in your CSS or Javascript
     to do whatever you want.
-    
+
     To add a unique class for each menu item (or similar):
-    
+
         "<li><a href="[url]" target="[target]" class="[class] p[page_id]">[menu_title]</a>"
 
         ... creating menu items like ...
-    
+
         <li><a href="/pages/foo/bar.php" target="_top" class="menu-top p45">Top Menu</a>
 
         Reference this in your CSS like:
-        
+
         a.p45 { color: red; }
-    
+
     To add a unique ID for each menu item (or similar):
-    
+
         "<li><a id="p[page_id]" href="[url]" target="[target]" class="[class]">[menu_title]</a>"
-    
+
         ... creating menu items like ...
-    
+
         <li><a id="p45" href="/pages/foo/bar.php" target="_top" class="menu-top">Top Menu</a>
 
         Reference this in your CSS like:
-        
+
         a#p45 { color: red; }
-        
+
         Note that the ID can only be used if that menu is generated and displayed one time
-        only on the page (because HTML ID's must be unique within a page). 
-    
+        only on the page (because HTML ID's must be unique within a page).
 
 
+
 FUNCTION
 ========
 
@@ -157,18 +157,18 @@
 Ensure that you use each parameter correctly. Use the following rules:
 
     $aMenu will be 0 for most people.
-    
+
     $aStart must be either a page ID or a value starting with "SM2_".
-    
+
     $aMaxLevel must be only values that start with "SM2_".
-    
-    $aOptions must be only values that start with "SM2_" (unless you are 
+
+    $aOptions must be only values that start with "SM2_" (unless you are
     in a very small minority of users).
-    
-    All other parameters are the HTML tag templates that will be 
+
+    All other parameters are the HTML tag templates that will be
     output for menus and menu items.
-    
-Note that every parameter from $aItemOpen can be supplied as false to get 
+
+Note that every parameter from $aItemOpen can be supplied as false to get
 the default value.
 
 
@@ -175,8 +175,8 @@
 
 HTML OUTPUT
 ===========
-The menu is output differently depending on what parameters have been 
-supplied to the function, however in general the following classes are used 
+The menu is output differently depending on what parameters have been
+supplied to the function, however in general the following classes are used
 for each menu. Note that items will have multiple classes when relevant.
 
     CLASS           ATTACHED TO
@@ -192,10 +192,10 @@
 
     The following classes are added only if SM2_NUMCLASS flag has been used.
 
-    menu-N          Every menu item. The N is replaced with the ABSOLUTE 
-                    menu depth of the item starting with 0. The root level 
+    menu-N          Every menu item. The N is replaced with the ABSOLUTE
+                    menu depth of the item starting with 0. The root level
                     menu is always menu-0, the next level is menu-1, etc.
-    menu-child-N    Every sub-menu of the current page, the N is replaced 
+    menu-child-N    Every sub-menu of the current page, the N is replaced
                     with the relative depth of the submenu starting at 0.
 
 
@@ -240,17 +240,17 @@
 
 PARAMETERS
 ==========
-$aMenu      
-    Menu number to use. This is useful when you are using multiple menus. 
-    Supplying a menu number of 0 will use the default menu for the current 
+$aMenu
+    Menu number to use. This is useful when you are using multiple menus.
+    Supplying a menu number of 0 will use the default menu for the current
     page. Supplying SM2_ALLMENU will return all menus in the system.
 
-$aStart  
+$aStart
     Specify where the menu generation should start from. This is most
-    times the parent item of the menu to display. It must be one of the 
+    times the parent item of the menu to display. It must be one of the
     following values:
         SM2_ROOT+N  Start N levels down from the root. e.g.
-                      SM2_ROOT      Starting at the root menu 
+                      SM2_ROOT      Starting at the root menu
                       SM2_ROOT+1    Start 1 level below the root
                       SM2_ROOT+2    Start 2 levels below the root
         SM2_CURR+N  Start N levels down from the current page level. e.g.
@@ -259,16 +259,16 @@
                       SM2_CURR+1    Starts 1 level down from the current
                                     page with the children menus.
         page_id     Display using the specific page as the parent. All
-                    child menus of that page will be displayed. The 
-                    page_id can be found by editing the page in WB admin 
-                    interface. The page_id is included in the URL like: 
+                    child menus of that page will be displayed. The
+                    page_id can be found by editing the page in WB admin
+                    interface. The page_id is included in the URL like:
                         http://SITE/admin/pages/modify.php?page_id=35
 
-$aMaxLevel   
+$aMaxLevel
     Maximum menu level to display. Menus are displayed from the start
     level down to this level.
         SM2_ALL     No limit, all levels are displayed
-        SM2_CURR+N  Always show to the current page + N levels. 
+        SM2_CURR+N  Always show to the current page + N levels.
                       SM2_CURR      Current (no children)
                       SM2_CURR+3    All parents + current + 3 children
         SM2_START+N Always show from the starting level + N levels. The
@@ -276,12 +276,12 @@
                     what level the current page is.
                       SM2_START     Single level of menus from starting level
                       SM2_START+1   Starting level and 1 level down
-        SM2_MAX+N   Show at most N levels from the starting level. Levels 
+        SM2_MAX+N   Show at most N levels from the starting level. Levels
                     won't be shown if they are below the current level.
                       SM2_MAX       Starting level only (same as SM2_START)
                       SM2_MAX+1     Maximum of starting level and 1 level.
 
-$aOptions  
+$aOptions
     Specify flags for different generation options for the menu. The flags
     may be combined together using bitwise OR (|). For example, to specify
     both TRIM and PRETTY you should use, (SM2_TRIM | SM2_PRETTY).
@@ -288,11 +288,11 @@
 
     GROUP 1
     -------
-    Exactly one flag from this group must always be supplied. These flags 
-    affect how the siblings in the tree are removed from the output. 
+    Exactly one flag from this group must always be supplied. These flags
+    affect how the siblings in the tree are removed from the output.
 
     SM2_ALL         Show all branches of the menu tree
-                        A-1 -> B-1 
+                        A-1 -> B-1
                             -> B-2 -> C-1
                                    -> C-2 (CURRENT)
                                           -> D-1
@@ -300,21 +300,21 @@
                                    -> C-3
                         A-2 -> B-3
                             -> B-4
-    SM2_TRIM        Show all sibling menus of pages on the current path. 
-                    All sub-menus of elements that are not on the path 
+    SM2_TRIM        Show all sibling menus of pages on the current path.
+                    All sub-menus of elements that are not on the path
                     are removed.
-                        A-1 -> B-1 
+                        A-1 -> B-1
                             -> B-2 -> C-1
                                    -> C-2 (CURRENT)
                                           -> D-1
                                           -> D-2
                                    -> C-3
-                        A-2 
+                        A-2
     SM2_CRUMB       Show only the breadcrumb trail, i.e. the current
                     menu and all of it's ancestor menus.
                         A-1 -> B-2 -> C-2 (CURRENT)
-    SM2_SIBLING     The same as SM2_TRIM however only sibling menus of 
-                    the current page are displayed. All other menus are 
+    SM2_SIBLING     The same as SM2_TRIM however only sibling menus of
+                    the current page are displayed. All other menus are
                     trimmed to show only the path.
                         A-1 -> B-2 -> C-1
                                    -> C-2 (CURRENT)
@@ -326,10 +326,10 @@
     -------
     All of these flags are optional. Any number of them may be combined.
 
-    SM2_NUMCLASS    Add the numbered menu classes to the menu. If this 
-                    flag is supplied, the "menu-N" and "menu-child-N" 
+    SM2_NUMCLASS    Add the numbered menu classes to the menu. If this
+                    flag is supplied, the "menu-N" and "menu-child-N"
                     classes will be added.
-                    
+
     SM2_ALLINFO     Load all fields from the page table of the database.
                     This will result in quite a lot of memory being used
                     and is not recommended, however it will make keywords,
@@ -338,28 +338,28 @@
                     NOTE: This flag must be used on the *FIRST* call to
                     show_menu2 *for this menu ID*, or in combination with
                     SM2_NOCACHE otherwise it will have no effect.
-                    
+
     SM2_NOCACHE     Do not reuse or store the data read from the database
-                    between calls to show_menu2. 
-                    
+                    between calls to show_menu2.
+
     SM2_PRETTY      Pretty print the menu HTML with spacing and newlines
                     for debugging purposes.
-                    
-    SM2_BUFFER      Do not output the menu HTML but instead buffer it 
+
+    SM2_BUFFER      Do not output the menu HTML but instead buffer it
                     internally and return it as a string from show_menu2.
-                    
-    SM2_CURRTREE    Exclude all other top level menus from being considered. 
+
+    SM2_CURRTREE    Exclude all other top level menus from being considered.
                     Only items in the current menu tree will be output.
                     This can be combined with any of the Group 1 flags as
                     necessary.
-                    
+
     SM2_ESCAPE      Call htmlspecialchars on the menu strings. This may be
                     required with older installations of WB. By escaping the
-                    raw database strings, it permits menus to have HTML 
+                    raw database strings, it permits menus to have HTML
                     formatting in them that would cause otherwise cause
-                    pages to fail validation. 
-    
-    SM2_SHOWHIDDEN  Hidden pages are usually hidden all of the time, including 
+                    pages to fail validation.
+
+    SM2_SHOWHIDDEN  Hidden pages are usually hidden all of the time, including
                     when they are active (i.e. current page or a parent page).
                     Use private pages for time when you want pages to be
                     hidden except when active. However for compatibility with
@@ -372,46 +372,46 @@
 	SM2_NO_TITLE	Supress the value of the 'title'-attributes on links which
 					are created by [a] or [ac] formatted links.
 
-    This parameter also has an extended mode where an associative array of 
-    options is supplied. See the EXTENDED OPTIONS section for details. 
+    This parameter also has an extended mode where an associative array of
+    options is supplied. See the EXTENDED OPTIONS section for details.
     Most users will NOT need to use this.
 
 $aItemOpen
     Format string to use for creating each individual menu item entry.
-    A different format string may be used for the very first entry by 
-    supplying a different format string for $aTopItemOpen. When set to 
+    A different format string may be used for the very first entry by
+    supplying a different format string for $aTopItemOpen. When set to
     false, it uses the default of '[li][a][menu_title]</a>' to maintain
     compatibility with show_menu(). Note however that CSS formatting is
     often easier if the classes are added to the <a> tag. Use the format
     string of '<li>[ac][menu_title]</a>' for this style of tag.
 
-    This parameter may also be specified as an instance of a formatting 
+    This parameter may also be specified as an instance of a formatting
     class for the menu. See the section "Formatter" below for details of
-    the API this class must expose. When a formatter is supplied, all 
+    the API this class must expose. When a formatter is supplied, all
     arguments after $aItemOpen are ignored.
 
 $aItemClose
     String used to close each item. Note that this is not a format
-    string and no keywords will be replaced. When set to false, it uses 
+    string and no keywords will be replaced. When set to false, it uses
     the default of '</li>'.
 
 $aMenuOpen
-    Format string to use for opening a list of menu item entries. A 
-    different format string may be used for the very first menu by 
-    supplying a different format string for $aTopMenuOpen. When set to 
+    Format string to use for opening a list of menu item entries. A
+    different format string may be used for the very first menu by
+    supplying a different format string for $aTopMenuOpen. When set to
     false, it uses the default of '[ul]'.
 
 $aMenuClose
     String used to close each menu. Note that this is not a format
-    string and no keywords will be replaced. When set to false, it uses 
+    string and no keywords will be replaced. When set to false, it uses
     the default of '</ul>'.
 
 $aTopItemOpen
-    Format string for the first item. When set to false, it uses the same 
+    Format string for the first item. When set to false, it uses the same
     format as $aItemOpen.
 
-$aTopMenuOpen 
-    Format string for the first menu. When set to false, it uses the same 
+$aTopMenuOpen
+    Format string for the first menu. When set to false, it uses the same
     format as $aMenuOpen.
 
 
@@ -419,28 +419,28 @@
 EXTENDED OPTIONS
 ================
 The $aOptions parameter is a dual mode parameter. For most users, only the
-SM2_* flags will be sufficient. However, to access the extra options, it 
+SM2_* flags will be sufficient. However, to access the extra options, it
 must be supplied as an associative array. Note that the SM2_* flags are
 still required and must be supplied as 'flags'.
 
     'flags'     **REQUIRED** These are the flags described in PARAMETERS
-                above for the $aOptions parameter. 
+                above for the $aOptions parameter.
 
-    'notrim'    Specify a number of levels relative to the menu level of 
+    'notrim'    Specify a number of levels relative to the menu level of
                 $aStart that will always be displayed. This will cause the
                 SM2_TRIM flag to be ignored for these levels.
-                        
-To supply one of these options in addition to the flags, the option array 
+
+To supply one of these options in addition to the flags, the option array
 should be created and passed as the $aOptions parameter:
 
     $options = array('flags' => (SM2_TRIM|...), 'notrim' => 1);
     show_menu2(0, SM2_ROOT, SM2_CURR+1, $options);
-    
-    
-    
+
+
+
 FORMAT STRINGS
 ==============
-The following tags may be included in the format strings for $aItemOpen and 
+The following tags may be included in the format strings for $aItemOpen and
 $aMenuOpen and will be replaced with the appropriate text.
 
 [a]             <a> tag (no class):         '<a href="[url]" target="[target]">'
@@ -476,31 +476,31 @@
 
     [if(A){B}]
     [if(A){B}else{C}]
-    
+
     A   Conditional test. See below for more details.
-    
-    B   Expression emitted when the if-test is true. This may be any string 
-        that does NOT include the '}' character. It may include any of the 
-        format strings described in the section FORMAT STRINGS with the 
+
+    B   Expression emitted when the if-test is true. This may be any string
+        that does NOT include the '}' character. It may include any of the
+        format strings described in the section FORMAT STRINGS with the
         exception of the conditional test (because '}' is not permitted).
-        
-    C   Expression emitted when the if-test is false. This may be any string 
-        that does NOT include the '}' character. It may include any of the 
-        format strings described in the section FORMAT STRINGS with the 
+
+    C   Expression emitted when the if-test is false. This may be any string
+        that does NOT include the '}' character. It may include any of the
+        format strings described in the section FORMAT STRINGS with the
         exception of the conditional test (because '}' is not permitted).
-    
+
 The conditional test is a combination of one or more boolean tests.
 If more than one test is supplied, it must be combined with other tests
-using either || (boolean OR) or && (boolean AND). 
+using either || (boolean OR) or && (boolean AND).
 
 A single test is made up of the left operand, operator and right operand.
 e.g. X == Y where X is the left operand, == is the operator and Y is the
 right operand.
-    
+
     Left operand. It must be one of the following keywords:
         class       Test for existence of one of the classes. Only the
                     "==" and "!=" operators are permitted. In this case
-                    these operators have the meaning of "includes" 
+                    these operators have the meaning of "includes"
                     instead of "equals".
         level       Test against the page level.
         sib         Test against the current page sibling number.
@@ -507,7 +507,7 @@
         sibCount    Test against the number of siblings in the menu.
         id          Test against the page id.
 		target		Test against the target attribute
-    
+
     Operator. It must be one of the following:
         <           Less Than
         <=          Less Than Equals
@@ -515,10 +515,10 @@
         !=          Not Equal
         >=          Greater Than Equals
         >           Greater Than
-    
+
     Right operand. The type of this operand depends on the keyword used
     for the left operand:
-        class       One of the "menu-*" class names as listed in the 
+        class       One of the "menu-*" class names as listed in the
                     section "OUTPUT".
         level       Test the page level against the following values:
                       <number>  absolute page level
@@ -535,9 +535,9 @@
                     the count of siblings in this menu.
         sibCount    A positive integer.
 		target		A string, containing a possible target
-        
+
 For example, valid tests are expression "exp" is emitted only when the menu item:
-    
+
     [if(class==menu-expand){exp}]   has a sub-menu
     [if(class==menu-first){exp}]    is first item in a menu
     [if(class!=menu-first){exp}]    is NOT first item in a menu
@@ -551,7 +551,7 @@
     [if(id==parent){exp}]           is the parent of the current page
 	[if(target==_self){exp}]		if value of target-attribute is '_self'
 
-If an else-clause was added, then the expression for the else would be 
+If an else-clause was added, then the expression for the else would be
 emitted in all other cases. For example the expression "foo" is emitted
 whenever the if-test is false, so therefore:
 
@@ -560,9 +560,9 @@
 
 For multiple tests, the expression "exp" is emitted only when the menu item:
 
-    [if(sib == 1 || sib > 3){exp}]      
+    [if(sib == 1 || sib > 3){exp}]
         [is the first item] OR [is the 4th or larger item] in the menu
-        
+
     [if(id == current && class == menu-expand){exp}
         [is the current item] AND [it has children]
 
@@ -569,7 +569,7 @@
 Note that all tests are evaluated in the order listed because:
  * there is no short-circuit evaluation (all individual tests are always evaluated)
  * there is no grouping of tests (i.e. no support for parenthesis)
- * both || and && are considered the same level 
+ * both || and && are considered the same level
 
 
 
@@ -577,9 +577,9 @@
 =========
 Note: This is an advanced and rarely needed feature!
 
-If you are capable of extensive PHP programming, it is possible to replace the 
+If you are capable of extensive PHP programming, it is possible to replace the
 predefined menu formatter that show_menu2 is uses with a custom module. See the
-include.php file of show_menu2 for an example of how the menu formatter must be 
+include.php file of show_menu2 for an example of how the menu formatter must be
 written. The API it must use is:
 
 class SM2_Formatter
@@ -586,22 +586,22 @@
 {
     // called once before any menu is processed to allow object initialization
     function initialize() { }
-    
+
     // called to open the menu list
     function startList($aPage, $aUrl) { }
-    
+
     // called to open the menu item
     function startItem($aPage, $aUrl, $aCurrSib, $aSibCount) { }
-    
+
     // called to close the menu item
     function finishItem() { }
-    
+
     // called to close the menu list
     function finishList() { }
-    
+
     // called once after all menu has been processed to allow object finalization
     function finalize() { }
-    
+
     // called once after finalize() if the SM2_NOOUTPUT flag is used
     function getOutput() { }
 };
