Navigation - 1. und 2. Ebene statisch anzeigen

Gesperrt
OSI
Beiträge: 111
Registriert: So 25. Jul 2004, 14:06
Wohnort: Hannover
Kontaktdaten:

Navigation - 1. und 2. Ebene statisch anzeigen

Beitrag von OSI »

Hi,

kennt jemand eine Möglichkeit, die erste und zweite Ebene der Navigation statisch anzuzeigen ?
Also nicht wie normal, bei Klick zweite Ebene anzeigen, sondern ständig alle Punkte erste Ebene (sowieso da) und alle jeweilig dazugehörenden zweiten Ebenen jeden Punktes anzeigen ....

Ich hoffe Ihr versteht meine Problembeschreibung besser als ich ... ;-)

...olli
-- "will code html for food" (cit)
ctschorsch
Beiträge: 101
Registriert: So 21. Nov 2004, 23:48
Kontaktdaten:

Beitrag von ctschorsch »

Versuch dies :

INPUT:
/**
* Navigation
*
* INPUT
*
* @autor Jan Lengowski <Jan.Lengowski@4fb.de>
* @copyright four for business AG 2003
*/

?>
<table cellspacing="0" cellpadding="0" cellpadding="4">

<tr>
<td class="text">Baum wählen:</td>
<td>
<select name="CMS_VAR[0]">
<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[0]" == $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
<?php

/***********************************************
* CONTENIDO MODUL - OUTPUT
*
* Modulname : Navigation ALL
* Author : Jürgen Brings
* Created : 02-04-2004
* Modified : 02-04-2004
************************************************/

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

$navitems = array();

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

$sql2 = "SELECT DISTINCT
TREE.idcat,
LANG.name,
TREE.level

FROM
".$cfg["tab"]["cat_tree"]." AS TREE,
".$cfg["tab"]["cat"]." AS CAT,
".$cfg["tab"]["cat_lang"]." AS LANG
WHERE
TREE.idcat = LANG.idcat AND
TREE.level > 0 AND
LANG.visible = '1' AND
CAT.parentid = 'CMS_VALUE[0]'

ORDER
BY TREE.idtree";

$db2 = new DB_Contenido;
$db2->query($sql2);

while ($db2->next_record()) {

$navitems[$db2->f("idcat")] = array("idcat" => $db2->f("idcat"),"name"=> $db2->f("name"),"level"=> $db2->f("level"));

}
$closesubnav=0;
$firstnav=1;
echo "<div><ul id=\"nav\">";

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

if ($data['level']==1) {
if ($closesubnav==1) {
echo "</ul>";
$closesubnav=0;
}
if ($firstnav==0) {
echo "</li>";
}
$firstnav=0;
$tpl->reset();
$tpl->set('d', 'NAME', $data['name']);
$tpl->set('d', 'ID', '_'.$data['idcat']);
$tpl->set('d', 'TARGET', $data['target']);
$tpl->set('d', 'HREF', $sess->url('front_content.php?idcat='.$data['idcat']));
$tpl->next();
echo "<li><img src=\"images/listicon.jpg\">";

$tpl->generate('templates/vdsnav.html');

} else if ($data['level']==2) {
if ($closesubnav==0) {
echo "<ul class=\"subnav\">";
$closesubnav=1;
}
$tpl->reset();
$tpl->set('d', 'NAME', $data['name']);
$tpl->set('d', 'ID', '_'.$data['idcat']);
$tpl->set('d', 'TARGET', $data['target']);
$tpl->set('d', 'HREF', $sess->url('front_content.php?idcat='.$data['idcat']));
$tpl->next();
echo "<li>";
$tpl->generate('templates/vdsnav.html');
echo"</li>";
}

} //foreach
echo "</li></ul></div>";
?>
ich hab jetzt mal meine styles drinne gelassen, hoffe das stört nicht so weit. Die vdsnav.html ist einfach nur eine von tabellen befreite navfirst.html aus dem template verzeichniss

Georg
OSI
Beiträge: 111
Registriert: So 25. Jul 2004, 14:06
Wohnort: Hannover
Kontaktdaten:

Works for me ...

Beitrag von OSI »

Das Teil hat prima funktioniert, wir mussten zwar noch ein bisschen anpassen und so, aber es war eine Super-Basis !!

Danke schön !

...olli
-- "will code html for food" (cit)
OSI
Beiträge: 111
Registriert: So 25. Jul 2004, 14:06
Wohnort: Hannover
Kontaktdaten:

3 Ebene ??

Beitrag von OSI »

Gibts hier auch noch eine Möglichkeit, die 3. Ebene da noch wieder reinzubekommen ?

1. und 2. klappt ja super, aber die 3. Ebene fehlt gänzlich.

Gruß, ...olli
-- "will code html for food" (cit)
Gesperrt