Курс 2016 года “Разработка на UMI.CMS от 0 до готового сайта”
Работа модуля Обратная связь (вставка форм в контент сайта) при XSLT

Автор ariusgroupРаздел Шаблоны XSLT

Ответов: 8
Просмотров: 3203
Последний ответ 17 Октябрь 2012, 15:29:17
от admin
Работа сайта через безопасный протокол https

Автор AisamieryРаздел Настройка системы и модулей

Ответов: 3
Просмотров: 1369
Последний ответ 22 Март 2015, 19:21:39
от admin
Работа с данными переданными через форму

Автор thecoderРаздел Шаблоны XSLT

Ответов: 7
Просмотров: 3052
Последний ответ 16 Август 2011, 19:42:47
от guest
Работа с UMI.CMS из консоли / создание тасков

Автор VirРаздел Разработка модулей

Ответов: 4
Просмотров: 2272
Последний ответ 13 Октябрь 2011, 14:04:52
от Vir
Работа с регистрацией пользователей

Автор rob1nРаздел Шаблоны XSLT

Ответов: 5
Просмотров: 186
Последний ответ 06 Апрель 2017, 15:34:14
от rob1n

0 Пользователей и 1 Гость просматривают эту тему.

*

Prus

  • *
  • 46
  • +1/-0
    • Просмотр профиля
Работа с кастомными макросами
« : 18 Март 2012, 19:07:50 »
Привет. Появился вопрос по работе с кастомными макросами. В tpl все было просто. В xslt нужно указывать больше параметров, как я понимаю. Или пока логики до конца не понял. Прошу подсказать на примере русских дат.
Взято тут: http://wiki.umisoft.ru/%D0%A0%D1%83%D1%81%D1%81%D0%BA%D0%B8%D0%B5_%D0%B4%D0%B0%D1%82%D1%8B

  public function dateru($time) {
    $day = date('d', $time);
    $month = date('n', $time);
    $year = date('Y', $time);
 
    // Проверка существования месяца
    if (!checkdate($month, 1, $year)){
        throw new publicException("Проверьте порядок ввода даты.");
    }
 
    $months_ru = array(1 => 'января', 'февраля', 'марта', 'апреля', 'мая', 'июня', 'июля', 'августа', 'сентября', 'октября', 'ноября', 'декабря');
    $date_ru = $day . ' ' . $months_ru[$month] . ' ' . $year . ' года.';
    return $date_ru; 
  }


Пишу
<xsl:value-of select="document(concat('udata://custom/dateru/', '$time'))/udata" />

Выводит: Проверьте порядок ввода даты.

вроде все норм, где ошибка?

*

admin

  • *****
  • 2421
  • +172/-1
    • Просмотр профиля
Re:Работа с кастомными макросами
« Ответ #1 : 18 Март 2012, 19:45:41 »
внимательно смотри в вызов функции
<xsl:value-of select="document(concat('udata://custom/dateru/', '$time'))/udata" />

'$time' вернет строчку $time, а не значение переменной $time. Еще проверь чтобы $time возвращал в unix формате

*

Prus

  • *
  • 46
  • +1/-0
    • Просмотр профиля
Re:Работа с кастомными макросами
« Ответ #2 : 18 Март 2012, 19:50:39 »
а какая логика? что не так?