summaryrefslogtreecommitdiff
path: root/public/app/models/Access_model.php
diff options
context:
space:
mode:
Diffstat (limited to 'public/app/models/Access_model.php')
-rw-r--r--public/app/models/Access_model.php73
1 files changed, 69 insertions, 4 deletions
diff --git a/public/app/models/Access_model.php b/public/app/models/Access_model.php
index c98b6c4..90aac11 100644
--- a/public/app/models/Access_model.php
+++ b/public/app/models/Access_model.php
@@ -22,7 +22,8 @@ class Access_model
public static function checkUser($email)
{
$user = Registry::use('database')->query(
- "SELECT * FROM user WHERE email = :email AND active = 1",
+ "SELECT * FROM user
+ WHERE email = :email AND active = 1 AND deprecated IS NULL",
[ ':email' => $email ]
)->getFirst();
@@ -39,7 +40,8 @@ class Access_model
public static function getUser_byID($uid)
{
$user = Registry::use('database')->query(
- "SELECT * FROM user WHERE id = :uid AND active = 1",
+ "SELECT * FROM user
+ WHERE id = :uid AND active = 1 AND deprecated IS NULL",
[ ':uid' => $uid ]
)->getFirst();
@@ -56,7 +58,8 @@ class Access_model
public static function getUserByInvitation($invitation)
{
return Registry::use('database')->query(
- "SELECT * FROM user WHERE invitation = :invitation",
+ "SELECT * FROM user
+ WHERE invitation = :invitation AND deprecated IS NULL",
[ 'invitation' => $invitation ]
)->getFirst();
}
@@ -177,7 +180,6 @@ class Access_model
History_model::trackUserAccess($post['id'], TRACK_ACCOUNT, 'User Account Activated');
return $rowCount;
-
}
@@ -263,6 +265,69 @@ class Access_model
return $rowCount;
}
+ /** deprecate user account
+ * by @param int $uid: user-id
+ */
+ public static function deprecate_user($uid)
+ {
+ Registry::use('database')->runQuery(
+ "UPDATE user
+ SET active = :active,
+ deprecated = :deprecated
+ WHERE id = :id",
+ [
+ ':active' => 0,
+ ':deprecated' => 1,
+ ':id' => $uid
+ ]
+ );
+ return true;
+ }
+
+
+ /** invite user
+ *
+ * update user with invitation data
+ *
+ * @param int $uid: user-id
+ * @param hash $invitation: MD5 hash invitation
+ * @param int expiration: expiration timestamp
+ */
+ public static function invite_user($uid, $invitation, $expiration)
+ {
+ Registry::use('database')->runQuery(
+ "UPDATE user
+ SET invitation = :inv,
+ otp_expiration = :expiration
+ WHERE id = :id",
+ [
+ ':inv' => $invitation,
+ ':expiration' => $expiration,
+ ':id' => $uid
+ ]
+ );
+ }
+
+
+ /** activate user account
+ * by @param int $uid: user-id
+ */
+ public static function activate_user($uid)
+ {
+ Registry::use('database')->runQuery(
+ "UPDATE user
+ SET active = :active,
+ deprecated = :deprecated
+ WHERE id = :id",
+ [
+ ':active' => 1,
+ ':deprecated' => NULL,
+ ':id' => $uid
+ ]
+ );
+ return true;
+ }
+
## Set permission methods