- $keys = XDB::iterator("SELECT n.pid, CONCAT(n.particle, n.name) AS name, e.score,
- IF(FIND_IN_SET('public', e.flags), 'public', '') AS public
- FROM profile_name AS n
- INNER JOIN profile_name_enum AS e ON (n.typeid = e.id)
- WHERE n.pid IN {?}",
- $pids);
-
+ $keys = XDB::iterator("(SELECT n.pid AS pid, n.name AS name, e.score AS score,
+ IF(FIND_IN_SET('public', e.flags), 'public', '') AS public
+ FROM profile_name AS n
+ INNER JOIN profile_name_enum AS e ON (n.typeid = e.id)
+ WHERE n.pid IN {?} AND NOT FIND_IN_SET('not_displayed', e.flags))
+ UNION
+ (SELECT n.pid AS pid, n.particle AS name, 0 AS score,
+ IF(FIND_IN_SET('public', e.flags), 'public', '') AS public
+ FROM profile_name AS n
+ INNER JOIN profile_name_enum AS e ON (n.typeid = e.id)
+ WHERE n.pid IN {?} AND NOT FIND_IN_SET('not_displayed', e.flags))
+ ",
+ $pids, $pids);