Hauptmenu mehrfach mit unterschiedlichen Bäumen einsetzen

JSommer
Beiträge: 324
Registriert: Fr 5. Sep 2003, 12:32
Wohnort: 192.168.0.11
Kontaktdaten:

Beitrag von JSommer » Do 19. Mai 2005, 17:25

er schrieb aber auch: hinterm horizont gehts weiter :-)

Tom
Beiträge: 80
Registriert: Fr 20. Sep 2002, 21:47
Wohnort: Mülheim
Kontaktdaten:

Beitrag von Tom » Do 19. Mai 2005, 18:23

also, es klappt tatsächlich ... mein fehler war, dass ich vor lauter probieren und testen in einer anderen navi bereits die variable _mod2 verwendet habe ...


also, ich poste noch einmal den code der hauptnavigation, oben steht drin was man nun ändern muss, um die navi zu verdoppeln. anzumerken ist, dass ich in jedem kategoriebaum nur eine weitere kategorie habe und darin liegt (später mal :-)) jeweils nur eine seite. ich arbeite also nicht mit untermenüs sondern ich benötige jeweils nur den "einfachen" inhalt einer kat (also ebene1).


Input:

Code: Alles auswählen

/** 
* Navigation
*
* Modulnummer: 1000, Präfix: _mod1
*
* Zum Verwenden mehrerer Hauptnavigationselemente auf
* einer Seite muss mittels Suchen und Ersetzen die 
* Modulnummer "CMS_VAR[1000]" mit z.B. 2000 ersetzt werden
*
* 
* INPUT 
* 
* @autor Jan Lengowski <Jan.Lengowski@4fb.de> 
* @copyright four for business AG 2003 
*/ 

?> 
<table cellspacing="0" cellpadding="0" cellpadding="0"> 
    <tr> 
        <td class="text_medium" style="padding: 10px;">Baum wählen:</td> 
        <td style="padding: 10px;"> 
            <select name="CMS_VAR[1000]"> 
            <option value="0">-- kein --</option> 
            <?php 

                $sql = "SELECT 
                            A.idcat, 
                            C.name 
                        FROM 
                            ".$cfg["tab"]["cat_tree"]." AS A, 
                            ".$cfg["tab"]["cat"]." AS B, 
                            ".$cfg["tab"]["cat_lang"]." AS C 
                        WHERE 
                            A.idcat     = B.idcat AND 
                            B.idcat     = C.idcat AND 
                            C.idlang    = '".$lang."' AND 
                            B.idclient  = '".$client."' AND 
                            C.visible   = 1 AND 
                            A.level     = '0' 
                        ORDER BY 
                            A.idtree"; 

                $db->query($sql); 

                while ( $db->next_record() ) { 

                    if ( "CMS_VALUE[1000]" == $db->f("idcat") ) { 
                        echo '<option selected="selected" value="'.$db->f("idcat").'">'.$db->f("name").'</option>'; 

                    } else { 
                        echo '<option value="'.$db->f("idcat").'">'.$db->f("name").'</option>'; 

                    } 
                } 

            ?> 
            </select> 
        </td> 
    </tr> 
</table> 

<?php


Output:

Code: Alles auswählen

<?php 

/*********************************************** 
* CONTENIDO MODUL - OUTPUT 
* 
* Modulnummer: 1000, Präfix: _mod1
*
* Zum Verwenden mehrerer Hauptnavigationselemente auf
* einer Seite muss mittels Suchen und Ersetzen die 
* Modulnummer "[1000]" mit z.B. 2000 ersetzt werden und
* der Präfix _mod1 muss durch z.B. _mod2 ersetzt werden.
*
* Modulname   :     Navigation 1.1 
* Author      :     Jan Lengowski 
* Copyright   :     Contenido - four for business 
* Created     :     15-05-2003 
* Modified    :     26-05-2003 
************************************************/ 

if ( !is_object($db2) ) { 
    $db2 = new DB_Contenido; 
} 

/** 
 * Check if a category is child 
 * of another category 
 * 
 * @return boolean true/false 
 * @author Jan Lengowski <Jan.Lengowski@4fb.de> 
 * @copyright four for business AG 2003 
 */ 
if (!function_exists("catischildof_mod1")) 
{ 
    function catischildof_mod1($id, $idparent) { 
    
        global $cfg, $client, $lang; 
    
        $db = new DB_Contenido; 
    
        $parent = $id; 
    
        while ( $parent != 0 ) { 
    
            $sql = "SELECT 
                        a.parentid 
                    FROM 
                        ".$cfg["tab"]["cat"]." AS a, 
                        ".$cfg["tab"]["cat_lang"]." AS b 
                    WHERE 
                        a.idclient  = '".$client."' AND 
                        b.idlang    = '".$lang."' AND 
                        a.idcat     = b.idcat AND 
                        a.idcat   = '".$parent."'"; 
    
            $db->query($sql); 
            $db->next_record(); 
    
            $parent = $db->f("parentid"); 
    
            if ($parent == $idparent) { 
                return true; 
            } 
    
        } 
    
        return false; 
    
    } 
} 

if ( catischildof_mod1($idcat, "CMS_VALUE[1000]") ) { 
    $sel_idcat = $idcat; 
} else { 
    $sel_idcat = "CMS_VALUE[1000]"; 
} 

/* Include Template Class */ 
include_once($cfg["path"]["contenido"] . 'classes/class.template.php'); 

/** 
 * Array storing alle the 
 * navigation data 
 */ 
$navitems_mod1 = array(); 


/* Template Instance */ 
$tpl_mod1 = new Template; 

/** 
 * Recursive function for creating 
 * the navigation array 
 * @param Int $idcat Category id 
 */ 

if (!function_exists("nav_mod1")) 
{ 
function nav_mod1($idcat) { 

        global $navitems_mod1, $client, $lang, $cfg; 

        $db  = new DB_Contenido; 
        $db2 = new DB_Contenido; 

        $sql = "SELECT parentid FROM ".$cfg["tab"]["cat"]." WHERE idcat = '$idcat'"; 

        $db->query($sql); 
        $db->next_record(); 

        $parentid = $db->f("parentid"); 

        if ( $parentid == 0 ) { 

           if ( $idcat != "CMS_VALUE[1000]" ){ 

                $navitems_mod1 = array(); 
              
                $sql = "SELECT 
                            A.idcat, 
                            C.name 
                        FROM 
                            ".$cfg["tab"]["cat_tree"]." AS A, 
                            ".$cfg["tab"]["cat"]." AS B, 
                            ".$cfg["tab"]["cat_lang"]." AS C 
                        WHERE 
                            A.idcat     = B.idcat   AND 
                            B.idcat     = C.idcat   AND 
                            B.idclient  = '$client' AND 
                            C.idlang    = '$lang'   AND 
                            C.visible   = '1'       AND 
                            B.parentid  = 'CMS_VALUE[1000]' 
                        ORDER 
                            BY A.idtree"; 

                      $db->query($sql); 

                      while ($db->next_record()) { 

                            /* Check for external redirects... */ 
                            $sql = "SELECT 
                                        a.external_redirect AS ext 
                                    FROM 
                                        ".$cfg["tab"]["art_lang"]." AS a, 
                                        ".$cfg["tab"]["cat_art"]." AS b, 
                                        ".$cfg["tab"]["cat"]." AS c 
                                    WHERE 
                                        b.idcat     = '".$db->f("idcat")."' AND 
                                        b.is_start  = '1' AND 
                                        c.idclient  = '".$client."' AND 
                                        c.idcat     = b.idcat AND 
                                        a.idart     = b.idart AND 
                                        a.idlang    = '".$lang."'"; 

                            $db2->query($sql); 
                            $db2->next_record(); 

                            $target = ( $db2->f("ext") == 0 ) ? '_self' : '_blank'; 

                            $navitems_mod1[$db->f("idcat")] = array("idcat"      => $db->f("idcat"), 
                                                                "name"      => $db->f("name"), 
                                                                "target"    => $target); 
                      } 

           } 
            
           return true; 
        } 

        $sql = "SELECT 
                    A.idcat, 
                    C.name 
                FROM 
                    ".$cfg["tab"]["cat_tree"]." AS A, 
                    ".$cfg["tab"]["cat"]." AS B, 
                    ".$cfg["tab"]["cat_lang"]." AS C 
                WHERE 
                    A.idcat     = B.idcat   AND 
                    B.idcat     = C.idcat   AND 
                    B.idclient  = '$client' AND 
                    C.idlang    = '$lang'   AND 
                    C.visible   = '1'       AND 
                    B.parentid  = '$parentid' 
                ORDER BY 
                    A.idtree"; 

        $db->query($sql); 

        while ($db->next_record()) { 

                /* Check for external redirects... */ 
                $sql = "SELECT 
                            a.external_redirect AS ext 
                        FROM 
                            ".$cfg["tab"]["art_lang"]." AS a, 
                            ".$cfg["tab"]["cat_art"]." AS b, 
                            ".$cfg["tab"]["cat"]." AS c 
                        WHERE 
                            b.idcat     = '".$db->f("idcat")."' AND 
                            b.is_start  = '1' AND 
                            c.idclient  = '".$client."' AND 
                            c.idcat     = b.idcat AND 
                            a.idart     = b.idart AND 
                            a.idlang    = '".$lang."'"; 

                $db2->query($sql); 
                $db2->next_record(); 

                $target = ( $db2->f("ext") == 0 ) ? '_self' : '_blank'; 
                
                $tmp_nav[$db->f("idcat")] = array("idcat"   => $db->f("idcat"), 
                                                  "name"    => $db->f("name"), 
                                                  "target"  => $target); 
        } 

        $tmp_nav[$idcat]["sub"] = $navitems_mod1; 
        $navitems_mod1 = $tmp_nav; 

       /* Function call */ 
        nav_mod1($parentid); 

}  // end function 
} // check if exist 

$sql = "SELECT 
            A.idcat, 
            C.name 
        FROM 
            ".$cfg["tab"]["cat_tree"]." AS A, 
            ".$cfg["tab"]["cat"]." AS B, 
            ".$cfg["tab"]["cat_lang"]." AS C 
        WHERE 
            A.idcat     = B.idcat   AND 
            B.idcat     = C.idcat   AND 
            B.idclient  = '$client' AND 
            C.idlang    = '$lang'   AND 
            C.visible   = '1'       AND 
            B.parentid  = '$sel_idcat' 
        ORDER BY 
            A.idtree"; 

$db->query($sql); 

while ( $db->next_record() ) { 

        /* Check for external redirects... */ 
        $sql = "SELECT 
                    a.external_redirect AS ext 
                FROM 
                    ".$cfg["tab"]["art_lang"]." AS a, 
                    ".$cfg["tab"]["cat_art"]." AS b, 
                    ".$cfg["tab"]["cat"]." AS c 
                WHERE 
                    b.idcat     = '".$db->f("idcat")."' AND 
                    b.is_start  = '1' AND 
                    c.idclient  = '".$client."' AND 
                    c.idcat     = b.idcat AND 
                    a.idart     = b.idart AND 
                    a.idlang    = '".$lang."'"; 

        $db2->query($sql); 
        $db2->next_record(); 

        $target = ( $db2->f("ext") == 0 ) ? '_self' : '_blank'; 

        $navitems_mod1[$db->f("idcat")] = array("idcat"  => $db->f("idcat"), 
                                           "name"   => $db->f("name"), 
                                           "target" => $target); 
} 

/* Create Navigation Array */ 
nav_mod1($sel_idcat); 

/* Start Output buffer */ 
ob_start(); 

echo '<table cellspacing="0" cellpadding="0" border="0">'; 

foreach ($navitems_mod1 as $key => $data) { 

    /* 1. Navigations Ebene */ 
    $tpl_mod1->reset(); 
    $tpl_mod1->set('d', 'NAME',  $data['name']); 
    $tpl_mod1->set('d', 'TARGET', $data['target']); 
    $tpl_mod1->set('d', 'HREF',  $sess->url('front_content.php?idcat='.$data['idcat'])); 
    $tpl_mod1->next(); 


    if ($idcat == $data['idcat'] || is_array($data['sub'])) { 
        $tpl_mod1->generate('templates/navfirst_on.html'); 
    } else { 
        $tpl_mod1->generate('templates/navfirst_off.html'); 
    } 

    if (is_array($data['sub'])) { 

        foreach ($data['sub'] as $key => $data) { 

            /* 2. Navigations Ebene */ 
            $tpl_mod1->reset(); 
            $tpl_mod1->set('d', 'NAME',  $data['name']); 
            $tpl_mod1->set('d', 'TARGET', $data['target']); 
            $tpl_mod1->set('d', 'HREF',  $sess->url('front_content.php?idcat='.$data['idcat'])); 
            $tpl_mod1->next(); 

            if ($idcat == $data['idcat'] || is_array($data['sub'])) { 
                $tpl_mod1->generate('templates/navsecond_on.html'); 
            } else { 
                $tpl_mod1->generate('templates/navsecond_off.html'); 
            } 

            if (is_array($data['sub'])) { 

                foreach ($data['sub'] as $key => $data) { 

                    /* 3. Navigations Ebene */ 
                    $tpl_mod1->reset(); 
                    $tpl_mod1->set('d', 'NAME',  $data['name']); 
                    $tpl_mod1->set('d', 'TARGET', $data['target']); 
                    $tpl_mod1->set('d', 'HREF',  $sess->url('front_content.php?idcat='.$data['idcat'])); 
                    $tpl_mod1->next(); 

                    if ($idcat == $data['idcat']) { 
                        $tpl_mod1->generate('templates/navthird_on.html'); 
                    } else { 
                        $tpl_mod1->generate('templates/navthird_off.html'); 
                    } 

                } // end foreach 

            } // end if 

        } // end foreach 

    } // end if 

} // end foreach 

echo '</table>'; 

/* Read out buffer */ 
$html = ob_get_contents(); 

/* Clean buffer */ 
ob_end_clean(); 

/* Output buffer-contents */ 
echo $html;


?>

so müsste das klappen .-)

so long,
tom
Wer rechtschreipfeler Vindet darv die auch gerne behallten :-)

JSommer
Beiträge: 324
Registriert: Fr 5. Sep 2003, 12:32
Wohnort: 192.168.0.11
Kontaktdaten:

Beitrag von JSommer » Do 19. Mai 2005, 18:48

werd ich am weekend mal testen. thx. hast du nen link, wo du das eingesetzt hast?

Tom
Beiträge: 80
Registriert: Fr 20. Sep 2002, 21:47
Wohnort: Mülheim
Kontaktdaten:

Beitrag von Tom » Do 19. Mai 2005, 21:27

hast ne pm :-)
Wer rechtschreipfeler Vindet darv die auch gerne behallten :-)

BIQA
Beiträge: 49
Registriert: So 20. Nov 2005, 21:13
Wohnort: Koeln
Kontaktdaten:

ich bin zu blöd

Beitrag von BIQA » Do 19. Jan 2006, 13:57

Ich versuche den Code zu benutzen, bekomme aber mit Paste und Copy nur rote Bälle neben INPUT und OUTPUT angezeigt...Funktionieren tuts gar nicht... Nutze 4.6.4
Tom hat geschrieben:also, es klappt tatsächlich ... mein fehler war, dass ich vor lauter probieren und testen in einer anderen navi bereits die variable _mod2 verwendet habe ...


also, ich poste noch einmal den code der hauptnavigation, oben steht drin was man nun ändern muss, um die navi zu verdoppeln. anzumerken ist, dass ich in jedem kategoriebaum nur eine weitere kategorie habe und darin liegt (später mal :-)) jeweils nur eine seite. ich arbeite also nicht mit untermenüs sondern ich benötige jeweils nur den "einfachen" inhalt einer kat (also ebene1).


Input:

Code: Alles auswählen

/** 
* Navigation
*
* Modulnummer: 1000, Präfix: _mod1
*
* Zum Verwenden mehrerer Hauptnavigationselemente auf
* einer Seite muss mittels Suchen und Ersetzen die 
* Modulnummer "CMS_VAR[1000]" mit z.B. 2000 ersetzt werden
*
* 
* INPUT 
* 
* @autor Jan Lengowski <Jan.Lengowski@4fb.de> 
* @copyright four for business AG 2003 
*/ 

?> 
<table cellspacing="0" cellpadding="0" cellpadding="0"> 
    <tr> 
        <td class="text_medium" style="padding: 10px;">Baum wählen:</td> 
        <td style="padding: 10px;"> 
            <select name="CMS_VAR[1000]"> 
            <option value="0">-- kein --</option> 
            <?php 

                $sql = "SELECT 
                            A.idcat, 
                            C.name 
                        FROM 
                            ".$cfg["tab"]["cat_tree"]." AS A, 
                            ".$cfg["tab"]["cat"]." AS B, 
                            ".$cfg["tab"]["cat_lang"]." AS C 
                        WHERE 
                            A.idcat     = B.idcat AND 
                            B.idcat     = C.idcat AND 
                            C.idlang    = '".$lang."' AND 
                            B.idclient  = '".$client."' AND 
                            C.visible   = 1 AND 
                            A.level     = '0' 
                        ORDER BY 
                            A.idtree"; 

                $db->query($sql); 

                while ( $db->next_record() ) { 

                    if ( "CMS_VALUE[1000]" == $db->f("idcat") ) { 
                        echo '<option selected="selected" value="'.$db->f("idcat").'">'.$db->f("name").'</option>'; 

                    } else { 
                        echo '<option value="'.$db->f("idcat").'">'.$db->f("name").'</option>'; 

                    } 
                } 

            ?> 
            </select> 
        </td> 
    </tr> 
</table> 

<?php


Output:

Code: Alles auswählen

<?php 

/*********************************************** 
* CONTENIDO MODUL - OUTPUT 
* 
* Modulnummer: 1000, Präfix: _mod1
*
* Zum Verwenden mehrerer Hauptnavigationselemente auf
* einer Seite muss mittels Suchen und Ersetzen die 
* Modulnummer "[1000]" mit z.B. 2000 ersetzt werden und
* der Präfix _mod1 muss durch z.B. _mod2 ersetzt werden.
*
* Modulname   :     Navigation 1.1 
* Author      :     Jan Lengowski 
* Copyright   :     Contenido - four for business 
* Created     :     15-05-2003 
* Modified    :     26-05-2003 
************************************************/ 

if ( !is_object($db2) ) { 
    $db2 = new DB_Contenido; 
} 

/** 
 * Check if a category is child 
 * of another category 
 * 
 * @return boolean true/false 
 * @author Jan Lengowski <Jan.Lengowski@4fb.de> 
 * @copyright four for business AG 2003 
 */ 
if (!function_exists("catischildof_mod1")) 
{ 
    function catischildof_mod1($id, $idparent) { 
    
        global $cfg, $client, $lang; 
    
        $db = new DB_Contenido; 
    
        $parent = $id; 
    
        while ( $parent != 0 ) { 
    
            $sql = "SELECT 
                        a.parentid 
                    FROM 
                        ".$cfg["tab"]["cat"]." AS a, 
                        ".$cfg["tab"]["cat_lang"]." AS b 
                    WHERE 
                        a.idclient  = '".$client."' AND 
                        b.idlang    = '".$lang."' AND 
                        a.idcat     = b.idcat AND 
                        a.idcat   = '".$parent."'"; 
    
            $db->query($sql); 
            $db->next_record(); 
    
            $parent = $db->f("parentid"); 
    
            if ($parent == $idparent) { 
                return true; 
            } 
    
        } 
    
        return false; 
    
    } 
} 

if ( catischildof_mod1($idcat, "CMS_VALUE[1000]") ) { 
    $sel_idcat = $idcat; 
} else { 
    $sel_idcat = "CMS_VALUE[1000]"; 
} 

/* Include Template Class */ 
include_once($cfg["path"]["contenido"] . 'classes/class.template.php'); 

/** 
 * Array storing alle the 
 * navigation data 
 */ 
$navitems_mod1 = array(); 


/* Template Instance */ 
$tpl_mod1 = new Template; 

/** 
 * Recursive function for creating 
 * the navigation array 
 * @param Int $idcat Category id 
 */ 

if (!function_exists("nav_mod1")) 
{ 
function nav_mod1($idcat) { 

        global $navitems_mod1, $client, $lang, $cfg; 

        $db  = new DB_Contenido; 
        $db2 = new DB_Contenido; 

        $sql = "SELECT parentid FROM ".$cfg["tab"]["cat"]." WHERE idcat = '$idcat'"; 

        $db->query($sql); 
        $db->next_record(); 

        $parentid = $db->f("parentid"); 

        if ( $parentid == 0 ) { 

           if ( $idcat != "CMS_VALUE[1000]" ){ 

                $navitems_mod1 = array(); 
              
                $sql = "SELECT 
                            A.idcat, 
                            C.name 
                        FROM 
                            ".$cfg["tab"]["cat_tree"]." AS A, 
                            ".$cfg["tab"]["cat"]." AS B, 
                            ".$cfg["tab"]["cat_lang"]." AS C 
                        WHERE 
                            A.idcat     = B.idcat   AND 
                            B.idcat     = C.idcat   AND 
                            B.idclient  = '$client' AND 
                            C.idlang    = '$lang'   AND 
                            C.visible   = '1'       AND 
                            B.parentid  = 'CMS_VALUE[1000]' 
                        ORDER 
                            BY A.idtree"; 

                      $db->query($sql); 

                      while ($db->next_record()) { 

                            /* Check for external redirects... */ 
                            $sql = "SELECT 
                                        a.external_redirect AS ext 
                                    FROM 
                                        ".$cfg["tab"]["art_lang"]." AS a, 
                                        ".$cfg["tab"]["cat_art"]." AS b, 
                                        ".$cfg["tab"]["cat"]." AS c 
                                    WHERE 
                                        b.idcat     = '".$db->f("idcat")."' AND 
                                        b.is_start  = '1' AND 
                                        c.idclient  = '".$client."' AND 
                                        c.idcat     = b.idcat AND 
                                        a.idart     = b.idart AND 
                                        a.idlang    = '".$lang."'"; 

                            $db2->query($sql); 
                            $db2->next_record(); 

                            $target = ( $db2->f("ext") == 0 ) ? '_self' : '_blank'; 

                            $navitems_mod1[$db->f("idcat")] = array("idcat"      => $db->f("idcat"), 
                                                                "name"      => $db->f("name"), 
                                                                "target"    => $target); 
                      } 

           } 
            
           return true; 
        } 

        $sql = "SELECT 
                    A.idcat, 
                    C.name 
                FROM 
                    ".$cfg["tab"]["cat_tree"]." AS A, 
                    ".$cfg["tab"]["cat"]." AS B, 
                    ".$cfg["tab"]["cat_lang"]." AS C 
                WHERE 
                    A.idcat     = B.idcat   AND 
                    B.idcat     = C.idcat   AND 
                    B.idclient  = '$client' AND 
                    C.idlang    = '$lang'   AND 
                    C.visible   = '1'       AND 
                    B.parentid  = '$parentid' 
                ORDER BY 
                    A.idtree"; 

        $db->query($sql); 

        while ($db->next_record()) { 

                /* Check for external redirects... */ 
                $sql = "SELECT 
                            a.external_redirect AS ext 
                        FROM 
                            ".$cfg["tab"]["art_lang"]." AS a, 
                            ".$cfg["tab"]["cat_art"]." AS b, 
                            ".$cfg["tab"]["cat"]." AS c 
                        WHERE 
                            b.idcat     = '".$db->f("idcat")."' AND 
                            b.is_start  = '1' AND 
                            c.idclient  = '".$client."' AND 
                            c.idcat     = b.idcat AND 
                            a.idart     = b.idart AND 
                            a.idlang    = '".$lang."'"; 

                $db2->query($sql); 
                $db2->next_record(); 

                $target = ( $db2->f("ext") == 0 ) ? '_self' : '_blank'; 
                
                $tmp_nav[$db->f("idcat")] = array("idcat"   => $db->f("idcat"), 
                                                  "name"    => $db->f("name"), 
                                                  "target"  => $target); 
        } 

        $tmp_nav[$idcat]["sub"] = $navitems_mod1; 
        $navitems_mod1 = $tmp_nav; 

       /* Function call */ 
        nav_mod1($parentid); 

}  // end function 
} // check if exist 

$sql = "SELECT 
            A.idcat, 
            C.name 
        FROM 
            ".$cfg["tab"]["cat_tree"]." AS A, 
            ".$cfg["tab"]["cat"]." AS B, 
            ".$cfg["tab"]["cat_lang"]." AS C 
        WHERE 
            A.idcat     = B.idcat   AND 
            B.idcat     = C.idcat   AND 
            B.idclient  = '$client' AND 
            C.idlang    = '$lang'   AND 
            C.visible   = '1'       AND 
            B.parentid  = '$sel_idcat' 
        ORDER BY 
            A.idtree"; 

$db->query($sql); 

while ( $db->next_record() ) { 

        /* Check for external redirects... */ 
        $sql = "SELECT 
                    a.external_redirect AS ext 
                FROM 
                    ".$cfg["tab"]["art_lang"]." AS a, 
                    ".$cfg["tab"]["cat_art"]." AS b, 
                    ".$cfg["tab"]["cat"]." AS c 
                WHERE 
                    b.idcat     = '".$db->f("idcat")."' AND 
                    b.is_start  = '1' AND 
                    c.idclient  = '".$client."' AND 
                    c.idcat     = b.idcat AND 
                    a.idart     = b.idart AND 
                    a.idlang    = '".$lang."'"; 

        $db2->query($sql); 
        $db2->next_record(); 

        $target = ( $db2->f("ext") == 0 ) ? '_self' : '_blank'; 

        $navitems_mod1[$db->f("idcat")] = array("idcat"  => $db->f("idcat"), 
                                           "name"   => $db->f("name"), 
                                           "target" => $target); 
} 

/* Create Navigation Array */ 
nav_mod1($sel_idcat); 

/* Start Output buffer */ 
ob_start(); 

echo '<table cellspacing="0" cellpadding="0" border="0">'; 

foreach ($navitems_mod1 as $key => $data) { 

    /* 1. Navigations Ebene */ 
    $tpl_mod1->reset(); 
    $tpl_mod1->set('d', 'NAME',  $data['name']); 
    $tpl_mod1->set('d', 'TARGET', $data['target']); 
    $tpl_mod1->set('d', 'HREF',  $sess->url('front_content.php?idcat='.$data['idcat'])); 
    $tpl_mod1->next(); 


    if ($idcat == $data['idcat'] || is_array($data['sub'])) { 
        $tpl_mod1->generate('templates/navfirst_on.html'); 
    } else { 
        $tpl_mod1->generate('templates/navfirst_off.html'); 
    } 

    if (is_array($data['sub'])) { 

        foreach ($data['sub'] as $key => $data) { 

            /* 2. Navigations Ebene */ 
            $tpl_mod1->reset(); 
            $tpl_mod1->set('d', 'NAME',  $data['name']); 
            $tpl_mod1->set('d', 'TARGET', $data['target']); 
            $tpl_mod1->set('d', 'HREF',  $sess->url('front_content.php?idcat='.$data['idcat'])); 
            $tpl_mod1->next(); 

            if ($idcat == $data['idcat'] || is_array($data['sub'])) { 
                $tpl_mod1->generate('templates/navsecond_on.html'); 
            } else { 
                $tpl_mod1->generate('templates/navsecond_off.html'); 
            } 

            if (is_array($data['sub'])) { 

                foreach ($data['sub'] as $key => $data) { 

                    /* 3. Navigations Ebene */ 
                    $tpl_mod1->reset(); 
                    $tpl_mod1->set('d', 'NAME',  $data['name']); 
                    $tpl_mod1->set('d', 'TARGET', $data['target']); 
                    $tpl_mod1->set('d', 'HREF',  $sess->url('front_content.php?idcat='.$data['idcat'])); 
                    $tpl_mod1->next(); 

                    if ($idcat == $data['idcat']) { 
                        $tpl_mod1->generate('templates/navthird_on.html'); 
                    } else { 
                        $tpl_mod1->generate('templates/navthird_off.html'); 
                    } 

                } // end foreach 

            } // end if 

        } // end foreach 

    } // end if 

} // end foreach 

echo '</table>'; 

/* Read out buffer */ 
$html = ob_get_contents(); 

/* Clean buffer */ 
ob_end_clean(); 

/* Output buffer-contents */ 
echo $html;


?>

so müsste das klappen .-)

so long,
tom
Contenido 4.8.12

Gesperrt