|
@@ -904,53 +904,44 @@ function loadMemberData($users, $is_name = false, $set = 'normal')
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- if ($set == 'normal')
|
|
|
- {
|
|
|
- $select_columns = '
|
|
|
+ // Used by default
|
|
|
+ $select_columns = '
|
|
|
IFNULL(lo.log_time, 0) AS is_online, IFNULL(a.id_attach, 0) AS id_attach, a.filename, a.attachment_type,
|
|
|
mem.signature, mem.personal_text, mem.location, mem.gender, mem.avatar, mem.id_member, mem.member_name,
|
|
|
mem.real_name, mem.email_address, mem.hide_email, mem.date_registered, mem.website_title, mem.website_url,
|
|
|
mem.birthdate, mem.member_ip, mem.member_ip2, mem.icq, mem.aim, mem.yim, mem.msn, mem.posts, mem.last_login,
|
|
|
mem.karma_good, mem.id_post_group, mem.karma_bad, mem.lngfile, mem.id_group, mem.time_offset, mem.show_online,
|
|
|
- mem.buddy_list, mg.online_color AS member_group_color, IFNULL(mg.group_name, {string:blank_string}) AS member_group,
|
|
|
- pg.online_color AS post_group_color, IFNULL(pg.group_name, {string:blank_string}) AS post_group, mem.is_activated, mem.warning,
|
|
|
- CASE WHEN mem.id_group = 0 OR mg.icons = {string:blank_string} THEN pg.icons ELSE mg.icons END AS icons' . (!empty($modSettings['titlesEnable']) ? ',
|
|
|
- mem.usertitle' : '');
|
|
|
- $select_tables = '
|
|
|
+ mg.online_color AS member_group_color, IFNULL(mg.group_name, {string:blank_string}) AS member_group,
|
|
|
+ pg.online_color AS post_group_color, IFNULL(pg.group_name, {string:blank_string}) AS post_group,
|
|
|
+ mem.is_activated, mem.warning' . (!empty($modSettings['titlesEnable']) ? ', mem.usertitle, ' : '') . '
|
|
|
+ CASE WHEN mem.id_group = 0 OR mg.icons = {string:blank_string} THEN pg.icons ELSE mg.icons END AS icons';
|
|
|
+ $select_tables = '
|
|
|
LEFT JOIN {db_prefix}log_online AS lo ON (lo.id_member = mem.id_member)
|
|
|
LEFT JOIN {db_prefix}attachments AS a ON (a.id_member = mem.id_member)
|
|
|
LEFT JOIN {db_prefix}membergroups AS pg ON (pg.id_group = mem.id_post_group)
|
|
|
LEFT JOIN {db_prefix}membergroups AS mg ON (mg.id_group = mem.id_group)';
|
|
|
- }
|
|
|
- elseif ($set == 'profile')
|
|
|
- {
|
|
|
- $select_columns = '
|
|
|
- IFNULL(lo.log_time, 0) AS is_online, IFNULL(a.id_attach, 0) AS id_attach, a.filename, a.attachment_type,
|
|
|
- mem.signature, mem.personal_text, mem.location, mem.gender, mem.avatar, mem.id_member, mem.member_name,
|
|
|
- mem.real_name, mem.email_address, mem.hide_email, mem.date_registered, mem.website_title, mem.website_url,
|
|
|
- mem.openid_uri, mem.birthdate, mem.icq, mem.aim, mem.yim, mem.msn, mem.posts, mem.last_login, mem.karma_good,
|
|
|
- mem.karma_bad, mem.member_ip, mem.member_ip2, mem.lngfile, mem.id_group, mem.id_theme, mem.buddy_list,
|
|
|
- mem.pm_ignore_list, mem.pm_email_notify, mem.pm_receive_from, mem.time_offset' . (!empty($modSettings['titlesEnable']) ? ', mem.usertitle' : '') . ',
|
|
|
- mem.time_format, mem.secret_question, mem.is_activated, mem.additional_groups, mem.smiley_set, mem.show_online,
|
|
|
- mem.total_time_logged_in, mem.id_post_group, mem.notify_announcements, mem.notify_regularity, mem.notify_send_body,
|
|
|
- mem.notify_types, lo.url, mg.online_color AS member_group_color, IFNULL(mg.group_name, {string:blank_string}) AS member_group,
|
|
|
- pg.online_color AS post_group_color, IFNULL(pg.group_name, {string:blank_string}) AS post_group, mem.ignore_boards, mem.warning,
|
|
|
- CASE WHEN mem.id_group = 0 OR mg.icons = {string:blank_string} THEN pg.icons ELSE mg.icons END AS icons, mem.password_salt, mem.pm_prefs';
|
|
|
- $select_tables = '
|
|
|
- LEFT JOIN {db_prefix}log_online AS lo ON (lo.id_member = mem.id_member)
|
|
|
- LEFT JOIN {db_prefix}attachments AS a ON (a.id_member = mem.id_member)
|
|
|
- LEFT JOIN {db_prefix}membergroups AS pg ON (pg.id_group = mem.id_post_group)
|
|
|
- LEFT JOIN {db_prefix}membergroups AS mg ON (mg.id_group = mem.id_group)';
|
|
|
- }
|
|
|
- elseif ($set == 'minimal')
|
|
|
+
|
|
|
+ // We add or replace according the the set
|
|
|
+ switch ($set)
|
|
|
{
|
|
|
- $select_columns = '
|
|
|
+ case 'normal':
|
|
|
+ $select_columns .= ', mem.buddy_list';
|
|
|
+ break;
|
|
|
+ case 'profile':
|
|
|
+ $select_columns .= ', mem.openid_uri, mem.id_theme, mem.pm_ignore_list, mem.pm_email_notify, mem.pm_receive_from,
|
|
|
+ mem.time_format, mem.secret_question, mem.additional_groups, mem.smiley_set,
|
|
|
+ mem.total_time_logged_in, mem.notify_announcements, mem.notify_regularity, mem.notify_send_body,
|
|
|
+ mem.notify_types, lo.url, mem.ignore_boards, mem.password_salt, mem.pm_prefs';
|
|
|
+ break;
|
|
|
+ case 'minimal':
|
|
|
+ $select_columns = '
|
|
|
mem.id_member, mem.member_name, mem.real_name, mem.email_address, mem.hide_email, mem.date_registered,
|
|
|
mem.posts, mem.last_login, mem.member_ip, mem.member_ip2, mem.lngfile, mem.id_group';
|
|
|
- $select_tables = '';
|
|
|
+ $select_tables = '';
|
|
|
+ break;
|
|
|
+ default:
|
|
|
+ trigger_error('loadMemberData(): Invalid member data set \'' . $set . '\'', E_USER_WARNING);
|
|
|
}
|
|
|
- else
|
|
|
- trigger_error('loadMemberData(): Invalid member data set \'' . $set . '\'', E_USER_WARNING);
|
|
|
|
|
|
// Allow mods to easily add to the selected member data
|
|
|
call_integration_hook('integrate_load_member_data', array($select_columns, $select_tables, $set));
|