| ";
+
+if ( $mccn != "" && $mccn != "Hier_MC_NAME_eintragen"){
+
+ $mccn = "MC_".$mccn;
+ # Formulareingaben anpassen
+ $expmc = explode(" ",$mccn);
+ foreach ($expmc as $word){$expuc[] = ucfirst($word);}
+ $mccn = implode(" ",$expuc);
+ $mccn = preg_replace ( '/\s+([0-9A-Z])/', '$1', $mccn);
+
+ $mctimerange = "";
+
+ if (count($targets) != 0){
+ foreach ($targets as $targetDN){
+
+ $exptargetdn = ldap_explode_dn($targetDN, 1);
+ $targetcn = $exptargetdn[0];
+ $targettype = $exptargetdn[1];
+
+ # Check auf eindeutigen MC-Namen am Zielobjekt
+ $brothers = get_machineconfigs($targetDN,array("cn"));
+ $brother = 0;
+ foreach ($brothers as $item){
+ if( $item['cn'] == $mccn ){
+ $mesg = "Es existiert bereits ein PXE Boot Menü mit dem eingegebenen Namen! + Bitte geben Sie einen anderen Namen ein. "; + $url = "new_mcdef.php?mccn=".$get_mccn."&mcday=".$get_mcday."&mcbeg=".$get_mcbeg."&mcend=".$get_mcend."&mnr=".$mnr."&sbmnr=".$sbmnr; + $brother = 1; + break; + } + } + if ($brother == 0){ + + if ( $mcday != "" && $mcbeg != "" && $mcend != "" && $mcbeg <= $mcend ){ + + # TimeRange Syntax checken + $syntax = new Syntaxcheck; + if ($syntax->check_timerange_syntax($mcday,$mcbeg,$mcend)){ + + # in Grossbuchstaben + if (preg_match("/([a-z]+)/",$mcday)){$mcday = strtoupper($mcday);} + if (preg_match("/([a-z]+)/",$mcbeg)){$mcbeg = strtoupper($mcbeg);} + if (preg_match("/([a-z]+)/",$mcend)){$mcend = strtoupper($mcend);} + + # führende Nullen weg + $mcbeg = preg_replace ( '/0([0-9])/', '$1', $mcbeg); + $mcend = preg_replace ( '/0([0-9])/', '$1', $mcend); + + # TimeRange auf Überschneidung mit vorhandenen checken + if(check_timerange($mcday,$mcbeg,$mcend,$targetDN,"")){ + $mctimerange = $mcday."_".$mcbeg."_".$mcend; + } + else{ + $mesg = "Es existiert bereits eine MachineConfig, die sich mit der eingegebenen Time Range + überschneidet! + Die neue MachineConfig wird ohne Time Range angelegt. + Bitte geben Sie diese anschließend ein. "; + } + } + else{ + $mesg = "Falsche Syntax in der Time-Range-Eingabe! Die neue MachineConfig wird ohne Time Range angelegt. + Bitte geben Sie diese anschließend ein. "; + } + } + else{ + $mesg = "Keine vollständige Time-Range-Eingabe! Die neue MachineConfig wird ohne Time Range angelegt. + Bitte geben Sie diese anschließend ein. "; + } + + $mcDN = "cn=".$mccn.",".$targetDN; + print_r($mcDN); echo " "; + + if (add_mc($mcDN,$mccn,$mctimerange,$mcdesc,$mcattribs)){ + $mesg .= " Neue MachineConfig erfolgreich angelegt "; + if ($targettype == "computers"){ + $url = "mcdef.php?dn=".$mcDN."&mnr=1"; + } + if ($targettype == "groups"){ + $url = "mcdef.php?dn=".$mcDN."&mnr=2"; + } + if ($targettype == $au_ou){ + $url = "machineconfig_default.php"; + } + } + else{ + $mesg .= " Fehler beim anlegen der MachineConfig! "; + } + } + } + } + else{ + $mesg .= " Sie haben kein Ziel angegeben! "; + } +} + +elseif ( $mccn == "" || $mccn == "Hier_MC_NAME_eintragen"){ + + $mesg = "Sie haben den Namen der neuen Machine Config nicht angegeben. Dieser ist aber ein notwendiges Attribut. + Bitte geben Sie ihn an. "; + $url = "new_mcdef.php?mccn=Hier_MC_NAME_eintragen&mcdesc=".$get_mcdesc."&mcday=".$get_mcday."&mcbeg=".$get_mcbeg."&mcend=".$get_mcend."&mnr=".$mnr."&sbmnr=".$sbmnr; +} + + + +$mesg .= " Sie werden automatisch auf die vorherige Seite zurückgeleitet. + Falls nicht, klicken Sie hier back"; +redirect($seconds, $url, $mesg, $addSessionId = TRUE); + +echo " |