segment the admin gui
[matches/MCTX3420.git] / testing / MCTXWeb / public_html / users / admin_page.php
1 <?php\r
2 /*\r
3 UserCake Version: 2.0.2\r
4 http://usercake.com\r
5 */\r
6 \r
7 //what a bunch of spaghetti code\r
8 \r
9 require_once("models/config.php");\r
10 if (!securePage($_SERVER['PHP_SELF'])){die();}\r
11 $pageId = $_GET['id'];\r
12 \r
13 //Check if selected pages exist\r
14 if(!pageIdExists($pageId)){\r
15         header("Location: admin_pages.php"); die();     \r
16 }\r
17 \r
18 $pageDetails = fetchPageDetails($pageId); //Fetch information specific to page\r
19 \r
20 //Forms posted\r
21 if(!empty($_POST)){\r
22         $update = 0;\r
23         \r
24         if(!empty($_POST['private'])){ $private = $_POST['private']; }\r
25         \r
26         //Toggle private page setting\r
27         if (isset($private) AND $private == 'Yes'){\r
28                 if ($pageDetails['private'] == 0){\r
29                         if (updatePrivate($pageId, 1)){\r
30                                 $successes[] = lang("PAGE_PRIVATE_TOGGLED", array("private"));\r
31                         }\r
32                         else {\r
33                                 $errors[] = lang("SQL_ERROR");\r
34                         }\r
35                 }\r
36         }\r
37         elseif ($pageDetails['private'] == 1){\r
38                 if (updatePrivate($pageId, 0)){\r
39                         $successes[] = lang("PAGE_PRIVATE_TOGGLED", array("public"));\r
40                 }\r
41                 else {\r
42                         $errors[] = lang("SQL_ERROR");  \r
43                 }\r
44         }\r
45         \r
46         //Remove permission level(s) access to page\r
47         if(!empty($_POST['removePermission'])){\r
48                 $remove = $_POST['removePermission'];\r
49                 if ($deletion_count = removePage($pageId, $remove)){\r
50                         $successes[] = lang("PAGE_ACCESS_REMOVED", array($deletion_count));\r
51                 }\r
52                 else {\r
53                         $errors[] = lang("SQL_ERROR");  \r
54                 }\r
55                 \r
56         }\r
57         \r
58         //Add permission level(s) access to page\r
59         if(!empty($_POST['addPermission'])){\r
60                 $add = $_POST['addPermission'];\r
61                 if ($addition_count = addPage($pageId, $add)){\r
62                         $successes[] = lang("PAGE_ACCESS_ADDED", array($addition_count));\r
63                 }\r
64                 else {\r
65                         $errors[] = lang("SQL_ERROR");  \r
66                 }\r
67         }\r
68         \r
69         $pageDetails = fetchPageDetails($pageId);\r
70 }\r
71 \r
72 $pagePermissions = fetchPagePermissions($pageId);\r
73 $permissionData = fetchAllPermissions();\r
74 \r
75 require_once("models/header.php");\r
76 startPage();\r
77 \r
78 echo notificationBlock($errors, $successes);\r
79 \r
80 echo '\r
81 <div class="widget">\r
82 <div class="right">\r
83   Page ID '.$pageDetails['id'].'\r
84 </div>\r
85 \r
86 <div class="title">Manage page "'.$pageDetails['page'].'"</div>\r
87 \r
88 <div class="sub-title">Access control list</div>';\r
89 echo "\r
90 <form name='adminPage' class='nice clear' action='".$_SERVER['PHP_SELF']."?id=".$pageId."' method='post'>\r
91 <input type='hidden' name='process' value='1'>\r
92 \r
93 <table class='admin left lines'>\r
94 <tr>\r
95   <th class=''>Swap</th>\r
96   <th class=''>Has access</th>\r
97   <th class=''>Does not have access</th>\r
98 </tr>\r
99 ";\r
100 \r
101 foreach ($permissionData as $v) {\r
102   echo "<tr>";\r
103   if(isset($pagePermissions[$v['id']])) {\r
104     echo "<td><input type='checkbox' name='removePermission[".$v['id']."]' id='removePermission[".$v['id']."]' value='".$v['id']."'></td>";\r
105     echo "<td>".$v['name']."</td><td></td>";\r
106   } else {\r
107     echo "<td><input type='checkbox' name='addPermission[".$v['id']."]' id='addPermission[".$v['id']."]' value='".$v['id']."</td>'>";\r
108     echo "<td></td><td>".$v['name']."</td>";\r
109   }\r
110   \r
111   echo "</tr>";\r
112 }\r
113 \r
114 echo "\r
115 </table>\r
116 \r
117 <p class='left'>\r
118 <label for='private'>Private page:</label>";\r
119 \r
120 //Display private checkbox\r
121 if ($pageDetails['private'] == 1){\r
122         echo "<input type='checkbox' name='private' id='private' value='Yes' checked>";\r
123 }\r
124 else {\r
125         echo "<input type='checkbox' name='private' id='private' value='Yes'>"; \r
126 }\r
127 \r
128 echo "\r
129 </p>\r
130 \r
131 <p class='right'>\r
132 <label>&nbsp;</label>\r
133 <input type='submit' value='Update' class='submit' />\r
134 </p>\r
135 </form>\r
136 ";\r
137 \r
138 echo "\r
139 </div>";\r
140 \r
141 finishPage();\r
142 \r
143 ?>\r

UCC git Repository :: git.ucc.asn.au