Опубликовано: 21 апреля 200718 г Имя файла: Русские даты в IP. Board 2.1.xВладелец файла: andarilФайл размещен: 21 апр 2007Файл обновлен: 14 фев 2011Категория файла: Mods/Моды Позволяет поменять "1.12.2007" на "1 Декабря 2007" +---------------------------------------------------------------------| Invision Power Board v2.1.х| =================================================================| При поддержке ipbskins.ru| =================================================================+---------------------------------------------------------------------|| > Мод "Русские даты в IP Board"| > Автор fr0z3n aka andar!l|| > Версия: 1.0| > Дата: 21.04.2007|+---------------------------------------------------------------------|| > Эта модификация позволяет сделать отображение всех дат | > форума (названия месяцев, дней) на русском языке| > По запросу: Hugo Weaving|+---------------------------------------------------------------------Багов не обнаружил. Нажмите сюда, чтобы скачать этот файл Изменено 14 февраля 201114 г пользователем andaril
Опубликовано: 21 апреля 200718 г Автор Не за что. Надо бы выложить куратора темы да все времени не нахожу переделать его в обычный текстовой вариант :) А сайт ваш неплохой :) Молодцы
Опубликовано: 21 апреля 200718 г Спасибо! :) PS. Вопросик такой. Например, при просмотре темы с сообщением я хочу, чтобы формат регистрации отображался так: "1 сент 2006", а при просмотре профиля, чтобы формат был такой: "01.09.2006".Ведь изначально формат времени регистрации отображается одинаково, что в профиле, что при просмотре темы с сообщением. А как вот сделать так, как я предложил? :)
Опубликовано: 22 апреля 200718 г Автор Кмх, вот вам моя цитата с ibrportal.net о том как работает данная модификация. Это так, для общего развитияНачнем с способов:Мне известно три разных способа как можно это реализовать.Это установить все даты в числовом формате, тогда в датах не будет слов вообще. Я не вижу смысла писать о нем.Воспользоваться функциями setlocale() и strftime() которые изменяют язык для дат под установки вашей "локали", в нашем случае локаль русская. Я сегодня попытался реализовать это... У меня прекрасно получилось перевести почти все. Но... как всегда одно "но", функция setlocale () у меня сбила настройки дат которые должны идти в GMT формате. Может это всего лишь моя "криворукость", но мне почему то так не кажется. в общем этим "но" было то что такой метод полностью "убил" календарь, там все завязано с функцией gmdate(), а локаль сделала невозможным доступ к этой функции. Если бы ips делала свою доску сразу используя эти функции, я про setlocale(), проблем было бы меньше.Вот и добрались до третьего способа. Он прост как никогда. Просто заменить названия месяцев, с помощью регулярных выражений, на их русские эквиваленты.Самое хорошее в данном способе то что он не зависим от "локали", ведь при втором способе надо еще и поставить правильное название локали, тк они зависят от настроек вэб-сервера, и еще то что он достаточно прост в установке.А специально для вас.Открывайте файл./sources/action_public/profile.phpНаходите строку:$info['joined'] = $this->ipsclass->get_date( $member['joined'], 'JOINED' );И заменяете её на//$info['joined'] = $this->ipsclass->get_date( $member['joined'], 'JOINED' ); $info['joined'] = gmdate( "j.n.Y", $member['joined'] );Подробнее о форматах дат вы можете узнать на http://www.php.net/date
Опубликовано: 4 декабря 200718 г Привет! Я установил этот мод, но при просмотре профиля в строке "Часовой пояс пользователя" показывает: 4 {Dec} 2007, 16:09, Где нужно исправить? спасибо.
Опубликовано: 7 декабря 200718 г Дело кажется в файле Profile.php, а конкретнее вот в этой строке: $info['local_time'] = $member['time_offset'] != "" ? gmdate( $this->ipsclass->vars['clock_long'], time() + ($member['time_offset']*3600) + ($this->ipsclass->vars['time_adjust'] * 60) ) : $this->ipsclass->lang['no_info']; Тут, мне кажется, надо что-то поменять...
Опубликовано: 7 декабря 200718 г Автор попробуйте поменять на$info['local_time'] = $member['time_offset'] != "" ? preg_replace("/{(\w+)}/e" ,"\$this->lang['\\1']", gmdate( $this->ipsclass->vars['clock_long'], time() + ($member['time_offset']*3600) + ($this->ipsclass->vars['time_adjust'] * 60) ) ) : $this->ipsclass->lang['no_info'];не смотрел. просто по вашим строкам поменял
Опубликовано: 7 декабря 200718 г Автор ой :Dсорри$info['local_time'] = $member['time_offset'] != "" ? preg_replace("/{(\w+)}/e" ,"\$this->ipsclass->lang['\\1']", gmdate( $this->ipsclass->vars['clock_long'], time() + ($member['time_offset']*3600) + ($this->ipsclass->vars['time_adjust'] * 60) ) ) : $this->ipsclass->lang['no_info'];вот оно
Опубликовано: 7 декабря 200718 г Пашет: 7 Дек 2007, 21:22Спасибо, земляк! Внеси изменения в свой файл, чтоб другие не мучались как я :D
Опубликовано: 5 февраля 200817 г Привет! А вот в версии 2.3.1 че то в профиле все равно пишется неверно: 7 {Feb} 2008 например. Хотя все поставил как ты написал :rolleyes:
Имя файла: Русские даты в IP. Board 2.1.x
Владелец файла: andaril
Файл размещен: 21 апр 2007
Файл обновлен: 14 фев 2011
Категория файла: Mods/Моды
Позволяет поменять "1.12.2007" на "1 Декабря 2007"
+---------------------------------------------------------------------
| Invision Power Board v2.1.х
| =================================================================
| При поддержке ipbskins.ru
| =================================================================
+---------------------------------------------------------------------
|
| > Мод "Русские даты в IP Board"
| > Автор fr0z3n aka andar!l
|
| > Версия: 1.0
| > Дата: 21.04.2007
|
+---------------------------------------------------------------------
|
| > Эта модификация позволяет сделать отображение всех дат
| > форума (названия месяцев, дней) на русском языке
| > По запросу: Hugo Weaving
|
+---------------------------------------------------------------------
Багов не обнаружил.
Нажмите сюда, чтобы скачать этот файл
Изменено пользователем andaril