JasonWoof Got questions, comments, patches, etc.? Contact Jason Woofenden
CONFLICT WARNING: added: logged_in() and logged_in_as_admin()
[wfpl.git] / session.php
index dc20360..9dc3f4e 100644 (file)
@@ -2,34 +2,21 @@
 
 #  Copyright (C) 2006 Jason Woofenden
 #
-#  This file is part of wfpl.
-#
-#  wfpl is free software; you can redistribute it and/or modify it under the
-#  terms of the GNU Lesser General Public License as published by the Free
-#  Software Foundation; either version 2.1 of the License, or (at your option)
-#  any later version.
-#
-#  wfpl is distributed in the hope that it will be useful, but WITHOUT ANY
-#  WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
-#  FOR A PARTICULAR PURPOSE.  See the GNU Lesser General Public License for
-#  more details.
-#
-#  You should have received a copy of the GNU Lesser General Public License
-#  along with wfpl; if not, write to the Free Software Foundation, Inc., 51
-#  Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
-
-# you'll need this file that calls db_connect()
-if(!isset($GLOBALS['wfpl_db_handle'])) {
-       if(file_exists('db_connect.php')) {
-               require_once('db_connect.php');
-       } elseif(file_exists('code/db_connect.php')) {
-               require_once('code/db_connect.php');
-       } else {
-               die("session.php requires a file db_connect.php or that you call db_connect() first. See code/wfpl/db.php for more information.");
-       }
-}
-
-# and these database tables:
+#  This program is free software: you can redistribute it and/or modify
+#  it under the terms of the GNU General Public License as published by
+#  the Free Software Foundation, either version 3 of the License, or
+#  (at your option) any later version.
+#  
+#  This program is distributed in the hope that it will be useful,
+#  but WITHOUT ANY WARRANTY; without even the implied warranty of
+#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+#  GNU General Public License for more details.
+#  
+#  You should have received a copy of the GNU General Public License
+#  along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+
+# you'll need these database tables:
 # create table wfpl_sessions (id int unique auto_increment, session_key varchar(16), length int, expires int);
 # create table wfpl_session_data (id int unique auto_increment, session_id int, name varchar(100), value text);
 # run this command to install/clear the tables:
@@ -48,7 +35,7 @@ if(!isset($GLOBALS['wfpl_db_handle'])) {
 
 # generate a new random 16-character string
 function session_generate_key() {
-       $character_set = "abcdefghijklmnopqrstuvwqyzABCDEFGHIJKLMNOPQRSTUVWQYZ0123456789";
+       $character_set = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
     $id = "                ";
 
        # PHP 4.2.0 and up seed the random number generator for you.
@@ -138,8 +125,13 @@ function session_exists() {
        return true;
 }
 
-# return username if a session exists and is authenticated
+# depricated
 function session_exists_and_authed() {
+       return logged_in();
+}
+
+# return username if a session exists and is authenticated
+function logged_in() {
        if(!session_exists()) {
                return false;
        }
@@ -148,6 +140,20 @@ function session_exists_and_authed() {
 }
 
 
+
+# return username if a session exists and is authenticated
+function logged_in_as_admin() {
+       if(!session_exists()) {
+               return false;
+       }
+
+       if(session_get('auth_admin')) {
+               return true;
+       }
+       return false;
+}
+
+
 # find existing session, or make one
 function init_session() {
        if(!session_exists()) {