diff options
Diffstat (limited to 'mod')
-rw-r--r-- | mod/uservalidationbyemail/lib/functions.php | 13 | ||||
-rw-r--r-- | mod/uservalidationbyemail/views/default/admin/users/unvalidated.php | 7 |
2 files changed, 10 insertions, 10 deletions
diff --git a/mod/uservalidationbyemail/lib/functions.php b/mod/uservalidationbyemail/lib/functions.php index 0610c1809..4ba5d13b7 100644 --- a/mod/uservalidationbyemail/lib/functions.php +++ b/mod/uservalidationbyemail/lib/functions.php @@ -126,23 +126,18 @@ function uservalidationbyemail_get_user_validation_status($user_guid) { * This doesn't include any security, so should be called ONLY be admin users! * @return array */ -function uservalidationbyemail_get_unvalidated_users() { +function uservalidationbyemail_get_unvalidated_users_sql_where() { global $CONFIG; $validated_id = get_metastring_id('validated'); $one_id = get_metastring_id(1); // thanks to daveb@freenode for the SQL tips! - $q = "SELECT e.* FROM {$CONFIG->dbprefix}entities e - WHERE e.type = 'user' - AND NOT EXISTS ( + $where = "NOT EXISTS ( SELECT 1 FROM {$CONFIG->dbprefix}metadata md WHERE md.entity_guid = e.guid AND md.name_id = $validated_id - AND md.value_id = $one_id) + AND md.value_id = $one_id)"; - ORDER BY e.guid DESC"; - - $users = get_data($q, 'entity_row_to_elggstar'); - return $users; + return $where; }
\ No newline at end of file diff --git a/mod/uservalidationbyemail/views/default/admin/users/unvalidated.php b/mod/uservalidationbyemail/views/default/admin/users/unvalidated.php index 4a14482df..bfd4a8d2e 100644 --- a/mod/uservalidationbyemail/views/default/admin/users/unvalidated.php +++ b/mod/uservalidationbyemail/views/default/admin/users/unvalidated.php @@ -7,7 +7,12 @@ */ // @todo pagination would be nice. -$users = uservalidationbyemail_get_unvalidated_users(); +// can't use elgg_list_entities() and friends because we don't use the default view for users. +$users = elgg_get_entities(array( + 'type' => 'user', + 'wheres' => array(uservalidationbyemail_get_unvalidated_users_sql_where()), + 'limit' => 9999, +)); if ($users) { foreach ($users as $user) { |