Mercurial > hg > fapweb
annotate admin.php @ 1020:2a259e243350
Don't use a HTML table for the votekeys.
author | Matti Hamalainen <ccr@tnsp.org> |
---|---|
date | Thu, 05 Nov 2015 19:22:11 +0200 |
parents | ffacd904fd1f |
children | 5f92fa5e683a |
rev | line source |
---|---|
0 | 1 <? |
136
aeebfedb5709
Add some copyright headers.
Matti Hamalainen <ccr@tnsp.org>
parents:
126
diff
changeset
|
2 // |
571
ce11ea112a65
Change the header blurb a bit.
Matti Hamalainen <ccr@tnsp.org>
parents:
565
diff
changeset
|
3 // FAPWeb - Simple Web-based Demoparty Management System |
136
aeebfedb5709
Add some copyright headers.
Matti Hamalainen <ccr@tnsp.org>
parents:
126
diff
changeset
|
4 // Party administration page frontend module |
1001 | 5 // (C) Copyright 2012-2015 Tecnic Software productions (TNSP) |
136
aeebfedb5709
Add some copyright headers.
Matti Hamalainen <ccr@tnsp.org>
parents:
126
diff
changeset
|
6 // |
32 | 7 $sessionType = "admin"; |
175
8df523e6326a
User require_once instead of require.
Matti Hamalainen <ccr@tnsp.org>
parents:
174
diff
changeset
|
8 require_once "mconfig.inc.php"; |
8df523e6326a
User require_once instead of require.
Matti Hamalainen <ccr@tnsp.org>
parents:
174
diff
changeset
|
9 require_once "msite.inc.php"; |
8df523e6326a
User require_once instead of require.
Matti Hamalainen <ccr@tnsp.org>
parents:
174
diff
changeset
|
10 require_once "msession.inc.php"; |
384
357b81e39ab3
Rename majax.php -> majax.inc.php.
Matti Hamalainen <ccr@tnsp.org>
parents:
378
diff
changeset
|
11 require_once "majax.inc.php"; |
32 | 12 |
614
7987aa59c2a0
Clean up admin login a bit, and add some DOM elements.
Matti Hamalainen <ccr@tnsp.org>
parents:
601
diff
changeset
|
13 |
14
e36c4d2b09c4
Fix settings to work, clean up the code, etc.
Matti Hamalainen <ccr@tnsp.org>
parents:
10
diff
changeset
|
14 function stCreateSettingsData() |
e36c4d2b09c4
Fix settings to work, clean up the code, etc.
Matti Hamalainen <ccr@tnsp.org>
parents:
10
diff
changeset
|
15 { |
624
aad32d21091f
Some work on settings groups.
Matti Hamalainen <ccr@tnsp.org>
parents:
614
diff
changeset
|
16 echo |
728
8b1abca34033
Move code around, for cleaner structure.
Matti Hamalainen <ccr@tnsp.org>
parents:
727
diff
changeset
|
17 "<script type=\"text/javascript\">\n". |
624
aad32d21091f
Some work on settings groups.
Matti Hamalainen <ccr@tnsp.org>
parents:
614
diff
changeset
|
18 "\n". |
aad32d21091f
Some work on settings groups.
Matti Hamalainen <ccr@tnsp.org>
parents:
614
diff
changeset
|
19 "var jsSettingsArgs = [];\n"; |
14
e36c4d2b09c4
Fix settings to work, clean up the code, etc.
Matti Hamalainen <ccr@tnsp.org>
parents:
10
diff
changeset
|
20 |
624
aad32d21091f
Some work on settings groups.
Matti Hamalainen <ccr@tnsp.org>
parents:
614
diff
changeset
|
21 foreach (stExecSQL("SELECT * FROM settings_groups") as $group) |
14
e36c4d2b09c4
Fix settings to work, clean up the code, etc.
Matti Hamalainen <ccr@tnsp.org>
parents:
10
diff
changeset
|
22 { |
624
aad32d21091f
Some work on settings groups.
Matti Hamalainen <ccr@tnsp.org>
parents:
614
diff
changeset
|
23 $args = array(); |
627
18f52c7daf77
Make group-specific settings updates possible.
Matti Hamalainen <ccr@tnsp.org>
parents:
625
diff
changeset
|
24 if (($res = stExecSQL("SELECT * FROM settings WHERE vgroup=".$group["id"])) !== false) |
14
e36c4d2b09c4
Fix settings to work, clean up the code, etc.
Matti Hamalainen <ccr@tnsp.org>
parents:
10
diff
changeset
|
25 { |
624
aad32d21091f
Some work on settings groups.
Matti Hamalainen <ccr@tnsp.org>
parents:
614
diff
changeset
|
26 foreach ($res as $item) |
14
e36c4d2b09c4
Fix settings to work, clean up the code, etc.
Matti Hamalainen <ccr@tnsp.org>
parents:
10
diff
changeset
|
27 { |
624
aad32d21091f
Some work on settings groups.
Matti Hamalainen <ccr@tnsp.org>
parents:
614
diff
changeset
|
28 switch ($item["vtype"]) |
aad32d21091f
Some work on settings groups.
Matti Hamalainen <ccr@tnsp.org>
parents:
614
diff
changeset
|
29 { |
aad32d21091f
Some work on settings groups.
Matti Hamalainen <ccr@tnsp.org>
parents:
614
diff
changeset
|
30 case VT_STR: |
aad32d21091f
Some work on settings groups.
Matti Hamalainen <ccr@tnsp.org>
parents:
614
diff
changeset
|
31 case VT_TEXT: $type = 1; break; |
aad32d21091f
Some work on settings groups.
Matti Hamalainen <ccr@tnsp.org>
parents:
614
diff
changeset
|
32 case VT_INT: $type = 2; break; |
aad32d21091f
Some work on settings groups.
Matti Hamalainen <ccr@tnsp.org>
parents:
614
diff
changeset
|
33 case VT_BOOL: $type = 3; break; |
aad32d21091f
Some work on settings groups.
Matti Hamalainen <ccr@tnsp.org>
parents:
614
diff
changeset
|
34 } |
aad32d21091f
Some work on settings groups.
Matti Hamalainen <ccr@tnsp.org>
parents:
614
diff
changeset
|
35 $args[] = "\"".$item["key"]."\":".$type; |
14
e36c4d2b09c4
Fix settings to work, clean up the code, etc.
Matti Hamalainen <ccr@tnsp.org>
parents:
10
diff
changeset
|
36 } |
e36c4d2b09c4
Fix settings to work, clean up the code, etc.
Matti Hamalainen <ccr@tnsp.org>
parents:
10
diff
changeset
|
37 } |
624
aad32d21091f
Some work on settings groups.
Matti Hamalainen <ccr@tnsp.org>
parents:
614
diff
changeset
|
38 |
631
759323b00be3
Fix a silly bug in updating of site settings.
Matti Hamalainen <ccr@tnsp.org>
parents:
627
diff
changeset
|
39 echo "jsSettingsArgs[".$group["id"]."] = {".implode(",", $args)."};\n"; |
14
e36c4d2b09c4
Fix settings to work, clean up the code, etc.
Matti Hamalainen <ccr@tnsp.org>
parents:
10
diff
changeset
|
40 } |
e36c4d2b09c4
Fix settings to work, clean up the code, etc.
Matti Hamalainen <ccr@tnsp.org>
parents:
10
diff
changeset
|
41 |
e36c4d2b09c4
Fix settings to work, clean up the code, etc.
Matti Hamalainen <ccr@tnsp.org>
parents:
10
diff
changeset
|
42 echo |
e36c4d2b09c4
Fix settings to work, clean up the code, etc.
Matti Hamalainen <ccr@tnsp.org>
parents:
10
diff
changeset
|
43 "\n". |
624
aad32d21091f
Some work on settings groups.
Matti Hamalainen <ccr@tnsp.org>
parents:
614
diff
changeset
|
44 "function jsUpdateSettings(id)\n". |
14
e36c4d2b09c4
Fix settings to work, clean up the code, etc.
Matti Hamalainen <ccr@tnsp.org>
parents:
10
diff
changeset
|
45 "{\n". |
631
759323b00be3
Fix a silly bug in updating of site settings.
Matti Hamalainen <ccr@tnsp.org>
parents:
627
diff
changeset
|
46 " if (id in jsSettingsArgs)\n". |
759323b00be3
Fix a silly bug in updating of site settings.
Matti Hamalainen <ccr@tnsp.org>
parents:
627
diff
changeset
|
47 " jsSendPOSTRequest(\"action=update&type=settings&id=\"+id+\"&\"+jsMakePostArgs(jsSettingsArgs[id], \"st\", \"\"));\n". |
14
e36c4d2b09c4
Fix settings to work, clean up the code, etc.
Matti Hamalainen <ccr@tnsp.org>
parents:
10
diff
changeset
|
48 " return false;\n". |
625 | 49 "}\n". |
728
8b1abca34033
Move code around, for cleaner structure.
Matti Hamalainen <ccr@tnsp.org>
parents:
727
diff
changeset
|
50 "\n". |
8b1abca34033
Move code around, for cleaner structure.
Matti Hamalainen <ccr@tnsp.org>
parents:
727
diff
changeset
|
51 "</script>\n"; |
14
e36c4d2b09c4
Fix settings to work, clean up the code, etc.
Matti Hamalainen <ccr@tnsp.org>
parents:
10
diff
changeset
|
52 } |
e36c4d2b09c4
Fix settings to work, clean up the code, etc.
Matti Hamalainen <ccr@tnsp.org>
parents:
10
diff
changeset
|
53 |
614
7987aa59c2a0
Clean up admin login a bit, and add some DOM elements.
Matti Hamalainen <ccr@tnsp.org>
parents:
601
diff
changeset
|
54 |
7987aa59c2a0
Clean up admin login a bit, and add some DOM elements.
Matti Hamalainen <ccr@tnsp.org>
parents:
601
diff
changeset
|
55 function stLoginContent() |
347 | 56 { |
614
7987aa59c2a0
Clean up admin login a bit, and add some DOM elements.
Matti Hamalainen <ccr@tnsp.org>
parents:
601
diff
changeset
|
57 echo "<div id=\"adminContent\">\n<div id=\"adminLogin\">"; |
347 | 58 } |
59 | |
614
7987aa59c2a0
Clean up admin login a bit, and add some DOM elements.
Matti Hamalainen <ccr@tnsp.org>
parents:
601
diff
changeset
|
60 function stLoginFooter() |
7987aa59c2a0
Clean up admin login a bit, and add some DOM elements.
Matti Hamalainen <ccr@tnsp.org>
parents:
601
diff
changeset
|
61 { |
7987aa59c2a0
Clean up admin login a bit, and add some DOM elements.
Matti Hamalainen <ccr@tnsp.org>
parents:
601
diff
changeset
|
62 echo "</div>\n"; |
7987aa59c2a0
Clean up admin login a bit, and add some DOM elements.
Matti Hamalainen <ccr@tnsp.org>
parents:
601
diff
changeset
|
63 cmPrintPageFooter(); |
7987aa59c2a0
Clean up admin login a bit, and add some DOM elements.
Matti Hamalainen <ccr@tnsp.org>
parents:
601
diff
changeset
|
64 } |
7987aa59c2a0
Clean up admin login a bit, and add some DOM elements.
Matti Hamalainen <ccr@tnsp.org>
parents:
601
diff
changeset
|
65 |
7987aa59c2a0
Clean up admin login a bit, and add some DOM elements.
Matti Hamalainen <ccr@tnsp.org>
parents:
601
diff
changeset
|
66 |
347 | 67 // Switch to https first, if needed |
68 if (!stCheckHTTPS()) | |
69 { | |
70 header("Location: https://".$_SERVER["SERVER_NAME"].$_SERVER["REQUEST_URI"]); | |
71 exit; | |
72 } | |
73 | |
74 // Start output | |
591
f7078755dff5
Fix CSS paths for admin and print pages.
Matti Hamalainen <ccr@tnsp.org>
parents:
571
diff
changeset
|
75 $pageCSS = "css/admin.css"; |
347 | 76 cmPrintPageHeader("FAPWeb Administration", |
364 | 77 " <meta http-equiv=\"Pragma\" content=\"no-cache\" />\n", |
347 | 78 FALSE); |
79 | |
80 | |
81 // Initiate SQL database connection | |
82 if (!stConnectSQLDB()) | |
83 { | |
84 // Error occured, bail out early | |
85 cmPrintPageFooter(); | |
86 exit; | |
87 } | |
88 | |
89 // Fetch non-"hardcoded" settings from SQL database | |
90 stReloadSettings(); | |
91 | |
0 | 92 // Check if sessions are enabled |
5
76c3b89d7b11
Improve voting, clean up the code, etc.
Matti Hamalainen <ccr@tnsp.org>
parents:
0
diff
changeset
|
93 if (!stChkSetting("admPassword")) |
0 | 94 { |
614
7987aa59c2a0
Clean up admin login a bit, and add some DOM elements.
Matti Hamalainen <ccr@tnsp.org>
parents:
601
diff
changeset
|
95 stLoginContent(); |
171
705dabdc37d4
Move administration interface page to separate layout, to make things less cramped.
Matti Hamalainen <ccr@tnsp.org>
parents:
136
diff
changeset
|
96 echo |
705dabdc37d4
Move administration interface page to separate layout, to make things less cramped.
Matti Hamalainen <ccr@tnsp.org>
parents:
136
diff
changeset
|
97 "<h1>Oh noes, admin configuration not done!</h1>\n". |
705dabdc37d4
Move administration interface page to separate layout, to make things less cramped.
Matti Hamalainen <ccr@tnsp.org>
parents:
136
diff
changeset
|
98 "<p>Better go and prod that, so you get to use the fine admin interface.</p>\n"; |
614
7987aa59c2a0
Clean up admin login a bit, and add some DOM elements.
Matti Hamalainen <ccr@tnsp.org>
parents:
601
diff
changeset
|
99 stLoginFooter(); |
347 | 100 exit; |
0 | 101 } |
102 else | |
107 | 103 if (!stAdmSessionAuth(FALSE)) |
0 | 104 { |
105 // Perform authentication if we are not in session already | |
614
7987aa59c2a0
Clean up admin login a bit, and add some DOM elements.
Matti Hamalainen <ccr@tnsp.org>
parents:
601
diff
changeset
|
106 stLoginContent(); |
5
76c3b89d7b11
Improve voting, clean up the code, etc.
Matti Hamalainen <ccr@tnsp.org>
parents:
0
diff
changeset
|
107 echo |
76c3b89d7b11
Improve voting, clean up the code, etc.
Matti Hamalainen <ccr@tnsp.org>
parents:
0
diff
changeset
|
108 "<h1>Party admin login</h1>\n". |
596
b09fdf99b54b
Add return to main pages link to admin login.
Matti Hamalainen <ccr@tnsp.org>
parents:
591
diff
changeset
|
109 "<p>Please use illegal telepathy over HTTP to provide a ". |
b09fdf99b54b
Add return to main pages link to admin login.
Matti Hamalainen <ccr@tnsp.org>
parents:
591
diff
changeset
|
110 "password to enter the party administration systembolaget.</p>\n". |
b09fdf99b54b
Add return to main pages link to admin login.
Matti Hamalainen <ccr@tnsp.org>
parents:
591
diff
changeset
|
111 "\n". |
347 | 112 " ".stGetFormStart("admlogin", "admlogin.php"). |
113 " ".stGetFormHiddenInput("mode", "check")."\n". | |
114 " ".stGetFormPasswordInput("admpass", "", "", "autofocus=\"autofocus\"")."\n". | |
115 " ".stGetFormSubmitInput("submit", "Login")."\n". | |
596
b09fdf99b54b
Add return to main pages link to admin login.
Matti Hamalainen <ccr@tnsp.org>
parents:
591
diff
changeset
|
116 " </form>\n". |
b09fdf99b54b
Add return to main pages link to admin login.
Matti Hamalainen <ccr@tnsp.org>
parents:
591
diff
changeset
|
117 "\n". |
b09fdf99b54b
Add return to main pages link to admin login.
Matti Hamalainen <ccr@tnsp.org>
parents:
591
diff
changeset
|
118 "<p>[<a href=\"".stGetSetting("defaultPage")."\">Return to the main page</a>].</p>\n"; |
614
7987aa59c2a0
Clean up admin login a bit, and add some DOM elements.
Matti Hamalainen <ccr@tnsp.org>
parents:
601
diff
changeset
|
119 stLoginFooter(); |
347 | 120 exit; |
0 | 121 } |
107 | 122 else |
0 | 123 { |
728
8b1abca34033
Move code around, for cleaner structure.
Matti Hamalainen <ccr@tnsp.org>
parents:
727
diff
changeset
|
124 stCreateSettingsData(); |
8b1abca34033
Move code around, for cleaner structure.
Matti Hamalainen <ccr@tnsp.org>
parents:
727
diff
changeset
|
125 stCommonAJAX("admajax.php", "admlogout.php"); |
0 | 126 ?> |
599
eebbc96d7fe5
Move javascript code from admin.php to a separate file.
Matti Hamalainen <ccr@tnsp.org>
parents:
596
diff
changeset
|
127 <script type="text/javascript" src="admin.js"></script> |
0 | 128 |
5
76c3b89d7b11
Improve voting, clean up the code, etc.
Matti Hamalainen <ccr@tnsp.org>
parents:
0
diff
changeset
|
129 <!-- ========================== --> |
0 | 130 |
427 | 131 <div id="adminPopup"></div> |
345 | 132 <div id="adminContent"> |
133 | |
5
76c3b89d7b11
Improve voting, clean up the code, etc.
Matti Hamalainen <ccr@tnsp.org>
parents:
0
diff
changeset
|
134 <div id="nstatus">-</div> |
201
a4be19c4d99d
Modularize admin pages tab system.
Matti Hamalainen <ccr@tnsp.org>
parents:
189
diff
changeset
|
135 <div id="tabHeadersCC" class="tabHeaders"></div> |
843
ab2697983ab0
Add a nice informative message for cases where JavaScript is disabled.
Matti Hamalainen <ccr@tnsp.org>
parents:
728
diff
changeset
|
136 <div id="tabContentsCC" class="tabContents"> |
ab2697983ab0
Add a nice informative message for cases where JavaScript is disabled.
Matti Hamalainen <ccr@tnsp.org>
parents:
728
diff
changeset
|
137 <noscript> |
ab2697983ab0
Add a nice informative message for cases where JavaScript is disabled.
Matti Hamalainen <ccr@tnsp.org>
parents:
728
diff
changeset
|
138 <h1>Ehm, you need to enable JavaScript to use the admin interface.</h1> |
ab2697983ab0
Add a nice informative message for cases where JavaScript is disabled.
Matti Hamalainen <ccr@tnsp.org>
parents:
728
diff
changeset
|
139 </noscript> |
ab2697983ab0
Add a nice informative message for cases where JavaScript is disabled.
Matti Hamalainen <ccr@tnsp.org>
parents:
728
diff
changeset
|
140 </div> |
ab2697983ab0
Add a nice informative message for cases where JavaScript is disabled.
Matti Hamalainen <ccr@tnsp.org>
parents:
728
diff
changeset
|
141 |
171
705dabdc37d4
Move administration interface page to separate layout, to make things less cramped.
Matti Hamalainen <ccr@tnsp.org>
parents:
136
diff
changeset
|
142 |
0 | 143 <script type="text/javascript"> |
445
cf7053f04e88
Move tab handling code to majax module.
Matti Hamalainen <ccr@tnsp.org>
parents:
438
diff
changeset
|
144 jsRegisterTab("CC", "Settings", "Settings"); |
cf7053f04e88
Move tab handling code to majax module.
Matti Hamalainen <ccr@tnsp.org>
parents:
438
diff
changeset
|
145 jsRegisterTab("CC", "News", "News"); |
cf7053f04e88
Move tab handling code to majax module.
Matti Hamalainen <ccr@tnsp.org>
parents:
438
diff
changeset
|
146 jsRegisterTab("CC", "Attendees", "Attendees"); |
cf7053f04e88
Move tab handling code to majax module.
Matti Hamalainen <ccr@tnsp.org>
parents:
438
diff
changeset
|
147 jsRegisterTab("CC", "Voting", "Voting"); |
cf7053f04e88
Move tab handling code to majax module.
Matti Hamalainen <ccr@tnsp.org>
parents:
438
diff
changeset
|
148 jsRegisterTab("CC", "Compos", "Compos"); |
cf7053f04e88
Move tab handling code to majax module.
Matti Hamalainen <ccr@tnsp.org>
parents:
438
diff
changeset
|
149 jsRegisterTab("CC", "Entries", "Entries"); |
cf7053f04e88
Move tab handling code to majax module.
Matti Hamalainen <ccr@tnsp.org>
parents:
438
diff
changeset
|
150 jsRegisterTab("CC", "InfoSys", "Infosystem"); |
cf7053f04e88
Move tab handling code to majax module.
Matti Hamalainen <ccr@tnsp.org>
parents:
438
diff
changeset
|
151 jsUpdateTabList("CC", |
263 | 152 "<a class=\"admin\" href=\"admlogout.php\">Logout</a> " + |
201
a4be19c4d99d
Modularize admin pages tab system.
Matti Hamalainen <ccr@tnsp.org>
parents:
189
diff
changeset
|
153 "<a class=\"admin\" href=\"about\">Mainpage</a>"); |
445
cf7053f04e88
Move tab handling code to majax module.
Matti Hamalainen <ccr@tnsp.org>
parents:
438
diff
changeset
|
154 jsSwitchActiveTab("CC", "Settings"); |
0 | 155 </script> |
171
705dabdc37d4
Move administration interface page to separate layout, to make things less cramped.
Matti Hamalainen <ccr@tnsp.org>
parents:
136
diff
changeset
|
156 <? |
705dabdc37d4
Move administration interface page to separate layout, to make things less cramped.
Matti Hamalainen <ccr@tnsp.org>
parents:
136
diff
changeset
|
157 } |
705dabdc37d4
Move administration interface page to separate layout, to make things less cramped.
Matti Hamalainen <ccr@tnsp.org>
parents:
136
diff
changeset
|
158 |
705dabdc37d4
Move administration interface page to separate layout, to make things less cramped.
Matti Hamalainen <ccr@tnsp.org>
parents:
136
diff
changeset
|
159 cmPrintPageFooter(); |
705dabdc37d4
Move administration interface page to separate layout, to make things less cramped.
Matti Hamalainen <ccr@tnsp.org>
parents:
136
diff
changeset
|
160 ?> |