summaryrefslogtreecommitdiffstats
path: root/ldap-site-mngmt/webinterface/rbs/rbservice.php
diff options
context:
space:
mode:
Diffstat (limited to 'ldap-site-mngmt/webinterface/rbs/rbservice.php')
-rw-r--r--ldap-site-mngmt/webinterface/rbs/rbservice.php148
1 files changed, 148 insertions, 0 deletions
diff --git a/ldap-site-mngmt/webinterface/rbs/rbservice.php b/ldap-site-mngmt/webinterface/rbs/rbservice.php
new file mode 100644
index 00000000..73dde633
--- /dev/null
+++ b/ldap-site-mngmt/webinterface/rbs/rbservice.php
@@ -0,0 +1,148 @@
+<?php
+include('../standard_header.inc.php');
+
+# 1. Seitentitel - wird in der Titelleiste des Browser angezeigt.
+$titel = "Remote Boot Service Management";
+# 2. Nummer des zugehörigen Hauptmenus (Registerkarte) beginnend bei 0, siehe Dokumentation.doc.
+$mainnr = 4;
+$mnr = 0;
+$sbmnr = -1;
+# 3. Dateiname und evtl. Pfad des Templates für die Webseite
+$webseite = "rbservice.dwt";
+
+include("../class.FastTemplate.php");
+
+include('rbs_header.inc.php');
+
+###################################################################################
+
+$mnr = $_GET['mnr'];
+
+# Menuleisten erstellen
+createMainMenu($rollen, $mainnr);
+createRBSMenu($rollen, $mnr, $auDN, $sbmnr);
+
+###################################################################################
+
+$template->assign(array("RBSDN" => "",
+ "CN" => "",
+ "TFTP" => "",
+ "TFTPIP" => "",
+ "INITBOOTFILE" => "",
+ "TFTPKERNEL" => "",
+ "TFTPPXE" => "",
+ "TFTPCLIENTCONF" => "",
+ "NFS" => "",
+ "NFSIP" => "",
+ "NFSPATH" => "",
+ "NBD" => "",
+ "NBDIP" => "",
+ "RBSOFFERNOWDN" => "",
+ "RBSOFFERNOW" => "",
+ "HDN" => "",
+ "HN" => "",
+ "IP" => ""));
+
+# RBS Daten
+$rbs_array = get_rbservices($auDN,array("dn","cn"));
+$rbsDN = $rbs_array[0]['dn'];
+$attributes = array("dn","cn","rbsofferdn","tftpserverip","tftpkernelpath","tftpclientconfpath","tftppxepath",
+ "nfsserverip","exportpath","nbdserverip","initbootfile");
+$rbs_data = get_node_data($rbsDN, $attributes);
+
+# RBS Anbieten
+# momentanes Offer
+$offerexp = ldap_explode_dn($rbs_data['rbsofferdn'], 1);
+$rbsoffernow = $offerexp[0];
+# alternative Offers
+$expdn = ldap_explode_dn($auDN, 0); # Mit Merkmalen
+$expdn = array_slice($expdn, 1);
+$expou = ldap_explode_dn($auDN, 1); # nur Werte
+$expou = array_slice($expou, 1, -3);
+#print_r($expou); echo "<br>";
+#print_r($expdn); echo "<br>";
+for ($i=0; $i<count($expou); $i++){
+ $rbsoffers[$i]['ou'] = $expou[$i];
+ $rbsoffers[$i]['dn'] = implode(',',$expdn);
+ $expdn = array_slice($expdn, 1);
+}
+#print_r($rbsoffers);
+
+$expcn = explode('_',$rbs_data['cn']);
+$name = array_slice($expcn,1);
+$rbscn = implode('_',$name);
+
+# Server Hostnamen holen
+$tftpserver = get_hostname_from_ip($rbs_data['tftpserverip'],$auDN);
+$nfsserver = get_hostname_from_ip($rbs_data['nfsserverip'],$auDN);
+$nbdserver = get_hostname_from_ip($rbs_data['nbdserverip'],$auDN);
+
+$template->assign(array("RBSDN" => $rbs_data['dn'],
+ "RBSCN" => $rbscn,
+ "TFTP" => $tftpserver['hostname'],
+ "TFTPDN" => $tftpserver['dn'],
+ "TFTPIP" => $rbs_data['tftpserverip'],
+ "INITBOOTFILE" => $rbs_data['initbootfile'],
+ "TFTPKERNEL" => $rbs_data['tftpkernelpath'],
+ "TFTPPXE" => $rbs_data['tftppxepath'],
+ "TFTPCLIENTCONF" => $rbs_data['tftpclientconfpath'],
+ "NFS" => $nfsserver['hostname'],
+ "NFSDN" => $nfsserver['dn'],
+ "NFSIP" => $rbs_data['nfsserverip'],
+ "NFSPATH" => $rbs_data['exportpath'],
+ "NBD" => $nbdserver['hostname'],
+ "NBDDN" => $nbdserver['dn'],
+ "NBDIP" => $rbs_data['nbdserverip'],
+ "RBSOFFERNOWDN" => $rbs_data['rbsofferdn'],
+ "RBSOFFERNOW" => $rbsoffernow,
+ "MNR" => $mnr,
+ "SBMNR" => $sbmnr));
+
+$template->define_dynamic("Rbsoffers", "Webseite");
+foreach ($rbsoffers as $offer){
+ $template->assign(array("RBSOFFER" => $offer['dn'],
+ "RBSOFFEROU" => $offer['ou'],));
+ $template->parse("RBSOFFERS_LIST", ".Rbsoffers");
+}
+
+### Rechner
+$hostorgroup = $exp[0];
+$hosts_array = get_hosts($auDN,array("dn","hostname","ipaddress"));
+
+$template->define_dynamic("TftpHosts", "Webseite");
+$template->define_dynamic("NfsHosts", "Webseite");
+$template->define_dynamic("NbdHosts", "Webseite");
+foreach ($hosts_array as $item){
+ $template->assign(array("HDN" => $item['dn'],
+ "HN" => $item['hostname'],
+ "IP" => $item['ipaddress']));
+ $template->parse("TFTPHOSTS_LIST", ".TftpHosts");
+ $template->assign(array("HDN" => $item['dn'],
+ "HN" => $item['hostname'],
+ "IP" => $item['ipaddress']));
+ $template->parse("NFSHOSTS_LIST", ".NfsHosts");
+ $template->assign(array("HDN" => $item['dn'],
+ "HN" => $item['hostname'],
+ "IP" => $item['ipaddress']));
+ $template->parse("NBDHOSTS_LIST", ".NbdHosts");
+}
+
+################################################
+# PXE Generator Skript Config
+$pxegen_ldap = "ldap://".LDAP_HOST;
+$pxegen_base = "ou=RIPM,".$suffix;
+$pxegen_udn = $userDN;
+$pxegen_pw = $userPassword;
+$pxegen_rbsdn = $rbsDN;
+$template->assign(array("PXEGENLDAP" => $pxegen_ldap,
+ "PXEGENBASE" => $pxegen_base,
+ "PXEGENUDN" => $pxegen_udn,
+ "PXEGENPW" => $pxegen_pw,
+ "PXEGENRBS" => $pxegen_rbsdn));
+
+
+###################################################################################
+
+include("rbs_footer.inc.php");
+
+?> \ No newline at end of file