37 $usr_ids_to_request = array_diff($usr_ids, self::$requested_usr_ids);
38 self::$requested_usr_ids = array_merge(self::$requested_usr_ids, $usr_ids_to_request);
39 self::$requested_usr_ids_key_map = array_flip(self::$requested_usr_ids);
41 if ($usr_ids_to_request) {
42 $in =
$DIC->database()->in(
'ud.usr_id', $usr_ids_to_request,
false,
'integer');
44 SELECT ud.usr_id, login, firstname, lastname, title, gender, pprof.value public_profile,pup.value public_upload, pupgen.value public_gender
46 LEFT JOIN usr_pref pprof ON pprof.usr_id = ud.usr_id AND pprof.keyword = %s
47 LEFT JOIN usr_pref pupgen ON pupgen.usr_id = ud.usr_id AND pupgen.keyword = %s
48 LEFT JOIN usr_pref pup ON pup.usr_id = ud.usr_id AND pup.keyword = %s
54 array(
'text',
'text',
'text'),
55 array(
'public_profile',
'public_gender',
'public_upload')
58 while ($row =
$DIC->database()->fetchAssoc(
$res)) {
60 $user->
setId($row[
'usr_id']);
61 $user->setLogin($row[
'login']);
62 $user->setGender($row[
'gender']);
63 $user->setTitle($row[
'title']);
64 $user->setFirstname($row[
'firstname']);
65 $user->setLastname($row[
'lastname']);
66 $user->setPref(
'public_profile', $row[
'public_profile']);
67 $user->setPref(
'public_upload', $row[
'public_upload']);
68 $user->setPref(
'public_gender', $row[
'public_gender']);
70 self::$user_instances[$row[
'usr_id']] = $user;
86 if (!array_key_exists($usr_id, self::$requested_usr_ids_key_map)) {
90 return isset(self::$user_instances[$usr_id]) ? self::$user_instances[$usr_id] :
null;
if(php_sapi_name() !='cli') $in
An exception for terminatinating execution or to throw for unit testing.
static $requested_usr_ids_key_map
static getUserObjectById($usr_id)
static $requested_usr_ids
static preloadUserObjects(array $usr_ids)
setId($a_id)
set object id @access public
foreach($_POST as $key=> $value) $res