Комментарии

Переопределение параметров
( 0 Голосов )

Для каждой новой компоновки пункта меню мы создаем новый XML-файл с устанавливаемыми параметрами. Это дает нам возможность специально подбирать параметры для компоновки нового пункта меню. В частности, мы можем свободно добавлять или удалять параметры, а также получать доступ к любым параметрам, добавленным в файл компоновки. Итак, добавим в файл компоновки параметр для отображения или сокрытия второго флажка. Соответствующий код с выделенными полужирным изменениями в XML-файле.

Этот файл является копией файла components/com_users/views/registration/tmpl/default.xml, в который внесены некоторые коррективы. В частности, мы изменили атрибуты title и option. Атрибут title отвечает за отображение заголовка регистрационной формы при создании нового пункта меню. Этот заголовок должен отличаться от стандартного, чтобы было понятно, какого типа пункт меню создается.

В элементе разметки help предоставляется ключ к справочной системе, чтобы было понятно, какую именно статью следует загружать при выборе пиктограммы справки. Но поскольку у нас нет отдельного справочного файла для замещения, мы оставим данный элемент без изменения. И последним изменением является добавление элемента f ield для разметки нового параметра кнопки-переключателя, называемого show_age_checkbox. У этого параметра имеются два варианта выбора: Hide (Скрывать) и Show (Показывать), причем вариант Hide выбирается по умолчанию. При создании нового пункта меню рассматриваемый здесь XML-файл обрабатывается в классах типа JForm из библиотеки Joomla для воспроизведения вариантов выбора данного пункта меню.

А теперь посмотрим, как все это будет выглядеть при использовании нового альтернативного типа пункта меню. Если выбрать сначала команду меню Menus'^Main Menu (Меню^Главное меню), а затем пиктограмму New и щелкнуть на кнопке Select, чтобы выбрать поле Menu Item Туре (Тип пункта меню), появится список, аналогичный приведенному.

Обратите внимание на то, что в этом списке перечислен созданный нами новый альтернативный тип пункта меню Registration with Approval (Регистрация с подтверждением). Если выбрать этот тип пункта меню, появится экран New Menu Item (Новый пунктменю) с кнопкой-переключателем Show Age Checkbox (Показывать флажок возрастных ограничений). Обратите внимание на то, что новый параметр появляется в области Basic Options (Основные параметры).
А теперь воспользуемся новым параметром для добавления второго флажка в компоновку регистрационной формы по заданному условию. Изменения, внесенные с этой целью, выделены в приведенном ниже фрагменте кода полужирным.

В данном случае мы добавили код для проверки нового параметра show_age_ checkbox. Он становится доступным автоматически в поле this->params посредством метода get (). Если установлено значение 0 этого параметра, флажок для указания возраста в регистрационной форме скрывается, а если установлено значение 1 — отображается. Нулевое значение в коде РНР вычисляется как ложное логическое значение (false) выражения в условном операторе if.

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


Понравился материал? Пригодилась информация? Плюсани в социалки!


 
Похожие новости
Добавить комментарий


Защитный код