wenn ich einen frontend-benutzer anlege, anschliessend eine gruppe anlege in der der user alle rechte hat die geschütze kategorie zu sehen - kann dieser sich zwar einloggen aber das menu bzw. die kategorien werden nicht sichtbar.
anders ist das beim admin und beim sysadmin - diese bekommen die geschützen bereiche zu sehen.
code für das modul des login
Code: Alles auswählen
<table cellpadding="8" cellspacing="0" class="contentbox-02">
<tr> <?php echo "<td class=\"contentbox-headline\">CMS_HEAD[1]</td><td class=\"contentbox-headline\" align=right>"; ?>
<?php if (!$contenido) { ?>
<form style='margin:0' name='drucken' method='POST' target='_blank' action='print.php'>
<input name='print_boxhead' type='hidden' id='print_boxhead' value='CMS_HEAD[1]'>
<input name='print_head' type='hidden' id='print_head' value='CMS_HEAD[2]'>
<input name='print_html' type='hidden' id='print_html' value='CMS_HTML[3]'>
<SCRIPT TYPE="text/javascript">
<!--
var sr = new submitroll("upload/global-imgs/print-01.gif","upload/global-imgs/print-02.gif","mysubmit");
sr.write();
//-->
</SCRIPT>
<NOSCRIPT>
<INPUT TYPE=SUBMIT VALUE="Go!">
</NOSCRIPT>
</FORM>
<?php } else { ?>
<?php } ?>
</td>
</tr>
<tr>
<td colspan="2"><table cellpadding="0" cellspacing="0" class="contentbox-02-01">
<tr> <?php echo "<td><img src=\"CMS_IMG[2]\" alt=\"\" border=\"0\">CMS_IMGDESCR[2]</td>"; ?> </tr>
<tr>
<td class="spacer"><img src="upload/global-imgs/clearpixel.gif" alt="" width="1" height="1" border="0"></td>
</tr>
<tr> <?php echo "<td class=\"content-txt\"><p class=\"content-headline\">CMS_HEAD[2]</p>"; ?>
<?php if ($auth->auth["uid"] == "nobody") { ?>
<form action="front_content.php?idcatart=<?php echo $idcatart; ?>" method="post" name="login">
<input type="hidden" name="login" value="Anmelden">
<p><span class="content-txt">Benutzername</span><br>
<input type="input" name="username" value="" class="form">
</p>
<p><span class="content-txt">Passwort</span><br>
<input type="password" name="password" value="" class="form">
</p>
<p><a href="javascript:document.login.submit()" class="link" onfocus="blur()">anmelden</a></p>
<p>Um sich in den Mitglieder Bereich einloggen zu können benutzen Sie bitte die Ihnen bekannten Zugangsdaten.</p></form>
<?php } else { ?>
<p><span class="content-txt">Sie sind angemeldet als: <?php echo $auth->auth["uname"]; ?> </span></p>
<form action="front_content.php?idcatart=<?php echo $idcatart; ?>" method="post" name="logout">
<input type="hidden" name="logout" value="Abmelden">
<a href="javascript:document.logout.submit()" class="link" onfocus="blur()">abmelden</a>
</form>
<?php } ?>
</tr>
</table>
</td>
</tr>
</table>
Code: Alles auswählen
<?php
/***********************************************
* 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
*/
if (!function_exists("catIsChildOf"))
{
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, $perm ;
$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,
C.public
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';
if ($db->f("public") == 1 || $perm->have_perm_area_action_item("str","front_allow", $db->f("idcat")) || $perm->have_perm())
{
$navitems[$db->f("idcat")] = array("idcat" => $db->f("idcat"),
"name" => $db->f("name"),
"target" => $target);
}
}
}
return true;
}
$sql = "SELECT
A.idcat,
C.name,
C.public
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';
if ($db->f("public") == 1 || $perm->have_perm_area_action_item("str","front_allow", $db->f("idcat")) || $perm->have_perm())
{
$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,
C.public
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';
if ($db->f("public") == 1 || $perm->have_perm_area_action_item("str","front_allow", $db->f("idcat")) || $perm->have_perm())
{
$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();
?>
<table cellpadding="8" cellspacing="0" class="contentbox-01">
<tr>
<td class="contentbox-headline">Mitglieder Bereich</td>
</tr>
<tr>
<td><table cellpadding="0" cellspacing="0" class="contentbox-01-01">
<?php
$spacer = 0;
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->next();
if ($spacer == 1) {
echo "<tr><td class=hr><img src=upload/global-imgs/clearpixel.gif width=1 height=1 border=0></td></tr>";
}
if ($idcat == $data['idcat'] || is_array($data['sub'])) {
$tpl->generate('templates/navfirst_on.html');
} else {
$tpl->generate('templates/navfirst_off.html');
}
$spacer = 1;
if (is_array($data['sub'])) {
foreach ($data['sub'] as $key => $data) {
/* 2. 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->next();
if ($idcat == $data['idcat'] || is_array($data['sub'])) {
$tpl->generate('templates/navsecond_on.html');
} else {
$tpl->generate('templates/navsecond_off.html');
}
if (is_array($data['sub'])) {
foreach ($data['sub'] as $key => $data) {
/* 3. 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->next();
if ($idcat == $data['idcat']) {
$tpl->generate('templates/navthird_on.html');
} else {
$tpl->generate('templates/navthird_off.html');
}
} // end foreach
} // end if
} // end foreach
} // end if
} // end foreach
echo '</table></td></tr></table>';
/* Read out buffer */
$html = ob_get_contents();
/* Clean buffer */
ob_end_clean();
/* Output buffer-contents */
echo $html;
?>
lg - philipp