Navigationsmenu-Erweiterungen

Aus Limbas Wiki

Wechseln zu: Navigation, Suche

<-- zurück zu Admin-Dokumentation / <-- zurück zur Hauptseite


Navigationsmenü erweitern

neuer Hauptmenüpunkt

Um die Hauptmenüs zu erweitern ist es zuerst notwendig einen neuen Menüpunkt unter admin->setup->menüpunkte anzulegen. Dieser muß unter der Hauptkategorie "Hauptmenü" und Unterkategorie "Hauptmenü" liegen. Es sind außer dem Namen keine weiteren Parameter notwendig.
Navigationsmenue erweitern Abb1.png
Die ID dieses neuen Menüpunktes benötigen wir anschließend um das linke Navigationsmenü zu erweitern. Nach einem "reset" und neu laden der Seite wir der neue Menüpunkt neben den schon vorhandenen im oberen Hauptmenü dargestellt. Falls wir unter "URL" nichts eingetragen haben wird versucht das Navigationsmenü mit der neuen Menü-ID die vergeben wurde anzuzeigen. (Menupünkte)

neues Navigationsmenü

Das eigene Navigationsmenü muß in der EXTENSION Datei "ext_nav.inc" im EXTENSION Verzeichniss erstellt werden. Dazu legen wir eine leere Datei mit dem Namen "ext_nav.inc" im EXTENSION Verzeichniss oder einem Unterverzeichniss davon an. Dort kann man nun das vorhandene Menüarray erweitern (Skript-Erweiterungen). Das eigene Menüarray wird dazu über seine ID eingehängt. Die verwendeten IDs sind frei wählbar, sollten aber bei 1000 beginnen damit keine Limbasmenüs überschrieben werden. Um die Übersicht zu behalten bietet es sich an die einzelnen Gruppen-Container und dazugehörige Menüs mit ID-Blöcken zu versehen die auch genug Spielraum für zusätzliche Menüpunkte erlauben.

$menu[1000] = $meinmenue1;
$menu[1001] = $meinmenue2;

Für jeden Unterpunkt im Navigationsmenü, der eine eigene Extension erhalten soll, muss ein neuer Menüpunkt erstellt werden (admin->setup->menüpunkte).
Dieser muss unter der Hauptkategorie "Erweiterungen" stehen und muss ebenfalls einen eindeutigen Aktionsnamen erhalten.

Parameter

  • id : Eindeutige Nummer.
  • name: beliebiger Text zur Bezeichnung des Menüs
  • bg: Hintergrundfarbe
  • link_url: ClickEvent des Menüpunktes (URL_Syntax)
  • gicon: Angezeigte Grafik vor der Bezeichnung des Gruppen-Container
  • icon_url: Angezeigte Grafik vor der Bezeichnung des Menüpunktes


Beispiel ext_nav.inc

Example: LIMBAS Menüerweiterung

Navigationsmenü Abb.2.png
  Abb.1: Menüerweiterung

<?php
# check for rights
if(!$LINK[1000]){return;}


# first group-item
$ebzm = 1100;
$LINK["id"][$ebzm] = $ebzm;
$LINK["name"][$ebzm] = lmb_utf8_decode("Customers");
$LINK["gicon"][$ebzm] = "EXTENSIONS/pic/supplier.png";

# first sub-item
$ebzm = 1101;
$LINK["id"][$ebzm] = $ebzm;
$LINK["name"][$ebzm] = lmb_utf8_decode("new Customers");
$LINK["link_url"][$ebzm] = "parent.main.document.location.href='main.php?&action=gtab_neu&gtabid=1&form_id=1'";
$LINK["bg"][$ebzm] = '#FFFFFF';
$LINK["icon_url"][$ebzm] = 'pic/silk_icons/page_code.gif';


# second sub-item
$ebzm = 1102;
$LINK["id"][$ebzm] = $ebzm;
$LINK["name"][$ebzm] = lmb_utf8_decode("Summary");
$LINK["link_url"][$ebzm] = "parent.main.document.location.href='main.php?action=gtab_erg&gtabid=1&form_id=2'";
$LINK["bg"][$ebzm] = '#FFFFFF';
$ebzm++;
$LINK["icon_url"][$ebzm] = 'pic/silk_icons/page_code.gif';


# second group-item
$ebzm = 1200;
$LINK["id"][$ebzm] = $ebzm;
$LINK["name"][$ebzm] = lmb_utf8_decode("Visitors");
$LINK["gicon"][$ebzm] = "EXTENSIONS/pic/visitors.png";
$ebzm++;

# first sub-item
$ebzm = 1201;
$LINK["id"][$ebzm] = $ebzm;
$LINK["name"][$ebzm] = lmb_utf8_decode("new Visitors");
$LINK["link_url"][$ebzm] = "parent.main.document.location.href='main.php?&action=gtab_neu&gtabid=2'";
$LINK["bg"][$ebzm] = '#FFFFFF';

# second sub-item
$ebzm = 1202;
$LINK["id"][$ebzm] = $ebzm;
$LINK["name"][$ebzm] = lmb_utf8_decode("Summary");
$LINK["link_url"][$ebzm] = "parent.main.document.location.href='main.php?action=gtab_erg&gtabid=2'";
$LINK["bg"][$ebzm] = '#FFFFFF';
$ebzm++;


$menu1 = array();

$menu0 = menu_get_standard(1100,0);
$menus1 = array();
for ($i=1101;$i<=1102;$i++){
	$menus0 = menu_get_standard($i,0);$menus1 = array_merge($menus1,$menus0);
}
$menu0[0]["child"] = $menus1;
$menu1 = array_merge($menu1,$menu0);

# ---------------------------------

$menu0 = menu_get_standard(1200,0);
$menus1 = array();
for ($i=1201;$i<=1202;$i++){
	$menus0 = menu_get_standard($i,0);$menus1 = array_merge($menus1,$menus0);
}
$menu0[0]["child"] = $menus1;
$menu1 = array_merge($menu1,$menu0);


# adding new menu for mainmenu-item with id = 1000
$menu[1000] = $menu1;

# show menu with id 1000 as default menu
$displayMainMenu = "mainMenu('1000')";

?>