diff options
| author | Simon | 2011-01-24 12:59:23 +0100 |
|---|---|---|
| committer | Simon | 2011-01-24 12:59:23 +0100 |
| commit | 760e076bbd9237e7d86a2e6f21a55a5be60b89d7 (patch) | |
| tree | 184c22f9f8cea67d2c3d030f62cc3f29deef407d /pbs-randomInsert.php | |
| parent | Name geändert und inhalt geupdated (diff) | |
| download | pbs2-760e076bbd9237e7d86a2e6f21a55a5be60b89d7.tar.gz pbs2-760e076bbd9237e7d86a2e6f21a55a5be60b89d7.tar.xz pbs2-760e076bbd9237e7d86a2e6f21a55a5be60b89d7.zip | |
randomInsert erneuert, erster Teil des Datenbankmodells mit Personen, Gruppen, Rechten, Rollen und den zugehörigen Verknüfungen werden automatisch erstellt. Ebenso wie die Mitgleidschaften und die Gruppenrequests
Diffstat (limited to 'pbs-randomInsert.php')
| -rw-r--r-- | pbs-randomInsert.php | 104 |
1 files changed, 59 insertions, 45 deletions
diff --git a/pbs-randomInsert.php b/pbs-randomInsert.php index f74b11e..af3b141 100644 --- a/pbs-randomInsert.php +++ b/pbs-randomInsert.php @@ -10,14 +10,14 @@ mysql_select_db('pbs'); class insertClass{ function insertPerson($i){ $anz = mysql_num_rows(mysql_query("SELECT * FROM pbs_person"))+1; - for($n=$anz;$n<=$anz+$i;$n++){ + for($n=$anz;$n<$anz+$i;$n++){ mysql_query("INSERT INTO pbs_person (name,firstname,registerdate,email,login,password) VALUES ('test$n','test$n',$n,'mail@mail.com','test$n','test$n');"); } echo "$i Personen eingefügt\n"; } function insertGroup($i){ $anz = mysql_num_rows(mysql_query("SELECT * FROM pbs_group"))+1; - for($n=$anz;$n<=$anz+$i;$n++){ + for($n=$anz;$n<$anz+$i;$n++){ mysql_query("INSERT INTO pbs_group (title) VALUES ('testgruppe$n');"); } echo "$i Gruppen eingefügt\n"; @@ -42,7 +42,7 @@ class insertClass{ } function insertRight($i){ $anz = mysql_num_rows(mysql_query("SELECT * FROM pbs_right"))+1; - for($n=$anz;$n<=$anz+$i;$n++){ + for($n=$anz;$n<$anz+$i;$n++){ mysql_query("INSERT INTO `pbs_right` (`rightID`, `title`, `description`) VALUES (NULL, 'recht$n', NULL)"); } echo "$i Rechte eingefügt\n"; @@ -83,9 +83,8 @@ class insertClass{ } function createMemberships(){ $anzPersonen = mysql_num_rows(mysql_query("SELECT * FROM pbs_person")); - $anzRole = mysql_num_rows(mysql_query("SELECT * FROM pbs_role")); + $anzRole = mysql_num_rows(mysql_query("SELECT * FROM pbs_role")); - $requester = floor($anzPersonen*0.4); $r = mysql_query("SELECT * FROM pbs_role"); while ($d = mysql_fetch_array($r,MYSQL_BOTH)){ $roles[] = $d; @@ -96,68 +95,83 @@ class insertClass{ while ($verbindungen>0){ $personID = rand(1,$anzPersonen); $roleID = rand(1,$anzRole); - $r = mysql_query("INSERT INTO `pbs_rightroles` (`roleID`, `groupID`,`personID`) VALUES ('$roleID','".$roles[$roleID-1]['groupID']."','$personID')"); + $r = mysql_query("INSERT INTO `pbs_membership` (`roleID`, `groupID`,`personID`) VALUES ('$roleID','".$roles[$roleID-1]['groupID']."','$personID')"); $verbindungen--; } echo "Personen in Gruppen in bestimmten Rollen hinzugefügt ($verbindungen2 Verbindungen)\n"; } - function createGroupRequest(){ + function createGroupRequest($i){ $anzPersonen = mysql_num_rows(mysql_query("SELECT * FROM pbs_person")); $anzGruppen = mysql_num_rows(mysql_query("SELECT * FROM pbs_group")); - $anz = floor($anzPersonen*0.3); + $anz = floor($anzPersonen*$i); $anz2=$anz; while($anz>0){ $randomPerson = rand(1,$anzPersonen); $randomGruppe = rand(1,$anzGruppen); - if(mysql_num_rows(mysql_query("SELECT pbs_membership WHERE groupID = '$randomGruppe' AND personID = '$randomPerson'")) == 0){ - mysql_query("INSERT INTO pbs_grouprequest (`groupID`,`personID`,`time`) VALUES ('$randomGruppe','$randomPerson',".time().")"); + $q = "SELECT * FROM `pbs_membership` WHERE `groupID` = '$randomGruppe' AND `personID` = '$randomPerson'"; + if(mysql_num_rows(mysql_query($q)) == 0){ + mysql_query("INSERT INTO pbs_grouprequest (`groupID`,`personID`,`time`) VALUES ('$randomGruppe','$randomPerson',".rand(time()-7*24*60*60,time()).")"); $anz--; } } echo "$anz2 Gruppenanfragen wurden von Personen zu gruppen erstellt\n"; } - - - + function insertBootOS($i){ + $anz = mysql_num_rows(mysql_query("SELECT * FROM pbs_bootos"))+1; + $anzGruppen = mysql_num_rows(mysql_query("SELECT * FROM pbs_group")); + for($n=$anz;$n<$anz+$i;$n++){ + $randomGruppe = rand(1,$anzGruppen); + mysql_query("INSERT INTO `pbs`.`pbs_bootos` (`bootosID`, `configID`, `groupID`, `title`, `description`, `path_init`, `path_kernel`, `defaultkcl`, `created`, `expires`, `public`) VALUES (NULL, NULL, '$randomGruppe', 'BootOS $n', NULL, '', '', '', '', NULL, '1')"); + } + echo "$i BootOS eingefügt\n"; + } + function getBootOS($membershipID){ + $q = "SELECT * FROM pbs_membership WHERE membershipID = $membershipID"; + echo "42"; + // TODO rekursive auflistung aller zur verfügung stehenden BootOS eines Mitglieds + + } function insertAll(){ - $this->clearAll(); - $this->insertGroup(10); - $this->linkGroups(); - $this->insertPerson(20); - $this->insertRight(20); - $this->insertRole(20); - $this->linkRightRole(); - $this->createMemberships(); - + /*$this->clearAll(); + $this->insertGroup(10); # Gruppen hinzufügen + $this->linkGroups(); # Gruppen untereinander verbinden + $this->insertPerson(20); # Personen hinzufügen + $this->insertRight(20); # Rechte hinzufügen + $this->insertRole(20); # Rollen hinzufügen + $this->linkRightRole(); # Recht den Rollen zuweisen + $this->createMemberships(); # Personen mit Rollen den Gruppen zuweisen + $this->createGroupRequest(0.3); # Prozent der Personen die Requesten + $this->insertBootOS(15); # BootOS zu den Gruppen hinzugefügt + */ + $this->getBootOS(16); } function clearAll() { - mysql_query("TRUNCATE `pbs_bootiso`; - TRUNCATE `pbs_bootmenu`; - TRUNCATE `pbs_bootmenuentries`; - TRUNCATE `pbs_bootos`; - TRUNCATE `pbs_client`; - TRUNCATE `pbs_config`; - TRUNCATE `pbs_filter`; - TRUNCATE `pbs_filterentries`; - TRUNCATE `pbs_filtertype`; - TRUNCATE `pbs_group`; - TRUNCATE `pbs_groupgroups`; - TRUNCATE `pbs_grouprequest`; - TRUNCATE `pbs_membership`; - TRUNCATE `pbs_membershipfilters`; - TRUNCATE `pbs_person`; - TRUNCATE `pbs_pool`; - TRUNCATE `pbs_poolentries`; - TRUNCATE `pbs_poolfilters`; - TRUNCATE `pbs_right`; - TRUNCATE `pbs_rightroles`; - TRUNCATE `pbs_role`; - TRUNCATE `pbs_session`"); - + mysql_query("TRUNCATE `pbs_bootiso`"); + mysql_query("TRUNCATE `pbs_bootmenu`"); + mysql_query("TRUNCATE `pbs_bootmenuentries`"); + mysql_query("TRUNCATE `pbs_bootos`"); + mysql_query("TRUNCATE `pbs_client`"); + mysql_query("TRUNCATE `pbs_config`"); + mysql_query("TRUNCATE `pbs_filter`"); + mysql_query("TRUNCATE `pbs_filterentries`"); + mysql_query("TRUNCATE `pbs_filtertype`"); + mysql_query("TRUNCATE `pbs_group`"); + mysql_query("TRUNCATE `pbs_groupgroups`"); + mysql_query("TRUNCATE `pbs_grouprequest`"); + mysql_query("TRUNCATE `pbs_membership`"); + mysql_query("TRUNCATE `pbs_membershipfilters`"); + mysql_query("TRUNCATE `pbs_person`"); + mysql_query("TRUNCATE `pbs_pool`"); + mysql_query("TRUNCATE `pbs_poolentries`"); + mysql_query("TRUNCATE `pbs_poolfilters`"); + mysql_query("TRUNCATE `pbs_right`"); + mysql_query("TRUNCATE `pbs_rightroles`"); + mysql_query("TRUNCATE `pbs_role`"); + mysql_query("TRUNCATE `pbs_session`"); } } |
