Adminforce getrennt für Admin und Co-Admin neu zu machen scheint mir nicht sinnvoll. Wenn ich nur an die Änderungen denke, die ich da gemacht habe und die dann alle in ein neues Adminforce eingefügt werden müssten...
Aber vielleicht ist das hier eine Lösung. (Nur muss man sich damit ein wenig Arbeit machen.)
1. In die vms_seitenkonfig zwei neue Felder einfügen:
co_admin_name und co_admin_pass
Dann in der pageconfig.php suchen und einfügen:
PHP-Code:
// dies suchen:
db_query("UPDATE ".$db_prefix."_seitenkonfig SET admin_name='".$_POST['admin_name']."', admin_pass='".$_POST['admin_pass']."'");
// danach einfügen
db_query("UPDATE ".$db_prefix."_seitenkonfig SET co_admin_name='".$_POST['co_admin_name']."', co_admin_pass='".$_POST['co_admin_pass']."'");
und weiter:
Code:
// dies suchen:
<tr bgcolor="#f0f0f0">
<td colspan="2" align="left"><b>Login</b></td>
</tr>
<tr bgcolor="#f0f0f0">
<td align="left"><b>Loginname (AdminForce)</b></td>
<td align="left"> <input type="Text" name="admin_name" value="<?=$interface['admin_name'];?>"></td>
</tr>
<tr bgcolor="#f0f0f0">
<td align="left"><b>Passwort (AdminForce)</b></td>
<td align="left"> <input type="Text" name="admin_pass" value="<?=$interface['admin_pass'];?>"></td>
</tr>
// danach einfügen:
<tr bgcolor="#f0f0f0">
<td colspan="2" align="left"><b>Login</b></td>
</tr>
<tr bgcolor="#f0f0f0">
<td align="left"><b>Loginname (Co_Admin)</b></td>
<td align="left"> <input type="Text" name="co_admin_name" value="<?=$interface['co_admin_name'];?>"></td>
</tr>
<tr bgcolor="#f0f0f0">
<td align="left"><b>Passwort (Co-Admin)</b></td>
<td align="left"> <input type="Text" name="co_admin_pass" value="<?=$interface['co_admin_pass'];?>"></td>
</tr>
2. Die index.php im adminforce wie folgt ändern:
PHP-Code:
<?
session_start();
$shows = 1;
if($_POST['login'] == "ja") {
@require_once ('../lib/functions.lib.php');
db_connect();
$page = mysql_fetch_array(db_query("SELECT admin_name, admin_pass FROM ".$db_prefix."_seitenkonfig LIMIT 1"));
if($_POST['loginm'] == $page['admin_name'] && $_POST['passwd'] == $page['admin_pass']) {
$_SESSION['admin'] = 1;
header("Location: ".$_SERVER['PHP_SELF']."?".$_SERVER['QUERY_STRING']);
} }
if($_POST['cologin'] == "ja") {
@require_once ('../lib/functions.lib.php');
db_connect();
$page = mysql_fetch_array(db_query("SELECT co_admin_name, co_admin_pass FROM ".$db_prefix."_seitenkonfig LIMIT 1"));
if($_POST['cologin'] == $page['co_admin_name'] && $_POST['copasswd'] == $page['co_admin_pass']) {
$_SESSION['admin'] = 2;
header("Location: ".$_SERVER['PHP_SELF']."?".$_SERVER['QUERY_STRING']);
} }
if($shows == 1) { @include_once('lib/header.php'); }
if($_SESSION['admin'] > 0) {
if($shows == 1) { @include_once('content'.$_GET['content'].'.php'); }
else { @include_once('lib/header.php');
@include_once('content'.$_GET['content'].'.php');
@include_once('lib/footer.php'); }
} else {
?>
<link rel="stylesheet" href="css/main.css" type="text/css">
<center>
<b>Bitte loggen Sie sich ein:</b><br /><br />
<form action="" method="POST">
<input type="hidden" name="login" value="ja">
<table border=0 cellspacing=1 cellpadding=1>
<tr>
<td><b>Loginname:</b></td>
<td><input name="loginm" type="text"></td>
</tr>
<tr>
<td><b>Passwort:</b></td>
<td><input name="passwd" type="password"></td>
</tr>
<tr>
<td colspan=2 align="center"><input name="" value="Login" type="submit"></td>
</tr>
</table>
</form>
<b>Login Co-Admin:</b><br /><br />
<form action="" method="POST">
<input type="hidden" name="cologin" value="ja">
<table border=0 cellspacing=1 cellpadding=1>
<tr>
<td><b>Loginname:</b></td>
<td><input name="cologin" type="text"></td>
</tr>
<tr>
<td><b>Passwort:</b></td>
<td><input name="copasswd" type="password"></td>
</tr>
<tr>
<td colspan=2 align="center"><input name="" value="Co-Admin Login" type="submit"></td>
</tr>
</table>
</form>
</center>
<?
}
if($shows == 1) { @include_once('lib/footer.php'); }
?>
3. In lib/menue_links und lib(menue_rechts Rechte vergeben (=='1' nur Admin, >'1' Admin und Co-Admin)
PHP-Code:
<?if ($_SESSION['admin'] > '1') {?>
<? menuehead("Allgemeines")?>
» <a href="?content=/startseite">Adminstart</a><br>
» <a href="?content=/usersystem/liste">Userliste</a><br>
<?menuefoot();?>
<?menuehead("Newssystem")?>
» <a href="?content=/newssystem/news">News schreiben</a><br>
» <a href="?content=/newssystem/letter">Newsletter</a><br>
<?menuefoot();?>
<?}?>
<?if ($_SESSION['admin'] == '1') {?>
<?menuehead("Konfigurationen")?>
» <a href="?content=/interfacedaten/pageconfig">Seiteneinstell.</a><br>
» <a href="?content=/interfacedaten/crons">Crons</a><br>
» <a href="?content=/interfacedaten/betreiber">Betreiberdaten</a><br>
<?menuefoot();?>
<?menuefoot();?>
<?}?>
4. In gleicher Art jeder Seite, die der Co-Admin nicht aufrufen soll Rechte vergeben. Als Beispiel mal die pageconfig.php
PHP-Code:
<? head("Webseiteneinstellungen"); ?>
<?if ($_SESSION['admin'] == '1') {?>
// Inhalt der pageconfig.php
<? } else {?>
<center>Zugang nur für Admin</center>
<?}?>
<?foot()?>
Da muss man schon ein wenig Zeit für einplanen, sollte aber zumindest eine machbare Lösung darstellen.