1
0
mirror of https://github.com/phpbb/phpbb.git synced 2025-05-05 15:16:16 +02:00

[ticket/7291] Use template loop for character list, to avoid double &first_char

PHPBB3-7291
This commit is contained in:
Joas Schilling 2011-07-14 22:29:27 +02:00
parent 1ace10ab92
commit 91b20ddba5
3 changed files with 37 additions and 37 deletions

View File

@ -1293,13 +1293,6 @@ switch ($mode)
$total_users = $config['num_users'];
}
$s_char_options = '<option value=""' . ((!$first_char) ? ' selected="selected"' : '') . '>&nbsp; &nbsp;</option>';
for ($i = 97; $i < 123; $i++)
{
$s_char_options .= '<option value="' . chr($i) . '"' . (($first_char == chr($i)) ? ' selected="selected"' : '') . '>' . chr($i-32) . '</option>';
}
$s_char_options .= '<option value="other"' . (($first_char == 'other') ? ' selected="selected"' : '') . '>' . $user->lang['OTHER'] . '</option>';
// Build a relevant pagination_url
$params = $sort_params = array();
@ -1329,6 +1322,7 @@ switch ($mode)
'first_char' => array('first_char', ''),
);
$u_first_char_params = array();
foreach ($check_params as $key => $call)
{
if (!isset($_REQUEST[$key]))
@ -1340,6 +1334,10 @@ switch ($mode)
$param = urlencode($key) . '=' . ((is_string($param)) ? urlencode($param) : $param);
$params[] = $param;
if ($key != 'first_char')
{
$u_first_char_params[] = $param;
}
if ($key != 'sk' && $key != 'sd')
{
$sort_params[] = $param;
@ -1359,6 +1357,27 @@ switch ($mode)
unset($search_params, $sort_params);
$u_first_char_params = implode('&amp;', $u_first_char_params);
$u_first_char_params .= ($u_first_char_params) ? '&amp;' : '';
$first_characters = array();
$first_characters[''] = $user->lang['ALL'];
for ($i = 97; $i < 123; $i++)
{
$first_characters[chr($i)] = chr($i - 32);
}
$first_characters['other'] = $user->lang['OTHER'];
foreach ($first_characters as $char => $desc)
{
$template->assign_block_vars('first_char', array(
'DESC' => $desc,
'VALUE' => $char,
'S_SELECTED' => ($first_char == $char) ? true : false,
'U_SORT' => append_sid("{$phpbb_root_path}memberlist.$phpEx", $u_first_char_params . 'first_char=' . $char) . '#memberlist',
));
}
// Some search user specific data
if ($mode == 'searchuser' && ($config['load_search'] || $auth->acl_get('a_')))
{
@ -1603,7 +1622,6 @@ switch ($mode)
'S_LEADERS_SET' => $leaders_set,
'S_MODE_SELECT' => $s_sort_key,
'S_ORDER_SELECT' => $s_sort_dir,
'S_CHAR_OPTIONS' => $s_char_options,
'S_MODE_ACTION' => $pagination_url)
);
}

View File

@ -34,34 +34,11 @@
<li>
<!-- IF U_FIND_MEMBER and not S_SEARCH_USER --><a href="{U_FIND_MEMBER}">{L_FIND_USERNAME}</a> &bull; <!-- ELSEIF S_SEARCH_USER and U_HIDE_FIND_MEMBER and not S_IN_SEARCH_POPUP --><a href="{U_HIDE_FIND_MEMBER}">{L_HIDE_MEMBER_SEARCH}</a> &bull; <!-- ENDIF -->
<strong style="font-size: 0.95em;"><a href="{S_MODE_ACTION}&amp;first_char=">{L_ALL}</a>&nbsp;
<a href="{S_MODE_ACTION}&amp;first_char=a#memberlist">A</a>&nbsp;
<a href="{S_MODE_ACTION}&amp;first_char=b#memberlist">B</a>&nbsp;
<a href="{S_MODE_ACTION}&amp;first_char=c#memberlist">C</a>&nbsp;
<a href="{S_MODE_ACTION}&amp;first_char=d#memberlist">D</a>&nbsp;
<a href="{S_MODE_ACTION}&amp;first_char=e#memberlist">E</a>&nbsp;
<a href="{S_MODE_ACTION}&amp;first_char=f#memberlist">F</a>&nbsp;
<a href="{S_MODE_ACTION}&amp;first_char=g#memberlist">G</a>&nbsp;
<a href="{S_MODE_ACTION}&amp;first_char=h#memberlist">H</a>&nbsp;
<a href="{S_MODE_ACTION}&amp;first_char=i#memberlist">I</a>&nbsp;
<a href="{S_MODE_ACTION}&amp;first_char=j#memberlist">J</a>&nbsp;
<a href="{S_MODE_ACTION}&amp;first_char=k#memberlist">K</a>&nbsp;
<a href="{S_MODE_ACTION}&amp;first_char=l#memberlist">L</a>&nbsp;
<a href="{S_MODE_ACTION}&amp;first_char=m#memberlist">M</a>&nbsp;
<a href="{S_MODE_ACTION}&amp;first_char=n#memberlist">N</a>&nbsp;
<a href="{S_MODE_ACTION}&amp;first_char=o#memberlist">O</a>&nbsp;
<a href="{S_MODE_ACTION}&amp;first_char=p#memberlist">P</a>&nbsp;
<a href="{S_MODE_ACTION}&amp;first_char=q#memberlist">Q</a>&nbsp;
<a href="{S_MODE_ACTION}&amp;first_char=r#memberlist">R</a>&nbsp;
<a href="{S_MODE_ACTION}&amp;first_char=s#memberlist">S</a>&nbsp;
<a href="{S_MODE_ACTION}&amp;first_char=t#memberlist">T</a>&nbsp;
<a href="{S_MODE_ACTION}&amp;first_char=u#memberlist">U</a>&nbsp;
<a href="{S_MODE_ACTION}&amp;first_char=v#memberlist">V</a>&nbsp;
<a href="{S_MODE_ACTION}&amp;first_char=w#memberlist">W</a>&nbsp;
<a href="{S_MODE_ACTION}&amp;first_char=x#memberlist">X</a>&nbsp;
<a href="{S_MODE_ACTION}&amp;first_char=y#memberlist">Y</a>&nbsp;
<a href="{S_MODE_ACTION}&amp;first_char=z#memberlist">Z</a>&nbsp;
<a href="{S_MODE_ACTION}&amp;first_char=other">#</a></strong>
<strong style="font-size: 0.95em;">
<!-- BEGIN first_char -->
<a href="{first_char.U_SORT}">{first_char.DESC}</a>&nbsp;
<!-- END first_char -->
</strong>
</li>
<li class="rightside pagination">
{TOTAL_USERS} &bull;

View File

@ -14,7 +14,12 @@
<form method="post" name="charsearch" action="{S_MODE_ACTION}">
<table width="100%" cellspacing="1">
<tr>
<td align="{S_CONTENT_FLOW_BEGIN}"><span class="genmed">{L_USERNAME_BEGINS_WITH}: </span><select name="first_char" onchange="this.form.submit();">{S_CHAR_OPTIONS}</select>&nbsp;<input type="submit" name="char" value="{L_DISPLAY}" class="btnlite" /></td>
<td align="{S_CONTENT_FLOW_BEGIN}"><span class="genmed">{L_USERNAME_BEGINS_WITH}: </span>
<select name="first_char" onchange="this.form.submit();">
<!-- BEGIN first_char -->
<option value="{first_char.VALUE}"<!-- IF first_char.S_SELECTED --> selected="selected"<!-- ENDIF -->>{first_char.DESC}</option>
<!-- END first_char -->
</select>&nbsp;<input type="submit" name="char" value="{L_DISPLAY}" class="btnlite" /></td>
<!-- IF U_FIND_MEMBER and not S_SEARCH_USER -->
<td class="genmed" align="{S_CONTENT_FLOW_END}"><a href="{U_FIND_MEMBER}">{L_FIND_USERNAME}</a></td>
<!-- ELSEIF S_SEARCH_USER and U_HIDE_FIND_MEMBER and not S_IN_SEARCH_POPUP -->