Меня сомнение взяло в правильности проводимых модификаций, хотя на четыре форума ставил, два из которых мои, два не мои – претензий нет. Но сомнения капитальные, а все из-за не точного руководства по установке.
Код: Выделить всё
search.php
#
#-----[ FIND ]------------------------------------------------
#
$sql = "SELECT m.post_id
FROM
#
#-----[ BEFORE, ADD ]-----------------------------------------
#
$search_msg_only .= ($only_bluecards) ? " AND p.post_bluecard>0 AND m.post_id=p.post_id " : "";
#
#-----[ AFTER, ADD ]------------------------------------------
#
" . (($only_bluecards) ? ','.POSTS_TABLE . ' p ' : '') . "
#
#-----[ FIND ]------------------------------------------------
#
Модифицированный фрагмент:
Код: Выделить всё
if ( !strstr($multibyte_charset, $lang['ENCODING']) )
{
$match_word = str_replace('*', '%', $split_search[$i]);
$search_msg_only .= ($only_bluecards) ? " AND p.post_bluecard>0 AND m.post_id=p.post_id " : "";
$sql = "SELECT m.post_id
FROM " . SEARCH_WORD_TABLE . " w, " . SEARCH_MATCH_TABLE . " m
" . (($only_bluecards) ? ','.POSTS_TABLE . ' p ' : '') . "
WHERE w.word_text LIKE '$match_word'
AND m.word_id = w.word_id
AND w.word_common <> 1
$search_msg_only";
}
else
{
=============================
Код: Выделить всё
admin/admin_ug_auth.php
#
#-----[ FIND ]------------------------------------------------
#
SET auth_view = 0,
WHERE
#
#-----[ IN-LINE BEFORE, ADD ]----------------------------------
#
, auth_ban = 0, auth_greencard = 0, auth_bluecard = 0
#
Но это в файле повторяется дважды (SET auth_view = 0, WHERE), так вот дважды нужно производить операцию модификации или нет?
И правильно ли она выполнена на данном этапе, т.е. как сейчас?
Модифицированный фрагмент:
Код: Выделить всё
SET auth_view = 0,
WHERE
//
// Delete any entries in auth_access, they are not required if user is becoming an
// admin
//
$sql = "UPDATE " . AUTH_ACCESS_TABLE . "
SET auth_view = 0, auth_read = 0, auth_post = 0, auth_reply = 0, auth_edit = 0, auth_delete = 0, auth_sticky = 0, auth_announce = 0, auth_ban = 0, auth_greencard = 0, auth_bluecard = 0
WHERE group_id = $group_id";
if ( !($result = $db->sql_query($sql)) )
{
message_die(GENERAL_ERROR, "Couldn't update auth access", "", __LINE__, __FILE__, $sql);
}
=============================
Но опять это $auth_fields = кусок несколько раз повторяется, где модифицировать?
Код: Выделить всё
includes/auth.php
#
#-----[ FIND ]------------------------------------------------
#
$auth_fields =
#
#-----[ IN-LINE FIND ]----------------------------------------
#
);
#
#-----[ IN-LINE BEFORE, ADD ]---------------------------------
#
, 'auth_ban', 'auth_greencard', 'auth_bluecard'
Код: Выделить всё
function auth($type, $forum_id, $userdata, $f_access = '')
{
global $db, $lang;
switch( $type )
{
case AUTH_ALL:
$a_sql = 'a.auth_view, a.auth_read, a.auth_post, a.auth_reply, a.auth_edit, a.auth_delete, a.auth_sticky, a.auth_announce, a.auth_vote, a.auth_pollcreate, a.auth_ban, a.auth_greencard, a.auth_bluecard';
$auth_fields = array('auth_view', 'auth_read', 'auth_post', 'auth_reply', 'auth_edit', 'auth_delete', 'auth_sticky', 'auth_announce', 'auth_vote', 'auth_pollcreate', 'auth_ban', 'auth_greencard', 'auth_bluecard');
break;
case AUTH_VIEW:
$a_sql = 'a.auth_view';
$auth_fields = array('auth_view');
break;
case AUTH_READ:
$a_sql = 'a.auth_read';
$auth_fields = array('auth_read');
break;
case AUTH_POST:
$a_sql = 'a.auth_post';
$auth_fields = array('auth_post');
break;
case AUTH_REPLY:
$a_sql = 'a.auth_reply';
$auth_fields = array('auth_reply');
break;
case AUTH_EDIT:
$a_sql = 'a.auth_edit';
$auth_fields = array('auth_edit');
break;
case AUTH_DELETE:
$a_sql = 'a.auth_delete';
$auth_fields = array('auth_delete');
break;
case AUTH_ANNOUNCE:
$a_sql = 'a.auth_announce';
$auth_fields = array('auth_announce');
break;
case AUTH_STICKY:
$a_sql = 'a.auth_sticky';
$auth_fields = array('auth_sticky');
break;
case AUTH_POLLCREATE:
$a_sql = 'a.auth_pollcreate';
$auth_fields = array('auth_pollcreate');
break;
case AUTH_VOTE:
$a_sql = 'a.auth_vote';
$auth_fields = array('auth_vote');
break;
case AUTH_ATTACH:
break;
case AUTH_BAN:
$a_sql = 'a.auth_ban';
$auth_fields = array('auth_ban');
break;
case AUTH_GREENCARD:
$a_sql = 'a.auth_greencard';
$auth_fields = array('auth_greencard');
break;
case AUTH_BLUECARD:
$a_sql = 'a.auth_bluecard';
$auth_fields = array('auth_bluecard');
break;
default:
break;
}
Далее вот еще вопрос по самим карточкам, вернее по gif.
Смотрите, их с модом поставляется:

позволяет записывать нарушителя правил в Ban-List

позволяет модераторам форумов делать нарушителям правил предупреждения. Всего можно сделать ограниченное число предупреждения, т.к. после n-го предупреждения система автоматически запишет нарушителя в Ban-List.

позволяет снять Warning или вычеркнуть из Ban-List

нажав на нее, модератору форума будет выслано почтовое сообщение e-mail с указанием темы и сообщения, на которое есть жалоба.

обнуляет счетчик жалоб на сообщения в темах форумов.
?????????????? Где эта карта, вернее она совсем не используется, но есть.
Не менее важный вопрос!!! Как можно сделать так, чтобы модераторы не могли друг другу делать предупреждения и Ban? Хотелось бы сделать точно также, как модератор видит карты напротив администратора, т.е. он видит только синюю карту. Тоже нужно и для модераторов.