Recommended Posts

getConfigValue('date_format')

Собственно, кроме как использования в датапиккере, нигде в коде не увидел. Хотя может и слепой. Насколько понял подхватывается плагином смарти и поэтому неправильно даже меняет месяц d/m/Y и d/M/Y.

Ок. А если задача стоит: "русский  месяц прописью" ? С самой функцией понятно, но как тогда расшарить Sitebill_Datetime не трогаяя сам класс, а в main() добраться до ;$grid_items для сетки и аналогично $data в карточке? Делать локальный обработчик? Что-то дебаггером по кругу бегаю.

 

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


Ссылка на сообщение
Поделиться на других сайтах

решал проблему путем сматри, для реальто есть патч  заменить файл в папке /www/ваш_сайт/third/smarty/plugins
modifier.date_format.php

дата указывается в формате {$переменная|date_format:"%d %m %Y":"":"rus"}
 

function smarty_modifier_date_format($string, $format = SMARTY_RESOURCE_DATE_FORMAT, $default_date = '',$formatter='auto'){require_once(SMARTY_PLUGINS_DIR . 'shared.make_timestamp.php');if ($string != '') {$timestamp = smarty_make_timestamp($string);} elseif ($default_date != '') {$timestamp = smarty_make_timestamp($default_date);} else {return;}if($formatter=='rus'){$months = array (1 => 'янв',2 => 'фев',3 => 'март',4 => 'апр',5 => 'мая',6 => 'июнь',7 => 'июль',8 => 'авг',9 => 'сент',10 => 'окт',11 => 'нояб',12 => 'дек');$format = str_replace("%m",$months[(int)date('m',$timestamp)],$format);$formatter='auto';}if($formatter=='strftime'||($formatter=='auto'&&strpos($format,'%')!==false)) {if (DS == '\\') {$_win_from = array('%D', '%h', '%n', '%r', '%R', '%t', '%T');$_win_to = array('%m/%d/%y', '%b', "\n", '%I:%M:%S %p', '%H:%M', "\t", '%H:%M:%S');if (strpos($format, '%e') !== false) {$_win_from[] = '%e';$_win_to[] = sprintf('%\' 2d', date('j', $timestamp));}if (strpos($format, '%l') !== false) {$_win_from[] = '%l';$_win_to[] = sprintf('%\' 2d', date('h', $timestamp));}$format = str_replace($_win_from, $_win_to, $format);}return strftime($format, $timestamp);} else {return date($format, $timestamp);}}

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


Ссылка на сообщение
Поделиться на других сайтах

Он больше нигде и не используется. Суть его рождения в том, что в датапикерах многим хочется видеть локальные форматы дат, а не стандартные, только поэтому его и добавлено, что бы знать по какому алгоритму преобразовывать локальную дату в каноническую. Функционально он не выполняет никаких манипуляций, за исключением отображений.

 

Для адптации под шаблон (текстовые названия месяцев и проч.) я бы воспользовался средствами шаблонизатора, вплоть до плагина под смарти либо функционального декоратора. Включать подобный функционал в сам элемент - уже замного для него. Выйдет просто громоздкий комбайн сложный в сопровождении.

 

Наследования "для людей" не поддерживает.

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


Ссылка на сообщение
Поделиться на других сайтах

смотришь, так и история всего конфига узнается.

поэтому и был удивлён, т.к. в конфиг обычно выносим  всё-таки конфиги, и он своим названием сбил с толку, да ещё привычка всё через timestamp

то тогда уж в лэбл добавить, что "формат даты датапикера", а не ...

сенкс за экономию времени и решение.

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


Ссылка на сообщение
Поделиться на других сайтах
В 18.02.2015в23:14, TopRaN сказал:

А куда это вставлять?   "дата указывается в формате {$переменная|date_format:"%d %m %Y":"":"rus"} "

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


Ссылка на сообщение
Поделиться на других сайтах

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

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

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

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

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

Войти

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

Войти сейчас