3 if(gwvpmini_isLoggedIn()) if(gwvpmini_isUserAdmin()) {
4 $MENU_ITEMS["20repos"]["text"] = "Administration";
\r
5 $MENU_ITEMS["20repos"]["link"] = "$BASE_URL/admin";
6 $CALL_ME_FUNCTIONS["admin"] = "gwvpmini_AdminCallMe";
11 function gwvpmini_AdminCallMe()
\r
14 error_log("in admin callme");
\r
15 if(isset($_REQUEST["q"])) {
\r
16 $query = $_REQUEST["q"];
\r
17 $qspl = explode("/", $query);
\r
18 if(isset($qspl[0])) {
\r
19 if($qspl[0] == "admin") {
\r
20 if(isset($qspl[1])) {
\r
21 if($qspl[1] == "user") {
\r
22 return "gwvpmini_AdminUserCreate";
\r
24 if($qspl[1] == "changereg") {
25 return "gwvpmini_ChangeRegistration";
27 if($qspl[1] == "changeconfirm") {
28 return "gwvpmini_ChangeRegConfig";
30 if($qspl[1] == "changefromemail") {
31 return "gwvpmini_ChangeFromAddress";
33 if($qspl[1] == "removeuser") {
34 return "gwvpmini_RemoveUserPage";
36 if($qspl[1] == "confremoveuser") {
37 return "gwvpmini_ConfRemoveUser";
40 error_log("i got here, where next?");
\r
41 return "gwvpmini_AdminMainPage";
\r
43 } else return false;
\r
51 function gwvpmini_RemoveUserPage()
53 gwvpmini_goMainPage("gwvpmini_RemoveUserPageBody");
57 function gwvpmini_AdminMainPage()
59 gwvpmini_goMainPage("gwvpmini_AdminMainPageBody");
62 function gwvpmini_AdminMainPageBody()
65 global $can_register, $reg_reqs_confirm, $confirm_from_address;
68 $register = "Registration Enabled (<a href=\"$BASE_URL/admin/changereg\">Disable</a>)";
70 $register = "Registration Disabled (<a href=\"$BASE_URL/admin/changereg\">Enable</a>)";
73 if($reg_reqs_confirm) {
74 $regconfirm = "Registration Requires Confirmation (<a href=\"$BASE_URL/admin/changeconfirm\">Disable</a>)";
76 $regconfirm = "Registration Doesnt Require Confirmation (<a href=\"$BASE_URL/admin/changeconfirm\">Enable</a>)";
78 $totalusers = gwvpmini_GetNUsers();
79 echo "<table><tr valign=\"top\"><td>";
80 echo "<h2>Users - $totalusers</h2>";
81 echo "$register<br>$regconfirm<br>";
82 echo "<form method=\"post\" action=\"$BASE_URL/admin/changefromemail\">";
83 echo "Address emails are sent from <input type=\"text\" name=\"fromemail\" value=\"$confirm_from_address\"><input type=\"submit\" name=\"Update\" value=\"Update\"><br>";
86 echo "<table border=\"1\">";
87 echo "<tr><th>Username</th><th>Email Address</th><th>Full Name</th><th>Description</th><th>Status</th><th>Control</th></tr>";
88 foreach(gwvpmini_GetUsers() as $key => $val) {
90 $un = $val["username"];
92 $fn = $val["fullname"];
94 $st_t = $val["status"];
95 $st_l = $val["level"];
98 if($st_l == 0) $level = "User";
99 if($st_l == 1) $level = "Admin";
102 if($st_t[0] == "1") {
103 $status = ", disabled";
105 if($st_t[0] == "2") {
106 $vl = explode(":", $st_t);
107 error_log("VL: ".print_r($vl, true));
108 $status = " Awaiting Confirmation (<a href=\"$BASE_URL/register/confirmreg/".$vl[1]."\">Confirm</a>)";
111 $st = "$level$status";
113 $unlval = "<a href=\"$BASE_URL/user/$un\">$un</a>";
114 echo "<tr><td>$unlval</td><td>$em</td><td>$fn</td><td>$ds</td><td>$st</td><td><a href=\"$BASE_URL/admin/removeuser/$id\">Remove</a> <a href=\"$BASE_URL/admin/disableuser&id=$id\">Disable</a></td></tr>";
120 echo "<h3>Create User</h3>";
121 echo "<form method=\"post\" action=\"$BASE_URL/admin/user/create\">";
122 echo "<table border=\"1\">";
\r
123 echo "<tr><th>Username</th><td><input type=\"text\" name=\"username\"></td></tr>";
124 echo "<tr><th>Password</th><td><input type=\"password\" name=\"password\"></td></tr>";
125 echo "<tr><th>Confirm Password</th><td><input type=\"password\" name=\"confpassword\"></td></tr>";
126 echo "<tr><th>Full Name</th><td><input type=\"text\" name=\"fullname\"></td></tr>";
127 echo "<tr><th>Description</th><td><input type=\"text\" name=\"desc\"></td></tr>";
128 echo "<tr><th>Email</th><td><input type=\"text\" name=\"email\"></td></tr>";
129 echo "<tr><th>Confirm Email</th><td><input type=\"text\" name=\"confemail\"></td></tr>";
130 echo "<tr><th>Admin?</th><td><input type=\"checkbox\" name=\"isadmin\"></td></tr>";
131 echo "<tr><td colspan=\"2\"><input type=\"submit\" name=\"Add\" value=\"Add\"></td></tr>";
134 echo "</td></tr></table>";
136 $totalrepos = gwvpmini_GetNRepos();
137 echo "<h2>Repo's - $totalrepos</h2>";
138 echo "<table border=\"1\">";
139 echo "<tr><th>Repo Name</th><th>Repo Desc</th><th>Owner</th><th>Control</th></tr>";
140 foreach(gwvpmini_GetRepos() as $key => $val) {
145 echo "<tr><td><a href=\"$BASE_URL/view/$rn\">$rn</a></td><td>$ds</td><td>$ow</td><td><a href=\"$BASE_URL/admin/removeuser&id=$id\">Remove</a> <a href=\"$BASE_URL/admin/disableuser&id=$id\">Disable</a></td></tr>";
151 function gwvpmini_AdminUserCreate()
155 $name = $_REQUEST["username"];
156 $pass1 = $_REQUEST["password"];
157 $pass2 = $_REQUEST["confpassword"];
\r
158 $fname = $_REQUEST["fullname"];
159 $desc = $_REQUEST["desc"];
160 $email1 = $_REQUEST["email"];
\r
161 $email2 = $_REQUEST["confemail"];
162 if(isset($_REQUEST["isadmin"])) $level = 1;
165 $id = gwvpmini_GetUserId($name);
168 if($pass1 != $pass2) {
169 gwvpmini_SendMessage("error", "Passwords dont match");
170 header("Location: $BASE_URL/admin");
173 if($email1 != $email2) {
174 gwvpmini_SendMessage("error", "Email Addresses dont match");
175 header("Location: $BASE_URL/admin");
179 gwvpmini_AddUser($name, $pass1, $fname, $email1, $desc, $level, 0);
180 gwvpmini_SendMessage("info", "User $fname created");
182 gwvpmini_SendMessage("error", "User $name already exists, cant create");
185 header("Location: $BASE_URL/admin");
191 function gwvpmini_ChangeRegistration()
193 global $can_register, $BASE_URL;
196 gwvpmini_setConfigVal("canregister", "0");
197 gwvpmini_SendMessage("info", "Registration disabled");
199 gwvpmini_setConfigVal("canregister", "1");
\r
200 gwvpmini_SendMessage("info", "Registration enabled");
203 header("Location: $BASE_URL/admin");
207 function gwvpmini_ChangeRegConfig()
209 global $reg_reqs_confirm, $BASE_URL;
\r
211 if($reg_reqs_confirm) {
\r
212 gwvpmini_setConfigVal("registerrequiresconfirm", "0");
\r
213 gwvpmini_SendMessage("info", "Registration Confirmation disabled");
\r
215 gwvpmini_setConfigVal("registerrequiresconfirm", "1");
\r
216 gwvpmini_SendMessage("info", "Registration Confirmation enabled");
\r
219 header("Location: $BASE_URL/admin");
222 function gwvpmini_ChangeFromAddress()
226 $newfrom = $_REQUEST["fromemail"];
\r
228 gwvpmini_setConfigVal("eamilfromaddress", "$newfrom");
\r
229 gwvpmini_SendMessage("info", "Email from address updated to \"$newfrom\"");
\r
231 header("Location: $BASE_URL/admin");
\r
235 function gwvpmini_RemoveUserPageBody()
240 if(isset($_REQUEST["q"])) {
\r
241 $query = $_REQUEST["q"];
\r
242 $qspl = explode("/", $query);
\r
243 if(isset($qspl[2])) {
249 $details = gwvpmini_GetUsers($uid, 1);
250 $username = $details[$uid]["username"];
251 $fullname = $details[$uid]["fullname"];
252 $email = $details[$uid]["email"];
253 $desc = $details[$uid]["desc"];
255 error_log("user dets:".print_r($details, true));
257 echo "<h2>Remove User?</h2>";
258 echo "Are you sure you wish to remove the user, $username ($uid) - $fullname - $email - $desc?<br>";
259 echo "<a href=\"$BASE_URL/admin/confremoveuser/$uid\">Yes</a> <a href=\"$BASE_URL/admin\">No</a><br>";
261 echo "<h2>How?</h2>";
262 echo "You got here in a weird way or the uid of the user you were trying to delete is invalid<br>";
263 echo "<a href=\"$BASE_URL/admin\">Go Back</a>";
268 function gwvpmini_ConfRemoveUser()
\r
273 if(isset($_REQUEST["q"])) {
\r
274 $query = $_REQUEST["q"];
\r
275 $qspl = explode("/", $query);
\r
276 if(isset($qspl[2])) {
\r
282 $details = gwvpmini_getUser(null, null, $uid);
283 $uname = $details["username"];
284 gwvpmini_RemoveUser($uid);
285 gwvpmini_SendMessage("info", "User $uname ($uid) has been removed");
\r
287 gwvpmini_SendMessage("info", "Problem deleteing user with uid $uid");
290 header("Location: $BASE_URL/admin");
\r