function spa_get_members_info($userid) { $data = sp_get_member_row($userid); if (empty($data)) { return ''; } $first = spdb_select('row', ' SELECT ' . SFPOSTS . '.forum_id, forum_name, forum_slug, ' . SFPOSTS . '.topic_id, topic_name, topic_slug, post_date FROM ' . SFPOSTS . ' JOIN ' . SFTOPICS . ' ON ' . SFTOPICS . '.topic_id = ' . SFPOSTS . '.topic_id JOIN ' . SFFORUMS . ' ON ' . SFFORUMS . '.forum_id = ' . SFPOSTS . '.forum_id WHERE ' . SFPOSTS . ".user_id={$userid}\n\t\t\tORDER BY post_date ASC\n\t\t\tLIMIT 1"); if ($first) { $url = '<a href="' . sp_build_url($first->forum_slug, $first->topic_slug, 1, 0) . '">' . sp_filter_title_display($first->topic_name) . '</a>'; $data['first'] = sp_filter_title_display($first->forum_name) . '<br />' . $url . '<br />' . sp_date('d', $first->post_date); } else { $data['first'] = spa_text('No Posts'); } $last = spdb_select('row', ' SELECT ' . SFPOSTS . '.forum_id, forum_name, forum_slug, ' . SFPOSTS . '.topic_id, topic_name, topic_slug, post_date FROM ' . SFPOSTS . ' JOIN ' . SFTOPICS . ' ON ' . SFTOPICS . '.topic_id = ' . SFPOSTS . '.topic_id JOIN ' . SFFORUMS . ' ON ' . SFFORUMS . '.forum_id = ' . SFPOSTS . '.forum_id WHERE ' . SFPOSTS . ".user_id={$userid}\n\t\t\tORDER BY post_date DESC\n\t\t\tLIMIT 1"); if ($last) { $url = '<a href="' . sp_build_url($last->forum_slug, $last->topic_slug, 1, 0) . '">' . sp_filter_title_display($last->topic_name) . '</a>'; $data['last'] = sp_filter_title_display($last->forum_name) . '<br />' . $url . '<br />' . sp_date('d', $last->post_date); } else { $data['last'] = spa_text('No posts'); } if ($data['admin']) { $user_memberships = 'Admin'; $status = 'Admin'; $start = 0; } else { if ($data['moderator']) { $status = 'Moderator'; $start = 1; } else { $status = 'User'; $start = 1; } } $memberships = spdb_table(SFMEMBERSHIPS, "user_id={$userid}", '', '', '', ARRAY_A); if ($memberships) { foreach ($memberships as $membership) { $name = spdb_table(SFUSERGROUPS, 'usergroup_id=' . $membership['usergroup_id'], 'usergroup_name'); if ($start) { $user_memberships = $name; $start = 0; } else { $user_memberships .= ', ' . $name; } } } else { if ($start) { $user_memberships = 'No Memberships'; } } $data['memberships'] = $user_memberships; $rank = sp_get_user_forum_rank($status, $userid, $data['posts']); $data['rank'] = $rank[0]['name']; $user = get_userdata($userid); $data['login'] = $user->user_login; return $data; }
function sp_update_member_data($userid) { if (!$userid) { return ''; } # are we syncing display names between WP and SPF? $member = sp_get_member_row($userid); $options = unserialize($member['user_options']); if ($options['namesync']) { $display_name = sp_filter_name_save(spdb_table(SFUSERS, "ID={$userid}", 'display_name')); sp_update_member_item($userid, 'display_name', $display_name); # update recent members list sp_update_newuser_name($member['display_name'], $display_name); } }