[FAQ] SMF1

Автор digger®, 25 августа 2009, 03:50:45

« предыдущая - следующая »

0 Пользователей и 1 гость просматривают эту тему.


digger®

12 апреля 2010, 03:08:08 #1 Последнее редактирование: 27 сентября 2014, 01:36:19 от digger®
Проблема с отображением названий месяцев в датах. Например, сентябрь показывается как "БХЭвпСам", и так далее. Короткие названия месяцев тоже показываются таким же образом (БХЭ = Сен).

Для SMF1
В зависимости от языка форума, должна быть строка в файле index.russian.php 
Код: (php)
$txt['lang_locale'] = 'ru_RU.CP1251';

или в index.russian-utf8.php
Код: (php)
$txt['lang_locale'] = 'ru_RU.UTF8';


Для SMF2
Админка - Настройка языков - Russian
Наверху будет подсказка как правильно задать локаль

digger®

12 апреля 2010, 03:09:01 #2 Последнее редактирование: 04 марта 2011, 16:18:06 от digger
Время форума отличается от времени сервера или не происходит переход на зимнее/летнее время.

SMF1 поддерживает таймзоны, но в админке нет настроек для изменения. Таймзона задается только при установке или обновлении форума.
Вручную можно установить, изменив в таблице smf_settings значение value для variable default_timezone
Например:
Код: (sql)

UPDATE smf_settings SET VALUE='Europe/Moscow' WHERE variable='default_timezone';

Вместо Europe/Moscow подставить свою таймзону, список можно посмотреть здесь http://php.net/manual/en/timezones.php
Работает это только для PHP >= 5.1

Если запись в таблице отсутсвует, нужно ее создать
Код
INSERT INTO smf_settings (`variable`, `value`) VALUES ('default_timezone', 'Europe/Moscow'); 


Также, существует мод Timezone Select (include automatic DST correction)

digger®

При вставке цитаты в быстрый ответ сдвигается курсор в браузере Opera и оказывается внутри тэга quote.

В файле Themes/default/script.js

найти
Код: (php)

textarea.setSelectionRange(begin.length + text.length, begin.length + text.length);


заменить на
Код: (php)

var goForward = window.opera ? text.match(/\n/g).length : 0;
textarea.setSelectionRange(begin.length + text.length + goForward, begin.length + text.length + goForward);