annotate usrajax.php @ 1096:bbc0a3d0b51e

Major renaming / refactor of site messages. Some that were previously modifiable from admin interface are now "hardcoded" in the configuration file. Having these settings made modifiable from there made no sense and just took space in the UI.
author Matti Hamalainen <ccr@tnsp.org>
date Fri, 27 Jan 2017 22:15:06 +0200
parents 95b74632cfe2
children 0a2117349f46
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
1069
5f92fa5e683a Refactor how the "AJAX" stuff works.
Matti Hamalainen <ccr@tnsp.org>
parents: 1001
diff changeset
1 <?php
93
f36ebd03afd6 User AJAX.
Matti Hamalainen <ccr@tnsp.org>
parents:
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
155
5b92f130ba87 Add copyright header blurbs.
Matti Hamalainen <ccr@tnsp.org>
parents: 153
diff changeset
4 // User actions page AJAX backend module
1072
7da8bde9b7be Bump copyrights.
Matti Hamalainen <ccr@tnsp.org>
parents: 1069
diff changeset
5 // (C) Copyright 2012-2017 Tecnic Software productions (TNSP)
93
f36ebd03afd6 User AJAX.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
6 //
f36ebd03afd6 User AJAX.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
7 $sessionType = "user";
175
8df523e6326a User require_once instead of require.
Matti Hamalainen <ccr@tnsp.org>
parents: 165
diff changeset
8 require_once "mconfig.inc.php";
8df523e6326a User require_once instead of require.
Matti Hamalainen <ccr@tnsp.org>
parents: 165
diff changeset
9 require_once "msite.inc.php";
8df523e6326a User require_once instead of require.
Matti Hamalainen <ccr@tnsp.org>
parents: 165
diff changeset
10 require_once "msession.inc.php";
93
f36ebd03afd6 User AJAX.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
11
161
50032763bc79 Clean up the code a bit.
Matti Hamalainen <ccr@tnsp.org>
parents: 155
diff changeset
12 //
316
54dfab6ba12c Work on voting.
Matti Hamalainen <ccr@tnsp.org>
parents: 310
diff changeset
13 // Update one vote (prevalidated)
161
50032763bc79 Clean up the code a bit.
Matti Hamalainen <ccr@tnsp.org>
parents: 155
diff changeset
14 //
316
54dfab6ba12c Work on voting.
Matti Hamalainen <ccr@tnsp.org>
parents: 310
diff changeset
15 function stUpdateVote($key_id, $entry_id, $vote)
93
f36ebd03afd6 User AJAX.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
16 {
161
50032763bc79 Clean up the code a bit.
Matti Hamalainen <ccr@tnsp.org>
parents: 155
diff changeset
17 // Check if the vote already exists
316
54dfab6ba12c Work on voting.
Matti Hamalainen <ccr@tnsp.org>
parents: 310
diff changeset
18 $sql = stPrepareSQL("SELECT id FROM votes WHERE key_id=%d AND entry_id=%d",
54dfab6ba12c Work on voting.
Matti Hamalainen <ccr@tnsp.org>
parents: 310
diff changeset
19 $key_id, $entry_id);
93
f36ebd03afd6 User AJAX.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
20
f36ebd03afd6 User AJAX.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
21 if (($res = stFetchSQLColumn($sql)) === false)
f36ebd03afd6 User AJAX.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
22 {
161
50032763bc79 Clean up the code a bit.
Matti Hamalainen <ccr@tnsp.org>
parents: 155
diff changeset
23 // Didn't exist, insert it
93
f36ebd03afd6 User AJAX.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
24 $sql = stPrepareSQL(
762
539bfbdd43ec Add timestamps to votes, bump database version.
Matti Hamalainen <ccr@tnsp.org>
parents: 739
diff changeset
25 "INSERT INTO votes (key_id,entry_id,value,utime) VALUES (%d,%d,%d,%d)",
539bfbdd43ec Add timestamps to votes, bump database version.
Matti Hamalainen <ccr@tnsp.org>
parents: 739
diff changeset
26 $key_id, $entry_id, $vote, time());
93
f36ebd03afd6 User AJAX.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
27 }
f36ebd03afd6 User AJAX.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
28 else
f36ebd03afd6 User AJAX.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
29 {
161
50032763bc79 Clean up the code a bit.
Matti Hamalainen <ccr@tnsp.org>
parents: 155
diff changeset
30 // Existed, thusly update
775
62a98cb255f7 Oops, 100L .. a remnant of SQL code change experiment. Fixed.
Matti Hamalainen <ccr@tnsp.org>
parents: 762
diff changeset
31 $sql = stPrepareSQL(
762
539bfbdd43ec Add timestamps to votes, bump database version.
Matti Hamalainen <ccr@tnsp.org>
parents: 739
diff changeset
32 "UPDATE votes SET value=%d,utime=%d WHERE key_id=%d AND entry_id=%d",
539bfbdd43ec Add timestamps to votes, bump database version.
Matti Hamalainen <ccr@tnsp.org>
parents: 739
diff changeset
33 $vote, time(), $key_id, $entry_id);
93
f36ebd03afd6 User AJAX.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
34 }
f36ebd03afd6 User AJAX.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
35
225
1bb4f4bcb027 Cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents: 216
diff changeset
36 return stExecSQL($sql);
93
f36ebd03afd6 User AJAX.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
37 }
f36ebd03afd6 User AJAX.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
38
f36ebd03afd6 User AJAX.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
39
739
17820305bc77 Clean up vote handling.
Matti Hamalainen <ccr@tnsp.org>
parents: 722
diff changeset
40 function stCheckVoteValue($id, &$value)
17820305bc77 Clean up vote handling.
Matti Hamalainen <ccr@tnsp.org>
parents: 722
diff changeset
41 {
17820305bc77 Clean up vote handling.
Matti Hamalainen <ccr@tnsp.org>
parents: 722
diff changeset
42 return
17820305bc77 Clean up vote handling.
Matti Hamalainen <ccr@tnsp.org>
parents: 722
diff changeset
43 stChkRequestItem($id, $value,
17820305bc77 Clean up vote handling.
Matti Hamalainen <ccr@tnsp.org>
parents: 722
diff changeset
44 array(CHK_TYPE, VT_INT, "Invalid entry vote value data."),
17820305bc77 Clean up vote handling.
Matti Hamalainen <ccr@tnsp.org>
parents: 722
diff changeset
45 array(CHK_RANGE, VT_INT, array(stGetSetting("voteMin"), stGetSetting("voteMax")), "Invalid vote value, not in range."));
17820305bc77 Clean up vote handling.
Matti Hamalainen <ccr@tnsp.org>
parents: 722
diff changeset
46 }
17820305bc77 Clean up vote handling.
Matti Hamalainen <ccr@tnsp.org>
parents: 722
diff changeset
47
17820305bc77 Clean up vote handling.
Matti Hamalainen <ccr@tnsp.org>
parents: 722
diff changeset
48
165
15182643d672 Cosmetics.
Matti Hamalainen <ccr@tnsp.org>
parents: 162
diff changeset
49 //
15182643d672 Cosmetics.
Matti Hamalainen <ccr@tnsp.org>
parents: 162
diff changeset
50 // Initialize
15182643d672 Cosmetics.
Matti Hamalainen <ccr@tnsp.org>
parents: 162
diff changeset
51 //
360
2af8458058ab Implement CSRF token checks.
Matti Hamalainen <ccr@tnsp.org>
parents: 332
diff changeset
52 if (!stUserSessionAuth() || !stCSRFCheck())
93
f36ebd03afd6 User AJAX.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
53 {
f36ebd03afd6 User AJAX.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
54 stSetupCacheControl();
f36ebd03afd6 User AJAX.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
55
f36ebd03afd6 User AJAX.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
56 stSessionEnd(SESS_USER);
f36ebd03afd6 User AJAX.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
57
789
24bbd1f89794 Add few new settings, bump database version.
Matti Hamalainen <ccr@tnsp.org>
parents: 787
diff changeset
58 switch (stGetRequestItem("action"))
24bbd1f89794 Add few new settings, bump database version.
Matti Hamalainen <ccr@tnsp.org>
parents: 787
diff changeset
59 {
24bbd1f89794 Add few new settings, bump database version.
Matti Hamalainen <ccr@tnsp.org>
parents: 787
diff changeset
60 case "submit":
24bbd1f89794 Add few new settings, bump database version.
Matti Hamalainen <ccr@tnsp.org>
parents: 787
diff changeset
61 header("Location: ".stGetRequestItem("onerror", stGetSetting("defaultPage")));
24bbd1f89794 Add few new settings, bump database version.
Matti Hamalainen <ccr@tnsp.org>
parents: 787
diff changeset
62 break;
24bbd1f89794 Add few new settings, bump database version.
Matti Hamalainen <ccr@tnsp.org>
parents: 787
diff changeset
63
24bbd1f89794 Add few new settings, bump database version.
Matti Hamalainen <ccr@tnsp.org>
parents: 787
diff changeset
64 default:
24bbd1f89794 Add few new settings, bump database version.
Matti Hamalainen <ccr@tnsp.org>
parents: 787
diff changeset
65 stError("You are not authenticated currently. Try to login again.");
24bbd1f89794 Add few new settings, bump database version.
Matti Hamalainen <ccr@tnsp.org>
parents: 787
diff changeset
66 stSetStatus(902, "Not authenticated.");
24bbd1f89794 Add few new settings, bump database version.
Matti Hamalainen <ccr@tnsp.org>
parents: 787
diff changeset
67 stDumpAJAXStatusErrors(FALSE);
24bbd1f89794 Add few new settings, bump database version.
Matti Hamalainen <ccr@tnsp.org>
parents: 787
diff changeset
68 break;
24bbd1f89794 Add few new settings, bump database version.
Matti Hamalainen <ccr@tnsp.org>
parents: 787
diff changeset
69 }
93
f36ebd03afd6 User AJAX.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
70 exit;
f36ebd03afd6 User AJAX.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
71 }
f36ebd03afd6 User AJAX.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
72
544
b4581dc165dc Add output buffering.
Matti Hamalainen <ccr@tnsp.org>
parents: 520
diff changeset
73 ob_start();
b4581dc165dc Add output buffering.
Matti Hamalainen <ccr@tnsp.org>
parents: 520
diff changeset
74
93
f36ebd03afd6 User AJAX.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
75 stSetupCacheControl();
f36ebd03afd6 User AJAX.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
76
f36ebd03afd6 User AJAX.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
77 if (!stConnectSQLDB())
f36ebd03afd6 User AJAX.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
78 die("Could not connect to SQL database.");
f36ebd03afd6 User AJAX.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
79
f36ebd03afd6 User AJAX.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
80 stReloadSettings();
f36ebd03afd6 User AJAX.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
81
1092
95b74632cfe2 Rename votekeys table to userkeys, and all related variables and settings.
Matti Hamalainen <ccr@tnsp.org>
parents: 1087
diff changeset
82 $userKeyId = stGetSessionItem("key_id");
93
f36ebd03afd6 User AJAX.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
83
1087
4c76b4994414 Somewhat refactor usrajax and voting.
Matti Hamalainen <ccr@tnsp.org>
parents: 1072
diff changeset
84 //
4c76b4994414 Somewhat refactor usrajax and voting.
Matti Hamalainen <ccr@tnsp.org>
parents: 1072
diff changeset
85 // Check vote key validity
4c76b4994414 Somewhat refactor usrajax and voting.
Matti Hamalainen <ccr@tnsp.org>
parents: 1072
diff changeset
86 //
1092
95b74632cfe2 Rename votekeys table to userkeys, and all related variables and settings.
Matti Hamalainen <ccr@tnsp.org>
parents: 1087
diff changeset
87 $sql = stPrepareSQL("SELECT * FROM userkeys WHERE id=%d", $userKeyId);
1087
4c76b4994414 Somewhat refactor usrajax and voting.
Matti Hamalainen <ccr@tnsp.org>
parents: 1072
diff changeset
88 if (($key = stFetchSQL($sql)) === false)
4c76b4994414 Somewhat refactor usrajax and voting.
Matti Hamalainen <ccr@tnsp.org>
parents: 1072
diff changeset
89 {
1092
95b74632cfe2 Rename votekeys table to userkeys, and all related variables and settings.
Matti Hamalainen <ccr@tnsp.org>
parents: 1087
diff changeset
90 stError("Userkey does not exist.");
1087
4c76b4994414 Somewhat refactor usrajax and voting.
Matti Hamalainen <ccr@tnsp.org>
parents: 1072
diff changeset
91 }
4c76b4994414 Somewhat refactor usrajax and voting.
Matti Hamalainen <ccr@tnsp.org>
parents: 1072
diff changeset
92 else
4c76b4994414 Somewhat refactor usrajax and voting.
Matti Hamalainen <ccr@tnsp.org>
parents: 1072
diff changeset
93 {
4c76b4994414 Somewhat refactor usrajax and voting.
Matti Hamalainen <ccr@tnsp.org>
parents: 1072
diff changeset
94 // Validate login based on current vote key mode
1092
95b74632cfe2 Rename votekeys table to userkeys, and all related variables and settings.
Matti Hamalainen <ccr@tnsp.org>
parents: 1087
diff changeset
95 switch (stGetSetting("userKeyMode"))
1087
4c76b4994414 Somewhat refactor usrajax and voting.
Matti Hamalainen <ccr@tnsp.org>
parents: 1072
diff changeset
96 {
4c76b4994414 Somewhat refactor usrajax and voting.
Matti Hamalainen <ccr@tnsp.org>
parents: 1072
diff changeset
97 case VOTE_ACTIVATE:
4c76b4994414 Somewhat refactor usrajax and voting.
Matti Hamalainen <ccr@tnsp.org>
parents: 1072
diff changeset
98 if ($key["active"] == 0)
1092
95b74632cfe2 Rename votekeys table to userkeys, and all related variables and settings.
Matti Hamalainen <ccr@tnsp.org>
parents: 1087
diff changeset
99 stError("Userkey is not active.");
1087
4c76b4994414 Somewhat refactor usrajax and voting.
Matti Hamalainen <ccr@tnsp.org>
parents: 1072
diff changeset
100 break;
4c76b4994414 Somewhat refactor usrajax and voting.
Matti Hamalainen <ccr@tnsp.org>
parents: 1072
diff changeset
101
4c76b4994414 Somewhat refactor usrajax and voting.
Matti Hamalainen <ccr@tnsp.org>
parents: 1072
diff changeset
102 case VOTE_ASSIGN:
4c76b4994414 Somewhat refactor usrajax and voting.
Matti Hamalainen <ccr@tnsp.org>
parents: 1072
diff changeset
103 $sql = stPrepareSQL("SELECT id FROM attendees WHERE key_id=%d", $key["id"]);
4c76b4994414 Somewhat refactor usrajax and voting.
Matti Hamalainen <ccr@tnsp.org>
parents: 1072
diff changeset
104 if (stFetchSQL($sql) === false)
1092
95b74632cfe2 Rename votekeys table to userkeys, and all related variables and settings.
Matti Hamalainen <ccr@tnsp.org>
parents: 1087
diff changeset
105 stError("Userkey is not assigned to any user.");
1087
4c76b4994414 Somewhat refactor usrajax and voting.
Matti Hamalainen <ccr@tnsp.org>
parents: 1072
diff changeset
106 break;
4c76b4994414 Somewhat refactor usrajax and voting.
Matti Hamalainen <ccr@tnsp.org>
parents: 1072
diff changeset
107 }
4c76b4994414 Somewhat refactor usrajax and voting.
Matti Hamalainen <ccr@tnsp.org>
parents: 1072
diff changeset
108 }
310
8098b5b80f8c We won't be checking key validity while session is in progress, thus get rid
Matti Hamalainen <ccr@tnsp.org>
parents: 294
diff changeset
109
161
50032763bc79 Clean up the code a bit.
Matti Hamalainen <ccr@tnsp.org>
parents: 155
diff changeset
110 //
50032763bc79 Clean up the code a bit.
Matti Hamalainen <ccr@tnsp.org>
parents: 155
diff changeset
111 // Handle the request
50032763bc79 Clean up the code a bit.
Matti Hamalainen <ccr@tnsp.org>
parents: 155
diff changeset
112 //
216
bcc3c4696b3e Some more work.
Matti Hamalainen <ccr@tnsp.org>
parents: 211
diff changeset
113 switch (stGetRequestItem("action"))
93
f36ebd03afd6 User AJAX.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
114 {
f36ebd03afd6 User AJAX.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
115 case "set":
f36ebd03afd6 User AJAX.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
116 //
153
aecf145e7c70 Some work on the voting backend.
Matti Hamalainen <ccr@tnsp.org>
parents: 123
diff changeset
117 // Set vote, if voting is enabled
93
f36ebd03afd6 User AJAX.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
118 //
1087
4c76b4994414 Somewhat refactor usrajax and voting.
Matti Hamalainen <ccr@tnsp.org>
parents: 1072
diff changeset
119 $ajax = TRUE;
245
bb96aef874a9 Work on the voting backend code.
Matti Hamalainen <ccr@tnsp.org>
parents: 225
diff changeset
120 if (!stChkSetting("allowVoting"))
294
efba5a51f8fa Fix some 10L's ... durr.
Matti Hamalainen <ccr@tnsp.org>
parents: 245
diff changeset
121 stError("Voting is not enabled.");
245
bb96aef874a9 Work on the voting backend code.
Matti Hamalainen <ccr@tnsp.org>
parents: 225
diff changeset
122 else
bb96aef874a9 Work on the voting backend code.
Matti Hamalainen <ccr@tnsp.org>
parents: 225
diff changeset
123 if (stChkRequestItem("entry_id", $entry_id,
bb96aef874a9 Work on the voting backend code.
Matti Hamalainen <ccr@tnsp.org>
parents: 225
diff changeset
124 array(CHK_TYPE, VT_INT, "Invalid data.")) &&
739
17820305bc77 Clean up vote handling.
Matti Hamalainen <ccr@tnsp.org>
parents: 722
diff changeset
125 stCheckVoteValue("vote", $vote))
93
f36ebd03afd6 User AJAX.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
126 {
316
54dfab6ba12c Work on voting.
Matti Hamalainen <ccr@tnsp.org>
parents: 310
diff changeset
127 // Check if the entry_id is actually valid
580
3929a5a87815 Use the new transaction functions here as well.
Matti Hamalainen <ccr@tnsp.org>
parents: 571
diff changeset
128 stDBBeginTransaction();
316
54dfab6ba12c Work on voting.
Matti Hamalainen <ccr@tnsp.org>
parents: 310
diff changeset
129 $sql = stPrepareSQL("SELECT * FROM entries WHERE id=%d", $entry_id);
54dfab6ba12c Work on voting.
Matti Hamalainen <ccr@tnsp.org>
parents: 310
diff changeset
130 if (($entry = stFetchSQL($sql)) !== false)
54dfab6ba12c Work on voting.
Matti Hamalainen <ccr@tnsp.org>
parents: 310
diff changeset
131 {
54dfab6ba12c Work on voting.
Matti Hamalainen <ccr@tnsp.org>
parents: 310
diff changeset
132 // Check if the compo is valid for the entry
54dfab6ba12c Work on voting.
Matti Hamalainen <ccr@tnsp.org>
parents: 310
diff changeset
133 $sql = stPrepareSQL("SELECT * FROM compos WHERE id=%d", $entry["compo_id"]);
54dfab6ba12c Work on voting.
Matti Hamalainen <ccr@tnsp.org>
parents: 310
diff changeset
134 if (($compo = stFetchSQL($sql)) !== false && $compo["voting"] != 0)
1092
95b74632cfe2 Rename votekeys table to userkeys, and all related variables and settings.
Matti Hamalainen <ccr@tnsp.org>
parents: 1087
diff changeset
135 stUpdateVote($userKeyId, $entry_id, $vote);
316
54dfab6ba12c Work on voting.
Matti Hamalainen <ccr@tnsp.org>
parents: 310
diff changeset
136 }
580
3929a5a87815 Use the new transaction functions here as well.
Matti Hamalainen <ccr@tnsp.org>
parents: 571
diff changeset
137 stDBCommitTransaction();
93
f36ebd03afd6 User AJAX.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
138 }
245
bb96aef874a9 Work on the voting backend code.
Matti Hamalainen <ccr@tnsp.org>
parents: 225
diff changeset
139 break;
bb96aef874a9 Work on the voting backend code.
Matti Hamalainen <ccr@tnsp.org>
parents: 225
diff changeset
140
bb96aef874a9 Work on the voting backend code.
Matti Hamalainen <ccr@tnsp.org>
parents: 225
diff changeset
141 case "submit":
1087
4c76b4994414 Somewhat refactor usrajax and voting.
Matti Hamalainen <ccr@tnsp.org>
parents: 1072
diff changeset
142 //
4c76b4994414 Somewhat refactor usrajax and voting.
Matti Hamalainen <ccr@tnsp.org>
parents: 1072
diff changeset
143 // Submit all votes, if voting is enabled
4c76b4994414 Somewhat refactor usrajax and voting.
Matti Hamalainen <ccr@tnsp.org>
parents: 1072
diff changeset
144 //
4c76b4994414 Somewhat refactor usrajax and voting.
Matti Hamalainen <ccr@tnsp.org>
parents: 1072
diff changeset
145 $ajax = FALSE;
245
bb96aef874a9 Work on the voting backend code.
Matti Hamalainen <ccr@tnsp.org>
parents: 225
diff changeset
146 if (!stChkSetting("allowVoting"))
294
efba5a51f8fa Fix some 10L's ... durr.
Matti Hamalainen <ccr@tnsp.org>
parents: 245
diff changeset
147 stError("Voting is not enabled.");
93
f36ebd03afd6 User AJAX.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
148 else
1087
4c76b4994414 Somewhat refactor usrajax and voting.
Matti Hamalainen <ccr@tnsp.org>
parents: 1072
diff changeset
149 foreach (stExecSQL("SELECT * FROM compos WHERE visible<>0 AND voting<>0") as $compo)
245
bb96aef874a9 Work on the voting backend code.
Matti Hamalainen <ccr@tnsp.org>
parents: 225
diff changeset
150 {
1087
4c76b4994414 Somewhat refactor usrajax and voting.
Matti Hamalainen <ccr@tnsp.org>
parents: 1072
diff changeset
151 stDBBeginTransaction();
4c76b4994414 Somewhat refactor usrajax and voting.
Matti Hamalainen <ccr@tnsp.org>
parents: 1072
diff changeset
152 foreach (stExecSQL("SELECT * FROM entries WHERE compo_id=".$compo["id"]) as $entry)
316
54dfab6ba12c Work on voting.
Matti Hamalainen <ccr@tnsp.org>
parents: 310
diff changeset
153 {
1087
4c76b4994414 Somewhat refactor usrajax and voting.
Matti Hamalainen <ccr@tnsp.org>
parents: 1072
diff changeset
154 if (stCheckVoteValue("ventry".$entry["id"], $value))
316
54dfab6ba12c Work on voting.
Matti Hamalainen <ccr@tnsp.org>
parents: 310
diff changeset
155 {
1092
95b74632cfe2 Rename votekeys table to userkeys, and all related variables and settings.
Matti Hamalainen <ccr@tnsp.org>
parents: 1087
diff changeset
156 if (!stUpdateVote($userKeyId, $entry["id"], $value))
1087
4c76b4994414 Somewhat refactor usrajax and voting.
Matti Hamalainen <ccr@tnsp.org>
parents: 1072
diff changeset
157 stError("Could not set vote for compo #".$compo["id"].", entry #".$entry["id"]);
316
54dfab6ba12c Work on voting.
Matti Hamalainen <ccr@tnsp.org>
parents: 310
diff changeset
158 }
54dfab6ba12c Work on voting.
Matti Hamalainen <ccr@tnsp.org>
parents: 310
diff changeset
159 }
1087
4c76b4994414 Somewhat refactor usrajax and voting.
Matti Hamalainen <ccr@tnsp.org>
parents: 1072
diff changeset
160 stDBCommitTransaction();
245
bb96aef874a9 Work on the voting backend code.
Matti Hamalainen <ccr@tnsp.org>
parents: 225
diff changeset
161 }
1087
4c76b4994414 Somewhat refactor usrajax and voting.
Matti Hamalainen <ccr@tnsp.org>
parents: 1072
diff changeset
162 stSetSessionItem("mode", "done");
93
f36ebd03afd6 User AJAX.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
163 break;
f36ebd03afd6 User AJAX.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
164
f36ebd03afd6 User AJAX.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
165 default:
787
8f570449f9e7 Improve error handling.
Matti Hamalainen <ccr@tnsp.org>
parents: 775
diff changeset
166 stSetStatus(902, "Operation not supported.");
93
f36ebd03afd6 User AJAX.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
167 break;
f36ebd03afd6 User AJAX.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
168 }
f36ebd03afd6 User AJAX.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
169
1087
4c76b4994414 Somewhat refactor usrajax and voting.
Matti Hamalainen <ccr@tnsp.org>
parents: 1072
diff changeset
170
544
b4581dc165dc Add output buffering.
Matti Hamalainen <ccr@tnsp.org>
parents: 520
diff changeset
171 if ($errorSet)
b4581dc165dc Add output buffering.
Matti Hamalainen <ccr@tnsp.org>
parents: 520
diff changeset
172 {
b4581dc165dc Add output buffering.
Matti Hamalainen <ccr@tnsp.org>
parents: 520
diff changeset
173 ob_clean();
1087
4c76b4994414 Somewhat refactor usrajax and voting.
Matti Hamalainen <ccr@tnsp.org>
parents: 1072
diff changeset
174 stSetSessionItem("mode", "error");
4c76b4994414 Somewhat refactor usrajax and voting.
Matti Hamalainen <ccr@tnsp.org>
parents: 1072
diff changeset
175 stSetSessionItem("error", $errorMsgs);
4c76b4994414 Somewhat refactor usrajax and voting.
Matti Hamalainen <ccr@tnsp.org>
parents: 1072
diff changeset
176 }
4c76b4994414 Somewhat refactor usrajax and voting.
Matti Hamalainen <ccr@tnsp.org>
parents: 1072
diff changeset
177
4c76b4994414 Somewhat refactor usrajax and voting.
Matti Hamalainen <ccr@tnsp.org>
parents: 1072
diff changeset
178 if ($ajax)
4c76b4994414 Somewhat refactor usrajax and voting.
Matti Hamalainen <ccr@tnsp.org>
parents: 1072
diff changeset
179 {
4c76b4994414 Somewhat refactor usrajax and voting.
Matti Hamalainen <ccr@tnsp.org>
parents: 1072
diff changeset
180 if ($errorSet)
4c76b4994414 Somewhat refactor usrajax and voting.
Matti Hamalainen <ccr@tnsp.org>
parents: 1072
diff changeset
181 stDumpAJAXStatusErrors();
4c76b4994414 Somewhat refactor usrajax and voting.
Matti Hamalainen <ccr@tnsp.org>
parents: 1072
diff changeset
182 }
4c76b4994414 Somewhat refactor usrajax and voting.
Matti Hamalainen <ccr@tnsp.org>
parents: 1072
diff changeset
183 else
4c76b4994414 Somewhat refactor usrajax and voting.
Matti Hamalainen <ccr@tnsp.org>
parents: 1072
diff changeset
184 {
4c76b4994414 Somewhat refactor usrajax and voting.
Matti Hamalainen <ccr@tnsp.org>
parents: 1072
diff changeset
185 header("Location: ".stGetRequestItem("goto", "vote"));
544
b4581dc165dc Add output buffering.
Matti Hamalainen <ccr@tnsp.org>
parents: 520
diff changeset
186 }
b4581dc165dc Add output buffering.
Matti Hamalainen <ccr@tnsp.org>
parents: 520
diff changeset
187
b4581dc165dc Add output buffering.
Matti Hamalainen <ccr@tnsp.org>
parents: 520
diff changeset
188 ob_end_flush();
93
f36ebd03afd6 User AJAX.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
189 ?>