Переход на зимнее время отменили. А народ дружно перешел на зимнее время благодаря данному моду (Кроме довольных Украинцев у которых переход действительно состоялся)).
Как бы сделать фильтр, чтобы пользователей из РФ и Беларуси оставалось "Летнее время"?
Guess Timezone (Автоматическое определение часового пояса)
Правила форума
Местная Конституция | Шаблон запроса | Документация (phpBB3) | Переход на 3.0.6 и выше | FAQ-3 (phpbb3) | Как задавать вопросы | Как устанавливать моды
Ваш вопрос может быть удален без объяснения причин, если на него есть ответы по приведённым ссылкам (а вы рискуете получить предупреждение
).
Местная Конституция | Шаблон запроса | Документация (phpBB3) | Переход на 3.0.6 и выше | FAQ-3 (phpbb3) | Как задавать вопросы | Как устанавливать моды
Ваш вопрос может быть удален без объяснения причин, если на него есть ответы по приведённым ссылкам (а вы рискуете получить предупреждение
-
Garret_Dark
- phpBB 2.0.16
- Сообщения: 1097
- Стаж: 17 лет 8 месяцев
- Откуда: root/world/russia/
- Благодарил (а): 126 раз
- Поблагодарили: 206 раз
Re: Guess Timezone (Автоматическое определение часового пояс
Мои моды:
Полноценный интернет-магазин для phpbb3
Белый список IP для пользователей индивидуально
Парсер сообщений (автозамена)
User FAQ (Пользовательский FAQ)
Google Map MOD 0.4.2 [RUS]
Anti Double IP - Запрет множественных рег с одного IP
PM All in 1 - ЛС "Все включено"
Шкала последней активности пользователя
Поддержка только в указанных темах! В ЛС только по личным вопросам или за WM.
Полноценный интернет-магазин для phpbb3
Белый список IP для пользователей индивидуально
Парсер сообщений (автозамена)
User FAQ (Пользовательский FAQ)
Google Map MOD 0.4.2 [RUS]
Anti Double IP - Запрет множественных рег с одного IP
PM All in 1 - ЛС "Все включено"
Шкала последней активности пользователя
Поддержка только в указанных темах! В ЛС только по личным вопросам или за WM.
-
Garret_Dark
- phpBB 2.0.16
- Сообщения: 1097
- Стаж: 17 лет 8 месяцев
- Откуда: root/world/russia/
- Благодарил (а): 126 раз
- Поблагодарили: 206 раз
Re: Guess Timezone (Автоматическое определение часового пояс
Возможно кто-то поможет разобраться с JS кодом.
Этот код в overall_header.html
Этот в ucp_prefs_personal.html
Где-то в его недрах вычисляется летнее или зимнее время пользователя. Как я понял опытным путем это "january" отвечает за зимнее время.
В общем надо переработать код так, чтобы он всегда опредялял временную зону как летнее.
Знающие JS откликнитесь, плиз!
Этот код в overall_header.html
Код: Выделить всё
<!-- IF U_TIME_COOKIE -->
var january = (new Date((new Date()).getFullYear(), 1, 1)).getTimezoneOffset();
var today = (new Date()).getTimezoneOffset();
// we use January since DST usually isn't in effect during January
document.cookie = '{U_TIME_COOKIE}_time[zone] = ' + (-january / 60);
document.cookie = '{U_TIME_COOKIE}_time[dst] = ' + (january != today ? 1 : 0);
<!-- ENDIF -->Код: Выделить всё
<script type="text/javascript">
// <![CDATA[
/**
* Guess Timezone
*/
function guessTimezone()
{
var january = (new Date((new Date()).getFullYear(), 1, 1)).getTimezoneOffset();
var today = (new Date()).getTimezoneOffset();
// we use January since DST usually isn't in effect during January
document.getElementById('timezone').value = -january / 60;
document.getElementById('dst1').checked = january != today;
document.getElementById('dst2').checked = january == today;
}
// ]]>
</script>В общем надо переработать код так, чтобы он всегда опредялял временную зону как летнее.
Знающие JS откликнитесь, плиз!
Мои моды:
Полноценный интернет-магазин для phpbb3
Белый список IP для пользователей индивидуально
Парсер сообщений (автозамена)
User FAQ (Пользовательский FAQ)
Google Map MOD 0.4.2 [RUS]
Anti Double IP - Запрет множественных рег с одного IP
PM All in 1 - ЛС "Все включено"
Шкала последней активности пользователя
Поддержка только в указанных темах! В ЛС только по личным вопросам или за WM.
Полноценный интернет-магазин для phpbb3
Белый список IP для пользователей индивидуально
Парсер сообщений (автозамена)
User FAQ (Пользовательский FAQ)
Google Map MOD 0.4.2 [RUS]
Anti Double IP - Запрет множественных рег с одного IP
PM All in 1 - ЛС "Все включено"
Шкала последней активности пользователя
Поддержка только в указанных темах! В ЛС только по личным вопросам или за WM.
-
Bumbox
- phpBB 1.0.0
- Сообщения: 7
- Стаж: 17 лет 9 месяцев
Re: Guess Timezone (Автоматическое определение часового пояс
Подскажите форумчане, в инструкции по установке мода есть такой кусок:
Открыть: includes/session.php
Найти
Подсказка: Возможно, здесь приведена не вся строка, а лишь ее часть.
Добавить после
Подсказка: Добавьте эти строки с новой строки после ранее найденных строк.
Так вот в этом файле нет таких строк в движке phpBB 3.0.10
Куда этот кусок мода можно засунуть, чтоб работало?
P.S.
Все нашел на оффоруме, если переводчик не гонит, то надо искать не:
а:
P.S.2
Кстати и в сабсильвере2 тоже косяк по инструкции, но тут проще, сам нашел. Пора менять инструкцию...
Открыть: includes/session.php
Найти
Подсказка: Возможно, здесь приведена не вся строка, а лишь ее часть.
Код: Выделить всё
if ((@include $this->lang_path
{
die('Language file '
}Подсказка: Добавьте эти строки с новой строки после ранее найденных строк.
Код: Выделить всё
switch (true)
{
case $this->data['user_id'] != ANONYMOUS && $this->data['use_browser']:
case $this->data['user_id'] == ANONYMOUS && $config['use_client_browser']:
if (isset($_COOKIE[$config['cookie_name'] . '_time']['dst']) && isset($_COOKIE[$config['cookie_name'] . '_time']['zone']))
{
$temp = $_COOKIE[$config['cookie_name'] . '_time']['zone'];
if (!isset($lang['tz'][$temp]))
{
break;
}
$this->timezone = $temp * 3600;
$this->dst = ((bool) $_COOKIE[$config['cookie_name'] . '_time']['dst']) * 3600;
}
Код: Выделить всё
if ((@include $this->lang_path
{
die('Language file '
}P.S.
Все нашел на оффоруме, если переводчик не гонит, то надо искать не:
Код: Выделить всё
if ((@include $this->lang_path
{
die('Language file '
}Код: Выделить всё
if ($include_result === false)
{
die('Language file ' . $this->lang_path . $this->lang_name . "/common.$phpEx" . " couldn't be opened.");
}Кстати и в сабсильвере2 тоже косяк по инструкции, но тут проще, сам нашел. Пора менять инструкцию...
-
Татьяна5
- Поддержка

- Сообщения: 13158
- Стаж: 15 лет 1 месяц
- Благодарил (а): 236 раз
- Поблагодарили: 3750 раз
Re: Guess Timezone (Автоматическое определение часового пояс
Скорей зимнее. Летнее прибавляет час.Garret_Dark писал(а):В общем надо переработать код так, чтобы он всегда опредялял временную зону как летнее.
Открыть styles/prosilver/template/ucp_prefs_personal.html
Найти
Код: Выделить всё
<!-- INCLUDE ucp_header.html -->Код: Выделить всё
<script type="text/javascript">
// <![CDATA[
/**
* Guess Timezone
*/
function guessTimezone()
{
var january = (new Date((new Date()).getFullYear(), 1, 1)).getTimezoneOffset();
var august = (new Date((new Date()).getFullYear(), 7, 1)).getTimezoneOffset();
var today = (new Date()).getTimezoneOffset();
// we use January since DST usually isn't in effect during January
document.getElementById('timezone').value = -january / 60;
document.getElementById('dst0').checked = january == today;
if (january !== august) {
document.getElementById('dst1').checked = january != today;
}
}
// ]]>
</script>Найти
Код: Выделить всё
// ]]>
</script>Код: Выделить всё
<!-- IF U_TIME_COOKIE -->
var now = new Date();
var january = (new Date(now.getFullYear(), 1, 1)).getTimezoneOffset();
var august = (new Date(now.getFullYear(), 7, 1)).getTimezoneOffset();
var today = now.getTimezoneOffset();
// we use January since DST usually isn't in effect during January
now.setTime(now.getTime() + 1000 * 3600 * 24 * 365);
document.cookie = '{U_TIME_COOKIE}_time[zone] = ' + (-january / 60) + '; expires=' + now.toGMTString();
if (january !== august) {
document.cookie = '{U_TIME_COOKIE}_time[dst] = ' + (january != today ? 1 : 0) + '; expires=' + now.toGMTString();
}
<!-- ENDIF -->У вас нет необходимых прав для просмотра вложений в этом сообщении.

