Example #1
0
/**
 * Get all the email addresses of all test panel members (and admins)
 *
 * @return string[]
 */
function test_panel_get_panel_members_email_addresses()
{
    static $result;
    if (!isset($result)) {
        $result = [];
        $dbprefix = elgg_get_config('dbprefix');
        $group_guids = test_panel_get_group_guids();
        $groups_where = '';
        if (!empty($group_guids)) {
            $groups_where = " OR guid IN (SELECT guid_one\n\t\t\t\tFROM {$dbprefix}entity_relationships\n\t\t\t\tWHERE relationship = 'member'\n\t\t\t\tAND guid_two IN (" . implode(',', $group_guids) . ")\n\t\t\t)";
        }
        $query = "SELECT email\n\t\t\tFROM {$dbprefix}users_entity\n\t\t\tWHERE admin = 'yes'\n\t\t\t{$groups_where}\n\t\t";
        $data = get_data($query);
        if (!empty($data)) {
            foreach ($data as $row) {
                $result[] = $row->email;
            }
        }
    }
    return $result;
}
Example #2
0
/**
 * Check access of the user on page setup
 *
 * @return void
 */
function test_panel_pagesetup()
{
    $user = elgg_get_logged_in_user_entity();
    if (empty($user)) {
        return;
    }
    if (elgg_is_admin_logged_in()) {
        return;
    }
    $group_guids = test_panel_get_group_guids();
    if (!empty($group_guids)) {
        foreach ($group_guids as $group_guid) {
            $group = get_entity($group_guid);
            if (!$group instanceof ElggGroup) {
                continue;
            }
            if ($group->isMember($user)) {
                return;
            }
        }
    }
    echo elgg_view('test_panel/wrapper');
    exit;
}