diff options
Diffstat (limited to 'ldap-site-mngmt/webinterface/computers/group_change.php')
-rw-r--r-- | ldap-site-mngmt/webinterface/computers/group_change.php | 252 |
1 files changed, 0 insertions, 252 deletions
diff --git a/ldap-site-mngmt/webinterface/computers/group_change.php b/ldap-site-mngmt/webinterface/computers/group_change.php deleted file mode 100644 index cb26a429..00000000 --- a/ldap-site-mngmt/webinterface/computers/group_change.php +++ /dev/null @@ -1,252 +0,0 @@ -<?php -include('../standard_header.inc.php'); - -$groupcn = $_POST['groupcn']; -$oldgroupcn = $_POST['oldgroupcn']; -$groupdesc = $_POST['groupdesc']; -$oldgroupdesc = $_POST['oldgroupdesc']; - -$delmember = $_POST['delmember']; - -$addmember = $_POST['addmember']; -$n = array_search('none',$addmember); -if ($n === 0 ){array_splice($addmember, $n, 1);} - -$groupDN = $_POST['groupdn']; -$sbmnr = $_POST['sbmnr']; - -$syntax = new Syntaxcheck; - -$groupcn = htmlentities($groupcn); -$oldgroupcn = htmlentities($oldgroupcn); -$groupdesc = htmlentities($groupdesc); -$oldgroupdesc = htmlentities($oldgroupdesc); - -/* -echo "new groupcn:"; print_r($groupcn); echo "<br>"; -echo "old groupcn:"; print_r($oldgroupcn); echo "<br>"; -echo "new groupdesc:"; print_r($groupdesc); echo "<br>"; -echo "old groupdesc:"; print_r($oldgroupdesc); echo "<br><br>"; - -echo "members to delete:"; print_r($delmember); echo "<br><br>"; -echo "members to add:"; print_r($addmember); echo "<br><br>"; - -echo "Group DN:"; print_r($groupDN); echo "<br>"; -echo "submenuNR:"; print_r($submenu); echo "<br><br>"; -*/ - -$seconds = 2; -$url = 'group.php?dn='.$groupDN.'&sbmnr='.$sbmnr; - -echo " -<html> -<head> - <title>AU Management</title> - <link rel='stylesheet' href='../styles.css' type='text/css'> -</head> -<body> -<table border='0' cellpadding='30' cellspacing='0'> -<tr><td>"; - -############################################## -# CN (DN) - -if ( $oldgroupcn == $groupcn ){ - # $mesg = "keine Aenderung<br>"; -} - -if ( $oldgroupcn != "" && $groupcn != "" && $oldgroupcn != $groupcn ){ - echo "Gruppenname aendern<br>"; - # hier noch Syntaxcheck - # Formulareingaben anpassen - $expgr = explode(" ",$groupcn); - foreach ($expgr as $word){$expuc[] = ucfirst($word);} - $groupcn = implode(" ",$expuc); - $groupcn = preg_replace ( '/\s+([0-9A-Z])/', '$1', $groupcn); - - - $newgroupDN = "cn=".$groupcn.",cn=groups,".$auDN; - print_r($newgroupDN); echo "<br><br>"; - - modify_group_dn($groupDN, $newgroupDN); - - # newsubmenu holen... - $url = 'group.php?dn='.$newgroupDN.'&sbmnr='.$sbmnr; -} - -if ( $oldgroupcn != "" && $groupcn == "" ){ - echo "Gruppenname loeschen!<br> - Dieses ist Teil des DN, Sie werden die Gruppe komplett löschen<br><br>"; - echo "Wollen Sie die Gruppe <b>".$oldgroupcn."</b>mit seinen Hardware-Profilen (MachineConfigs) - und PXE Bootmenüs wirklich löschen?<br><br> - <form action='group_delete.php' method='post'> - Falls ja:<br><br> - <input type='hidden' name='dn' value='".$groupDN."'> - <input type='hidden' name='name' value='".$oldgroupcn."'> - <input type='Submit' name='apply' value='löschen' class='small_loginform_button'><br><br> - </form> - <form action='".$url."' method='post'> - Falls, nein:<br><br> - <input type='Submit' name='apply' value='zurück' class='small_loginform_button'> - </form>"; - $seconds = 600; -} - - -######################################## -# Member löschen/aufnehmen - -if ( count($delmember) == 0 || count($addmember) == 0 ){ - # $mesg = "keine Aenderung<br>"; -} - -if ( count($delmember) != 0 ){ - echo "Gruppen-Mitglieder löschen<br>"; - # hier noch Syntaxcheck - # print_r($delmember); echo "<br><br>"; - - $i = 0; - foreach ($delmember as $member){ - $entry['member'][$i] = $member; - $i++; - } - #print_r($entry); echo "<br><br>"; - - if ($result = ldap_mod_del($ds,$groupDN,$entry)){ - # Fehler hier muessen die verbliebenen Members hin!!! - # Filenames in PXEs die an der Gruppe hängen anpassen - $pxes = get_pxeconfigs($groupDN,array("dn")); - foreach ($pxes as $pxe){ - if ( $entry['member'] > 1 ){ - $j = 0; - foreach ($entry['member'] as $host){ - $macdata = get_node_data($host, array("hwaddress")); - $entryfilename ['filename'][$j] = "01-".$macdata['hwaddress']; - $j++; - } - } - if ( $entry['member'] == 1 ){ - $macdata = get_node_data($entry['member'], array("hwaddress")); - $entryfilename ['filename'] = "01-".$macdata['hwaddress']; - } - ldap_mod_del($ds,$pxe['dn'],$entryfilename); - } - $mesg = "Gruppen-Mitglieder erfolgreich gelöscht<br><br>"; - }else{ - $mesg = "Fehler beim löschen der Gruppen-Mitglieder<br><br>"; - } -} - -if ( count($addmember) != 0 ){ - - echo "Gruppen-Mitglieder anlegen<br>"; - # hier noch Syntaxcheck - $members = get_node_data($groupDN,array("member")); - if ( count($members['member']) == 1 ){ - $member = $members['member']; - $members = array(); - $members['member'][] = $member; - } - if (count($members['member']) != 0){ - foreach ($members['member'] as $member){ - $entry2['member'][] = $member; - } - } - $i = 0; - foreach ($addmember as $member){ - $exp = explode('_',$member); - # Falls ein neues Mitglied keine MAC hat und an der Gruppe PXEs hängen - # dann wird diese nicht aufgenommen ... - $macdata = get_node_data($exp[0], array("hwaddress")); - $pxes = get_pxeconfigs($groupDN,array("dn","filename")); - if ( count($pxes) != 0 && $macdata['hwaddress'] == "" ){ - echo "Rechner ".$exp[1]." hat keine MAC Adresse eingetragen. <br> - Fü die Gruppe sind PXE Bootmenüs definiert. <br> - Da MACs für die PXE Datei notwendig ist wird der Rechner nicht aufgenommen!"; - } - else{ - $entry2['member'][] = $exp[0]; - } - $i++; - - } - - #print_r($entry2); echo "<br><br>"; - - if ($result = ldap_mod_replace($ds, $groupDN, $entry2)){ - - # PXEs die an der Gruppe hängen anpassen - $pxes = get_pxeconfigs($groupDN,array("dn")); - foreach ($pxes as $pxe){ - if ( $entry2['member'] > 1 ){ - $j = 0; - foreach ($entry2['member'] as $host){ - $macdata = get_node_data($host, array("hwaddress")); - $entryfilename ['filename'][$j] = "01-".$macdata['hwaddress']; - $j++; - } - } - if ( $entry2['member'] == 1 ){ - $macdata = get_node_data($entry2['member'], array("hwaddress")); - $entryfilename ['filename'] = "01-".$macdata['hwaddress']; - } - ldap_mod_replace($ds,$pxe['dn'],$entryfilename); - } - $mesg = "Gruppen-Mitglieder erfolgreich angelegt<br><br>"; - }else{ - $mesg = "Fehler beim anlegen der Gruppen-Mitglieder<br><br>"; - } -} - - -##################################### -# Description - -if ( $oldgroupdesc == $groupdesc ){ - # $mesg = "keine Aenderung<br>"; -} - -if ( $oldgroupdesc == "" && $groupdesc != "" ){ - echo "Gruppen-Beschreibung neu anlegen<br>"; - # hier noch Syntaxcheck - $entry['description'] = $groupdesc; - if($result = ldap_mod_add($ds,$groupDN,$entry)){ - $mesg = "Gruppen-Beschreibung erfolgreich eingetragen<br><br>"; - }else{ - $mesg = "Fehler beim eintragen der Gruppen-Beschreibung<br><br>"; - } -} - -if ( $oldgroupdesc != "" && $groupdesc != "" && $oldgroupdesc != $groupdesc ){ - echo "Gruppen-Beschreibung aendern<br>"; - # hier noch Syntaxcheck - $entry['description'] = $groupdesc; - if($result = ldap_mod_replace($ds,$groupDN,$entry)){ - $mesg = "Gruppen-Beschreibung erfolgreich geaendert<br><br>"; - }else{ - $mesg = "Fehler beim aendern der Gruppen-Beschreibung<br><br>"; - } -} - -if ( $oldgroupdesc != "" && $groupdesc == "" ){ - echo "Gruppen-Beschreibung loeschen<br>"; - # hier noch Syntaxcheck - $entry['description'] = $oldgroupdesc; - if($result = ldap_mod_del($ds,$groupDN,$entry)){ - $mesg = "Gruppen-Beschreibung erfolgreich geloescht<br><br>"; - }else{ - $mesg = "Fehler beim loeschen der Gruppen-Beschreibung<br><br>"; - } -} - - - - - -$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); - -echo "</td></tr></table></body> -</html>"; -?>
\ No newline at end of file |