}
function _randompassword() {
- $seed = (integer) md5(microtime());
- mt_srand($seed);
$password = mt_rand(1, 99999999);
$password = substr(md5($password), mt_rand(0, 19), mt_rand(6, 12));
return $password;
return false;
}
- function login($username, $password, $remember = FALSE) {
+ function login($username, $password, $remember = FALSE, $path = '/') {
$password = $this->sanitisePassword($password);
$query = 'SELECT '. $this->getFieldName('primary') .' FROM '. $this->getTableName() .' WHERE '. $this->getFieldName('username') .' = "'. $this->db->sql_escape($username) .'" AND '. $this->getFieldName('password') .' = "'. $this->db->sql_escape($password) .'"';
$id = $_SESSION[$this->getSessionKey()] = $row[$this->getFieldName('primary')];
if ($remember) {
$cookie = $id .':'. md5($username.$password);
- setcookie($this->cookiekey, $cookie, time() + $this->cookietime);
+ setcookie($this->cookiekey, $cookie, time() + $this->cookietime, $path);
}
return true;
} else {
}
}
- function logout() {
- @setcookie($this->cookiekey, NULL, time() - 1);
+ function logout($path = '/') {
+ @setcookie($this->cookiekey, NULL, time() - 1, $path);
unset($_COOKIE[$this->cookiekey]);
session_unset();
$this->getCurrentUser(TRUE, false);
}
function isValidEmail($email) {
- if (eregi("^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,6})$", $email)) {
+ if (preg_match("/^((?:(?:(?:\w[\.\-\+_]?)*)\w)+)\@((?:(?:(?:\w[\.\-_]?){0,62})\w)+)\.(\w{2,6})$/i", $email) > 0) {
list($emailUser, $emailDomain) = split("@", $email);
// Check if the email domain has a DNS record