diff options
| author | Tarik Gasmi | 2007-05-14 09:46:29 +0200 |
|---|---|---|
| committer | Tarik Gasmi | 2007-05-14 09:46:29 +0200 |
| commit | b192e30ee65a420e12b71cbc0b410754983c052e (patch) | |
| tree | 7e1b63e5c932d15d33943e7bab1cba8fe394c7fb /ldap-site-mngmt/webinterface/au | |
| parent | * fixed incorrect execution of chroot with respect to setting up the (diff) | |
| download | core-b192e30ee65a420e12b71cbc0b410754983c052e.tar.gz core-b192e30ee65a420e12b71cbc0b410754983c052e.tar.xz core-b192e30ee65a420e12b71cbc0b410754983c052e.zip | |
Some webinterface data.
git-svn-id: http://svn.openslx.org/svn/openslx/trunk@1076 95ad53e4-c205-0410-b2fa-d234c58c8868
Diffstat (limited to 'ldap-site-mngmt/webinterface/au')
| -rw-r--r-- | ldap-site-mngmt/webinterface/au/au.php | 29 | ||||
| -rw-r--r-- | ldap-site-mngmt/webinterface/au/au_change.php | 121 | ||||
| -rw-r--r-- | ldap-site-mngmt/webinterface/au/au_childs.php | 51 | ||||
| -rw-r--r-- | ldap-site-mngmt/webinterface/au/au_footer.inc.php | 18 | ||||
| -rw-r--r-- | ldap-site-mngmt/webinterface/au/au_header.inc.php | 33 | ||||
| -rw-r--r-- | ldap-site-mngmt/webinterface/au/au_menu.php | 198 | ||||
| -rw-r--r-- | ldap-site-mngmt/webinterface/au/au_show.php | 74 | ||||
| -rw-r--r-- | ldap-site-mngmt/webinterface/au/child_au.php | 70 | ||||
| -rw-r--r-- | ldap-site-mngmt/webinterface/au/childau_add.php | 144 | ||||
| -rw-r--r-- | ldap-site-mngmt/webinterface/au/childau_change.php | 157 | ||||
| -rw-r--r-- | ldap-site-mngmt/webinterface/au/childau_delete.php | 34 | ||||
| -rw-r--r-- | ldap-site-mngmt/webinterface/au/dom_delete.php | 31 | ||||
| -rw-r--r-- | ldap-site-mngmt/webinterface/au/new_child.php | 75 |
13 files changed, 1035 insertions, 0 deletions
diff --git a/ldap-site-mngmt/webinterface/au/au.php b/ldap-site-mngmt/webinterface/au/au.php new file mode 100644 index 00000000..ca732622 --- /dev/null +++ b/ldap-site-mngmt/webinterface/au/au.php @@ -0,0 +1,29 @@ +<?php + +include('../standard_header.inc.php'); +include("../class.FastTemplate.php"); + +# Filename of Template +$webseite = "au_start.dwt"; + +include('au_header.inc.php'); + + +############################################################################### +# Menus + +$mnr = 0; +$sbmnr = -1; + +$childauDN = $_GET['dn']; + +createMainMenu($rollen, $mainnr); +createAUMenu($rollen, $mnr, $auDN, $sbmnr); + + +############################################################################### +# Footer + +include("au_footer.inc.php"); + +?>
\ No newline at end of file diff --git a/ldap-site-mngmt/webinterface/au/au_change.php b/ldap-site-mngmt/webinterface/au/au_change.php new file mode 100644 index 00000000..990d2155 --- /dev/null +++ b/ldap-site-mngmt/webinterface/au/au_change.php @@ -0,0 +1,121 @@ +<?php + +include('../standard_header.inc.php'); + +# $_POST form variables +$cn = $_POST['commonname']; +$oldcn = $_POST['oldcn']; +$description = $_POST['description']; +$olddesc = $_POST['olddesc']; + +$cn = htmlentities($cn); +$oldcn = htmlentities($oldcn); +$description = htmlentities($description); +$olddesc = htmlentities($olddesc); + +#echo "new cn:"; print_r($cn); echo "<br>"; +#echo "old cn:"; print_r($oldcn); echo "<br>"; +#echo "new desc:"; print_r($description); echo "<br>"; +#echo "old desc:"; print_r($olddesc); echo "<br><br>"; + +$url = 'au_show.php'; + +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>"; + +if ( $oldcn == "" && $cn != "" ){ + echo "CN neu anlegen<br>"; + # hier noch Syntaxcheck + $entry['cn'] = $cn; + $result = ldap_mod_add($ds,$auDN,$entry); + if($result){ + $mesg = "AU Name erfolgreich eingetragen<br><br>"; + } + else{ + $mesg = "Fehler beim eintragen des AU Namen<br><br>"; + } +} + +if ( $oldcn != "" && $cn != "" && $oldcn != $cn ){ + echo "CN aendern<br>"; + # hier noch Syntaxcheck + $entry['cn'] = $cn; + $result = ldap_mod_replace($ds,$auDN,$entry); + if($result){ + $mesg = "AU Name erfolgreich geaendert<br><br>"; + } + else{ + $mesg = "Fehler beim aendern des AU Namen<br><br>"; + } +} + +if ( $oldcn != "" && $cn == "" ){ + echo "CN loeschen<br>"; + # hier noch Syntaxcheck + $entry['cn'] = $oldcn; + $result = ldap_mod_del($ds,$auDN,$entry); + if($result){ + $mesg = "AU Name erfolgreich geloescht<br><br>"; + } + else{ + $mesg = "Fehler beim loeschen des AU Namen<br><br>"; + } +} + +if ( $olddesc == "" && $description != "" ){ + echo "DESCR neu anlegen<br>"; + # hier noch Syntaxcheck + $entry2['description'] = $description; + $result = ldap_mod_add($ds,$auDN,$entry2); + if($result){ + $mesg = "AU Beschreibung erfolgreich eingetragen<br><br>"; + } + else{ + $mesg = "Fehler beim eintragen der AU Beschreibung<br><br>"; + } +} + +if ( $olddesc != "" && $description != "" && $olddesc != $description ){ + echo "DESCR aendern<br>"; + # hier noch Syntaxcheck + $entry2['description'] = $description; + $result = ldap_mod_replace($ds,$auDN,$entry2); + if($result){ + $mesg = "AU Beschreibung erfolgreich geandert<br><br>"; + } + else{ + $mesg = "Fehler beim aendern der AU Beschreibung<br><br>"; + } +} + +if ( $olddesc != "" && $description == "" ){ + echo "DESCR loeschen<br>"; + # hier noch Syntaxcheck + $entry2['description'] = $olddesc; + $result = ldap_mod_del($ds,$auDN,$entry2); + if($result){ + $mesg = "AU Beschreibung erfolgreich geloescht<br><br>"; + } + else{ + $mesg = "Fehler beim loeschen der AU Beschreibung<br><br>"; + } +} + +else{ + $mesg = "keine Aenderung<br>"; +} + +$mesg .= "<br>Sie werden automatisch auf die vorherige Seite zurückgeleitet. <br> + Falls nicht, klicken Sie hier <a href='au_show.php' style='publink'>back</a>"; +redirect(2, $url, $mesg, $addSessionId = TRUE); + +echo "</td></tr></table></body></html>"; + +?>
\ No newline at end of file diff --git a/ldap-site-mngmt/webinterface/au/au_childs.php b/ldap-site-mngmt/webinterface/au/au_childs.php new file mode 100644 index 00000000..fe91a5c5 --- /dev/null +++ b/ldap-site-mngmt/webinterface/au/au_childs.php @@ -0,0 +1,51 @@ +<?php + +include('../standard_header.inc.php'); +include("../class.FastTemplate.php"); + +# Filename of Template +$webseite = "au_childs.dwt"; + +include('au_header.inc.php'); + + +############################################################################### +# Menus + +$mnr = 2; +$sbmnr = -1; + +createMainMenu($rollen, $mainnr); +createAUMenu($rollen, $mnr, $auDN, $sbmnr); + + +############################################################################### +# Mainpage Data + +$template->assign(array("CHILDOU" => "Noch keine untergordnete AU angelegt", + "CHILDCN" => "", + "CHILDDN" => "", + "CHILDDOMAIN" => "", + "CHILDDESC" => "")); + +$childau_array = get_childau($auDN,array("dn","cn","ou","associateddomain","description","maxipblock")); + +$template->define_dynamic("Childaus", "Webseite"); + +foreach ($childau_array as $childau){ + $template->assign(array("CHILDOU" => $childau['ou'], + "CHILDCN" => $childau['cn'], + "CHILDDN" => $childau['dn'], + "CHILDDOMAIN" => $childau['associateddomain'], + "CHILDDESC" => $childau['description'], + "AUDN" => $auDN)); + $template->parse("CHILDAUS_LIST", ".Childaus"); +} + + +################################################################################### +# Footer + +include("au_footer.inc.php"); + +?>
\ No newline at end of file diff --git a/ldap-site-mngmt/webinterface/au/au_footer.inc.php b/ldap-site-mngmt/webinterface/au/au_footer.inc.php new file mode 100644 index 00000000..311721c5 --- /dev/null +++ b/ldap-site-mngmt/webinterface/au/au_footer.inc.php @@ -0,0 +1,18 @@ +<?php + +$template->assign(array("PFAD" => $START_PATH)); + +# Daten in die Vorlage parsen +$template->parse("LOGIN", "Login"); +$template->parse("MAINMENU", "Mmenu"); +$template->parse("NAVIGATION", "Menu"); +$template->parse("HAUPTFENSTER", "Webseite"); +$template->parse("PAGE", "Vorlage"); + +# Fertige Seite an den Browser senden +$template->FastPrint("PAGE"); + +# Abmelden vom LDAP +ldap_unbind($ds); + +?>
\ No newline at end of file diff --git a/ldap-site-mngmt/webinterface/au/au_header.inc.php b/ldap-site-mngmt/webinterface/au/au_header.inc.php new file mode 100644 index 00000000..3ba68fc9 --- /dev/null +++ b/ldap-site-mngmt/webinterface/au/au_header.inc.php @@ -0,0 +1,33 @@ +<?php + +# standard header file for AU files + +include("au_menu.php"); +# 1. Title +$titel = "Administrative Unit Management"; +# 2. Mainmenu Number (starting with 0) +$mainnr = 0; + + +$template = new FastTemplate("."); +# dem erstellten Template-Objekt eine Vorlage zuweisen +$definedTemplates = array("Vorlage" => "au.dwt", + "Login" => "../logout_form.inc.dwt", + "Mmenu" => "../hauptmenue.dwt", + "Menu" => "menu.dwt", + "Webseite" => $webseite); + +if (isset($additionalTemplates)) { + foreach ($additionalTemplates as $templateKey => $templateFile) { + $definedTemplates[$templateKey] = $templateFile; + } +} + +$template->define($definedTemplates); +$template->assign(array("SEITENTITEL" => $titel, + "ROLLE" => "mainadmin", + "AU" => $au_ou, + "DOMAIN" => $assocdom, + "USERCN" => $usercn)); + +?>
\ No newline at end of file diff --git a/ldap-site-mngmt/webinterface/au/au_menu.php b/ldap-site-mngmt/webinterface/au/au_menu.php new file mode 100644 index 00000000..3142c015 --- /dev/null +++ b/ldap-site-mngmt/webinterface/au/au_menu.php @@ -0,0 +1,198 @@ +<?php + +function createAUMenu($rollen, $mnr, $auDN,$sbmnr) { + + global $template, $ds, $suffix, $START_PATH; + + # Mainmenu + $hauptmenu = array(array("link" => "au.php", + "text" => "Übersicht", + "zugriff" => "alle"), + array("link" => "au_show.php", + "text" => "Eigene AU", + "zugriff" => array("MainAdmin")), + array("link" => "au_childs.php", + "text" => "Untergeordnete AUs", + "zugriff" => array("MainAdmin")), + array("link" => "new_child.php", + "text" => "Neue untergeordnete AU", + "zugriff" => array("MainAdmin"))); + #echo "hauptmenu: ";print_r($hauptmenu);echo "<br><br>"; + # Submenu + $array = array(); + $childau_array = get_childau($auDN,array("dn","cn","ou")); + #echo "childau_array: ";print_r($childau_array);echo "<br><br>"; + if (count($childau_array)!= 0){ + for ($n=0;$n<count($childau_array);$n++) { + $array[] = array("link" => "child_au.php?dn=".$childau_array[$n]['dn']."&sbmnr=".$n, + "text" => $childau_array[$n]['ou'], + "zugriff" => array("MainAdmin")); + } + } + $submenu = array(array(), + array(), + $array, + array()); + #echo "submenu: ";print_r($submenu);echo "<br><br>"; + # Zusammenstellen der Menuleiste + $template->define_dynamic("Hauptmenu", "Menu"); + $template->define_dynamic("Submenu", "Menu"); + + $i=0; + $maxmenu = count($hauptmenu); + + foreach ($hauptmenu as $item) { + $template->clear_parse("SUBMENU_LIST"); + #echo "item: "; print_r($item); echo "<br>"; + if ($item['zugriff'] === "alle" || vergleicheArrays($rollen , $item['zugriff'])) { + $subempty = 0; + $j=0; + $maxsub = count($submenu[$mnr]); + #echo "maxsub: "; print_r($maxsub); echo "<br>"; + if ($maxsub > 0) { + foreach ($submenu[$mnr] as $item2) { + #echo "item2: "; print_r($item2); echo "<br>"; + if ($item2['zugriff'] === "alle" || vergleicheArrays($rollen, $item2['zugriff'])) { + if ($i != $mnr) { + $template->assign(array("SUB" => "")); + #"LINK_S" => "", + #"TEXT_S" => "")); + $template->parse("SUBMENU_LIST", ".Submenu"); + $template->clear_dynamic("Submenu"); + } + else { + if ($j==0) { + if ($sbmnr==0) { + if ($maxsub == 1) {$zwisch="branchbottom2";} + else {$zwisch="branch2";} + $lastaktive=true; + $farb="#505050"; + } + else { + if ($maxsub == 1) {$zwisch="branchbottom2";} + else {$zwisch="branch2";} + $farb="#A0A0A0"; + $lastaktive=false; + } + } + else { + if ($sbmnr==$j) { + if ($maxsub == $j+1) {$zwisch="branchbottom2";} + else {$zwisch="branch2";} + $lastaktive=true; + $farb="#505050"; + } + else { + $farb="#A0A0A0"; + if ($maxsub == $j+1) {$zwisch="branchbottom2";} + else {$zwisch="branch2";} + # if ($lastaktive) {$zwisch="branch";} + # else {$zwisch="branch";} + $lastaktive=false; + } + } + $htmlcode= " + <tr height='4'> + <td></td><td align='right'><img src='../pics/line2.gif' height='4'></td><td></td><td></td> + </tr> + <tr> + <td width='8%'> </td> + <td width='8%' align='right'><img src='../pics/".$zwisch.".gif'></td> + <td width='74%' align='left' style='border-width:1 1 1 1;border-color:#000000;border-style:solid;padding:2;padding-left:30px;background-color:{FARBE_S}'> + <a href='".$item2['link']."' style='text-decoration:none'><b class='standard_schrift'>".$item2['text']."</b></a></td> + <td width='10%'> </td> + </tr>"; + + $template->assign(array("SUB" => $htmlcode)); + $template->assign(array("FARBE_S" => $farb)); + $template->parse("SUBMENU_LIST", ".Submenu"); + $template->clear_dynamic("Submenu"); + } + } + else { + $subempty++; + } + $j=$j+1; + } + } + if ($subempty == count($submenu[$mnr])) { + $template->assign(array("SUB" => "")); + #"LINK_S" => "", + #"TEXT_S" => "")); + $template->parse("SUBMENU_LIST", ".Submenu"); + $template->clear_dynamic("Submenu"); + } + + if ($i==0) { + if ($mnr==0) { + if (count($submenu[$i][0]) != 0) { + if ($maxmenu == 1) {$zwisch="";} # {$zwisch="<img style='border-width:0;border-style=none;' src='../pics/minus2.gif'>";} + else {$zwisch="";} + } + else {$zwisch="";} + $lastaktive=true; + $farb="#505050"; + } + else { + if (count($submenu[$i][0]) != 0) { + if ($maxmenu == 1) { + $zwisch="<a href='{LINK_M}' style='border-style=none;text-decoration:none'> + <img style='border-width:0;border-style=none;' src='../pics/plus2.gif'></a>"; + } + else { + $zwisch="<a href='{LINK_M}' style='border-style=none;text-decoration:none'> + <img style='border-width:0;border-style=none;' src='../pics/plus2.gif'></a>"; + } + } + else {$zwisch="";} + $farb="#A0A0A0"; + $lastaktive=false; + } + } + else { + if ($mnr==$i) { + if (count($submenu[$mnr][0]) != 0) { + if ($maxmenu == $i+1) {$zwisch="";} + else {$zwisch="";} + } + else {$zwisch="";} + $lastaktive=true; + $farb="#505050"; + } + else { + $farb="#A0A0A0"; + if (count($submenu[$i][0]) != 0) { + if ($maxmenu == $i+1) { + $zwisch="<a href='{LINK_M}' style='border-style=none;text-decoration:none'> + <img style='border-width:0;border-style=none;' src='../pics/plus2.gif'></a>"; + } + else { + $zwisch="<a href='{LINK_M}' style='border-style=none;text-decoration:none'> + <img style='border-width:0;border-style=none;' src='../pics/plus2.gif'></a>"; + } + } + else {$zwisch="";} + #if ($lastaktive) {$zwisch="";} + #else {$zwisch="";} + $lastaktive=false; + } + } + $template->assign(array("ICON" => $zwisch, + "FARBE" => $farb, + "LINK_M" => $item["link"], + "TEXT_M" => $item["text"])); + $template->parse("HAUPTMENU_LIST", ".Hauptmenu"); + $template->clear_dynamic("Hauptmenu"); + } + $i=$i+1; + } + if ($lastaktive) { + $template->assign(array("ENDE" => "")); + } + else{ + $template->assign(array("ENDE" => "")); + } + +} + +?>
\ No newline at end of file diff --git a/ldap-site-mngmt/webinterface/au/au_show.php b/ldap-site-mngmt/webinterface/au/au_show.php new file mode 100644 index 00000000..2f29a1db --- /dev/null +++ b/ldap-site-mngmt/webinterface/au/au_show.php @@ -0,0 +1,74 @@ +<?php + +include('../standard_header.inc.php'); +include("../class.FastTemplate.php"); + +# Filename of Template +$webseite = "au_show.dwt"; + +include('au_header.inc.php'); + + +############################################################################### +# Menus + +$mnr = 1; +$sbmnr = -1; + +createMainMenu($rollen, $mainnr); +createAUMenu($rollen, $mnr, $auDN, $sbmnr); + + +############################################################################### +# MainpageData + +# Parent AU, Email MainAdmin +$exp = explode(',',$auDN); +$parentau = array_slice($exp, 1, 1); +$parentau = substr($parentau[0],3); + +if ( $parentau != "RIPM"){ + $length = count($exp); + $out = array_slice($exp, 1, $length -1); + $parentauDN = implode(',',$out); + $rol = get_roles($parentauDN); + $mainadminDN = $rol['MainAdmin'][0]; + $emailMA = get_user_data($mainadminDN, array("mail")); + $emailCODE = "<a href'mailto:".$emailMA['mail']."' class='maillink' style='text-decoration:none'>".$emailMA['mail']."</a>"; +} + +$template->assign(array("OU" => $au_ou, + "CN" => $au_cn, + "DSC" => $au_desc, + "AUDN" => $auDN, + "PARENTAU" => $parentau, + "EMAILMA" => $emailCODE)); + +# MaxIPBlocks +$mipb = $au_mipb; +$mipbs = ""; +if (count($mipb) > 1) { + for ($i=0; $i < count($mipb) - 1; $i++) { + $exp = explode('_',$mipb[$i]); + $mipbs .= "$exp[0] - $exp[1]<br>"; + } + $exp = explode('_',$mipb[$i]); + $mipbs .= "$exp[0] - $exp[1]"; + $template->assign(array("MIPBS" => $mipbs)); +} +elseif (count($mipb) == 1) { + $exp = explode('_',$mipb); + $mipbs .= "$exp[0] - $exp[1]"; + $template->assign(array("MIPBS" => $mipbs)); +} +else { + $template->assign(array("MIPBS" => $mipbs)); +} + + +############################################################################### +# Footer + +include("au_footer.inc.php"); + +?>
\ No newline at end of file diff --git a/ldap-site-mngmt/webinterface/au/child_au.php b/ldap-site-mngmt/webinterface/au/child_au.php new file mode 100644 index 00000000..bd8f1ebc --- /dev/null +++ b/ldap-site-mngmt/webinterface/au/child_au.php @@ -0,0 +1,70 @@ +<?php + +include('../standard_header.inc.php'); +include("../class.FastTemplate.php"); + +# Filename of Template +$webseite = "child_au.dwt"; + +include('au_header.inc.php'); + + +############################################################################### +# Menus + +$mnr = 2; +$sbmnr = -1; + +$sbmnr = $_GET['sbmnr']; + +createMainMenu($rollen, $mainnr); +createAUMenu($rollen, $mnr, $auDN, $sbmnr); + + +############################################################################### +# MainPage Data + +$childauDN = $_GET['dn']; + +$childau = get_au_data($childauDN,array("dn","cn","ou","associateddomain","description","maxipblock")); +#print_r($childau); + +$domprefix = str_replace('.uni-freiburg.de','',$childau[0]['associateddomain']); +#print_r($domprefix); + +$template->assign(array("CHILDOU" => $childau[0]['ou'], + "CHILDCN" => $childau[0]['cn'], + "CHILDDN" => $childauDN, + "CHILDDOMAIN" => $domprefix, + "CHILDDESC" => $childau[0]['description'], + "AUDN" => $auDN, + "SBMNR" => $sbmnr)); + +# MaxIPBlocks +$mipb = $childau[0]['maxipblock']; +$mipbs = ""; +if (count($mipb) > 1){ + for ($i=0; $i < count($mipb) - 1; $i++){ + $exp = explode('_',$mipb[$i]); + $mipbs .= "$exp[0] - $exp[1]<br>"; + } + $exp = explode('_',$mipb[$i]); + $mipbs .= "$exp[0] - $exp[1]"; + $template->assign(array("MIPBS" => $mipbs)); +} +elseif(count($mipb) == 1){ + $exp = explode('_',$mipb); + $mipbs .= "$exp[0] - $exp[1]"; + $template->assign(array("MIPBS" => $mipbs)); +} +else{ + $template->assign(array("MIPBS" => $mipbs)); +} + + +############################################################################### +# Footer + +include("au_footer.inc.php"); + +?>
\ No newline at end of file diff --git a/ldap-site-mngmt/webinterface/au/childau_add.php b/ldap-site-mngmt/webinterface/au/childau_add.php new file mode 100644 index 00000000..89969882 --- /dev/null +++ b/ldap-site-mngmt/webinterface/au/childau_add.php @@ -0,0 +1,144 @@ +<?php + +include('../standard_header.inc.php'); + +# $_POST form variables +$childou = $_POST['childou']; +$childcn = $_POST['childcn']; +$childdesc = $_POST['childdesc']; +$childdomain = $_POST['childdomain']; +$mainadmin = $_POST['adduser']; +$hosts = $_POST['addhost']; + +$childou = htmlentities($childou); +$childcn = htmlentities($childcn); +$childdesc = htmlentities($childdesc); +$childdomainfull = htmlentities($childdomain).".".$domsuffix ; + +/* +echo "AU dn:"; print_r($auDN); echo "<br>"; +echo "ou:"; print_r($childou); echo "<br>"; +echo "cn:"; print_r($childcn); echo "<br>"; +echo "desc:"; print_r($childdesc); echo "<br>"; +echo "domain:"; print_r($childdomainfull); echo "<br>"; +echo "mainadmin:"; print_r($mainadmin); echo "<br><br>"; +echo "hosts:"; print_r($hosts); echo "<br><br>"; +*/ + +$seconds = 2; +# $url = 'new_child.php?ou='.$childou.'&cn='.$get_childcn.'&desc='.$get_childdesc.'&childdomain='.$childdomain; + +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>"; + +if ( $childou != "" && $mainadmin != none && $mainadmin != "") { + + # Formulareingaben anpassen + $expou = explode(" ",$childou); + foreach ($expou as $word) {$expuc[] = ucfirst($word);} + $childou = implode(" ",$expuc); + $childou = preg_replace ( '/\s+([0-9A-Z])/', '$1', $childou); + + # AU Objekt anlegen + $sisters = get_childau($auDN,array("ou")); + $sister = 0; + foreach ($sisters as $item) { + if ($item['ou'] == $childou) { + $mesg = "Es existiert bereits eine untergeordnete AU mit dem eingegebenen OU!<br> + Bitte geben Sie einen anderen OU ein.<br><br>"; + $get_childcn = str_replace ( " ", "_", $childcn ); + $get_childdesc = str_replace ( " ", "_", $childdesc ); + $url = "new_child.php?ou=Hier_andere_OU_eingeben&cn=".$get_childcn."&desc=".$get_childdesc."&childdomain=".$childdomain; + $sister = 1; + break; + } + } + if ($sister == 0) { + + $childDN = "ou=".$childou.",".$auDN; + if (new_childau($childDN,$childou,$childcn,$childdesc,$mainadmin)) { + + # Objekete verschieben + $i = array_search('none',$hosts); + #print_r($i); echo "<br>"; + if ($i === 0 ) {array_splice($hosts, $i, 1);} + #print_r($hosts ); echo "<br>"; + + if (count($hosts) != 0) { + foreach ($hosts as $host) { + $exp = explode('_',$host); + $hostDN = $exp[0]; + $hostname = $exp[1]; + print_r($hostDN); echo "<br>"; + print_r($hostname); echo "<br><br>"; + # IP Adresse nicht verschieben (IPs werden später delegiert) + $hoip = get_node_data($hostDN, array("ipaddress")); + # print_r($hoip); echo "<br>"; + if ($hoip['ipaddress'] != "") { + delete_ip_host($hostDN,$auDN); + } + if (move_subtree($hostDN, "hostname=".$hostname.",cn=computers,".$childDN)) { + # bestimmte Attribute loeschen ... + $newhostDN = "hostname=".$hostname.",cn=computers,".$childDN; + $dhcp = get_node_data($newhostDN, array("dhcphlpcont")); + # print_r($dhcp); echo "<br>"; + if ($dhcp['dhcphlpcont'] != "") { + $entrydel ['dhcphlpcont'] = array(); + #$entrydel ['objectclass'] = "dhcpHost"; + # print_r($dhcphlpcont); + ldap_mod_del($ds, "hostname=".$hostname.",cn=computers,".$childDN, $entrydel); + } + } + } + } + + # Domain anlegen falls erforderlich + if (new_child_domain($childdomain, $childDN, $assocdom, $domDN)) { + $mesg .= "<br>AU Domain erfolgreich eingetragen<br>"; + } + else { + $mesg .= "<br>Fehler beim eintragen der AU Domain<br>"; + } + + $mesg .= "<br>Untergeordnete AU erfolgreich angelegt<br>"; + } + else { + $mesg .= "<br>Fehler beim anlegen der untergeordneten AU<br>"; + } + + $url = 'au_childs.php'; + } +} + + +elseif ( $childou == "") { + $get_childcn = str_replace ( " ", "_", $childcn ); + $get_childdesc = str_replace ( " ", "_", $childdesc ); + $mesg = "Sie haben den OU der neuen AU nicht angegeben. Dieser ist aber ein notwendiges Attribut.<br> + Bitte geben Sie ihn an.<br><br>"; + $url = "new_child.php?ou=Hier_OU_eingeben&cn=".$get_childcn."&desc=".$get_childdesc."&childdomain=".$childdomain; +} + +elseif ($mainadmin == "none" || $mainadmin == "") { + $get_childcn = str_replace ( " ", "_", $childcn ); + $get_childdesc = str_replace ( " ", "_", $childdesc ); + $mesg = "Sie haben keinen MainAdmin für die neue AU gewählt.<br> + Bitte wählen Sie einen MainAdmin.<br><br>"; + $url = 'new_child.php?ou='.$childou.'&cn='.$get_childcn.'&desc='.$get_childdesc.'&childdomain='.$childdomain; +} + + +$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 diff --git a/ldap-site-mngmt/webinterface/au/childau_change.php b/ldap-site-mngmt/webinterface/au/childau_change.php new file mode 100644 index 00000000..2406b4c2 --- /dev/null +++ b/ldap-site-mngmt/webinterface/au/childau_change.php @@ -0,0 +1,157 @@ +<?php + +include('../standard_header.inc.php'); + +$childcn = $_POST['childcn']; +$oldchildcn = $_POST['oldchildcn']; +$childou = $_POST['childou']; +$oldchildou = $_POST['oldchildou']; +$childdomain = $_POST['childdomain']; +$oldchilddomain = $_POST['oldchilddomain']; +$childDN = $_POST['childdn']; +$submenu = $_POST['submenu']; + +$childcn = htmlentities($childcn); +$oldchildcn = htmlentities($oldchildcn); +$childou = htmlentities($childou); +$oldchildou = htmlentities($oldchildou); +$childdomainfull = htmlentities($childdomain).".".$domsuffix ; +$oldchilddomainfull = htmlentities($oldchilddomain).".".$domsuffix; + +/* +echo "new ou:"; print_r($childou); echo "<br>"; +echo "old ou:"; print_r($oldchildou); echo "<br>"; +echo "new cn:"; print_r($childcn); echo "<br>"; +echo "old cn:"; print_r($oldchildcn); echo "<br>"; +echo "new domain:"; print_r($childdomain); echo "<br>"; +echo "old domain:"; print_r($oldchilddomain); echo "<br><br>"; +echo "child DN:"; print_r($childDN); echo "<br>"; +echo "new child DN:"; print_r($newchildDN); echo "<br>"; +echo "submenuNR:"; print_r($submenu); echo "<br><br>"; +*/ + +$seconds = 2; +$url = 'child_au.php?dn='.$childDN.'&sbmnr='.$submenu; + +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 + +if ($oldchildcn == $childcn) { + #$mesg = "keine Aenderung<br>"; +} + +if ($oldchildcn == "" && $childcn != "") { + echo "CN neu anlegen<br>"; + # hier noch Syntaxcheck + $entry['cn'] = $childcn; + $result = ldap_mod_add($ds,$childDN,$entry); + if ($result) { + $mesg = "AU Name erfolgreich eingetragen<br><br>"; + } + else { + $mesg = "Fehler beim eintragen des AU Namen<br><br>"; + } +} + +if ($oldchildcn != "" && $childcn != "" && $oldchildcn != $childcn) { + echo "CN aendern<br>"; + # hier noch Syntaxcheck + $entry['cn'] = $childcn; + $result = ldap_mod_replace($ds,$childDN,$entry); + if ($result) { + $mesg = "AU Name erfolgreich geaendert<br><br>"; + } + else { + $mesg = "Fehler beim aendern des AU Namen<br><br>"; + } +} + +if ($oldchildcn != "" && $childcn == "") { + echo "CN loeschen<br>"; + # hier noch Syntaxcheck + $entry['cn'] = $oldchildcn; + $result = ldap_mod_del($ds,$childDN,$entry); + if ($result) { + $mesg = "AU Name erfolgreich geloescht<br><br>"; + } + else { + $mesg = "Fehler beim loeschen des AU Namen<br><br>"; + } +} + +####################################### +# OU + +if ($oldchildou == $childou) { + #$mesg = "keine Aenderung<br>"; +} + +if ($oldchildou != "" && $childou != "" && $oldchildou != $childou) { + echo "OU aendern<br>"; + # hier noch Syntaxcheck + # Formulareingaben anpassen + $expou = explode(" ",$childou); + foreach ($expou as $word) {$expuc[] = ucfirst($word);} + $childou = implode(" ",$expuc); + $childou = preg_replace ( '/\s+([0-9A-Z])/', '$1', $childou); + + $newchildDN = "ou=".$childou.",".$auDN; + modify_au_dn($childDN, $newchildDN); + + $url = 'au_childs.php'; +} + +if ($oldchildou != "" && $childou == "") { + echo "OU loeschen<br>"; + echo "Sie sind dabei einen Teil des DN zu loeschen.<br> + Dies geht nur, wenn Sie den gesamten Eintrag loeschen. <br> + Verwenden Sie dazu das Formular unten"; +} + +######################################## +# DOMAIN +if ($oldchilddomain == $domprefix && ($childdomain == "" || $childdomain == $domprefix)) { + #$mesg = "keine Aenderung<br>"; +} +if ($oldchilddomain == $childdomain) { + #$mesg = "keine Aenderung<br>"; +} + + +if ($oldchilddomain != "" && $childdomain != "" && $oldchilddomain != $childdomain && $childdomain != $domprefix) { + echo "Domain aendern<br>"; + # hier noch Syntaxcheck + if (change_child_domain($childdomain, $oldchilddomain, $childDN, $assocdom, $domDN, $domprefix)) { + $mesg = "Domain erfolgreich geandert<br><br>"; + } + else { + $mesg = "Fehler beim aendern der Domain<br><br>"; + } +} + + +if ($oldchilddomain != "" && $oldchilddomain != $domprefix && ($childdomain == "" || $childdomain == $domprefix)) { + echo "Domain loeschen bzw. integrieren<br><br>"; + $delmodus = "integrate"; + delete_child_domain($oldchilddomain,$assocdom,$childDN, $domDN, $delmodus); + $seconds = 5; +} + + +$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 diff --git a/ldap-site-mngmt/webinterface/au/childau_delete.php b/ldap-site-mngmt/webinterface/au/childau_delete.php new file mode 100644 index 00000000..f9bd75d7 --- /dev/null +++ b/ldap-site-mngmt/webinterface/au/childau_delete.php @@ -0,0 +1,34 @@ +<?php + +include('../standard_header.inc.php'); + +# $_POST form variables +$delmodus = $_POST['delmodus']; +$childDN = $_POST['childdn']; +$childou = $_POST['childou']; +$oldchilddomain = $_POST['oldchilddomain']; +#print_r($childDN); echo "<br>"; +#print_r($oldchilddomain); echo "<br>"; +#print_r($entrydel); echo "<br>"; + +$url = 'au_childs.php'; + +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>"; + +$mesg = delete_childau($childDN,$childou,$delmodus); + +$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(2, $url, $mesg, $addSessionId = TRUE); + +echo "</td></tr></table></body></html>"; + +?>
\ No newline at end of file diff --git a/ldap-site-mngmt/webinterface/au/dom_delete.php b/ldap-site-mngmt/webinterface/au/dom_delete.php new file mode 100644 index 00000000..b8c664b4 --- /dev/null +++ b/ldap-site-mngmt/webinterface/au/dom_delete.php @@ -0,0 +1,31 @@ +<?php + +include('../standard_header.inc.php'); + +# $_POST form variables +$delmodus = $_POST['delmodus']; +$oldchilddomain = $_POST['oldchilddomain']; +$childDN = $_POST['childdn']; +$submenu = $_POST['submenu']; + +$url = 'child_au.php?dn='.$childDN.'&sbmnr='.$submenu; + +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>"; + +$mesg = delete_childau_domain($oldchilddomain,$childDN,$delmodus); + +$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(2, $url, $mesg, $addSessionId = TRUE); + +echo "</td></tr></table></body></html>"; + +?>
\ No newline at end of file diff --git a/ldap-site-mngmt/webinterface/au/new_child.php b/ldap-site-mngmt/webinterface/au/new_child.php new file mode 100644 index 00000000..4f8839b4 --- /dev/null +++ b/ldap-site-mngmt/webinterface/au/new_child.php @@ -0,0 +1,75 @@ +<?php + +include('../standard_header.inc.php'); +include("../class.FastTemplate.php"); + +# Filename of Template +$webseite = "new_child.dwt"; + +include('au_header.inc.php'); + + +############################################################################### +# Menus + +$mnr = 3; +$sbmnr = -1; + +createMainMenu($rollen, $mainnr); +createAUMenu($rollen, $mnr, $auDN, $sbmnr); + + +################################################################################ +# Mainpage Data + +$childou = str_replace ( "_", " ", $_GET['ou']); +$childcn = str_replace ( "_", " ", $_GET['cn']); +$childdesc = str_replace ( "_", " ", $_GET['desc']); +$childdomain = $_GET['childdomain']; + +$domprefix = str_replace('.uni-freiburg.de','',$childau[0]['associateddomain']); + +$template->assign(array("CHILDOU" => $childou, + "CHILDCN" => $childcn, + "CHILDDOMAIN" => $childdomain, + "CHILDDESC" => $childdesc, + "AUDN" => $auDN)); + + +####################################### +# Admin anlegen + +$users_array = get_users(); +#print_r($users_array); echo "<br><br>"; + +if (count($users_array) != 0) { + $template->define_dynamic("Users", "Webseite"); + foreach ($users_array as $item) { + $template->assign(array("UDN" => $item['dn'], + "USER" => $item['uid'])); + $template->parse("USERS_LIST", ".Users"); + } +} +else { + $template->assign(array("UDN" => "","USER" => "")); +} + +####################################### +# Objekte zum verschieben + +$host_array = get_hosts($auDN,array("dn","hostname")); +#print_r($host_array); +$template->define_dynamic("Hosts", "Webseite"); +foreach ($host_array as $item){ + $template->assign(array("HDN" => $item['dn'], + "HOSTNAME" => $item['hostname'], + "HOSTNUMBER" => 5)); + $template->parse("HOSTS_LIST", ".Hosts"); +} + +############################################################################### +# Footer + +include("au_footer.inc.php"); + +?>
\ No newline at end of file |
