Striche in Hauptmenu... (horizontal)

Gesperrt
coarsy
Beiträge: 19
Registriert: Di 21. Dez 2004, 11:18
Wohnort: Frankfurt
Kontaktdaten:

Striche in Hauptmenu... (horizontal)

Beitrag von coarsy »

Hallo zusammen! Ich hab vor kurzem die Site http://www.mediascale.de fertiggestellt... Leider suche ich immer noch nach ner Möglichkeit, diese bescheuerten Striche bei nem aktiven Hauptbutton links und rechts beim aktiven Button wegzubekommen!

Hat vielleicht jemand diesbezüglich ne Idee?

Hab mir überlegt, die kleinen Striche rechts und links von den Buttons durchzumerieren und dann irgendwie mit JavaScript auszublenden...

Was haltet Ihr davon?

Fette Greetz und Dankeschön vom Chris
Halchteranerin
Beiträge: 5478
Registriert: Di 2. Mär 2004, 21:11
Wohnort: Halchter, wo sonst? ;-)
Kontaktdaten:

Beitrag von Halchteranerin »

Benutzt das Modul Templates? Wenn ja, kannst du einfach bei der on-Variante des Templates die Striche einfach rausnehmen. Wenn keine Templates benutzt werden, musst du das wohl im Modul selbst aendern.
Halchteranerin
Beiträge: 5478
Registriert: Di 2. Mär 2004, 21:11
Wohnort: Halchter, wo sonst? ;-)
Kontaktdaten:

Beitrag von Halchteranerin »

Ach ja, Link zum Modul soll auch helfen, das vermeidet unnoetige Rueckfragen, wie meine obige nach den Templates z.B.
coarsy
Beiträge: 19
Registriert: Di 21. Dez 2004, 11:18
Wohnort: Frankfurt
Kontaktdaten:

Klaro!

Beitrag von coarsy »

Das Modul benutzt selbstverständlich Templates... Leider funktioniert die von Dir vorgeschlagene Variante nicht, da ja zum Beispiel der ganz linke Button nur rechts nen Strich hat... Genauso wie der ganz Rechte nur links nen Strich hat... Das is ja leider das Problem!

Hier mal das von mia verwendete Modul:

Code: Alles auswählen

<?php
// Hauptnav
/***********************************************
* CONTENIDO MODUL - OUTPUT
*
* 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
*/
function catIsChildOf($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($idcat, CMS_VALUE[0]) ) {
$sel_idcat = $idcat;
} else {
$sel_idcat = CMS_VALUE[0];
}

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

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


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

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

global $navitems, $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[0] ){

$navitems = 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[0]'
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[$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;
$navitems = $tmp_nav;

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

} // end function

$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[$db->f("idcat")] = array("idcat" => $db->f("idcat"),
"name" => $db->f("name"),
"target" => $target);
}

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

/* Start Output buffer */
ob_start();

echo '<table cellspacing="0" cellpadding="0" width="100%" border="0"><tr>';

$i = 1;

foreach ($navitems as $key => $data) {
/* 1. Navigations Ebene */
$tpl->reset();
$tpl->set('d', 'NAME', $data['name']);
$tpl->set('d', 'TARGET', $data['target']);
$tpl->set('d', 'HREF', $sess->url('front_content.php?idcat='.$data['idcat']));
$tpl->set('d','CURRENT',$i);
$tpl->next();


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

if ($i < 5){
echo "<td width=\"1\" align=\"center\"><img src=\"img/1_back.gif\" border=\"0\" name=\"spacer_".$i."\"></td>";
}

if (is_array($data['sub'])) {
$tmp_data = array();
$tmp_data = $data;

} // end if

$i++;

} // end foreach
echo '</tr></table>';

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

/* Clean buffer */
ob_end_clean();

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

?>
Halchteranerin
Beiträge: 5478
Registriert: Di 2. Mär 2004, 21:11
Wohnort: Halchter, wo sonst? ;-)
Kontaktdaten:

Beitrag von Halchteranerin »

und wie sehen die Templates aus???
Vince
Beiträge: 122
Registriert: So 6. Mär 2005, 12:53
Kontaktdaten:

Beitrag von Vince »

Hi,

habs grad nur überflogen, aber kann es sein, dass in deiner CSS-Definition in der Klasse service_nav ein 'border-left: 1px' für die Tabellenzelle drin ist?

Wäre nun die simpelste Variante :wink:

greetz, Vince
coarsy
Beiträge: 19
Registriert: Di 21. Dez 2004, 11:18
Wohnort: Frankfurt
Kontaktdaten:

Nene... So kanns ja nicht gehen...

Beitrag von coarsy »

Da is ne Schleife die wie folgt aussieht:

Code: Alles auswählen

if ($i < 5){
echo "<td width=\"1\" align=\"center\"><img src=\"img/1_back.gif\" border=\"0\" name=\"spacer_".$i."\"></td>";
} 
Und diese machen dann natürlich die Striche, da ich ja ganz links und ganz rechts keinen Trennstrich brauche! Und eben diese Striche sollten, damits schöner aussieht einfach irgendwie deaktiviert werden... Die Templates sehen aus, wie bei allen Menus auch, die Ihr kennt! Eins für aktiv und eins für inaktiv!

Also:

Code: Alles auswählen

if ($idcat == $data['idcat'] || is_array($data['sub'])) {
$tpl->generate('templates/navfirst_h_on.html');
} else {
$tpl->generate('templates/navfirst_h_off.html');
} 
Da musses doch irgendwie noch ne andere Variante geben, die das ermöglicht, was ich vorhab...
Gesperrt