User page code for user/group admin
[gwvp.git] / gwvplib / gwvpdebug.php
1 <?php 
2 $CALL_ME_FUNCTIONS["debug"] = "gwvp_DebugCallMe";
3
4 $MENU_ITEMS["999debug"]["text"] = "Debug";
5 $MENU_ITEMS["999debug"]["link"] = "$BASE_URL/debug";
6
7 function gwvp_DebugEnabled()
8 {
9         global $BASE_URL;
10         
11         echo "<pre>";
12         echo "BASEURL: $BASE_URL\n";
13         echo "CUSTOM\n";
14         echo "\n\nserver\n";
15         print_r($_SERVER);
16         echo "\n\n\nrequest\n";
17         print_r($_REQUEST);
18         echo "\n\n\nsession\n";
19         if(isset($_SESSION)) {
20                 print_r($_SESSION);
21         } else {
22                 echo "No session data";
23         }
24         
25         
26         echo "</pre>";
27 }
28
29 function gwvp_DebugCallMe()
30 {
31         if(isset($_REQUEST["q"])) {
32                 $query = $_REQUEST["q"];
33                 $myquery = explode("/",$query);
34                 if($myquery[0] == "debug") return "gwvp_DebugCall";
35                 else return false;
36         }
37         
38         return false;
39         
40 }
41
42 function gwvp_DebugCall()
43 {
44         global $BASE_URL;
45         
46         if(isset($_REQUEST["q"])) {
47                 $query = $_REQUEST["q"];
48                 $myquery = explode("/",$query);
49                 if(isset($myquery[1])) {
50                         switch($myquery[1]) {
51                                 case "errormessage":
52                                         error_log("generate error message");
53                                         gwvp_SendMessage("error", "random message");
54                                         header("Location: $BASE_URL/debug");
55                                         break;
56                                 case "infomessage":
57                                         error_log("generate info message");
58                                         gwvp_SendMessage("info", "random message");
59                                         header("Location: $BASE_URL/debug");
60                                         break;
61                                 case "createusersandgroups":
62                                         // gwvp_createUser($email, $fullname, $password, $nick, $desc, $status)
63                                         for($i=20; $i<120; $i++) {
64                                                 gwvp_createUser("test$i@test.com", "test$i", "asdf", "test$i", "test$i user", 0);
65                                         }
66                                         
67                                         // function gwvp_createGroup($group_name, $is_admin, $owner_id)
68                                         for($i=20; $i<40; $i++) {
69                                                 if(($i%5) == 0) $isadmin = 1;
70                                                 else $isadmin = 0;
71                                                 gwvp_createGroup("testgroup$i", "$isadmin", "$i");
72                                         }
73                                         
74                                         // gwvp_addGroupMember($email, $groupname)
75                                         //
76                                         for($i=20; $i<120; $i++) {
77                                                 for($k=0; $k<4; $k++) {
78                                                         $gid = rand(20,39);
79                                                         gwvp_addGroupMember("test$i@test.com", "testgroup$gid");
80                                                 }
81                                         }
82                                         gwvp_SendMessage("info", "Create users and groups done");
83                                         header("Location: $BASE_URL/debug");
84                                         break;
85                                 case "recreatedb":
86                                         global $db_name;
87                                         unlink("$db_name");
88                                         gwvp_dbCreateSQLiteStructure("$db_name");
89                                         gwvp_SendMessage("info", "blank db re-created");
90                                         header("Location: $BASE_URL/debug");
91                                         break;
92                                 case "dropallusersandgroups":
93                                         $conn = gwvp_ConnectDB();
94                                         $conn->query("delete from users");
95                                         $conn->query("delete from groups");
96                                         $conn->query("delete from group_membership");
97                                         gwvp_SendMessage("info", "Drop all users and groups done");
98                                         header("Location: $BASE_URL/debug");
99                                         break;          
100                                 default:
101                                         gwvp_goMainPage("gwvp_DebugBody");
102                                         return;
103                         }
104                 } else {
105                         gwvp_goMainPage("gwvp_DebugBody");
106                 }
107         }
108 }
109
110 function gwvp_DebugBody()
111 {
112         global $BASE_URL;
113         ?>
114         <a href="<?php echo $BASE_URL?>/debug/errormessage">Generate error message</a><br>
115         <a href="<?php echo $BASE_URL?>/debug/infomessage">Generate info message</a><br>
116         <a href="<?php echo $BASE_URL?>/debug/createusersandgroups">Create a bunch of users and groups</a><br>
117         <a href="<?php echo $BASE_URL?>/debug/dropallusersandgroups">Drop users/groups/groupmemberships</a><br>
118         <a href="<?php echo $BASE_URL?>/debug/recreatedb">Recreate db</a><br>
119         <?php
120 }
121
122 ?>