#1
3 ноября 2009 в 20:26
Собственно как изменить падеж везде где выводятся число и месяц, например в ленте выводится: 04, Октябрь; хочу чтобы было 4 октября. Можно на примере ленты, думаю остальное по аналогии переделаю.
#2
3 ноября 2009 в 21:04
Насколько мне известно, в шаблоне smarty эту проблему можно решить с помощью модификатора spellcount
feba7, поподробней можно?
вот запрос к базе
в базе в pubdate хранится дата в виде 2009-08-31 18:27:33.
вот запрос к базе
$sql = "SELECT DISTINCT p.id, p.title, p.file, p.user_id, u.id as user_id, u.nickname as nickname, u.login as login, IF(DATE_FORMAT(p.pubdate, '%d-%m-%Y')=DATE_FORMAT(NOW(), '%d-%m-%Y'), DATE_FORMAT(p.pubdate, '<strong>Cегодня</strong> в %H:%i'), IF(DATEDIFF(NOW(), p.pubdate)=1, DATE_FORMAT(p.pubdate, 'Вчера в %H:%i'),DATE_FORMAT(p.pubdate, '%d, %M') )) as pubdate FROM cms_photo_files p, cms_users u WHERE p.user_id = u.id AND ({$friends_sql}) ORDER BY p.pubdate DESC ";
Сегодня в 11:37
#4
3 ноября 2009 в 22:03
Подробнее смотри здесь
#5
3 ноября 2009 в 22:08
все решилось проще)))
файл cms.php
файл cms.php
public function getRusDate($datestr){ return $datestr; }
#6
3 ноября 2009 в 22:59
Эге… да ты умница! Очень изящное решение… и ничего склонять не надо)))))
В таком случае в модуле архив новостей выводится: Ноября, 2009; Октября, 2009; Сентября, 2009; а при открытии ссылки на архив открывается страница с надписью Материалы за Ноября 2009 года.
#9
4 ноября 2009 в 15:26
Тогда самим прейдётся исправлять вид отображения новости (и нетолько) с Ноября, 2009 на — примерно такое новость опубликована 2009 года, Ноября месяца.
#10
4 ноября 2009 в 16:30
можно сделать копию функции getRusDate, скажем getRusDate1 — с новым содержимым, и там, где необходимо использовать ее.
Именно. Я так и сделала. Определила ее прямо в своем модуле, а из тела функции модуля вызываю эту функцию. И у меня теперь пишет: день рождения 3 июня 1978.
можно сделать копию функции getRusDate, скажем getRusDate1 — с новым содержимым, и там, где необходимо использовать ее.
Спасибо тебе, дорогой, за идею. Я раньше пыталась решить эту проблему за счет шаблонизатора смарти, но вышла такая фигня, что и говорить стыдно. Теперь мой будущий модуль Дни рождения правильно все пишет)))))
#12
19 ноября 2009 в 23:06
рад, что приношу свежие мысли
#13
20 ноября 2009 в 12:22
предложи лучше, поправимДалеко не самая эффективная и скоростная функция...
#14
20 ноября 2009 в 12:29
CrashCool, никто не спорит, но предложи иной способ брать из базы днюху, и чтобы у тебя писало: день рождения 3 мая, а не 1980-05-03, как она там хранится. Если мысли есть — излагай, а то, что str_replace() не рекомендуют для обработки больших массивов информации — мы и так знаем)))))