From b4c842618c1594a6510fc5da33a39af4ff14694f Mon Sep 17 00:00:00 2001 From: Arek Juszczyk Date: Wed, 29 Apr 2026 11:45:26 +0200 Subject: [PATCH 1/2] Update .gitignore --- .gitignore | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/.gitignore b/.gitignore index 9f2a506..32990c8 100644 --- a/.gitignore +++ b/.gitignore @@ -5,3 +5,10 @@ vendor/ .env /src/mod/** node_modules/ +src/js/*.svg +src/js/feather.js +src/js/*.min.js.map +src/js/icons/*.svg +src/js/*.js.map +src/js/*.min.js +src/js/icons.json \ No newline at end of file From bb91b04d2600956bb669d46d40d6f68bfa8860b4 Mon Sep 17 00:00:00 2001 From: Arek Juszczyk Date: Wed, 29 Apr 2026 11:45:51 +0200 Subject: [PATCH 2/2] Update User.php --- src/includes/classes/User.php | 131 +++++++++++++++++----------------- 1 file changed, 66 insertions(+), 65 deletions(-) diff --git a/src/includes/classes/User.php b/src/includes/classes/User.php index 18646b2..55ecb4d 100644 --- a/src/includes/classes/User.php +++ b/src/includes/classes/User.php @@ -1,4 +1,5 @@ username = $username; $this->source_id = ''; - $this->password = password_hash($password, PASSWORD_DEFAULT); + $this->password = password_needs_rehash($password, PASSWORD_DEFAULT) ? password_hash($password, PASSWORD_DEFAULT) : $password; $this->id = null; $this->type = null; $this->id_number = null; @@ -69,12 +70,12 @@ public function __construct($username = null, $password = null) */ /** - * Load the object from the given data - * - * @param array $user_info assoc-array of User info - * - * @return boolean did the load succeed - */ + * Load the object from the given data + * + * @param array $user_info assoc-array of User info + * + * @return boolean did the load succeed + */ public function load_from_row($user_info) { if (is_array($user_info)) { @@ -100,10 +101,10 @@ public function load_from_row($user_info) // /->load_from_row() /** - * Is this user admin? - * - * @return boolean user is admin - */ + * Is this user admin? + * + * @return boolean user is admin + */ public function is_admin() { return $this->admin == 1; @@ -112,10 +113,10 @@ public function is_admin() // /->is_admin() /** - * Is this user staff? - * - * @return boolean user is staff - */ + * Is this user staff? + * + * @return boolean user is staff + */ public function is_staff() { return ($this->type == APP__USER_TYPE_ADMIN) || ($this->type == APP__USER_TYPE_TUTOR); @@ -175,28 +176,28 @@ public function update_source_id($source_id) public function save_user() { $this->DAO - ->getConnection() - ->createQueryBuilder() - ->update(APP__DB_TABLE_PREFIX . 'user') - ->set('forename', '?') - ->set('lastname', '?') - ->set('email', '?') - ->set('username', '?') - ->set('source_id', '?') - ->set('password', '?') - ->set('id_number', '?') - ->set('department_id', '?') - ->where('user_id = ?') - ->setParameter(0, $this->forename) - ->setParameter(1, $this->lastname) - ->setParameter(2, $this->email) - ->setParameter(3, $this->username) - ->setParameter(4, $this->source_id) - ->setParameter(5, $this->password) - ->setParameter(6, $this->id_number) - ->setParameter(7, $this->department_id) - ->setParameter(8, $this->id, ParameterType::INTEGER) - ->execute(); + ->getConnection() + ->createQueryBuilder() + ->update(APP__DB_TABLE_PREFIX . 'user') + ->set('forename', '?') + ->set('lastname', '?') + ->set('email', '?') + ->set('username', '?') + ->set('source_id', '?') + ->set('password', '?') + ->set('id_number', '?') + ->set('department_id', '?') + ->where('user_id = ?') + ->setParameter(0, $this->forename) + ->setParameter(1, $this->lastname) + ->setParameter(2, $this->email) + ->setParameter(3, $this->username) + ->setParameter(4, $this->source_id) + ->setParameter(5, $this->password) + ->setParameter(6, $this->id_number) + ->setParameter(7, $this->department_id) + ->setParameter(8, $this->id, ParameterType::INTEGER) + ->execute(); return true; } @@ -216,30 +217,30 @@ public function set_dao_object(DAO $DB) public function add_user() { $this->DAO - ->getConnection() - ->createQueryBuilder() - ->insert(APP__DB_TABLE_PREFIX . 'user') - ->values([ - 'forename' => '?', - 'lastname' => '?', - 'email' => '?', - 'username' => '?', - 'source_id' => '?', - 'password' => '?', - 'id_number' => '?', - 'department_id' => '?', - 'admin' => '?', - ]) - ->setParameter(0, $this->forename) - ->setParameter(1, $this->lastname) - ->setParameter(2, $this->email) - ->setParameter(3, $this->username) - ->setParameter(4, $this->source_id) - ->setParameter(5, $this->password) - ->setParameter(6, $this->id_number) - ->setParameter(7, $this->department_id) - ->setParameter(8, $this->admin, ParameterType::INTEGER) - ->execute(); + ->getConnection() + ->createQueryBuilder() + ->insert(APP__DB_TABLE_PREFIX . 'user') + ->values([ + 'forename' => '?', + 'lastname' => '?', + 'email' => '?', + 'username' => '?', + 'source_id' => '?', + 'password' => '?', + 'id_number' => '?', + 'department_id' => '?', + 'admin' => '?', + ]) + ->setParameter(0, $this->forename) + ->setParameter(1, $this->lastname) + ->setParameter(2, $this->email) + ->setParameter(3, $this->username) + ->setParameter(4, $this->source_id) + ->setParameter(5, $this->password) + ->setParameter(6, $this->id_number) + ->setParameter(7, $this->department_id) + ->setParameter(8, $this->admin, ParameterType::INTEGER) + ->execute(); return $this->DAO->getConnection()->lastInsertId('user_id'); }