";
##############################################
# RBS CN (DN)
if ( $oldrbscn == $rbscn ){
# $mesg = "keine Aenderung "; } if ( $oldrbscn != "" && $rbscn != "" && $oldrbscn != $rbscn ){ echo "RBS Name aendern "; # hier noch Syntaxcheck # Formulareingaben anpassen $exprbs = explode(" ",$rbscn); foreach ($exprbs as $word){$expuc[] = ucfirst($word);} $rbscn = implode(" ",$expuc); $rbscn = preg_replace ( '/\s+([0-9A-Z])/', '$1', $rbscn); $newrbsDN = "cn=".$rbscn.",".$nodeDN; print_r($newrbsDN); echo " "; if(move_subtree($rbsDN, $newrbsDN)){ adjust_rbs_dn($newrbsDN, $rbsDN); $rbsDN = $newrbsDN; $mesg = "RBS Name erfolgreich geändert "; }else{ $mesg = "Fehler beim ändern des RBS Namen! "; } } if ( $oldrbscn != "" && $rbscn == "" ){ echo "Gruppenname loeschen! Dieses ist Teil des DN, Sie werden den RBS komplett löschen "; echo "Wollen Sie den RBS Dienst ".$oldrbscn." wirklich löschen? "; $seconds = 600; } ##################################### # Offer ändern if ( $rbsoffer != "none" && $rbsoffer == $oldrbsoffer ){ $mesg = "Sie haben die gleiche Abteilung ausgewählt Keine Änderung!"; } if ( $rbsoffer != "none" && $rbsoffer != $oldrbsoffer ){ $entryoffer ['rbsofferdn'] = $rbsoffer; if(ldap_mod_replace($ds,$rbsDN,$entryoffer)){ $mesg = "RBS Offer erfolgreich geändert "; } else{ $mesg = "Fehler beim ändern des RBS Offers! "; } } ##################################### # Server ändern über IP Feld if ( $tftpserverip != "" && $tftpserverip != $oldtftpserverip ){ if ($syntax->check_ip_syntax($tftpserverip)){ $tftpserverip = htmlentities($tftpserverip); $mesg .= "Suche nach dem Rechner mit IP ".$tftpserverip." : "; foreach ($host_array as $host){ $hostipexp = explode('_',$host['ipaddress']); $hostip = $hostipexp[0]; if ($tftpserverip == $hostip){ $entrytftp ['tftpserverip'] = $tftpserverip; if (ldap_mod_replace($ds,$rbsDN,$entrytftp)){ adjust_dhcpnextserver($tftpserverip, $rbsDN); $mesg .= "Treffer: Rechner ".$host['hostname']." TFTP Server erfolgreich geändert "; }else{ $mesg .= "Fehler beim ändern des TFTP Servers! "; } break; }else{ $mesg .= "Rechner ".$host['hostname'].": keine Übereinstimmung mit eingegebener IP ".$tftpserverip."! "; } } } else{ $mesg .= "Falsche IP Syntax! "; } } ####################################### # Fileserver URI anlegen if ( $addfsuri[1] != "" ){ # tests: ipsyntax, und spezifische URI-Syntax-Checks... if( $syntax->check_ip_syntax($addfsuri[1]) ){ $newfsuri = $addfsuri[0]."://".$addfsuri[1].$addfsuri[2]; echo "FS URI ".$newfsuri." anlegen "; $entryfsadd ['fileserveruri'] = $newfsuri; if(ldap_mod_add($ds,$rbsDN,$entryfsadd)){ $mesg = "FS URI erfolgreich eingetragen "; }else{ $mesg = "Fehler beim eintragen der FS URI "; } } else{echo "Falsche IP Syntax ";} } ##################################### # Fileserver URIs löschen if ( count($delfsuri) != 0 ){ echo "Fileserver URI löschen "; $i = 0; foreach ($delfsuri as $fsuri){ $entry['fileserveruri'][$i] = $fsuri; $i++; } #print_r($entry); echo " "; if ($result = ldap_mod_del($ds,$rbsDN,$entry)){ $mesg = "Zu löschende Fileserver URIs erfolgreich gelöscht "; }else{ $mesg = "Fehler beim löschen der Fileserver URIs "; } } if ( $nfsserverip != "" && $nfsserverip != $oldnfsserverip ){ if ($syntax->check_ip_syntax($nfsserverip)){ $nfsserverip = htmlentities($nfsserverip); $mesg .= "Suche nach dem Rechner mit IP ".$nfsserverip." : "; foreach ($host_array as $host){ $hostipexp = explode('_',$host['ipaddress']); $hostip = $hostipexp[0]; if ($nfsserverip == $hostip){ $entrytnfs ['nfsserverip'] = $nfsserverip; if (ldap_mod_replace($ds,$rbsDN,$entrytnfs)){ $mesg .= "Treffer: Rechner ".$host['hostname']." NFS Server erfolgreich geändert "; }else{ $mesg .= "Fehler beim ändern des NFS Servers! "; } break; }else{ $mesg .= "Rechner ".$host['hostname'].": keine Übereinstimmung mit eingegebener IP ".$nfsserverip."! "; } } } else{ $mesg .= "Falsche IP Syntax! "; } } if ( $nbdserverip != "" && $nbdserverip != $oldnbdserverip ){ if ($syntax->check_ip_syntax($nbdserverip)){ $nbdserverip = htmlentities($nbdserverip); $mesg .= "Suche nach dem Rechner mit IP ".$nbdserverip." : "; foreach ($host_array as $host){ $hostipexp = explode('_',$host['ipaddress']); $hostip = $hostipexp[0]; if ($nbdserverip == $hostip){ $entrytnbd ['nbdserverip'] = $nbdserverip; if (ldap_mod_replace($ds,$rbsDN,$entrytnbd)){ $mesg .= "Treffer: Rechner ".$host['hostname']." NBD Server erfolgreich geändert "; }else{ $mesg .= "Fehler beim ändern des NBD Servers! "; } break; }else{ $mesg .= "Rechner ".$host['hostname'].": keine Übereinstimmung mit eingegebener IP ".$nbdserverip."! "; } } } else{ $mesg .= "Falsche IP Syntax! "; } } ##################################### # Server ändern über Hostname if ($tftpserver != "none" && $tftpserver != $oldtftpserverdn){ $host = get_host_ip($tftpserver); $hostipexp = explode('_',$host['ipaddress']); $hostip = $hostipexp[0]; $entrytftp ['tftpserverip'] = $hostip; if (ldap_mod_replace($ds,$rbsDN,$entrytftp)){ adjust_dhcpnextserver($tftpserverip, $rbsDN); $mesg .= "TFTP Server erfolgreich geändert "; }else{ $mesg .= "Fehler beim ändern des TFTP Servers! "; } } if ($nfsserver != "none" && $nfsserver != $oldnfsserverdn){ $host = get_host_ip($nfsserver); $hostipexp = explode('_',$host['ipaddress']); $hostip = $hostipexp[0]; $entrynfs ['nfsserverip'] = $hostip; if (ldap_mod_replace($ds,$rbsDN,$entrynfs)){ $mesg .= "NFS Server erfolgreich geändert "; }else{ $mesg .= "Fehler beim ändern des NFS Servers! "; } } if ($nbdserver != "none" && $nbdserver != $oldnbdserverdn){ $host = get_host_ip($nbdserver); $hostipexp = explode('_',$host['ipaddress']); $hostip = $hostipexp[0]; $entrytnbd ['nbdserverip'] = $hostip; if (ldap_mod_replace($ds,$rbsDN,$entrytnbd)){ $mesg .= "NBD Server erfolgreich geändert "; }else{ $mesg .= "Fehler beim ändern des NBD Servers! "; } } ##################################### # Init Boot File if ( $initbootfile == $oldinitbootfile ){ # $mesg = "keine Aenderung "; } if ( $initbootfile != "" && $oldinitbootfile == "" ){ $entrydelibf ['initbootfile'] = $initbootfile; if(ldap_mod_add($ds,$rbsDN,$entrydelibf)){ adjust_dhcpfilename($initbootfile, $rbsDN, "add"); $mesg = "Initial Boot File erfolgreich eingetragen "; } else{ $mesg = "Fehler beim eintragen von Initial Boot File! "; } } if ( $initbootfile == "" && $oldinitbootfile != "" ){ $entrydelibf ['initbootfile'] = array(); if(ldap_mod_del($ds,$rbsDN,$entrydelibf)){ adjust_dhcpfilename($initbootfile, $rbsDN, "delete"); $mesg = "Initial Boot File erfolgreich gelöscht "; } else{ $mesg = "Fehler beim löschen von Initial Boot File! "; } } if ( $initbootfile != "" && $initbootfile != $oldinitbootfile ){ $entryibf ['initbootfile'] = $initbootfile; if(ldap_mod_replace($ds,$rbsDN,$entryibf)){ adjust_dhcpfilename($initbootfile, $rbsDN, "replace"); $mesg = "Initial Boot File erfolgreich geändert "; } else{ $mesg = "Fehler beim ändern des Initial Boot Files! "; } } ##################################### # Restliche Attribute $entryadd = array(); $entrymod = array(); $entrydel = array(); foreach (array_keys($atts) as $key){ if ( $oldatts[$key] == $atts[$key] ){ } 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,$rbsDN,$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,$rbsDN,$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,$rbsDN,$entrydel)){ $mesg = "Attribute ".$delatts." erfolgreich geloescht "; }else{ $mesg = "Fehler beim loeschen der Attribute ".$delatts." "; } } $url = "rbservice.php?rbsdn=".$rbsDN."&mnr=".$mnr; $seconds = 2; $mesg .= " Sie werden automatisch auf die vorherige Seite zurückgeleitet. Falls nicht, klicken Sie hier back"; redirect($seconds, $url, $mesg, $addSessionId = TRUE); echo " |