SHOW:
|
|
- or go back to the newest paste.
| 1 | <script type='text/javascript' src='{$this->settings['public_dir']}js/3rd_party/calendar_date_select/calendar_date_select.js'></script>
| |
| 2 | <if test="calendarlocale:|:$this->settings['calendar_date_select_locale'] AND $this->settings['calendar_date_select_locale'] != 'en'"> | |
| 3 | <script type='text/javascript' src='{$this->settings['public_dir']}js/3rd_party/calendar_date_select/format_ipb.js'></script>
| |
| 4 | </if> | |
| 5 | {parse js_module="memberlist"}
| |
| 6 | <!-- SEARCH FORM --> | |
| 7 | <h1 class='ipsType_pagetitle'>{$this->lang->words['mlist_header']}</h1>
| |
| 8 | <div class='topic_controls'> | |
| 9 | {$pages}
| |
| 10 | <ul class='topic_buttons'> | |
| 11 | <li><a href='#filters' title='{$this->lang->words['mlist_adv_filt']}' id='use_filters'>{$this->lang->words['mlist_adv_filt']}</a></li>
| |
| 12 | </ul> | |
| 13 | </div> | |
| 14 | <div id='member_filters' class='general_box alt clear'> | |
| 15 | <form action="{parse url="app=members&module=list" base="public" seotitle="false"}" method="post">
| |
| 16 | <h3>{$this->lang->words['mlist_adv_filt_opt']}</h3>
| |
| 17 | ||
| 18 | <ul id='filters_1'> | |
| 19 | <li class='field'> | |
| 20 | <label for='member_name'>{$this->lang->words['s_name']}</label>
| |
| 21 | <select name="name_box" class='input_select'> | |
| 22 | <option value="begins"<if test="namebox_begins:|:$this->request['name_box'] == 'begins'"> selected='selected'</if>>{$this->lang->words['s_begins']}</option>
| |
| 23 | <option value="contains"<if test="namebox_contains:|:$this->request['name_box'] == 'contains'"> selected='selected'</if>>{$this->lang->words['s_contains']}</option>
| |
| 24 | </select> | |
| 25 | <input type="text" size="15" name="name" id='member_name' class='input_text' value="{parse expression="urldecode($this->request['name'])"}" />
| |
| 26 | </li> | |
| 27 | <li class='field'> | |
| 28 | <label for='photo_only' style='line-height: 16px;'>{$this->lang->words['photo_only']}</label>
| |
| 29 | <input class='input_check' id='photo_only' type="checkbox" value="1" name="photoonly" <if test="photoonly:|:$defaults['photoonly']">checked='checked'</if> /> | |
| 30 | </li> | |
| 31 | <if test="canFilterRate:|:$this->settings['pp_allow_member_rate']"> | |
| 32 | <li class='field'> | |
| 33 | <label for='rating'>{$this->lang->words['m_rating_morethan']}</label>
| |
| 34 | <select name='pp_rating_real' id='rating'> | |
| 35 | <option value='0'<if test="rating0:|:! $this->request['pp_rating_real']"> selected='selected'</if>>0</option> | |
| 36 | <option value='1'<if test="rating1:|:$this->request['pp_rating_real'] == 1"> selected='selected'</if>>1</option> | |
| 37 | <option value='2'<if test="rating2:|:$this->request['pp_rating_real'] == 2"> selected='selected'</if>>2</option> | |
| 38 | <option value='3'<if test="rating3:|:$this->request['pp_rating_real'] == 3"> selected='selected'</if>>3</option> | |
| 39 | <option value='4'<if test="rating4:|:$this->request['pp_rating_real'] == 4"> selected='selected'</if>>4</option> | |
| 40 | </select> | |
| 41 | {$this->lang->words['m_stars']}
| |
| 42 | </li> | |
| 43 | </if> | |
| 44 | <if test="hascfields:|:count( $custom_fields->out_fields )"> | |
| 45 | <foreach loop="customfields:$custom_fields->out_fields as $id => $field"> | |
| 46 | <li class='field custom'> | |
| 47 | <label for='field_{$id}'>{$custom_fields->field_names[$id]}</label>
| |
| 48 | {$field}
| |
| 49 | </li> | |
| 50 | </foreach> | |
| 51 | </if> | |
| 52 | </ul> | |
| 53 | <ul id='filters_2'> | |
| 54 | <li class='field'> | |
| 55 | <label for='signature'>{$this->lang->words['s_signature']}</label>
| |
| 56 | <input type="text" class='input_text' size="28" id='signature' name="signature" value="{parse expression="urldecode($this->request['signature'])"}" />
| |
| 57 | </li> | |
| 58 | <li class='field'> | |
| 59 | <label for='posts'>{$this->lang->words['s_posts']}</label>
| |
| 60 | <select class="dropdown" name="posts_ltmt"> | |
| 61 | <option value="lt"<if test="posts_ltmt_lt:|:$this->request['posts_ltmt'] == 'lt'"> selected='selected'</if>>{$this->lang->words['s_lessthan']}</option>
| |
| 62 | <option value="mt"<if test="posts_ltmt_mt:|:$this->request['posts_ltmt'] == 'mt'"> selected='selected'</if>>{$this->lang->words['s_morethan']}</option>
| |
| 63 | </select> | |
| 64 | <input type="text" class='input_text' id='posts' size="15" name="posts" value="{$this->request['posts']}" />
| |
| 65 | </li> | |
| 66 | <li class='field'> | |
| 67 | <label for='joined'>{$this->lang->words['s_joined']}</label>
| |
| 68 | <select class="dropdown" name="joined_ltmt"> | |
| 69 | <option value="lt"<if test="joined_ltmt_lt:|:$this->request['joined_ltmt'] == 'lt'"> selected='selected'</if>>{$this->lang->words['s_before']}</option>
| |
| 70 | <option value="mt"<if test="joined_ltmt_mt:|:$this->request['joined_ltmt'] == 'mt'"> selected='selected'</if>>{$this->lang->words['s_after']}</option>
| |
| 71 | </select> | |
| 72 | <input type="text" class='input_text' id='joined' size="10" name="joined" value="{$this->request['joined']}" /> <img src='{$this->settings['img_url']}/date.png' alt='{$this->lang->words['generic_date']}' id='joined_date_icon' class='clickable' />
| |
| 73 | <span class="desc">{$this->lang->words['s_dateformat']}</span>
| |
| 74 | </li> | |
| 75 | <li class='field'> | |
| 76 | <label for='last_post'>{$this->lang->words['s_lastpost']}</label>
| |
| 77 | <select class="dropdown" name="lastpost_ltmt"> | |
| 78 | <option value="lt"<if test="lastpost_ltmt_lt:|:$this->request['lastpost_ltmt'] == 'lt'"> selected='selected'</if>>{$this->lang->words['s_before']}</option>
| |
| 79 | <option value="mt"<if test="lastpost_ltmt_mt:|:$this->request['lastpost_ltmt'] == 'mt'"> selected='selected'</if>>{$this->lang->words['s_after']}</option>
| |
| 80 | </select> | |
| 81 | <input type="text" class='input_text' id='last_post' size="10" name="lastpost" value="{$this->request['lastpost']}" /> <img src='{$this->settings['img_url']}/date.png' alt='{$this->lang->words['generic_date']}' id='last_post_date_icon' class='clickable' />
| |
| 82 | <span class="desc">{$this->lang->words['s_dateformat']}</span>
| |
| 83 | </li> | |
| 84 | <li class='field'> | |
| 85 | <label for='last_visit'>{$this->lang->words['s_lastvisit']}</label>
| |
| 86 | <select class="dropdown" name="lastvisit_ltmt"> | |
| 87 | <option value="lt"<if test="lastvisit_ltmt_lt:|:$this->request['lastvisit_ltmt'] == 'lt'"> selected='selected'</if>>{$this->lang->words['s_before']}</option>
| |
| 88 | <option value="mt"<if test="lastvisit_ltmt_mt:|:$this->request['lastvisit_ltmt'] == 'mt'"> selected='selected'</if>>{$this->lang->words['s_after']}</option>
| |
| 89 | </select> | |
| 90 | <input type="text" class='input_text' id='last_visit' size="10" name="lastvisit" value="{$this->request['lastvisit']}" /> <img src='{$this->settings['img_url']}/date.png' alt='{$this->lang->words['generic_date']}' id='last_visit_date_icon' class='clickable' />
| |
| 91 | <span class="desc">{$this->lang->words['s_dateformat']}</span>
| |
| 92 | </li> | |
| 93 | </ul> | |
| 94 | <fieldset class='other_filters'> | |
| 95 | <select name='filter' class='input_select'> | |
| 96 | <foreach loop="filter:$dropdowns['filter'] as $k => $v"> | |
| 97 | <option value='{$k}'<if test="filterdefault:|:$k == $defaults['filter']"> selected='selected'</if>>{$v}</option>
| |
| 98 | </foreach> | |
| 99 | </select> | |
| 100 | {$this->lang->words['sorting_text_by']}
| |
| 101 | <select name='sort_key' class='input_select'> | |
| 102 | <foreach loop="sort_key:$dropdowns['sort_key'] as $k => $v"> | |
| 103 | <option value='{$k}'<if test="sortdefault:|:$k == $defaults['sort_key']"> selected='selected'</if>>{$this->lang->words[ $v ]}</option>
| |
| 104 | </foreach> | |
| 105 | </select> | |
| 106 | {$this->lang->words['sorting_text_in']}
| |
| 107 | <select name='sort_order' class='input_select'> | |
| 108 | <foreach loop="sort_order:$dropdowns['sort_order'] as $k => $v"> | |
| 109 | <option value='{$k}'<if test="orderdefault:|:$k == $defaults['sort_order']"> selected='selected'</if>>{$this->lang->words[ $v ]}</option>
| |
| 110 | </foreach> | |
| 111 | </select> | |
| 112 | {$this->lang->words['sorting_text_with']}
| |
| 113 | <select name='max_results' class='input_select'> | |
| 114 | <foreach loop="max_results:$dropdowns['max_results'] as $k => $v"> | |
| 115 | <option value='{$k}'<if test="limitdefault:|:$k == $defaults['max_results']"> selected='selected'</if>>{$v}</option>
| |
| 116 | </foreach> | |
| 117 | </select> | |
| 118 | {$this->lang->words['sorting_text_results']}
| |
| 119 | </fieldset> | |
| 120 | <fieldset class='submit clear'> | |
| 121 | <input type="submit" value="{$this->lang->words['sort_submit']}" class="input_submit" /> {$this->lang->words['or']} <a href='#j_memberlist' title='{$this->lang->words['cancel']}' id='close_filters' class='cancel'>{$this->lang->words['cancel']}</a>
| |
| 122 | </fieldset> | |
| 123 | </form> | |
| 124 | </div> | |
| 125 | <script type='text/javascript'> | |
| 126 | $('member_filters').hide();
| |
| 127 | </script> | |
| 128 | <br /> | |
| 129 | ||
| 130 | {parse replacement="header_start"}<div class='maintitle ipsFilterbar clear clearfix'>
| |
| 131 | <ul class='ipsList_inline left'> | |
| 132 | <li <if test="filtermembers:|:$this->request['sort_key'] == 'members_display_name' || !$this->request['sort_key']">class='active'</if>> | |
| 133 | <a href='{parse url="app=members&module=list&{$url}&sort_key=members_display_name&sort_order=asc" template="members_list" base="public" seotitle="false"}' title='{$this->lang->words['sort_by_mname']}'>{$this->lang->words['sort_by_name']}</a>
| |
| 134 | </li> | |
| 135 | <li <if test="filterposts:|:$this->request['sort_key'] == 'posts'">class='active'</if>> | |
| 136 | <a href='{parse url="app=members&module=list&{$url}&sort_key=posts&sort_order=desc" template="members_list" base="public" seotitle="false"}' title='{$this->lang->words['sort_by_posts']}'>{$this->lang->words['pcount']}</a>
| |
| 137 | </li> | |
| 138 | <li <if test="filterjoined:|:$this->request['sort_key'] == 'joined'">class='active'</if>> | |
| 139 | <a href='{parse url="app=members&module=list&{$url}&sort_key=joined" template="members_list" base="public" seotitle="false"}' title='{$this->lang->words['sorty_by_jdate']}'>{$this->lang->words['sort_by_joined']}</a>
| |
| 140 | </li> | |
| 141 | </ul> | |
| 142 | </div>{parse replacement="header_end"}
| |
| 143 | ||
| 144 | <div class='ipsBox ipsVerticalTabbed ipsLayout ipsLayout_withleft ipsLayout_tinyleft clearfix'> | |
| 145 | <div class='ipsVerticalTabbed_tabs ipsVerticalTabbed_minitabs ipsLayout_left' id='mlist_tabs'> | |
| 146 | <ul> | |
| 147 | <if test="letterquickjump:|:!$this->request['quickjump']"> | |
| 148 | <li class='active'><a href='{parse url="app=members&module=list" template="members_list" base="public" seotitle="false"}' title='{$this->lang->words['members_start_with']}{$letter}'>{$this->lang->words['mlist_view_all_txt']}</a></li>
| |
| 149 | <else /> | |
| 150 | <li><a href='{parse url="app=members&module=list" template="members_list" base="public" seotitle="false"}' title='{$this->lang->words['mlist_view_all_title']}'>{$this->lang->words['mlist_view_all_txt']}</a></li>
| |
| 151 | </if> | |
| 152 | <foreach loop="chars:range(65,90) as $char"> | |
| 153 | <if test="letterdefault:|:$letter = strtoupper(chr($char))"> | |
| 154 | <li <if test="selected:|:strtoupper( $this->request['quickjump'] ) == $letter">class='active'</if>><a href='{parse url="{$url}&quickjump={$letter}" template="members_list" base="public" seotitle="false"}' title='{$this->lang->words['mlist_view_start_title']} {$letter}'>{$letter}</a></li>
| |
| 155 | </if> | |
| 156 | </foreach> | |
| 157 | </ul> | |
| 158 | </div> | |
| 159 | <div class='ipsVerticalTabbed_content ipsLayout_content'> | |
| 160 | <div class='ipsBox_container ipsPad' id='mlist_content'> | |
| 161 | <ul class='ipsMemberList'> | |
| 162 | <if test="showmembers:|:is_array( $members ) and count( $members )"> | |
| 163 | ||
| 164 | <foreach loop="members:$members as $member"> | |
| 165 | <li id='member_id_{$member['member_id']}' class='ipsPad clearfix member_entry {parse striping="memberStripe"}'>
| |
| 166 | <a href='{parse url="showuser={$member['member_id']}" template="showuser" seotitle="{$member['members_seo_name']}" base="public"}' title='{$this->lang->words['view_profile']}' class='ipsUserPhotoLink left'><img src='{$member['pp_small_photo']}' alt="{parse expression="sprintf($this->lang->words['users_photo'],$member['members_display_name'])"}" class='ipsUserPhoto ipsUserPhoto_medium' /></a>
| |
| 167 | <div class='ipsBox_withphoto'> | |
| 168 | <ul class='ipsList_inline right'> | |
| 169 | <if test="weAreSupmod:|:$this->memberData['g_is_supmod'] == 1 && $member['member_id'] != $this->memberData['member_id']"> | |
| 170 | <li><a href='{parse url="app=core&module=modcp&do=editmember&auth_key={$this->member->form_hash}&mid={$member['member_id']}&pf={$member['member_id']}" base="public"}' class='ipsButton_secondary'>{$this->lang->words['edit_member']}</a></li>
| |
| 171 | </if> | |
| 172 | <if test="notus:|:$this->memberData['member_id'] AND $this->memberData['member_id'] != $member['member_id'] && $this->settings['friends_enabled'] AND $this->memberData['g_can_add_friends']"> | |
| 173 | <if test="addfriend:|:IPSMember::checkFriendStatus( $member['member_id'] )"> | |
| 174 | <li class='mini_friend_toggle is_friend' id='friend_mlist_{$member['member_id']}'><a href='{parse url="app=members&module=list&module=profile&section=friends&do=remove&member_id={$member['member_id']}&secure_key={$this->member->form_hash}" base="public"}' title='{$this->lang->words['remove_friend']}' class='ipsButton_secondary'>{parse replacement="remove_friend"}</a></li>
| |
| 175 | <else /> | |
| 176 | <li class='mini_friend_toggle is_not_friend' id='friend_mlist_{$member['member_id']}'><a href='{parse url="app=members&module=list&module=profile&section=friends&do=add&member_id={$member['member_id']}&secure_key={$this->member->form_hash}" base="public"}' title='{$this->lang->words['add_friend']}' class='ipsButton_secondary'>{parse replacement="add_friend"}</a></li>
| |
| 177 | </if> | |
| 178 | </if> | |
| 179 | <if test="sendpm:|:$this->memberData['g_use_pm'] AND $this->memberData['members_disable_pm'] == 0 AND IPSLib::moduleIsEnabled( 'messaging', 'members' ) && $member['member_id'] != $this->memberData['member_id']"> | |
| 180 | <li class='pm_button' id='pm_xxx_{$member['pp_member_id']}'><a href='{parse url="app=members&module=list&module=messaging&section=send&do=form&fromMemberID={$member['pp_member_id']}" base="public"}' title='{$this->lang->words['pm_member']}' class='ipsButton_secondary'>{parse replacement="send_msg"}</a></li>
| |
| 181 | </if> | |
| 182 | <li><a href='{parse url="app=core&module=search&do=user_activity&mid={$member['member_id']}" base="public"}' title='{$this->lang->words['gbl_find_my_content']}' class='ipsButton_secondary'>{parse replacement="find_topics_link"}</a></li>
| |
| 183 | <if test="blog:|:$member['has_blog'] AND IPSLib::appIsInstalled( 'blog' )"> | |
| 184 | <li><a href='{parse url="app=blog&module=display&section=blog&show_members_blogs={$member['member_id']}" base="public"}' title='{$this->lang->words['view_blog']}' class='ipsButton_secondary'>{parse replacement="blog_link"}</a></li>
| |
| 185 | </if> | |
| 186 | <if test="gallery:|:$member['has_gallery'] AND IPSLib::appIsInstalled( 'gallery' )"> | |
| 187 | <li><a href='{parse url="app=gallery&user={$member['member_id']}" template="useralbum" seotitle="{$member['members_seo_name']}" base="public"}' title='{$this->lang->words['view_gallery']}' class='ipsButton_secondary'>{parse replacement="gallery_link"}</a></li>
| |
| 188 | </if> | |
| 189 | </ul> | |
| 190 | ||
| 191 | <h3 class='ipsType_subtitle'> | |
| 192 | <strong><a href='{parse url="showuser={$member['member_id']}" template="showuser" seotitle="{$member['members_seo_name']}" base="public"}' title='{$this->lang->words['view_profile']}'>{$member['members_display_name']}</a></strong>
| |
| 193 | ||
| 194 | <if test="rating:|:$this->settings['pp_allow_member_rate'] && $this->request['pp_rating_real']"> | |
| 195 | <span class='rating'> | |
| 196 | <if test="rate1:|:$member['pp_rating_real'] >= 1">{parse replacement="rate_on"}<else />{parse replacement="rate_off"}</if><if test="rate2:|:$member['pp_rating_real'] >= 2">{parse replacement="rate_on"}<else />{parse replacement="rate_off"}</if><if test="rate3:|:$member['pp_rating_real'] >= 3">{parse replacement="rate_on"}<else />{parse replacement="rate_off"}</if><if test="rate4:|:$member['pp_rating_real'] >= 4">{parse replacement="rate_on"}<else />{parse replacement="rate_off"}</if><if test="rate5:|:$member['pp_rating_real'] >= 5">{parse replacement="rate_on"}<else />{parse replacement="rate_off"}</if>
| |
| 197 | </span> | |
| 198 | </if> | |
| 199 | </h3> | |
| 200 | <if test="repson:|:$this->settings['reputation_enabled'] && $this->settings['reputation_show_profile'] && $member['pp_reputation_points'] !== null"> | |
| 201 | <if test="norep:|:$member['pp_reputation_points'] == 0 || !$member['pp_reputation_points']"> | |
| 202 | <p class='reputation zero ipsType_small left' data-tooltip="{parse expression="sprintf( $this->lang->words['member_has_x_rep'], $member['members_display_name'], $member['pp_reputation_points'] )"}">
| |
| 203 | </if> | |
| 204 | <if test="posrep:|:$member['pp_reputation_points'] > 0"> | |
| 205 | <p class='reputation positive ipsType_small left' data-tooltip="{parse expression="sprintf( $this->lang->words['member_has_x_rep'], $member['members_display_name'], $member['pp_reputation_points'] )"}">
| |
| 206 | </if> | |
| 207 | <if test="negrep:|:$member['pp_reputation_points'] < 0"> | |
| 208 | <p class='reputation negative ipsType_small left' data-tooltip="{parse expression="sprintf( $this->lang->words['member_has_x_rep'], $member['members_display_name'], $member['pp_reputation_points'] )"}">
| |
| 209 | </if> | |
| 210 | <span class='number'>{$member['pp_reputation_points']}</span>
| |
| 211 | </p> | |
| 212 | </if> | |
| 213 | <div class='left desc line_height clearfix' style='margin-top: 5px;'> | |
| 214 | <span class='left' style='min-width: 110px; padding-right: 10px;'>{IPSMember::makeNameFormatted( $member['group'], $member['member_group_id'] )}</span><span class='left' style='min-width: 170px; padding-right: 10px;'><span class='desc lighter'>{$this->lang->words['member_joined']}:</span> {parse date="$member['joined']" format="joined"}</span><span class='left'><if test="filterViews:|:$this->request['sort_key'] == 'members_profile_views'">{parse format_number="$member['members_profile_views']"} {$this->lang->words['m_views']}<else />{parse format_number="$member['posts']"} {$this->lang->words['member_posts']}</if></span>
| |
| 215 | </div> | |
| 216 | </div> | |
| 217 | </li> | |
| 218 | </foreach> | |
| 219 | <else /> | |
| 220 | <li class='no_messages'> | |
| 221 | {$this->lang->words['no_results']}
| |
| 222 | </li> | |
| 223 | </if> | |
| 224 | </ul> | |
| 225 | </div> | |
| 226 | </div> | |
| 227 | </div> | |
| 228 | {parse replacement="box_end"}
| |
| 229 | <script type='text/javascript'> | |
| 230 | $("mlist_content").setStyle( { minHeight: $('mlist_tabs').measure('margin-box-height') + 5 + "px" } );
| |
| 231 | </script> | |
| 232 | {$pages} |