. .
pragmaMx Support Forum 11 Oktober 2008, 13:43:57 *
Willkommen Gast. Bitte einloggen oder registrieren.


Einloggen mit Benutzername und Passwort
News:
Brauchen Sie Hilfe? Bitte nutzen Sie unsere Suchfunktion bevor Sie Beiträge oder Fragen ins Board schreiben! Viele Fragen wurden bereits gestellt und beantwortet. Danke!
 
Übersicht Hilfe Forenregeln / Boardrules
 
Suche
Seiten: [1]   Nach unten
Drucken
Autor Thema: wo wird submenu definiert?  (Gelesen 916 mal)
0 Mitglieder und 1 Gast betrachten dieses Thema.
niccki
weiss was
***
Offline Offline

Beiträge: 111



« am: 25 September 2007, 20:07:50 »

Hallo, ich würde gerne das submenu etwas anpassen.
Da ich keine Kommentare erlaube, macht es irgendwie keinen Sinn, dass dort die "neuesten Kommentare" erscheinen. Bewertungen dürfen auch nicht abgegeben werden...  usw.

Leider finde ich einfach nicht die Stelle, wo das submenu definiert wird (nur den Aufruf.. aber ich möchte ja nicht das gesamte Untermenü eliminieren, sondern nur die Teile, die ich nicht brauche - schade, dass das nicht in der config geht... ).

Kann mir jemand helfen?
Gespeichert
SvenW
Beta-Tester
****
Offline Offline

Geschlecht: Männlich
Beiträge: 899



« Antworten #1 am: 27 September 2007, 01:54:49 »

Hi,

die Funktionen der Navigation findest du in der Datei: /modules/Galerie/include/themes.inc.php

Um Nebenwirkungen vorzubeugen... solltest du einfach diesen Funktionscode:

Code: [Select]  
// ANFANG MENU//////////////////////////////////////////////////////////////

function assemble_template_buttons($template_buttons,$buttons) {
    $counter=0;
    $output='';

    foreach ($buttons as $button)  {
      if (isset($button[4])) {
         $spacer=$button[4];
      } else {
      $spacer='';
      }

        $params = array(
            '{SPACER}'     => $spacer,
            '{BLOCK_ID}'   => $button[3],
            '{HREF_TGT}'   => $button[2],
            '{HREF_TITLE}' => $button[1],
            '{HREF_LNK}'   => $button[0]
            );
        $output.=template_eval($template_buttons, $params);
    }
    return $output;
}


// Creates an array of tokens to be used with function assemble_template_buttons
// this function is used in this file it needs to be declared before being called.
function addbutton(&$menu,$href_lnk,$href_title,$href_tgt,$block_id,$spacer) {
  $menu[]=array($href_lnk,$href_title,$href_tgt,$block_id,$spacer);
}


// HTML template for sys_menu
$template_sys_menu = <<<EOT
          {BUTTONS}
EOT;

// HTML template for sub_menu
$template_sub_menu = $template_sys_menu;

if (!defined('THEME_HAS_NO_SYS_MENU_BUTTONS')) {

  // HTML template for template sys_menu spacer
  $template_sys_menu_spacer ="::";

  // HTML template for template sys_menu buttons
  $template_sys_menu_button = <<<EOT
  <!-- BEGIN {BLOCK_ID} -->
        <a href="{HREF_TGT}" title="{HREF_TITLE}">{HREF_LNK}</a> {SPACER}
  <!-- END {BLOCK_ID} -->
EOT;

  // HTML template for template sys_menu buttons
    // {HREF_LNK}{HREF_TITLE}{HREF_TGT}{BLOCK_ID}{SPACER}
       addbutton($sys_menu_buttons,'{HOME_LNK}','{HOME_TITLE}','{HOME_TGT}','home',$template_sys_menu_spacer);
    addbutton($sys_menu_buttons,'{MY_GAL_LNK}','{MY_GAL_TITLE}','{MY_GAL_TGT}','my_gallery',$template_sys_menu_spacer);
    addbutton($sys_menu_buttons,'{MEMBERLIST_LNK}','{MEMBERLIST_TITLE}','{MEMBERLIST_TGT}','allow_memberlist',$template_sys_menu_spacer);
    addbutton($sys_menu_buttons,'{MY_PROF_LNK}','{MY_PROF_TITLE}','{MY_PROF_TGT}','my_profile',$template_sys_menu_spacer);
    addbutton($sys_menu_buttons,'{ADM_MODE_LNK}','{ADM_MODE_TITLE}','{ADM_MODE_TGT}','enter_admin_mode',$template_sys_menu_spacer);
    addbutton($sys_menu_buttons,'{USR_MODE_LNK}','{USR_MODE_TITLE}','{USR_MODE_TGT}','leave_admin_mode',$template_sys_menu_spacer);
    addbutton($sys_menu_buttons,'{UPL_PIC_LNK}','{UPL_PIC_TITLE}','{UPL_PIC_TGT}','upload_pic',$template_sys_menu_spacer);
    addbutton($sys_menu_buttons,'{REGISTER_LNK}','{REGISTER_TITLE}','{REGISTER_TGT}','register',$template_sys_menu_spacer);
    addbutton($sys_menu_buttons,'{FAQ_LNK}','{FAQ_TITLE}','{FAQ_TGT}','faq',$template_sys_menu_spacer);
    addbutton($sys_menu_buttons,'{LOGIN_LNK}','{LOGIN_TITLE}','{LOGIN_TGT}','login','');
    addbutton($sys_menu_buttons,'{LOGOUT_LNK}','{LOGOUT_TITLE}','{LOGOUT_TGT}','logout','');
    // Login and Logout don't have a spacer as only one is shown, and either would be the last option.

  $params = array('{BUTTONS}' => assemble_template_buttons($template_sys_menu_button,$sys_menu_buttons));
  $template_sys_menu = template_eval($template_sys_menu,$params);
}

if (!defined('THEME_HAS_NO_SUB_MENU_BUTTONS')) {

  // HTML template for template sub_menu spacer
  $template_sub_menu_spacer = $template_sys_menu_spacer;

  // HTML template for template sub_menu buttons
  $template_sub_menu_button= $template_sys_menu_button;

  // HTML template for template sub_menu buttons
    // {HREF_LNK}{HREF_TITLE}{HREF_TGT}{BLOCK_ID}{SPACER}
addbutton($sub_menu_buttons,'{CUSTOM_LNK_LNK}','{CUSTOM_LNK_TITLE}','{CUSTOM_LNK_TGT}','custom_link',$template_sub_menu_spacer);
    addbutton($sub_menu_buttons,'{ALB_LIST_LNK}','{ALB_LIST_TITLE}','{ALB_LIST_TGT}','album_list',$template_sub_menu_spacer);
    addbutton($sub_menu_buttons,'{LASTUP_LNK}','{LASTUP_TITLE}','{LASTUP_TGT}','lastup',$template_sub_menu_spacer);
    addbutton($sub_menu_buttons,'{LASTCOM_LNK}','{LASTCOM_TITLE}','{LASTCOM_TGT}','lastcom',$template_sub_menu_spacer);
    addbutton($sub_menu_buttons,'{TOPN_LNK}','{TOPN_TITLE}','{TOPN_TGT}','topn',$template_sub_menu_spacer);
    addbutton($sub_menu_buttons,'{TOPRATED_LNK}','{TOPRATED_TITLE}','{TOPRATED_TGT}','toprated',$template_sub_menu_spacer);
    addbutton($sub_menu_buttons,'{FAV_LNK}','{FAV_TITLE}','{FAV_TGT}','favpics',$template_sub_menu_spacer);
    addbutton($sub_menu_buttons,'{SEARCH_LNK}','{SEARCH_TITLE}','{SEARCH_TGT}','search','');

  $params = array('{BUTTONS}' => assemble_template_buttons($template_sub_menu_button,$sub_menu_buttons));
  $template_sub_menu = template_eval($template_sub_menu,$params);
}
// ENDE MENU///////////////////////////////////////////////////////////////



in folgende Datei implementieren: /modules/Galerie/themes/dein-mx-port-theme/theme.php

Nun noch die Textlinks anpassen und fertig...



Gruß

black







« Letzte Änderung: 27 September 2007, 02:10:21 von black and white » Gespeichert

Gruß,
Sven

CMS-Version:            pragmaMx 0.1.11, up-to-date
PHP-Version:             5.2.6 
MySQL-Version:        5.0.45-community-log
Server-Version:         Apache 2.0
niccki
weiss was
***
Offline Offline

Beiträge: 111



« Antworten #2 am: 27 September 2007, 07:18:05 »

super, ich danke Dir... mir wars, als hätte ich das schonmal gewusst.... aber manches Wissen geht wohl verloren (wenn man es sich nicht aufschreibt, was ich jetzt mal tue).

Den code konnte ich übrigens nicht implementieren, meine Logik  führte zu einer Fehlermeldung.
Ich habe dann kurzerhand selbst die überflüssigen Teile entfernt.

Viele Grüße!
Gespeichert
SvenW
Beta-Tester
****
Offline Offline

Geschlecht: Männlich
Beiträge: 899



« Antworten #3 am: 28 September 2007, 08:01:21 »

Den code konnte ich übrigens nicht implementieren, meine Logik  führte zu einer Fehlermeldung.
Ich habe dann kurzerhand selbst die überflüssigen Teile entfernt.

Viele Grüße!

hi,

dachte auch der untere codeabschnitt würde langen, aber dann wird nur eine weisse seite bei mir angezeigt. bei mir funktioniert es nur, wenn ich den kompletten code in die zeile 98 einfüge. da aber alles überwiegend instinktiv bei mir läuft, liegt es bestimmt an meiner einer. puzzled biggrin.

das gleiche problem hatte ich auch schon in diesem post http://www.pragmamx.org/Forum-topic-21972.html
mit der weissen seite, als ich den profillink in die kommentare einbauen wollte.

vieleicht kann sich ja mal ein coder die sache anschauen und den code bereinigen?


gruss

black
Gespeichert

Gruß,
Sven

CMS-Version:            pragmaMx 0.1.11, up-to-date
PHP-Version:             5.2.6 
MySQL-Version:        5.0.45-community-log
Server-Version:         Apache 2.0
Seiten: [1]   Nach oben
Drucken
 
Gehe zu:  

Powered by SMF 1.1.6 | SMF © 2006-2008, Simple Machines LLC
design by hENNE, layout based on YAML