Уважаемые пользователи!
C 7 ноября 2020 года phpBB Group прекратила выпуск обновлений и завершила дальнейшее развитие phpBB версии 3.2.
С 1 августа 2024 года phpBB Group прекращает поддержку phpBB 3.2 на официальном сайте.
Сайт официальной русской поддержки phpBB Guru продолжит поддержку phpBB 3.2 до 31 декабря 2024 года.
С учетом этого, настоятельно рекомендуется обновить конференции до версии 3.3.

ADMIN_USERLIST + YELLOW_CARD

Форум для авторов модов для phpBB 2.0.x.
quazi
phpBB 2.0.2
Сообщения: 306
Стаж: 19 лет 1 месяц

ADMIN_USERLIST + YELLOW_CARD

Сообщение quazi »

выставляю на суд общественности совместную модификацию модов ADMIN_USERLIST и YELLOW_CARD

0. специфика каждого из них не изменилась (добавление)
1. эта модификация позволяет админу видеть и сортировать пользователей по количеству предупреждений
2. исправляет следующую ошибку - при смене способа сортировки элементы SELECT OPTION не изменяют своего состояния selected="selected"

Код: Выделить всё

#
#-----открыть файл admin/admin_userlist.php
#

#
#----найти строку
#
$order_by = "ORDER BY $sort $order ";

#
#-----заменить на
#
$order_by = "ORDER BY $sort $sort_order ";

#
#-----найти строку
#
$hidden_fields .= '<input type="hidden" name="alphanum" value="' . $alphanum . '">';

#
#-----добавить после
#
                //
                // Start of modification
                //
                $post_sort_values = array(
                    'user_id' => $lang['User_id'],
                    'user_active' => $lang['Active'],
                    'username' => $lang['Username'],
                    'user_regdate' => $lang['Joined'],
                    'user_session_time' => $lang['Last_activity'],
                    'user_level' => $lang['User_level'],
                    'user_posts' => $lang['Posts'],
                    'user_rank' => $lang['Rank'],
                    'user_email' => $lang['Email'],
                    'user_warnings' => $lang['Warning_Count'],
                );
                $post_sort_select = '<select name="sort" class="post">';
                foreach ($post_sort_values as $k => $v)
                {
                    $post_sort_select .= '<option value="' . $k . '"' . (($k == $sort) ? ' selected="selected"' : '') . '>' .
                }
                $post_sort_select .= '</select>';
                $post_order_select = '<select name="order" class="post">';
                foreach (array('ASC' => $lang['Ascending'], 'DESC' => $lang['Descending']) as $k => $v)
                {
                    $post_order_select .= '<option value="' . $k . '"' . (($k == $sort_order) ? ' selected="selected"' : '') .
                }
                $post_order_select .= '</select>';
                //
                // End of modification
                //

#
#-----найти строку
#
                $template->assign_vars(array(

#
#-----добавить после
#
                        'L_POST_SORT_SELECT' => $post_sort_select,
                        'L_POST_ORDER_SELECT' => $post_order_select,
                        'L_WARNING' => $lang['Warning_Count'],

#
#-----найти строку
#
               $alpha_letters = range('A','Z');

#
#-----добавить после
#
                $alpha_russian = range('А', 'Я');

#
#-----найти в строку
#
                $alpha_range = array_merge($alpha_start, $alpha_letters);

#
#------в строке найти
#
);

#
#-----в строке заменить на
#
, $alpha_russian);

#
#-----найти
#
                               'ACTIVE' => ( $row['user_active'] == TRUE ) ? $lang['Yes'] : $lang['No'],

#
#----добавить после
#
                               'WARNINGS' => $row['user_warnings'],

#
#-----открыть файл templates/subSilver/admin/userlist_body.tpl
#

#
#-----найти
#
                <td nowrap="nowrap"><select name="sort" class="post">
                        <option value="user_id">{L_USER_ID}</option>
                        <option value="user_active">{L_ACTIVE}</option>
                        <option value="username">{L_USERNAME}</option>
                        <option value="user_regdate">{L_JOINED}</option>
                        <option value="user_session_time">{L_ACTIVTY}</option>
                        <option value="user_level">{L_USER_LEVEL}</option>
                        <option value="user_posts">{L_POSTS}</option>
                        <option value="user_rank">{L_RANK}</option>
                        <option value="user_email">{L_EMAIL}</option>
                </select></td>
                <td nowrap="nowrap"><select name="order" class="post">
                        <option value="ASC">{L_ASCENDING}</option>
                        <option value="DESC">{L_DESCENDING}</option>
                </select></td>

#
#-----заменить на
#
                <td nowrap="nowrap">{L_POST_SORT_SELECT}</td>
                <td nowrap="nowrap">{L_POST_ORDER_SELECT}</td>

#
#------найти строку
#
                <th width="15%">{L_ACTIVE}</th>

#
#------добавить после
#
                <th width="15%">{L_WARNINGS}</th>

#
#------найти
#
                <td class="{user_row.ROW_CLASS}"><span class="gen">{user_row.ACTIVE}</span></td>

#
#-----добавить после
#
                <td class="{user_row.ROW_CLASS}"><span class="gen">{user_row.WARNINGS}</span></td>

#
#----найти
#
                <td class="{user_row.ROW_CLASS}">&nbsp;</td>
                <td class="{user_row.ROW_CLASS}" colspan="4" width="100%">

#-----во второй строке найти
#
colspan="4"

#
#-----в строке заменить на
#
colspan="5"

#
#-----открыть файл language/lang_russian/lang_main.php
#

#
#-----найти
#
$lang['User_Not_Active'] = 'Пользователь не активен';

#
#-----добавить после
#
$lang['Warning_Count'] = 'Предупреждения';
возможно я в чем-то ошибся когда постил, все-таки копи-пастом из своего готового кода выдирал, посему сильно не пинайте ногами

Вернуться в «Для авторов (phpBB 2.0.x)»