diff options
| author | Simon | 2011-04-19 15:14:17 +0200 |
|---|---|---|
| committer | Simon | 2011-04-19 15:14:17 +0200 |
| commit | 765bcb53aa178808c2eec5502aa5387ba6e1bf68 (patch) | |
| tree | 7c1cf7a403832bbe29afcbf1bf90e01f13426209 /dbContent.php | |
| parent | Roleansicht geändert (diff) | |
| download | pbs2-765bcb53aa178808c2eec5502aa5387ba6e1bf68.tar.gz pbs2-765bcb53aa178808c2eec5502aa5387ba6e1bf68.tar.xz pbs2-765bcb53aa178808c2eec5502aa5387ba6e1bf68.zip | |
Aufgeräumt und verschoben
Diffstat (limited to 'dbContent.php')
| -rw-r--r-- | dbContent.php | 224 |
1 files changed, 0 insertions, 224 deletions
diff --git a/dbContent.php b/dbContent.php deleted file mode 100644 index a704ec2..0000000 --- a/dbContent.php +++ /dev/null @@ -1,224 +0,0 @@ -<?php -/* - * Copyright (c) 2011 - OpenSLX GmbH, RZ Uni Freiburg - * This program is free software distributed under the GPL version 2. - * See http://gpl.openslx.org/ - * - * If you have any feedback please consult http://feedback.openslx.org/ and - * send your suggestions, praise, or complaints to feedback@openslx.org - * - * General information about OpenSLX can be found at http://openslx.org/ - */ -// generate mysql graph -$name = substr(str_replace("/","",$_SERVER['SCRIPT_NAME']),0,-4); -$dotname = $name . '.dot'; -$pngname = $name . '.png'; - -echo "Opening Database Connection...\n"; -$link = mysql_connect('localhost', 'root', '123456'); -if (!$link) { - die('keine Verbindung möglich: ' . mysql_error()); -} -mysql_select_db('pbs'); -error_reporting(1); - - -$format['groupnode'] = '"%s" [shape=trapezium, fontcolor="#ffffffff", style=filled, fillcolor="#004A99FF"];'."\n"; -$format['personnode'] = '"%s" [shape=ellipse, fontcolor="#ffffffff", style=filled, fillcolor="#FF0000FF"];'."\n"; -$format['poolnode'] = '"%s" [shape=ellipse, fontcolor="#000000ff", style=filled, fillcolor="#00FF00FF"];'."\n"; -$format['membershipnode'] = '"%s" [shape=ellipse, fontcolor="#ffffffff", style=filled, fillcolor="#990000FF"];'."\n"; -$format['clientnode'] = '"%s" [shape=ellipse, fontcolor="#000000ff", style=filled, fillcolor="#FFFF00FF"];'."\n"; -$format['rolenode'] = '"%s" [fontcolor="#000000ff", style=filled, fillcolor="#FF0099FF"];'."\n"; -$format['bootmenunode'] = '"%s" [shape=ellipse, fontcolor="#000000ff", style=filled, fillcolor="#009999FF"];'."\n"; -$format['bootisonode'] = '"%s" [shape=ellipse, fontcolor="#000000ff", style=filled, fillcolor="#FF9900FF"];'."\n"; -$format['bootosnode'] = '"%s" [fontcolor="#000000ff", style=filled, fillcolor="#99FF99FF"];'."\n"; - -$format['groupgroup'] = '"%s" -> "%s";'."\n"; -$format['personmember'] = '"%s" -> "%s";'."\n"; -$format['rolemember'] = '"%s" -> "%s";'."\n"; -$format['membergroup'] = '"%s" -> "%s";'."\n"; -$format['personrequest'] = '"%s" -> "%s" [style=dotted];'."\n"; -$format['poolgroup'] = '"%s" -> "%s";'."\n"; -$format['clientgroup'] = '"%s" -> "%s";'."\n"; -$format['clientpool'] = '"%s" -> "%s";'."\n"; -$format['bootisogroup'] = '"%s" -> "%s";'."\n"; -$format['bootmenugroup'] = '"%s" -> "%s";'."\n"; -$format['bootosbootmenu'] = '"%s" -> "%s";'."\n"; -$format['bootosgroup'] = '"%s" -> "%s";'."\n"; - - - - -function getGroups(){ - global $format; - $q = "SELECT groupID,title FROM pbs_group"; - $groups = "subgraph cluster_0 {"; - $groups .= "label=Groups;"; - $result = mysql_query($q); - while($data = mysql_fetch_array($result)){ - $groups .= sprintf($format['groupnode'] ,"Group".$data['groupID']); - } - $groups .= "}"; - return $groups; -} -function recGroups($groupID,$level=0,$data=''){ - global $format; - $q = "SELECT groupID FROM pbs_groupgroups WHERE parentID = $groupID"; - $result = mysql_query($q); - while($data = mysql_fetch_array($result)){ - $groups .= sprintf($format['groupgroup'],"Group".$groupID, "Group".$data['groupID']); - $groups .= recGroups($data['groupID']); - } - return $groups; -} -function getPersons(){ - global $format; - $q = "SELECT personID,title FROM pbs_person"; - $result = mysql_query($q); - while($data = mysql_fetch_array($result)){ - $persons .= sprintf($format['personnode'] ,"Person". $data['personID']); - - } - return $persons; -} -function getMemberships(){ - global $format; - $q = "SELECT personID,groupID,membershipID,roleID FROM pbs_membership"; - $result = mysql_query($q); - while($data = mysql_fetch_array($result)){ - $memberships .= sprintf($format['membershipnode'],"Member".$data['membershipID']); - $memberships .= sprintf($format['personmember'],"Person".$data['personID'],"Member".$data['membershipID']); - $memberships .= sprintf($format['rolemember'],"Role".$data['roleID'], "Member".$data['membershipID']); - $memberships .= sprintf($format['membergroup'],"Member".$data['membershipID'], "Group".$data['groupID']); - } - return $memberships; -} -function getRequests(){ - global $format; - $q = "SELECT personID,groupID FROM pbs_grouprequest"; - $result = mysql_query($q); - while($data = mysql_fetch_array($result)){ - $memberships .= sprintf($format['peronrequests'],"Group".$data['groupID'], "Person".$data['personID']); - } - return $memberships; -} -function getPools(){ - global $format; - $q = "SELECT poolID,groupID FROM pbs_pool"; - $result = mysql_query($q); - while($data = mysql_fetch_array($result)){ - $pools .= sprintf($format['poolnode'] ,"Pool".$data['poolID']); - $pools .= sprintf($format['poolgroup'],"Pool".$data['poolID'], "Group".$data['groupID']); - - } - return $pools; -} -function getClients(){ - global $format; - $q = "SELECT clientID,groupID FROM pbs_client"; - $result = mysql_query($q); - while($data = mysql_fetch_array($result)){ - $clients .= sprintf($format['clientnode'] ,"Client".$data['clientID']); - $query2 = "SELECT clientID, poolID FROM pbs_poolentries WHERE clientID = '".$data['clientID']."'"; - $result2 = mysql_query($query2); - if(mysql_num_rows($result2) == 0) - $clients .= sprintf($format['clientgroup'],"Client".$data['clientID'], "Group".$data['groupID']); - } - - return $clients; -} -function clientPools(){ - global $format; - $q = "SELECT clientID,poolID FROM pbs_poolentries"; - $result = mysql_query($q); - while($data = mysql_fetch_array($result)){ - $clientpools .= sprintf($format['clientpool'],"Client".$data['clientID'], "Pool".$data['poolID']); - } - return $clientpools; -} -function getRoles(){ - global $format; - $q = "SELECT roleID,groupID FROM pbs_role"; - $result = mysql_query($q); - while($data = mysql_fetch_array($result)){ - $roles .= sprintf($format['rolenode'] ,"Role".$data['roleID']); - # $roles .= "Role".$data['roleID'] ." -> " . "Group".$data['groupID'].";\n"; - } - return $roles; -} -function getBootiso(){ - global $format; - $q = "SELECT bootisoID,groupID FROM pbs_bootiso"; - $result = mysql_query($q); - while($data = mysql_fetch_array($result)){ - $bootiso .= sprintf($format['bootisonode'] ,"BootIso".$data['bootisoID']); - $bootiso .= sprintf($format['bootisogroup'],"BootIso".$data['bootisoID'], "Group".$data['groupID']); - - } - return $bootiso; -} -function getBootMenus(){ - global $format; - $q = "SELECT bootmenuID,groupID FROM pbs_bootmenu"; - $result = mysql_query($q); - while($data = mysql_fetch_array($result)){ - $bootmenu .= sprintf($format['bootmenunode'] ,"BootMenu".$data['bootmenuID']); - $bootmenu .= sprintf($format['bootmenugroup'],"BootMenu".$data['bootmenuID'], "Group".$data['groupID']); - } - return $bootmenu; -} -function getBootos(){ - global $format; - $q = "SELECT bootosID,groupID FROM pbs_bootos"; - $result = mysql_query($q); - while($data = mysql_fetch_array($result)){ - $bootos .= sprintf($format['bootosnode'] ,"BootOs".$data['bootosID']); - - $q2 = "SELECT * FROM pbs_bootmenuentries WHERE bootosID = ".$data['bootosID'].""; - $result2 = mysql_query($q2); - if(mysql_num_rows($result2)){ - while($data2 = mysql_fetch_array($result2)) - $bootos .= sprintf($format['bootosbootmenu'],"BootOs".$data['bootosID'], "BootMenu".$data2['bootmenuID']); - } - else - $bootos .= sprintf($format['bootosgroup'],"BootOs".$data['bootosID'], "Group".$data['groupID']); - } - return $bootos; -} - -## Concatenation -$defs = ''; -$defs .= getGroups(); -$defs .= recGroups(1); -$defs .= getPersons(); -$defs .= getMemberships(); -$defs .= getRoles(); -$defs .= getRequests(); -$defs .= getPools(); -$defs .= getClients(); -$defs .= clientPools(); -$defs .= getBootiso(); -$defs .= getBootMenus(); -$defs .= getBootos(); - - - -$str = 'digraph x { - node []; - ranksep=3; - size="20,20"; - overlap="0:true"'."\n"; -$str .= str_replace("\n","\n\t",$defs); -$str .= "}"; - -echo "Write to file ...\n"; -// Create the dot file -$fp = fopen($dotname, "w"); -fputs ($fp, $str); -fclose ($fp); -// Generate the image -echo "Generate the image ...\n"; -exec("dot -Tpng $dotname >$pngname"); -// delete the dot file -unlink ($dotname); -echo "Ready!\n"; |
