electron |
Отправлено: 28 сентября 2010 — 13:06
|
ExBB Team
Покинул форум
Сообщений всего: 3917
Дата рег-ции: Февр. 2009
Репутация: 341
|
значится так.... собрал всю инструкцию в один файл. выкладываю в этом посте.
автор мода - RomAndry.
прикрепляю архив. в нем:
- инструкция по установке на примере стиля InvisionExBB.
- готовые файлы banmemblist.tpl и banmemblist_data.tpl из п. 11 , 12 инструкции, которые надо залить в папку InvisionExBB . при использовании уже готовых файлов из архива, п. 11 и 12 инструкции не выполнять. если у вас шкурка не InvisionExBB, откройте эти файлы блокнотом и замените в них все "InvisionExBB" на имя вашей шкурки.
- рисунок banmembers.gif , который используется в шапке перед надписью Banlist . его надо залить в папку im , что в папке со шкуркой. т.е. если у вас стиль InvisionExBB, то заливать его надо в папку templates/InvisionExBB/im
напомню, что данная тема - не отдельный мод, а усовершенствование мода Бан пользователей модераторами . Перед установкой данного дополнения надо установить указанный мод.
отредактировано 30.09.2010 : данный пост прикрепляю, чтоб он был всегда вверху темы |
|
|
electron |
Отправлено: 29 сентября 2010 — 09:03
|
ExBB Team
Покинул форум
Сообщений всего: 3917
Дата рег-ции: Февр. 2009
Репутация: 341
|
msnavigator, первое что бросается в глаза при сравнении моего файла profile.php и вашего:
1. после
CODE:if ($is_moder && !$to_moder) {
у вас не то что должно быть.
2. CODE:$moders_ban = ' [<a href="profile.php?action=show&member='.$user_id.'&ban=yes">'.(($user['status'] == 'banned') ? $fm->LANG['UserUnban'] : $fm->LANG['UserBan']).'</a>]';
у вас заменен на
CODE:// $moders_ban= '<a href="..........';
ее надо было закоментировать // , т.е. выглядеть она должна так:
CODE://$moders_ban = ' [<a href="profile.php?action=show&member='.$user_id.'&ban=yes">'.(($user['status'] == 'banned') ? $fm->LANG['UserUnban'] : $fm->LANG['UserBan']).'</a>]';
или удалите ее вообще.
3. далее,
CODE:if ($fm->_Boolean1('ban')) {
$user = $fm->_Read2Write($fp_user, 'members/'.$user_id.'.php');
$user['status'] = ($user['status'] == 'me') ? 'banned' : 'me';
$fm->_Write($fp_user, $user);
$fm->_WriteLog(sprintf(($user['status'] == 'banned') ? $fm->LANG['UserBanLog'] : $fm->LANG['UserUnbanLog'], '<b>'.$fm->user['name'].'</b>', '<b>'.$user['name'].'</b>'), 2); // Запись в лог
$fm->_Message($fm->LANG['UsersBan'], sprintf(($user['status'] == 'banned') ? $fm->LANG['UserBanned'] : $fm->LANG['UserUnbanned'], $user['name']), 'profile.php?action=show&member='.$user_id);
}
}
у вас стоит не там где надо.
что имеем в итоге:
в вашем измененном файле надо вам найти строку:
CODE:if ($is_moder && !$to_moder) {
и блок строк:
CODE: if (!isset($user['title']) || !$user['title']) {
switch ($user['status']) {
case 'ad' : $user['title'] = $fm->LANG['Admin'];
break;
case 'sm' : $user['title'] = $fm->LANG['SuperModer'];
break;
case 'me' : $user['title'] = $fm->LANG['User'];
break;
case 'banned' : $user['title'] = $fm->LANG['Banned'];
break;
}
}
все что между ними стереть и согласно инструкции воткнуть вот такой код:
разверни меня (Отобразить)CODE:// $moders_ban = ' [<a href="profile.php?action=show&member='.$user_id.'&ban=yes">'.(($user['status'] == 'banned') ? $fm->LANG['UserUnban'] : $fm->LANG['UserBan']).'</a>]';
$moders_ban= '';
if($user['status'] == 'banned' AND file_exists('data/banned_users/'.$user_id.'.php')) {
$usrban = $fm->_Read('data/banned_users/'.$user_id.'.php');
$moders_ban.= '<br />'.$fm->LANG['BanReason'].': <b>'.$usrban['reason'].'</b> '.$fm->LANG['BanDays'].' <b>'.$usrban['days'].'</b> '.$fm->LANG['BanDateEnd'].': <b>'.$fm->_DateFormat($usrban['end']).'</b>';
}
$moders_ban.= '<hr/><form action="profile.php?action=show&member='.$user_id.'&ban=yes" method="POST">';
if($user['status'] == 'banned') {
$moders_ban.= '<input type="hidden" name="unban" value="1">';
}else {
$moders_ban.= $fm->LANG['BanDays'].': <input type="text" size="5" name="days"> ';
$moders_ban.= $fm->LANG['BanReason'].': <input type="text" size="70" name="reason">';
}
$moders_ban.= '<input type="submit" value="'.(($user['status'] == 'banned') ? $fm->LANG['BanUnSet'] : $fm->LANG['BanSet']).'">';
$moders_ban.= '</form>';
if ($fm->_Boolean1('ban') AND ($user['status'] == 'me' OR $user['status'] == 'banned')) {
$days = isset($fm->input['days']) ? abs(intval($fm->input['days'])) : 0;
$reason = isset($fm->input['reason']) ? $fm->_String('reason') : '';
$unban = isset($fm->input['unban']) ? intval($fm->input['unban']) : 0;
if($reason!='' OR $unban==1) {
if($days>0 OR $unban==1) {
$days = $unban==1 ? 0 : $days;
$user_ban = $fm->_Read2Write($fp_ban, 'data/banned_users/'.$user_id.'.php');
$user_ban['user_id'] = $user_id;
$user_ban['user_name'] = $user['name'];
$user_ban['days'] = $days;
$user_ban['date'] = time();
$user_ban['end'] = mktime(0,0,0,date('m'),date('d')+$days,date('Y'));
$user_ban['reason'] = $unban==1 ? $user_ban['reason'] : ($reason ? $reason : '');
$user_ban['who_id'] = $fm->user['id'];
$user_ban['who_name'] = (isset($fm->LANG['Pun'.$fm->user['status']]) ? $fm->LANG['Pun'.$fm->user['status']].' ' : '').$fm->user['name'];
if($unban==1) {
$user_ban['whounban_id'] = $fm->user['id'];
$user_ban['whounban_name'] = (isset($fm->LANG['Pun'.$fm->user['status']]) ? $fm->LANG['Pun'.$fm->user['status']].' ' : '').$fm->user['name'];
}
$fm->_Write($fp_ban, $user_ban);
}else{
$fm->_Message($fm->LANG['MainMsg'], $fm->LANG['BanErrorDays']);
}
}else{
$fm->_Message($fm->LANG['MainMsg'], $fm->LANG['BanErrorReason']);
}
}
if ($fm->_Boolean1('ban')) {
$user = $fm->_Read2Write($fp_user, 'members/'.$user_id.'.php');
$user['status'] = ($user['status'] == 'me') ? 'banned' : 'me';
$fm->_Write($fp_user, $user);
$fm->_WriteLog(sprintf(($user['status'] == 'banned') ? $fm->LANG['UserBanLog'] : $fm->LANG['UserUnbanLog'], '<b>'.$fm->user['name'].'</b>', '<b>'.$user['name'].'</b>'), 2); // Запись в лог
$fm->_Message($fm->LANG['UsersBan'], sprintf(($user['status'] == 'banned') ? $fm->LANG['UserBanned'] : $fm->LANG['UserUnbanned'], $user['name']), 'profile.php?action=show&member='.$user_id);
}
}
собственно, в других ваших файлах программа-сравнивалка ошибок не выдала |
|
|
саня |
Отправлено: 5 мая 2011 — 13:18
|
Advanced Member
Покинул форум
Сообщений всего: 495
Дата рег-ции: Апр. 2011
Репутация: 20
|
electron пишет:около значка должна быть ссылка на страницу бан-листа (типа как на этом форуме ссылка на чат) . проверяйте правильность изменений в языковых файлах из папки language/russian и в файле logos.tpl
в logos.tpl строчки
Цитата:<a href="tools.php?action=members" title="{$fm->LANG['Users']}"><img src="./templates/InvisionExBB/im/members...........
нет, они там подругому написаны
Цитата:<img src="./templates/InvisionExBB/im/banmembers.gif" border="0" alt="/> <a href="tools.php?a...........
сначала переделал строку как в моём файле, хотя и было всё правильно но тем не менее не работало, поставил как в инструкции всё встало на свой места. |
|
|
|