velform Опубликовано 12 Июля 2007 Жалоба Поделиться Опубликовано 12 Июля 2007 Как сделать что б все пользователи видели чужие и свои предупреждения? Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
0 Aykroyd Опубликовано 15 Июля 2007 Жалоба Поделиться Опубликовано 15 Июля 2007 Тоже очень бы хотелось узнать как это реализовать.Поиском найти что-то не получается.) Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
0 Nutsyy Опубликовано 15 Июля 2007 Жалоба Поделиться Опубликовано 15 Июля 2007 (изменено) Да, действительно, как это реализовать, и ещё желатьельно, что бы и гости могли видить! Изменено 15 Июля 2007 пользователем Nutsyy Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
0 Aykroyd Опубликовано 15 Июля 2007 Жалоба Поделиться Опубликовано 15 Июля 2007 В общем, чтобы ВСЕ могли их видеть. )Моральные аспекты – в сторону... )) Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
0 Sannis Опубликовано 15 Июля 2007 Жалоба Поделиться Опубликовано 15 Июля 2007 (изменено) Было, это точно. Дубль для 2.1: 1. Открываем ./sources/action_public/topics.php, ищем if ( ( isset($this->ipsclass->member['_moderator'][ $this->topic['forum_id'] ]['allow_warn']) AND $this->ipsclass->member['_moderator'][ $this->topic['forum_id'] ]['allow_warn'] ) OR ( $this->ipsclass->member['g_is_supmod'] == 1 ) OR ( $this->ipsclass->vars['warn_show_own'] and ( $this->ipsclass->member['id'] == $member['id'] ) ) ) {заменям на if(1) {2. Открываем ./sources/action_public/profile.php, ищем(для 2.2 два раза): if ( $pass == 1 ) { if ( ! $this->ipsclass->vars['warn_show_rating'] ) {заменяем на if ( 1 ) { if ( ! $this->ipsclass->vars['warn_show_rating'] ) {3. Открываем ./sources/action_public/misc/warn.php, ищем else { $pass = 0; }заменяем на else { $pass = 1; $this->can_ban = 0; $this->can_mod_q = 0; $this->can_rem_post = 0; $this->times_a_day = 0; $this->type = 'member'; } Для 2.2 в первом пункте нужно искать в ./sources/ipsclass.php: if ( ( isset($this->member['_moderator'][ $this->topic['forum_id'] ]['allow_warn']) AND $this->member['_moderator'][ $this->topic['forum_id'] ]['allow_warn'] ) OR ( $this->member['g_is_supmod'] == 1 ) OR ( $this->vars['warn_show_own'] and ( $this->member['id'] == $member['id'] ) ) ) { Изменено 15 Июня 2008 пользователем Sannis Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
0 Aykroyd Опубликовано 15 Июля 2007 Жалоба Поделиться Опубликовано 15 Июля 2007 (изменено) Sannis, респект неимоверный Если позволите, пара уточняющих вопросов: 1. Для пользователей, прошедших авторизацию, предупреждения видны как в топиках, так и в профилях. Но вот для "гостей" (не авторизовавшихся) предупреждения показываются только в топиках... ( При просмотре ими профилей пользователей предупреждения почему-то не отображаются... 2. Как я понял, третий файл warn.php – это непосредственно история изменения рейтинга. И если его не модифицировать предложенным Вами способом, то для просмотра обычным пользователям эта история будет недоступна. Вот это, в принципе, и хотелось бы сделать – пользователи должны видеть только общий процент предупреждений других пользователей, но никак не их историю. Но можно ли здесь пойти еще немного дальше? Например, убрать ссылку на количестве процентов предупреждений вообще (оставить ее только для админов, супермодераторов, модераторов и пользователя, которому данная история предупреждений принадлежит). Сложно ли это реализовать? Изменено 15 Июля 2007 пользователем Aykroyd Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
0 Stas11 Опубликовано 25 Июля 2007 Жалоба Поделиться Опубликовано 25 Июля 2007 Sannis Супер! Огромный респект Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
0 torcon Опубликовано 1 Декабря 2007 Жалоба Поделиться Опубликовано 1 Декабря 2007 Sannis У меня 2.3.3 1. Открываем ./sources/action_public/topics.php, ищемКод if ( ( isset($this->ipsclass->member['_moderator'][ $this->topic['forum_id'] ]['allow_warn']) AND $this->ipsclass->member['_moderator'][ $this->topic['forum_id'] ]['allow_warn'] ) OR ( $this->ipsclass->member['g_is_supmod'] == 1 ) OR ( $this->ipsclass->vars['warn_show_own'] and ( $this->ipsclass->member['id'] == $member['id'] ) ) ) { заменям наКод if(1) { У меня в этом файле нет таких строк, есть похожие //----------------------------------------- // Are we actually a moderator for this forum? //----------------------------------------- if ( ! $this->ipsclass->member['g_is_supmod'] AND ! $this->ipsclass->member['g_access_cp'] ) { if ( !isset($this->ipsclass->member['_moderator'][ $this->forum['id'] ]) OR !is_array( $this->ipsclass->member['_moderator'][ $this->forum['id'] ] ) ) { $this->ipsclass->member['is_mod'] = 0; } } } Не мог бы ты помочь? Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
0 Sannis Опубликовано 1 Декабря 2007 Жалоба Поделиться Опубликовано 1 Декабря 2007 Навскидку: Открываем ./sources/ipsclass.php, ищем. Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
0 torcon Опубликовано 1 Декабря 2007 Жалоба Поделиться Опубликовано 1 Декабря 2007 Нету тоже ничего похожего. Может мне тебе отправить свои файлы емайлом? Что бы ты глянул? Помоги в долгу не останусь Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
0 Sannis Опубликовано 1 Декабря 2007 Жалоба Поделиться Опубликовано 1 Декабря 2007 if ( ( isset($this->member['_moderator'][ $this->topic['forum_id'] ]['allow_warn']) AND $this->member['_moderator'][ $this->topic['forum_id'] ]['allow_warn'] ) OR ( $this->member['g_is_supmod'] == 1 ) OR ( $this->vars['warn_show_own'] and ( $this->member['id'] == $member['id'] ) ) ) { Этого у тебя в ipsclass нет? Никогда не следует пытаться искать по всему фрагменту целиком, тогда даже если у вас пробелы не так стоят то ничего не найдётся! Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
0 torcon Опубликовано 1 Декабря 2007 Жалоба Поделиться Опубликовано 1 Декабря 2007 Дружище спасибо, так и есть в файле ./sources/ipsclass.php Поблагодарил на WMZ Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
0 doZzik Опубликовано 2 Декабря 2007 Жалоба Поделиться Опубликовано 2 Декабря 2007 подскажите пожалуйста, как сделать, чтобы пользователи видели только свои предупреждения. Версия 2.3.3 Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
0 Sannis Опубликовано 2 Декабря 2007 Жалоба Поделиться Опубликовано 2 Декабря 2007 Включить для них такую возможность в настройках предупреждений в админке. Но по умолчанию так и есть, пользователи видят только свои. P.S. Вы просто от админа небось смотрите, он то все видит Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
0 doZzik Опубликовано 2 Декабря 2007 Жалоба Поделиться Опубликовано 2 Декабря 2007 Включить для них такую возможность в настройках предупреждений в админке. Но по умолчанию так и есть, пользователи видят только свои. P.S. Вы просто от админа небось смотрите, он то все видит щас посмотрю где это поставить. Спасибо зы. изначально пользователь не видит даже своих предупреждений =/ upd: может кто-нибудь ответить на мой вопрос? не туда запостил просто Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
0 Stiks Опубликовано 2 Декабря 2007 Жалоба Поделиться Опубликовано 2 Декабря 2007 upd: может кто-нибудь ответить на мой вопрос? не туда запостил просто Ответил. Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
0 doZzik Опубликовано 2 Декабря 2007 Жалоба Поделиться Опубликовано 2 Декабря 2007 upd: может кто-нибудь ответить на мой вопрос? не туда запостил просто Ответил.спасибо Вам, нашел Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
0 XHTTP Опубликовано 14 Декабря 2007 Жалоба Поделиться Опубликовано 14 Декабря 2007 Респект Sannis ----------------------------- Таким образом можно установить репутацию для 2.3.3. Никаких файлов загружать не надо, рулит только редактура и терпение конечно) Рэйтинг могут изменять пользователи со статусом не ниже модератора(Просто есть гады которые наваривают себе репу, поэтому лучше пусть этим занимаются модеры и админы). Предварительно нужно зайти в Настройки->Настройки предупреждений и изменить Тип отображения индикатора в режим рейтинга 1. Убираем етот гадкий фильтер по статусу пользователя, чтоб все моги видеть уровень репутации. Работаем с sources/ipsclass.php ищем: // Ratings mode.. $member['warn_text'] = $this->lang['tt_rating']; $member['warn_img'] = $this->compiled_templates[ $skin_file ]->warn_level_rating($member['id'], $member['warn_level'], $this->vars['warn_min'], $this->vars['warn_max']); } if ( ( isset($this->member['_moderator'][ $this->topic['forum_id'] ]['allow_warn']) AND $this->member['_moderator'][ $this->topic['forum_id'] ]['allow_warn'] ) or $this->member['g_is_supmod'] == 1 ) заменяем на:// Ratings mode.. $member['warn_text'] = $this->lang['tt_rating']; $member['warn_img'] = $this->compiled_templates[ $skin_file ]->warn_level_rating($member['id'], $member['warn_level'], $this->vars[''], $this->vars['']); } if ( 1 ) -----------------------------------------------------------2. Правим язык. Работаем с ./cache/lang_cache/ru/lang_mod.php ищем:'warn_popup_title' => "Предупреждения",заменяем на:'warn_popup_title' => "Репутация",---ищем:'w_title' => "Центр предупреждений пользователя",заменяем на:'w_title' => "Центр изменения уровня репутации пользователя",---ищем:'w_warnfor' => "Панель предупреждений пользователя",заменяем на:'w_warnfor' => "Панель изменения уровня репутации пользователя",---ищем:'w_add' => "Повышение уровня предупреждений", 'w_remove' => 'Понижение уровня предупреждений',заменяем на:'w_add' => '<span style="color: blue;">Повышение уровня репутации</span>', 'w_remove' => '<span style="color: red;">Понижение уровня репутации</span>',---ищем:'w_v_add' => "Повышение уровня предупреждений", 'w_v_minus' => "Понижение уровня предупреждений",заменяем на:'w_v_add' => '<span style="color: blue;">Повышение уровня репутации</span>', 'w_v_minus' => '<span style="color: red;">Понижение уровня репутации</span>',---ищем:'w_done_t' => "Результат обновления предупреждений",заменяем на:'w_done_t' => "Результат обновления уровня репутации",---ищем:'w_adjust_level' => "Действие с предупреждений",заменяем на:'w_adjust_level' => "Повысить/понизить уровень репутации",---ищем:'w_submit' => "Изменить уровень предупреждений",заменяем на:'w_submit' => "Изменить уровень репутации",---ищем:'w_v_title' => "Журнал предупреждений пользователя",заменяем на:'w_v_title' => "Журнал изменений уровня репутации пользователя",--- Работаем с ./cache/lang_cache/ru/lang_topic.php ищем:'tt_warn' => "Предупреждения:<br />", 'tt_warn_add' => "Добавить предупреждение", 'tt_warn_minus' => "Снять предупреждение",заменяем на:'tt_warn' => "Репутация:<br />", 'tt_warn_add' => "Повысить репутацию", 'tt_warn_minus' => "Понизить репутацию", Работаем с ./cache/lang_cache/ru/lang_profile.phpищем:'warn_level' => "Предупреждения",заменяем на: 'warn_level' => "Рэйтинг", --------------------Это основное. Все остальные детали можно изменить в скине. ПС. Надеюсь ничего не забыл, время поджимает... Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
0 Wartys Опубликовано 1 Января 2008 Жалоба Поделиться Опубликовано 1 Января 2008 Sannis, спасибо за 5-е сообщение! На форуме много таких тем, есть целый мод на буржуйском ресурсе, но работает только твоя рекомендация Рекомендую свой 5-й пост собрать в готовый мод для 2.1.х. Только там где "2 раза" у меня было лишь один раз, но это мелочи жизни. Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
0 Sannis Опубликовано 1 Января 2008 Жалоба Поделиться Опубликовано 1 Января 2008 Спасибо, исправил, 2 раза нужно искать в 2.2 и выше. На мод это не тянет, но может быть соберу все свои хаки в одной теме или выложу в архив, смотря как с модераторами договорюсь Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
0 Delka Опубликовано 3 Января 2008 Жалоба Поделиться Опубликовано 3 Января 2008 Не знаю как в 2.3.x, но в 2.0.4 если заменять $pass на 1 чтоб все могли не только видеть кол-во % но и читать за что открывается огроменная дыра в безопастности Любой юзер тупо вбив ссылку для изменения уровня предупреждений в адрессную строку и подставив нужный id может хоть забанить любого пользователя!! Это происходит потому что просмотр предупреждения и действия над юзером проверяются одним условием - "а модер ли ты, чувак?"А мы это условие сбрасываем в 1 ("та мы тут все модеры, отак "). Тут бы переписать этот блок... Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
0 Sannis Опубликовано 3 Января 2008 Жалоба Поделиться Опубликовано 3 Января 2008 Не пужайте народ. Если бы вы были внимательны, то прочитали бы, что я предлагаю редактировать файлы profile.php и topics.php, которые ответственны за вывод уровня предупреждений. За выставление отвечает другой файл, называть который, по вами указанной причине, не буду, можете посмотреть в index.php или на ссылку выставления предупреждений. Кроме того и просмотреть сами записи о предупреждениях не получится, они тоже выводятся другим файлов. Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
0 Delka Опубликовано 3 Января 2008 Жалоба Поделиться Опубликовано 3 Января 2008 maybe-maybe... я писал как это происходит в 2.0.4...если в 2.3.x это по-другому - слава богу. Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
0 Sannis Опубликовано 3 Января 2008 Жалоба Поделиться Опубликовано 3 Января 2008 Вы уверены насчёт 2.0? Нашёл дистрибутивчик, там тоже выставление предупреждений не в топикс и не в профайл. Так что всё безопасно Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
0 FarStar Опубликовано 19 Марта 2008 Жалоба Поделиться Опубликовано 19 Марта 2008 Для того, чтоб не все пользователи видели шкалу предупреждений с нулевым значением в пункте 1 лучше исправить на: if ( ( isset($this->member['_moderator'][ $this->topic['forum_id'] ]['allow_warn']) AND $this->member['_moderator'][ $this->topic['forum_id'] ]['allow_warn'] ) OR ( $this->member['g_is_supmod'] == 1 ) OR ( $member['warn_level'] >0) ) Т.е. если нет предупреждений, то шкала не показывается обычным участникам, только модераторам. Если же есть предупреждения, то показывается всем. Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
0 Жужа Опубликовано 24 Марта 2008 Жалоба Поделиться Опубликовано 24 Марта 2008 Скажите пожалуйста, а как сделать так чтобы чужие предупреждения видели все пользователи, а не только админы и модераторы? Версия 2.3.4 1. Открываем ./sources/action_public/topics.php, ищемКод if ( ( isset($this->ipsclass->member['_moderator'][ $this->topic['forum_id'] ]['allow_warn']) AND $this->ipsclass->member['_moderator'][ $this->topic['forum_id'] ]['allow_warn'] ) OR ( $this->ipsclass->member['g_is_supmod'] == 1 ) OR ( $this->ipsclass->vars['warn_show_own'] and ( $this->ipsclass->member['id'] == $member['id'] ) ) ) {заменям наКод if(1) { у меня этого нету, даже чего то похожего!! Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Вопрос
velform
Ссылка на комментарий
Поделиться на других сайтах
43 ответа на этот вопрос
Рекомендуемые сообщения
Присоединиться к обсуждению
Вы можете ответить сейчас, а зарегистрироваться позже. Если у вас уже есть аккаунт, войдите, чтобы ответить от своего имени.