Перейти к публикации
Дизайн и модификация IPS Community IPBSkinsBETA
Поиск в
  • Дополнительно...
Искать результаты, содержащие...
Искать результаты в...
andaril

Русские даты в IP. Board 2.1.x

Рекомендованные сообщения

04/21/07 17:12 (изменено)

Имя файла: Русские даты в 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

Поделиться сообщением


Ссылка на сообщение

Спасибо, andar!l !

Поделиться сообщением


Ссылка на сообщение

Не за что. Надо бы выложить куратора темы да все времени не нахожу переделать его в обычный текстовой вариант :)

 

А сайт ваш неплохой :) Молодцы

Поделиться сообщением


Ссылка на сообщение

Спасибо! :)

 

 

PS. Вопросик такой. Например, при просмотре темы с сообщением я хочу, чтобы формат регистрации отображался так: "1 сент 2006", а при просмотре профиля, чтобы формат был такой: "01.09.2006".

Ведь изначально формат времени регистрации отображается одинаково, что в профиле, что при просмотре темы с сообщением. А как вот сделать так, как я предложил? :)

Поделиться сообщением


Ссылка на сообщение

Кмх, вот вам моя цитата с 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 {Dec} 2007, 16:09, Где нужно исправить? спасибо.

Поделиться сообщением


Ссылка на сообщение

сегодня гляну

Поделиться сообщением


Ссылка на сообщение

Спасибо! Жду с большим нетерпением!

Поделиться сообщением


Ссылка на сообщение

Дело кажется в файле 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'];

 

Тут, мне кажется, надо что-то поменять...

Поделиться сообщением


Ссылка на сообщение

попробуйте поменять на

$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 2007, 21:16

Поделиться сообщением


Ссылка на сообщение

ой :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 Дек 2007, 21:22

Спасибо, земляк! Внеси изменения в свой файл, чтоб другие не мучались как я :D

Поделиться сообщением


Ссылка на сообщение

Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас

  • Сейчас на странице   0 пользователей

    Нет пользователей, просматривающих эту страницу.

×
×
  • Создать...