} if ($oldmecn != "" && $mecn == "") { echo "Menü Eintrag Name loeschen!<br> \n\t\t\tDieses ist Teil des DN, Sie werden den Menü Eintrag komplett löschen<br><br>"; echo "Wollen Sie den Menü Eintrag <b>" . $oldmecn . "</b> wirklich löschen?<br><br>\n\t\t\t<form action='menuentry_delete.php' method='post'>\n\t\t\t\tFalls ja:<br><br>\n\t\t\t\t<input type='hidden' name='dn' value='" . $meDN . "'>\n\t\t\t\t<input type='hidden' name='name' value='" . $oldmecn . "'>\n\t\t\t\t<input type='Submit' name='apply' value='löschen' class='small_loginform_button'><br><br>\n\t\t\t</form>\n\t\t\t<form action='" . $url . "' method='post'>\n\t\t\t\tFalls, nein:<br><br>\n\t\t\t\t<input type='Submit' name='apply' value='zurück' class='small_loginform_button'>\n\t\t\t</form>"; $seconds = 600; } ################################### # Menu Position if ($menpos == $oldmenpos || $menpos == "") { # keine Änderung } if ($menpos != "" && $oldmenpos != $menpos) { echo "Menü Position ändern<br><br>"; # Syntax Check fehlt noch # switch partner finden $secmeDN = get_dn_menuposition($pxeDN, $menpos); $entrysec['menuposition'] = $oldmenpos; if (ldap_mod_replace($ds, $secmeDN, $entrysec)) { $entry['menuposition'] = $menpos; if (ldap_mod_replace($ds, $meDN, $entry)) { #cleanup_menupositions($pxeDN); $mesg .= "Menü Position erfolgeich nach <b>" . $menpos . "</b> geändert"; } else { $mesg .= "Fehler beim ändern der Menü Position!"; } } else { $mesg .= "Fehler beim ändern der Menü Position!"; } } ################################### # restliche Attribute
$meDN = $_GET['dn']; $oldpos = $_GET['pos']; $pxeDN = $_GET['pxedn']; $mnr = $_GET['mnr']; $sbmnr = $_GET['sbmnr']; $me = get_menuentries($pxeDN, array("cn")); $maxpos = count($me); $oldpos = preg_replace('/0([0-9])/', '$1', $oldpos); if ($oldpos < $maxpos) { $newpos = $oldpos + 1; if (strlen($newpos) == 1) { $newpos = "0" . $newpos; } if (strlen($oldpos) == 1) { $oldpos = "0" . $oldpos; } if ($secmeDN = get_dn_menuposition($pxeDN, $newpos)) { #echo "other meDN:"; print_r($secmeDN); echo "<br>"; $entrysec['menuposition'] = $oldpos; if ($result = ldap_mod_replace($ds, $secmeDN, $entrysec)) { $entrymenu['menuposition'] = $newpos; $result = ldap_mod_replace($ds, $meDN, $entrymenu); } } } $seconds = 0; $url = "pxe.php?dn=" . $pxeDN . "&mnr=" . $mnr . "&sbmnr=" . $sbmnr . "&#menu"; $mesg = ""; #$mesg .= "<br>Sie werden automatisch auf die vorherige Seite zurückgeleitet. <br> # Falls nicht, klicken Sie hier <a href=".$url." style='publink'>back</a>"; redirect($seconds, $url, $mesg, $addSessionId = TRUE);
function increment_menupositions($pxeDN, $menpos) { global $ds, $suffix, $auDN, $ldapError; if (strlen($menpos) == 1) { $menpos = "0" . $menpos; } $meDN = get_dn_menuposition($pxeDN, $menpos); if ($meDN != "") { # zur Berechnung erst führende Nullen weg $menpos = preg_replace('/0([0-9])/', '$1', $menpos); $newpos = $menpos + 1; increment_menupositions($pxeDN, $newpos); # zum Eintragen führenden Nullen wieder dazu if (strlen($newpos) == 1) { $newpos = "0" . $newpos; } $entry['menuposition'] = $newpos; ldap_mod_replace($ds, $meDN, $entry); } }