aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--boot.php1
-rw-r--r--include/account.php5
-rw-r--r--mod/admin.php12
-rw-r--r--mod/register.php2
4 files changed, 12 insertions, 8 deletions
diff --git a/boot.php b/boot.php
index bee75e371..4c78f0b9c 100644
--- a/boot.php
+++ b/boot.php
@@ -363,6 +363,7 @@ define ( 'ACCOUNT_UNVERIFIED', 0x0001 );
define ( 'ACCOUNT_BLOCKED', 0x0002 );
define ( 'ACCOUNT_EXPIRED', 0x0004 );
define ( 'ACCOUNT_REMOVED', 0x0008 );
+define ( 'ACCOUNT_PENDING', 0x0010 );
/**
* Account roles
diff --git a/include/account.php b/include/account.php
index 530ffd083..f89197e0c 100644
--- a/include/account.php
+++ b/include/account.php
@@ -317,6 +317,11 @@ function user_allow($hash) {
intval(ACCOUNT_BLOCKED),
intval($register[0]['uid'])
);
+ $r = q("update account set account_flags = (account_flags ^ %d) where (account_flags & %d) and account_id = %d limit 1",
+ intval(ACCOUNT_PENDING),
+ intval(ACCOUNT_PENDING),
+ intval($register[0]['uid'])
+ );
$r = q("SELECT uid FROM profile WHERE uid = %d AND is_default = 1",
intval($account[0]['account_id'])
diff --git a/mod/admin.php b/mod/admin.php
index 9a8a58cfc..aa3d7b294 100644
--- a/mod/admin.php
+++ b/mod/admin.php
@@ -496,13 +496,13 @@ function admin_page_users_post(&$a){
}
if (x($_POST,'page_users_approve')){
- require_once("mod/regmod.php");
+ require_once('include/account.php');
foreach($pending as $hash){
user_allow($hash);
}
}
if (x($_POST,'page_users_deny')){
- require_once("mod/regmod.php");
+ require_once('include/account.php');
foreach($pending as $hash){
user_deny($hash);
}
@@ -552,11 +552,9 @@ function admin_page_users(&$a){
}
/* get pending */
- $pending = q("SELECT `register`.*, `contact`.`name`, `user`.`email`
- FROM `register`
- LEFT JOIN `contact` ON `register`.`uid` = `contact`.`uid`
- LEFT JOIN `user` ON `register`.`uid` = `user`.`uid`;");
-
+ $pending = q("SELECT * from account where (account_flags & %d ) ",
+ intval(ACCOUNT_PENDING)
+ );
/* get users */
diff --git a/mod/register.php b/mod/register.php
index 494e72b8f..3ba714c74 100644
--- a/mod/register.php
+++ b/mod/register.php
@@ -51,7 +51,7 @@ function register_post(&$a) {
break;
case REGISTER_APPROVE:
- $flags = ACCOUNT_UNVERIFIED | ACCOUNT_BLOCKED;
+ $flags = ACCOUNT_UNVERIFIED | ACCOUNT_BLOCKED | ACCOUNT_PENDING;
break;
default: