annotate usrlogin.php @ 323:ab675dc128ac

Fix login code.
author Matti Hamalainen <ccr@tnsp.org>
date Wed, 27 Nov 2013 18:42:45 +0200
parents 100d9f7f9dde
children aac3bdd73ec1
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
110
ff511f5351df Work on voting.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
1 <?
155
5b92f130ba87 Add copyright header blurbs.
Matti Hamalainen <ccr@tnsp.org>
parents: 129
diff changeset
2 //
5b92f130ba87 Add copyright header blurbs.
Matti Hamalainen <ccr@tnsp.org>
parents: 129
diff changeset
3 // FAPWeb Simple Demoparty System
5b92f130ba87 Add copyright header blurbs.
Matti Hamalainen <ccr@tnsp.org>
parents: 129
diff changeset
4 // Administration interface session login handler
5b92f130ba87 Add copyright header blurbs.
Matti Hamalainen <ccr@tnsp.org>
parents: 129
diff changeset
5 // (C) Copyright 2012-2013 Tecnic Software productions (TNSP)
5b92f130ba87 Add copyright header blurbs.
Matti Hamalainen <ccr@tnsp.org>
parents: 129
diff changeset
6 //
110
ff511f5351df Work on voting.
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: 156
diff changeset
8 require_once "mconfig.inc.php";
8df523e6326a User require_once instead of require.
Matti Hamalainen <ccr@tnsp.org>
parents: 156
diff changeset
9 require_once "msite.inc.php";
8df523e6326a User require_once instead of require.
Matti Hamalainen <ccr@tnsp.org>
parents: 156
diff changeset
10 require_once "msession.inc.php";
110
ff511f5351df Work on voting.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
11
156
fa7f3defffd0 Comments.
Matti Hamalainen <ccr@tnsp.org>
parents: 155
diff changeset
12 //
fa7f3defffd0 Comments.
Matti Hamalainen <ccr@tnsp.org>
parents: 155
diff changeset
13 // Initialize
fa7f3defffd0 Comments.
Matti Hamalainen <ccr@tnsp.org>
parents: 155
diff changeset
14 //
110
ff511f5351df Work on voting.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
15 stSetupCacheControl();
ff511f5351df Work on voting.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
16
ff511f5351df Work on voting.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
17 if (!stConnectSQLDB())
ff511f5351df Work on voting.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
18 die("Could not connect to SQL database.");
ff511f5351df Work on voting.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
19
ff511f5351df Work on voting.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
20 stReloadSettings();
ff511f5351df Work on voting.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
21
ff511f5351df Work on voting.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
22
156
fa7f3defffd0 Comments.
Matti Hamalainen <ccr@tnsp.org>
parents: 155
diff changeset
23 //
fa7f3defffd0 Comments.
Matti Hamalainen <ccr@tnsp.org>
parents: 155
diff changeset
24 // Authenticate
fa7f3defffd0 Comments.
Matti Hamalainen <ccr@tnsp.org>
parents: 155
diff changeset
25 //
110
ff511f5351df Work on voting.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
26 $gotoPage = stGetRequestItem("goto", FALSE);
306
6610311ac48e Improve user login handling.
Matti Hamalainen <ccr@tnsp.org>
parents: 304
diff changeset
27 $errorPage = stGetRequestItem("error", FALSE);
110
ff511f5351df Work on voting.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
28 $password = stGetRequestItem("key", FALSE);
306
6610311ac48e Improve user login handling.
Matti Hamalainen <ccr@tnsp.org>
parents: 304
diff changeset
29 $error = 0;
110
ff511f5351df Work on voting.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
30
311
2f46b6254ff2 We'll be checking key validity in login phase, so start working on that.
Matti Hamalainen <ccr@tnsp.org>
parents: 306
diff changeset
31 $sql = stPrepareSQL("SELECT * FROM votekeys WHERE key=%s", $password);
2f46b6254ff2 We'll be checking key validity in login phase, so start working on that.
Matti Hamalainen <ccr@tnsp.org>
parents: 306
diff changeset
32 if (($key = stFetchSQL($sql)) !== false)
110
ff511f5351df Work on voting.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
33 {
311
2f46b6254ff2 We'll be checking key validity in login phase, so start working on that.
Matti Hamalainen <ccr@tnsp.org>
parents: 306
diff changeset
34 switch (stGetSetting("voteKeyMode"))
2f46b6254ff2 We'll be checking key validity in login phase, so start working on that.
Matti Hamalainen <ccr@tnsp.org>
parents: 306
diff changeset
35 {
2f46b6254ff2 We'll be checking key validity in login phase, so start working on that.
Matti Hamalainen <ccr@tnsp.org>
parents: 306
diff changeset
36 case VOTE_ACTIVATE:
315
100d9f7f9dde Implement bits of user login checking.
Matti Hamalainen <ccr@tnsp.org>
parents: 311
diff changeset
37 if ($key["active"] == 0)
100d9f7f9dde Implement bits of user login checking.
Matti Hamalainen <ccr@tnsp.org>
parents: 311
diff changeset
38 $error = 3;
311
2f46b6254ff2 We'll be checking key validity in login phase, so start working on that.
Matti Hamalainen <ccr@tnsp.org>
parents: 306
diff changeset
39 break;
2f46b6254ff2 We'll be checking key validity in login phase, so start working on that.
Matti Hamalainen <ccr@tnsp.org>
parents: 306
diff changeset
40
2f46b6254ff2 We'll be checking key validity in login phase, so start working on that.
Matti Hamalainen <ccr@tnsp.org>
parents: 306
diff changeset
41 case VOTE_ASSIGN:
315
100d9f7f9dde Implement bits of user login checking.
Matti Hamalainen <ccr@tnsp.org>
parents: 311
diff changeset
42 $sql = stPrepareSQL("SELECT id FROM attendees WHERE key_id=%d", $key["id"]);
100d9f7f9dde Implement bits of user login checking.
Matti Hamalainen <ccr@tnsp.org>
parents: 311
diff changeset
43 if (stFetchSQL($sql) === false)
100d9f7f9dde Implement bits of user login checking.
Matti Hamalainen <ccr@tnsp.org>
parents: 311
diff changeset
44 $error = 3;
311
2f46b6254ff2 We'll be checking key validity in login phase, so start working on that.
Matti Hamalainen <ccr@tnsp.org>
parents: 306
diff changeset
45 break;
2f46b6254ff2 We'll be checking key validity in login phase, so start working on that.
Matti Hamalainen <ccr@tnsp.org>
parents: 306
diff changeset
46 }
2f46b6254ff2 We'll be checking key validity in login phase, so start working on that.
Matti Hamalainen <ccr@tnsp.org>
parents: 306
diff changeset
47
315
100d9f7f9dde Implement bits of user login checking.
Matti Hamalainen <ccr@tnsp.org>
parents: 311
diff changeset
48 if ($error == 0)
110
ff511f5351df Work on voting.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
49 {
315
100d9f7f9dde Implement bits of user login checking.
Matti Hamalainen <ccr@tnsp.org>
parents: 311
diff changeset
50 if (!stSessionStart(SESS_USER, $password, "userTimeout"))
100d9f7f9dde Implement bits of user login checking.
Matti Hamalainen <ccr@tnsp.org>
parents: 311
diff changeset
51 {
100d9f7f9dde Implement bits of user login checking.
Matti Hamalainen <ccr@tnsp.org>
parents: 311
diff changeset
52 error_log("User session AUTH LOGIN failed (session setup)");
100d9f7f9dde Implement bits of user login checking.
Matti Hamalainen <ccr@tnsp.org>
parents: 311
diff changeset
53 $error = 2;
100d9f7f9dde Implement bits of user login checking.
Matti Hamalainen <ccr@tnsp.org>
parents: 311
diff changeset
54 }
100d9f7f9dde Implement bits of user login checking.
Matti Hamalainen <ccr@tnsp.org>
parents: 311
diff changeset
55 else
100d9f7f9dde Implement bits of user login checking.
Matti Hamalainen <ccr@tnsp.org>
parents: 311
diff changeset
56 {
100d9f7f9dde Implement bits of user login checking.
Matti Hamalainen <ccr@tnsp.org>
parents: 311
diff changeset
57 stSetSessionItem("key_id", $key["id"]);
100d9f7f9dde Implement bits of user login checking.
Matti Hamalainen <ccr@tnsp.org>
parents: 311
diff changeset
58 stSetSessionItem("mode", stGetRequestItem("mode", "error"));
100d9f7f9dde Implement bits of user login checking.
Matti Hamalainen <ccr@tnsp.org>
parents: 311
diff changeset
59 }
311
2f46b6254ff2 We'll be checking key validity in login phase, so start working on that.
Matti Hamalainen <ccr@tnsp.org>
parents: 306
diff changeset
60 }
110
ff511f5351df Work on voting.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
61 }
ff511f5351df Work on voting.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
62 else
ff511f5351df Work on voting.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
63 {
ff511f5351df Work on voting.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
64 error_log("User session AUTH LOGIN failed (password)");
306
6610311ac48e Improve user login handling.
Matti Hamalainen <ccr@tnsp.org>
parents: 304
diff changeset
65 $error = 1;
110
ff511f5351df Work on voting.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
66 }
ff511f5351df Work on voting.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
67
306
6610311ac48e Improve user login handling.
Matti Hamalainen <ccr@tnsp.org>
parents: 304
diff changeset
68 $nextPage = ($error != 0) ? $errorPage : $gotoPage;
6610311ac48e Improve user login handling.
Matti Hamalainen <ccr@tnsp.org>
parents: 304
diff changeset
69
311
2f46b6254ff2 We'll be checking key validity in login phase, so start working on that.
Matti Hamalainen <ccr@tnsp.org>
parents: 306
diff changeset
70 header("Location: ".
2f46b6254ff2 We'll be checking key validity in login phase, so start working on that.
Matti Hamalainen <ccr@tnsp.org>
parents: 306
diff changeset
71 ($nextPage !== FALSE ? $nextPage : stGetSetting("defaultPage")).
323
ab675dc128ac Fix login code.
Matti Hamalainen <ccr@tnsp.org>
parents: 315
diff changeset
72 ($error ? "?error=".$error : ""));
315
100d9f7f9dde Implement bits of user login checking.
Matti Hamalainen <ccr@tnsp.org>
parents: 311
diff changeset
73
110
ff511f5351df Work on voting.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
74 ?>