Курс 2016 года “Разработка на UMI.CMS от 0 до готового сайта”
Вывод всех объектов каталога в шаблоне на основе макроса getObjectsList

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

Ответов: 4
Просмотров: 164
Последний ответ 15 Июнь 2017, 17:42:12
от s.kirill
Отказ работы макроса при переходе на другую страницу

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

Ответов: 4
Просмотров: 1362
Последний ответ 02 Декабрь 2013, 22:09:51
от Seweryss
как вставить cut в админке для макроса %blogs20 postsList()%

Автор SuilinadРаздел Макросы UMI.CMS

Ответов: 12
Просмотров: 5812
Последний ответ 18 Сентябрь 2011, 22:24:11
от admin
Вывести результаты работы макроса Search?

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

Ответов: 2
Просмотров: 1102
Последний ответ 18 Сентябрь 2013, 17:31:39
от muldy
Кастомная фильтрация на основе существующего макроса?

Автор muldyРаздел Custom макросы

Ответов: 2
Просмотров: 1613
Последний ответ 20 Апрель 2014, 16:35:35
от Vladimir

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

*

MIke

  • *
  • 12
  • +0/-0
    • Просмотр профиля
Создан кастомный макрос в модуле filemanager.
Вызывается так: 
<a href="/udata/filemanager/price_download/price/price2.xls">Скачать прайс-лист</a>
На него установлены права.
Отрабатывается все правильно. У пользователей без прав появляется страница:

This XML file does not appear to have any style information associated with it. The document tree is shown below.
<udata xmlns:xlink="http://www.w3.org/TR/xlink" module="filemanager" method="price_download" generation-time="0.048547">
<error code="require-more-permissions">
Ваших прав недостаточно, чтобы совершить это действие
</error>
</udata>

В документации (http://dev.docs.umi-cms.ru/shablony_i_makrosy/obrabotka_i_otobrazhenie_oshibok_makrosov/oshibki_vyzova_makrosa/) по UMI написано: При желании на этот случай мы можем описать шаблон (задав соответствие match="udata[error]") и обработать нужным образом результат.

Так вот, пытаюсь обработать и выдать пользователю свою страницу, но ничего не происходит.
В шаблоне пишу так:
<xsl:template match="udata[@module = 'filemanager'][@method = 'price_download'][error]">
  <p>Для скачивания прайс-листа необходима авторизация!</p>
</xsl:template>

*

MIke

  • *
  • 12
  • +0/-0
    • Просмотр профиля
Ну что, господа, неужели никто не переопределял вывод ошибок?
:)

*

crazygeorgio

  • ***
  • 140
  • +7/-0
    • Просмотр профиля
по сути код должен работать, а как происходит вызов самого узла udata в вашем шаблоне? просто может его перекрывают более подходящие правила...

*

MIke

  • *
  • 12
  • +0/-0
    • Просмотр профиля
по сути код должен работать, а как происходит вызов самого узла udata в вашем шаблоне? просто может его перекрывают более подходящие правила...
Ну метод же кастомный и вызов его в одном месте, как и писал ранее:
<a href="/udata/filemanager/price_download/price/price2.xls">Скачать прайс-лист</a>

И потом, если бы его перекрывали другие правила, то не выводилось бы наверное такое на странице: "This XML file does not appear to have any style information associated with it. The document tree is shown below."

*

admin

  • *****
  • 2443
  • +172/-1
    • Просмотр профиля
возможно имеет смылс сделать так:

1. сcылку переделать
<a href="/filemanager/price_download/price/price2.xls">Скачать прайс-лист</a>

создать шаблон вида
<xsl:template match="result[@module = 'filemanager' and @method = 'price_download' and  error]">
  <p>Для скачивания прайс-листа необходима авторизация!</p>
</xsl:template>

или такого
<xsl:template match="result[@module = 'filemanager' and @method = 'price_download' and udata/error]">
  <p>Для скачивания прайс-листа необходима авторизация!</p>
</xsl:template>