Описание проблемы: Если тема находится на модерации, то при попытке ответить в ней (нажимаю кнопку ОТВЕТИТЬ) - получаю ошибку
Произведенные изменения, после которых начались неполадки: Ошибка замечена впервые, поэтому указать причину не могу. Последняя модификация - обновления форума до версии 3.0.10
Версия phpBB: 3.0.10
Используемые стили: Prosilver
Используемые моды: Activity stats mod, Advertisement Management.1.0.10, Ajax chat.0.8.3, Board rules 1.0.1, Contact Admin 306, Convert simple local url to link name.1.0.8, Custom bbcode only mod, Custom Profile Fields Search.0.5.0, Direct Link, Dropdown Login Box, Duplicate User IPs.1.0.0, FAQ Manager 1.2.6, Google search.1.0.1, Ip in topic.2.0.0., Karmamod.1.2.3, Log connections.1.0.6, Moderator Needed.1.0.5, Non-latin Symbols in Url.1.0.0, NV advanced last topic titles.1.3.2, NV Recent Topics.1.0.6, phpBB Mobile Version, Post Expired.1.0.3, Posts Merging.1.0.11.1, Prime Links, Prime quick style.1.2.5, Prime Trash Bin.1.1.4, Prime User Topics, Quick Reply 306.1.0.2b, Search Topic JQAutocomplete, Similar Topics.1.0.2, Sitemap fx.1.0.8, Thanks for posts.1.3.3, User Blog Mod 1.0.15, User Reminder.1.0.5, User Warnings Ban Info In Viewtopic.1.0.2, Vewpost.0.1.0, Запрет редактирования если сообщение не последнее в теме.
Версия PHP: Версия PHP 5.2.17
Используемая СУБД и её версия: Версия MySQL 5.0.92-community-log
Ссылка на конференцию: http://мотобратва.com/index.php
Есть ли у вас тестовый аккаунт: test/testtest
Использовался ли поиск для решения проблемы: да
Если да, то какие запросы вы использовали: искал по части строки ошибки в гугле
Добавлено спустя 1 минуту 10 секунд:
Sheer писал(а):includes/session.php строка 2477
наверно там, где ошибка возникла? это строка 2247
includes/session.php, код со строки 2224 до 2275. строка 2247 подписана
Код: Выделить всё
if ($date_cache[$format]['is_short'] !== false && !$forcedate && !($gmepoch < $midnight - 86400 || $gmepoch > $midnight + 172800))
{
$day = false;
if ($gmepoch > $midnight + 86400)
{
$day = 'TOMORROW';
}
else if ($gmepoch > $midnight)
{
$day = 'TODAY';
}
else if ($gmepoch > $midnight - 86400)
{
$day = 'YESTERDAY';
}
if ($day !== false)
{
return str_replace('||', $this->lang['datetime'][$day], strtr(@gmdate($date_cache[$format]['format_short'], $gmepoch + $zone_offset), $date_cache[$format]['lang']));
}
}
!!! 2247 return strtr(@gmdate($date_cache[$format]['format_long'], $gmepoch + $zone_offset), $date_cache[$format]['lang']);
}
/**
* Get language id currently used by the user
*/
function get_iso_lang_id()
{
global $config, $db;
if (!empty($this->lang_id))
{
return $this->lang_id;
}
if (!$this->lang_name)
{
$this->lang_name = $config['default_lang'];
}
$sql = 'SELECT lang_id
FROM ' . LANG_TABLE . "
WHERE lang_iso = '" . $db->sql_escape($this->lang_name) . "'";
$result = $db->sql_query($sql);
$this->lang_id = (int) $db->sql_fetchfield('lang_id');
$db->sql_freeresult($result);
return $this->lang_id;
}
Добавлено спустя 2 часа 40 минут 14 секунд:
Последним был установлен этот мод: New topics need approval-1.0.2
Ставил его на тестовом сайте, ссылку на который и давал. На рабочем сайте без этого мода создал тему от нового пользователя, через премодерацию - при создании ответа выдается:
Данная тема не была одобрена, как и должно быть.
Теперь остается проверить, не вызывает ли ошибку именно этот мод.
Ночью забакаплюсь, поставлю его и проверю на основном сайте. О результатах отпишусь.