Example #1
0
function get_profiles()
{
    $query = new Query(new QueryBuilder(SELECT_QUERY, array('tables' => array('userprofile' => array('id', 'first_name', 'last_name')), 'joins' => array('INNER JOIN userauth ON userauth.id = userprofile.fk_userauth'), 'where' => 'userauth.role = \'faculty\' OR userauth.role = \'admin\'', 'orderby' => 'userprofile.last_name')));
    $profiles = array();
    $query->for_each_ordered(function ($row) use(&$profiles) {
        $profiles[] = array('id' => $row[0], 'name' => "{$row['1']} {$row['2']}");
    });
    return $profiles;
}
Example #2
0
function check_assessment_access($userId, $entityId, $entityKind)
{
    $query = new Query(new QueryBuilder(SELECT_QUERY, array('tables' => array("abet_assessment" => '', $entityKind => 'id'), 'joins' => array("INNER JOIN {$entityKind} ON {$entityKind}.fk_assessment = abet_assessment.id", "INNER JOIN acl ON abet_assessment.fk_acl = acl.id", "INNER JOIN acl_entry ON acl_entry.fk_acl = acl.id AND acl_entry.fk_profile = {$userId}"))));
    $found = false;
    $query->for_each_ordered(function ($row) use(&$found, $entityId) {
        if ($row[0] == $entityId) {
            $found = true;
            return false;
        }
    });
    return $found;
}