All pastes #361240 Raw Edit

Stuff

public php v1 · immutable
·published 2007-02-18 00:49 UTC
rendered paste body
// make the set of objects// usage: list($group, $roles, $access) = get_authdata('index');function get_authdata($module_key){	global $db;	if ( !$module_key )	{		return false;	}		$user_id = ( isset($_SESSION['user_id']) ) ? $_SESSION['user_id'] : -1;		$return = array(		0 => array(),		1 => array(),		2 => array()	);		$db->query('SELECT * FROM ' . USERS_TABLE . ' WHERE user_id = ' . (int) $user_id);	$group_id = $db->fetchrow();	$group_id = $group_id->group;	$db->freeresult();		$db->query('SELECT * FROM ' . GROUPS_TABLE . ' WHERE group_id = ' . (int) $group_id);	$row = $db->fetchrow();	$db->freeresult();	$return[0] = new group($row->group_id, $row->group_name, $row->group_desc);	if ( $row->roles != '' )	{		$db->query('SELECT * FROM ' . ROLES_TABLE . ' WHERE role_id IN (' . $row->roles . ')');		while ( $role = $db->fetchrow() )		{			$return[1][$role->role_id][] = new role($role->role_id, $role->role_name, $role->role_desc);		}		$db->freeresult();		$db->query('SELECT * FROM ' . ROLES_ACCESS_TABLE . ' WHERE role_id IN (' . $row->roles . ') AND module_key = \'' . $db->escape($module_key) . '\' GROUP BY role_id');		while ( $role_acl = $db->fetchrow() )		{			$array = array_combine(explode(',', $role_acl->acl_keys), explode(',', $role_acl->acl_vals));			$return[2][$role_acl->role_id] = new access($role_acl->acl_id, $array);		}		$db->freeresult();	}		return $return;}