Здравствуйте.
Возможно возник вопрос: почему многие пользователи стали "гостями"?
Дело в том, что из-за массовой регистрации спаммеров база переполнилась фиктивными пользователями. Пришлось её почистить и удалить всех, кто не заходил на форум в течении месяца, а также тех, кто не в течении недели не активировал свою учетную запись.
Просьба к несправедливо удаленным перерегистрироваться.
ЗЫ также хочу отметить наличие проблем с отправкой писем активации на ящики mail.ru. Были опробованы разные почтовики, проблема остается. На Mail.ru письмо может не дойти, поэтому желательно использовать другой ящик.
зайдя гостем в эту (https://forum.xubuntu-ru.net/index.php?topic=160) тему, увидел интересный факт, что могу отметить/снять метку лучший ответ). прикольный такой баг в моде)
Полагаю это из-за того, что автор темы удален из базы.
ну так и есть) автор - гость, а я зашел гостем = я аффтар) небольшой недочет, главное чтобы недоброжелатели не воспользовались и не добавили нагрузку на страдающий сервер...
Возможно уберу модуль.
проще доработать чутка условия вывода кнопки, добавить афтор_ид != 0 и всё)
UPD: рукаме можно исправить в файле /Themes/*название_темы*/Display.template.php
строку if (($context['topic_starter_id'] == $context['user']['id'] || $context['user']['is_mod'] || $context['user']['is_admin']) && $message['id'] != $context['topic_first_message'] && $context['isMarkedBest'] == 0)
заменив на:if (($context['topic_starter_id'] == $context['user']['id'] || $context['user']['is_mod'] || $context['user']['is_admin']) && $message['id'] != $context['topic_first_message'] && $context['isMarkedBest'] == 0 && !$context['user']['is_guest'])
строку if ($context['ba']['id_msg'] != 0 && $context['ba']['id_msg'] == $message['id'] && ($context['topic_starter_id'] == $context['user']['id'] || $context['user']['is_mod'] || $context['user']['is_admin']) && $message['id'] != $context['topic_first_message'] && $context['isMarkedBest'] == 1)
заменив на:if ($context['ba']['id_msg'] != 0 && $context['ba']['id_msg'] == $message['id'] && ($context['topic_starter_id'] == $context['user']['id'] || $context['user']['is_mod'] || $context['user']['is_admin']) && $message['id'] != $context['topic_first_message'] && $context['isMarkedBest'] == 1 && !$context['user']['is_guest'])
в теме по умолчанию для гостей или править инсталлятор и апгрейдить все файлы)
Я в программировании не силен, но можно попробовать твое предложение. Правда это только скроет кнопку. Хотелось чтобы модуль изначально не имел такой "фичи".
В файле /Sources/BestAnswer.php если строку
if (isset($context['do'])) {
заменить на if (isset($context['do']) && !$context['user']['is_guest']) {
то при любой попытке гостей сделать запрос через этот мод будут редиректиться )
кнопка не видна, ссылка есть)
Так в ошибку выкидывает
Parse error: syntax error, unexpected T_BOOLEAN_AND, expecting ',' or ')' in /путь/forum.xubuntu-ru.net/Sources/BestAnswer.php on line 28
Авторизируй меня в аське плз.