From 0237890676fd9556db8d8505e0b84a652eaff33d Mon Sep 17 00:00:00 2001 From: Karl 'vollmerk' Vollmer Date: Wed, 25 Jan 2006 08:16:53 +0000 Subject: hopefully fixed mysql5 problems with vauth as well as the remember me mojo for rubin --- modules/vauth/auth.lib.php | 4 +++- modules/vauth/init.php | 5 +++++ modules/vauth/session.lib.php | 16 ++++++++++++---- 3 files changed, 20 insertions(+), 5 deletions(-) (limited to 'modules') diff --git a/modules/vauth/auth.lib.php b/modules/vauth/auth.lib.php index 7c974d7c..512155c3 100644 --- a/modules/vauth/auth.lib.php +++ b/modules/vauth/auth.lib.php @@ -76,7 +76,9 @@ function vauth_mysql_auth($username,$password) { $results = mysql_fetch_assoc($db_results); if (!$results) { - return false; + $results['success'] = false; + $results['error'] = 'Error Username or Password incorrect, please try again'; + return $results; } $results['type'] = 'mysql'; diff --git a/modules/vauth/init.php b/modules/vauth/init.php index f79c18f6..3d705cdb 100644 --- a/modules/vauth/init.php +++ b/modules/vauth/init.php @@ -100,6 +100,11 @@ function vauth_init($data) { vauth_error('Cookie Domain Not Defined [cookie_domain]'); $error_status = true; } + + /* For now we won't require it */ + if (!isset($data['remember_length'])) { + $data['remember_length'] = '900'; + } /* If an error has occured then return false */ if ($error_status) { return false; } diff --git a/modules/vauth/session.lib.php b/modules/vauth/session.lib.php index 680f3f9e..13e2285e 100644 --- a/modules/vauth/session.lib.php +++ b/modules/vauth/session.lib.php @@ -87,6 +87,12 @@ function vauth_sess_write($key,$value) { $value = sql_escape($value); $key = sql_escape($key); + /* Check for Rememeber Me */ + $cookie_name = vauth_conf('session_name') . "_remember"; + if ($_COOKIE[$cookie_name]) { + $expire = time() + vauth_conf('remember_length'); + } + $sql = "UPDATE session SET value='$value', expire='$expire'" . " WHERE id='$key'"; $db_results = mysql_query($sql, vauth_dbh()); @@ -183,10 +189,11 @@ function vauth_session_create($data) { $username = sql_escape($data['username']); $type = sql_escape($data['type']); $value = sql_escape($data['value']); + $expire = sql_escape(vauth_conf('session_length')); /* Insert the row */ - $sql = "INSERT INTO session (`id`,`username`,`type`,`value`) " . - " VALUES ('$key','$username','$type','$value')"; + $sql = "INSERT INTO session (`id`,`username`,`type`,`value`,`expire`) " . + " VALUES ('$key','$username','$type','$value','$expire')"; $db_results = mysql_query($sql, vauth_dbh()); return $db_results; @@ -213,8 +220,9 @@ function vauth_check_session() { /* Check for Rememeber Me */ $cookie_name = vauth_conf('session_name') . "_remember"; if ($_COOKIE[$cookie_name]) { - $month = 86400*30; - vauth_conf(array('cookie_life'=>$month),1); + $extended = vauth_conf('remember_length'); + vauth_conf(array('cookie_life'=>$extended),1); + setcookie($cookie_name, '1', time() + $extended,'/',vauth_conf('cookie_domain')); } /* Set the Cookie Paramaters */ -- cgit