2014-10-28 2 views
2

В моем диалоге компоненты, я использую browsefield XType, чтобы дать пользователю возможности просматривать дерево страниц и выберите страницу:Как скрыть некоторые пути во время просмотра с помощью XType browsefield?

<page jcr:primaryType="cq:Widget" 
     fieldLabel="Page" 
     name="./path" 
     xtype="browsefield" /> 

В то же время, я хотел бы сделать некоторые страницы невидимы. Предположим, у меня есть следующая структура:

pages/ 
    page1/ 
     page1_1/ 
     page1_2/ 

Как сделать pages/page1/page1_2 невидимым, так что никто не может выбрать его, когда он просматривает дерево страниц?

ответ

3

browsefield - устаревший xtype, это замена pathfield имеет эту функцию. Pathfield имеет свойство предикат, который может использоваться для фильтрации. Вы можете создать и зарегистрировать собственный предикат, который возвращает false для путей, которые вы не хотите видеть в диалоговом окне. Затем имя настраиваемого предиката можно передать в конфигурацию поля пути.

Вы можете найти подробный учебник по этому здесь: http://www.albertoalmagro.com/2013/05/adobe-cq5-create-predicate-pathfield.html

Более подробную информацию о предикатах, следующие ссылки могут быть отнесены:

http://www.wemblog.com/2013/04/how-to-create-custom-query-predicate-in.html

http://labs.sixdimensions.com/blog/2013-07-10/custom-predicateevaluators-or-how-i-learned-stop-worrying-and-love/