"; $oldattribs = $_POST['oldattribs']; if (count($oldattribs) != 0){ foreach (array_keys($oldattribs) as $key){ $oldatts[$key] = htmlentities($oldattribs[$key]); } }*/ #print_r($oldatts); echo "

"; /* echo "new hostname:"; print_r($hostname); echo "
"; echo "old hostname:"; print_r($oldhostname); echo "
"; echo "new mac:"; print_r($mac); echo "
"; echo "old mac:"; print_r($oldmac); echo "
"; echo "new ip:"; print_r($ip); echo "
"; echo "old ip:"; print_r($oldip); echo "
"; echo "new desc:"; print_r($desc); echo "
"; echo "old desc:"; print_r($olddesc); echo "

"; echo "Host DN:"; print_r($hostDN); echo "
"; echo "submenuNR:"; print_r($submenu); echo "

"; */ $seconds = 2; $url = 'host.php?dn='.$hostDN.'&sbmnr='.$sbmnr; echo " AU Management
"; ############################################## # Hostname if ( $oldhostname == $hostname ){ $mesg = "keine Aenderung
"; } if ( $oldhostname != "" && $hostname != "" && $oldhostname != $hostname ){ echo "Hostname aendern
"; # hier noch Syntaxcheck # Formulareingaben anpassen $exphn = explode(" ",$hostname); foreach ($exphn as $word){$expuc[] = ucfirst($word);} $hostname = implode(" ",$expuc); $hostname = preg_replace ( '/\s+([0-9A-Z])/', '$1', $hostname); $newhostDN = "hostname=".$hostname.",cn=computers,".$auDN; # print_r($newhostDN); echo "

"; modify_host_dn($hostDN, $newhostDN); $hostDN = $newhostDN; # newsubmenu holen...hosts neu holen, sortieren, ->position #$newhosts = get_hosts($auDN,array("dn")); #print_r($newhosts); echo "

"; #foreach ($newhosts as $item){ # $newdnarray [] = $item['dn']; #} #$key = array_search($newhostDN, $newdnarray); #print_r($key); echo "
"; $url = 'host.php?dn='.$newhostDN.'&sbmnr='.$sbmnr; } if ( $oldhostname != "" && $hostname == "" ){ echo "Hostname loeschen!
Dies ist Teil des DN, Sie werden den Rechner komplett löschen

"; echo "Wollen Sie den Rechner ".$oldhostname." mit seinen Hardware-Profilen (MachineConfigs) und PXE Bootmenüs wirklich löschen?

Falls ja:



Falls, nein:

"; $seconds = 600; } ##################################### # MAC if ( $oldmac == $mac ){ #$mesg = "keine Aenderung
"; } if ( $oldmac == "" && $mac != "" ){ echo "MAC neu anlegen
"; # hier noch Syntaxcheck $entry['hwaddress'] = $mac; $result = ldap_mod_add($ds,$hostDN,$entry); if($result){ $mesg = "MAC erfolgreich eingetragen

"; }else{ $mesg = "Fehler beim eintragen der MAC

"; } } if ( $oldmac != "" && $mac != "" && $oldmac != $mac ){ echo "MAC aendern
"; # hier noch Syntaxcheck $entry['hwaddress'] = $mac; $pxemac = str_replace (":","-",$mac); $pxeoldmac = str_replace (":","-",$oldmac); $result = ldap_mod_replace($ds,$hostDN,$entry); if($result){ # in den PXEs auch ändern $pxes = get_pxeconfigs($hostDN,array("dn","filename")); if ( count($pxes) != 0 ){ foreach ($pxes as $pxe){ $entrynewmac ['filename'] = "01-".$pxemac; ldap_mod_replace($ds,$pxe['dn'],$entrynewmac); } } # und in Gruppen PXEs $groups = get_groups_member($auDN,array("dn"),$hostDN); if ( count($groups) != 0 ){ $pxes = get_pxeconfigs($groups[0]['dn'],array("dn","filename")); if ( count($pxes) != 0 ){ foreach ($pxes as $pxe){ if (count($pxe['filename']) > 1){ for ($i=0; $i"; # check ob PXEs am Rechnerobjekt hängen $pxes = get_pxeconfigs($hostDN,array("dn","filename")); $groups = get_groups_member($auDN,array("dn"),$hostDN); if ( count($groups) != 0 ){ $pxes2 = get_pxeconfigs($groups[0]['dn'],array("dn","filename")); } if ( count($pxes) != 0 || count($pxes2) != 0){ echo "Für den Rechner sind PXE Bootmenüs angelegt welche die MAC Adresse als
Dateinamen verwenden. Sie köennen die MAC erst löschen, wenn Sie diese PXEs
entfernt haben.

MAC nicht gelöscht!"; } else{ # hier noch Syntaxcheck $entry['hwaddress'] = $oldmac; $result = ldap_mod_del($ds,$hostDN,$entry); if($result){ $mesg = "MAC erfolgreich geloescht

"; }else{ $mesg = "Fehler beim loeschen der MAC

"; } } } ######################################## # IP if ( $oldip == $ip ){ # $mesg = "keine Aenderung
"; } if ( $oldip == "" && $ip != "" ){ echo "IP neu anlegen
"; # hier noch Syntaxcheck if( $syntax->check_ip_syntax($ip) ){ $newip_array = array($ip,$ip); $newip = implode('_',$newip_array); # print_r($newip); echo "

"; if (new_ip_host($newip,$hostDN,$auDN)){ $mesg = "IP erfolgreich eingetragen

"; #if ($dhcptype == "subnet"){ # adjust_hostip_dhcpsubnet($ip,$hostDN,$dhcphlpcont); #} }else{ $mesg = "Fehler beim eintragen der IP

"; } } else{echo "Falsche IP Syntax

";} } if ( $oldip != "" && $ip != "" && $oldip != $ip ){ echo "IP aendern
"; # hier noch Syntaxcheck if( $syntax->check_ip_syntax($ip) ){ $newip_array = array($ip,$ip); $newip = implode('_',$newip_array); # print_r($newip); echo "

"; $oldip_array = array($oldip,$oldip); $oldipp = implode('_',$oldip_array); if (modify_ip_host($newip,$hostDN,$auDN)){ $mesg = "IP erfolgreich geaendert

"; if ($dhcptype == "subnet"){ adjust_hostip_dhcpsubnet($ip,$hostDN,$dhcphlpcont); } adjust_hostip_tftpserverip($oldip,$ip); }else{ $mesg = "Fehler beim aendern der IP

"; # oldip die schon gelöscht wurde wieder einfügen new_ip_host($oldipp,$hostDN,$auDN); } } else{echo "Falsche IP Syntax

";} } if ( $oldip != "" && $ip == "" ){ echo "IP loeschen
"; if(delete_ip_host($hostDN,$auDN)){ $mesg = "IP erfolgreich geloescht

"; adjust_hostip_tftpserverip($oldip,""); }else{ $mesg = "Fehler beim loeschen der IP

"; } } ##################################### # Description if ( $olddesc == $desc ){ # $mesg = "keine Aenderung
"; } if ( $olddesc == "" && $desc != "" ){ echo "Rechner-Beschreibung neu anlegen
"; # hier noch Syntaxcheck $entry['description'] = $desc; $result = ldap_mod_add($ds,$hostDN,$entry); if($result){ $mesg = "Rechner-Beschreibung erfolgreich eingetragen

"; }else{ $mesg = "Fehler beim eintragen der Rechner-Beschreibung

"; } } if ( $olddesc != "" && $desc != "" && $olddesc != $desc ){ echo "Rechner-Beschreibung aendern
"; # hier noch Syntaxcheck $entry['description'] = $desc; $result = ldap_mod_replace($ds,$hostDN,$entry); if($result){ $mesg = "Rechner-Beschreibung erfolgreich geaendert

"; }else{ $mesg = "Fehler beim aendern der Rechner-Beschreibung

"; } } if ( $olddesc != "" && $desc == "" ){ echo "Rechner-Beschreibung loeschen
"; # hier noch Syntaxcheck $entry['description'] = $olddesc; $result = ldap_mod_del($ds,$hostDN,$entry); if($result){ $mesg = "Rechner-Beschreibung erfolgreich geloescht

"; }else{ $mesg = "Fehler beim loeschen der Rechner-Beschreibung

"; } } #################################### # restliche Attribute /* $entryadd = array(); $entrymod = array(); $entrydel = array(); foreach (array_keys($atts) as $key){ if ( $oldatts[$key] == $atts[$key] ){ #$mesg = "keine Aenderung
"; } if ( $oldatts[$key] == "" && $atts[$key] != "" ){ # hier noch Syntaxcheck $entryadd[$key] = $atts[$key]; } if ( $oldatts[$key] != "" && $atts[$key] != "" && $oldatts[$key] != $atts[$key] ){ # hier noch Syntaxcheck $entrymod[$key] = $atts[$key]; } if ( $oldatts[$key] != "" && $atts[$key] == "" ){ # hier noch Syntaxcheck $entrydel[$key] = $oldatts[$key]; } } #print_r($entryadd); echo "
"; #print_r($entrymod); echo "
"; #print_r($entrydel); echo "
"; if (count($entryadd) != 0 ){ #print_r($entryadd); echo "
"; #echo "neu anlegen
"; foreach (array_keys($entryadd) as $key){ $addatts .= "".$key.","; } if(ldap_mod_add($ds,$hostDN,$entryadd)){ $mesg = "Attribute ".$addatts." erfolgreich eingetragen

"; }else{ $mesg = "Fehler beim eintragen der Attribute ".$addatts."

"; } } if (count($entrymod) != 0 ){ #print_r($entrymod); echo "
"; #echo "ändern
"; foreach (array_keys($entrymod) as $key){ $modatts .= "".$key.","; } if(ldap_mod_replace($ds,$hostDN,$entrymod)){ $mesg = "Attribute ".$modatts." erfolgreich geaendert

"; }else{ $mesg = "Fehler beim aendern der Attribute ".$modatts."

"; } } if (count($entrydel) != 0 ){ #print_r($entrydel); echo "
"; #echo "löschen
"; foreach (array_keys($entrydel) as $key){ $delatts .= "".$key.","; } if(ldap_mod_del($ds,$hostDN,$entrydel)){ $mesg = "Attribute ".$delatts." erfolgreich geloescht

"; }else{ $mesg = "Fehler beim loeschen der Attribute ".$delatts."

"; } } */ if ( $dhcphlpcont != "" ){ update_dhcpmtime(array()); } $mesg .= "
Sie werden automatisch auf die vorherige Seite zurückgeleitet.
Falls nicht, klicken Sie hier back"; redirect($seconds, $url, $mesg, $addSessionId = TRUE); echo "
"; ?>