diff --git a/Modules/users/Controller/controller.standard.php b/Modules/users/Controller/controller.standard.php new file mode 100644 index 0000000..7c149c8 --- /dev/null +++ b/Modules/users/Controller/controller.standard.php @@ -0,0 +1,16 @@ + \ No newline at end of file diff --git a/Modules/sessions/Views/view.email_layout.php b/Modules/users/Views/view.email_layout.php similarity index 100% rename from Modules/sessions/Views/view.email_layout.php rename to Modules/users/Views/view.email_layout.php diff --git a/Modules/sessions/class.events.php b/Modules/users/class.events.php similarity index 99% rename from Modules/sessions/class.events.php rename to Modules/users/class.events.php index 9fe122d..06906e7 100644 --- a/Modules/sessions/class.events.php +++ b/Modules/users/class.events.php @@ -28,7 +28,7 @@ * @version Version 0.0.1 */ -namespace Module\Sessions; +namespace Module\Users; use \FuzeWorks\Event; /** diff --git a/Modules/sessions/class.sessions.php b/Modules/users/class.users.php similarity index 98% rename from Modules/sessions/class.sessions.php rename to Modules/users/class.users.php index 654c179..7322dcf 100644 --- a/Modules/sessions/class.sessions.php +++ b/Modules/users/class.users.php @@ -28,7 +28,7 @@ * @version Version 0.0.1 */ -namespace Module\Sessions; +namespace Module\Users; use \FuzeWorks\Module; use \FuzeWorks\EventPriority; @@ -39,7 +39,7 @@ use \FuzeWorks\EventPriority; * @author Abel Hoogeveen * @copyright Copyright (c) 2013 - 2015, Techfuze. (http://techfuze.net) */ -class Session extends Module { +class Users extends Module { /** * UDT of the current session, send to the user @@ -771,6 +771,24 @@ class Session extends Module { } } + /** + * Verify if a password matches the user + * @param Int $userId User ID of the user + * @param String $password Password of the user + * @return true on valid, false on invalid + */ + public function verifyPassword($userId, $password) { + $prefix = $this->db->getPrefix(); + $stmnt = $this->mods->database->prepare("SELECT * FROM ".$prefix."session_users WHERE user_id = ?"); + $stmnt->execute([$userId]); + $data = $stmnt->fetchAll(\PDO::FETCH_ASSOC); + if (!empty($data)) { + return password_verify($password, $data[0]['user_password']); + } else { + throw new SessionException("Could not verify password. User not found", 1); + } + } + /** * Checks wether a user has permission to a certain action * If a userID is provided, a specific user is checked. Otherwise the current session is used diff --git a/Modules/sessions/config.sessions.php b/Modules/users/config.sessions.php similarity index 97% rename from Modules/sessions/config.sessions.php rename to Modules/users/config.sessions.php index 7a84272..a26be0d 100644 --- a/Modules/sessions/config.sessions.php +++ b/Modules/users/config.sessions.php @@ -33,6 +33,6 @@ return array( 'cookie_name' => 'FuzeCookie', // Should be filled in if you want email verification to work - 'verify_controller' => '', + 'verify_controller' => 'login', ); diff --git a/Modules/sessions/database.sessions.php b/Modules/users/database.sessions.php similarity index 100% rename from Modules/sessions/database.sessions.php rename to Modules/users/database.sessions.php diff --git a/Modules/sessions/moduleInfo.php b/Modules/users/moduleInfo.php similarity index 81% rename from Modules/sessions/moduleInfo.php rename to Modules/users/moduleInfo.php index c4d54a4..aea8d52 100644 --- a/Modules/sessions/moduleInfo.php +++ b/Modules/users/moduleInfo.php @@ -30,15 +30,17 @@ return array( - 'module_class' => '\Module\Sessions\Session', - 'module_file' => 'class.sessions.php', - 'module_name' => 'sessions', + 'module_class' => '\Module\Users\Users', + 'module_file' => 'class.users.php', + 'module_name' => 'users', - 'dependencies' => array('techfuze/database'), + 'dependencies' => array('core/database'), + 'aliases' => array('techfuze/sessions'), + 'events' => array(), - 'name' => 'Sessions', + 'name' => 'Users', 'description' => 'Lightweight user and permissions system', - 'author' => 'TechFuze', + 'author' => 'core', 'version' => '1.0.0.0', 'website' => 'http://fuzeworks.techfuze.net/',