Mercurial > hg > fapweb
view usrlogin.php @ 777:9fa68b35b90a
Only COMPO_NORMAL compo type sets new compo_id. Handle cases that do not.
author | Matti Hamalainen <ccr@tnsp.org> |
---|---|
date | Thu, 20 Nov 2014 15:45:19 +0200 |
parents | ce11ea112a65 |
children | 62b3a69e9030 |
line wrap: on
line source
<? // // FAPWeb - Simple Web-based Demoparty Management System // Administration interface session login handler // (C) Copyright 2012-2014 Tecnic Software productions (TNSP) // $sessionType = "user"; require_once "mconfig.inc.php"; require_once "msite.inc.php"; require_once "msession.inc.php"; // // Initialize // stSetupCacheControl(); if (!stConnectSQLDB()) die("Could not connect to SQL database."); stReloadSettings(); // // Authenticate // $gotoPage = stGetRequestItem("goto", FALSE); $errorPage = stGetRequestItem("error", FALSE); $password = stGetRequestItem("key", FALSE); $error = 0; $sql = stPrepareSQL("SELECT * FROM votekeys WHERE key=%s", $password); if (($key = stFetchSQL($sql)) !== false) { // // Validate login based on current vote key mode // switch (stGetSetting("voteKeyMode")) { case VOTE_ACTIVATE: if ($key["active"] == 0) $error = 3; break; case VOTE_ASSIGN: $sql = stPrepareSQL("SELECT id FROM attendees WHERE key_id=%d", $key["id"]); if (stFetchSQL($sql) === false) $error = 3; break; } // // Okay, attempt to set up session if no error // if ($error == 0) { if (!stSessionStart(SESS_USER, $password, "userTimeout")) { error_log("User session AUTH LOGIN failed (session setup)"); $error = 2; } else { stSetSessionItem("key_id", $key["id"]); stSetSessionItem("mode", stGetRequestItem("mode", "error")); } } } else { error_log("User session AUTH LOGIN failed (password)"); $error = 1; } // Select destination page based on error status and // if error page has been set. Use common destination page // if no error or no error page. $nextPage = ($error != 0 && $errorPage !== FALSE) ? $errorPage : $gotoPage; // Okay, if destination page is set, go there. // Otherwise, just use the default page. header("Location: ". ($nextPage !== FALSE ? $nextPage : stGetSetting("defaultPage")). ($error ? "?error=".$error : "")); ?>