понедельник, 12 декабря 2011 г.

Создание расширения для CMS Joomla 1.7. Класс JFormField. Часть 6.2

В предыдущей статье “Создание расширения для CMS Joomla 1.7. Часть 6. Работа с базой данных.” мы научили наш компонент работать с базой данных. Если вообще говорить о компонентах CMS Joomla, то работа с базой данных - это одна из основных функций компонент. Так в предыдущем посте мы создали три SQL-файла, которые выполняются при установке компонента, при его удалении и при удалении. А также наш компонент берет настройки из базы данных. Для эт ого мы использовали два новых класса CMS Joomla: первый каласс JFactory - один из важнейших классов, о котором я рассказал в “Создание расширения для CMS Joomla 1.7. Класс JFactory. Часть 6.1” и второй класс JFormField, о котором я расскажу ниже. Ну, что приступим к теории...



JFormField - это абстрактный класс framework CMS Joomla. У данного класса есть множество потомков, которые будут необходимы в дальнейшей разработке компонента для CMS Joomla:
  1. JFormFieldPassword
  2. JFormFieldTextarea
  3. JFormFieldMedia
  4. JFormFieldUsergroup
  5. JFormFieldCalendar
  6. JFormFieldList
  7. JFormFieldHidden
  8. JFormFieldEditor
  9. JFormFieldGroupedList
  10. JFormFieldComponentLayout
  11. JFormFieldRules
  12. JFormFieldRadio
  13. JFormFieldSpacer
  14. JFormFieldText
  15. JFormFieldFile
  16. JFormFieldEMail  
  17. JFormFieldUser
  18. JFormFieldModuleLayout
  19. JFormFieldCheckboxes
  20. JFormFieldCheckbox
Каждый из, которых я рассмотрю (постараюсь рассмотреть) подробнее в следующих постах. А сейчас давайте вернемся к нашему классу JFormField и рассмотрим его переменные.
Переменные:
  1. integer $count = 0 - значение счетчика для сгенерированных имен полей
  2. string $description - текстовое описание поля. Используется, как правило, в подсказках
  3. object $element - XML элемнт, который описывает поле
  4. string $fieldname - имя поля
  5. object $form - объект JForm формы, относящегося к полю
  6. string $formControl - префикс формы управления объекта JForm, относящегося к полю формы
  7. integer     $generated_fieldname='__field' - строка для генерации имени поля
  8. string $group - группа полей
  9. boolean $hidden=false - состояние поля формы (скрыть или показать)
  10. string $id - id поля формы
  11. string $input - поле ввода для формы
  12. string $label - метка для поля формы
  13. boolean $multiple=false - несколько состояний для поля формы, если true, то несколько состояний разрешены
  14. string $name - имя поля формы
  15. boolean $required=false - требуемое состояние поля, если true, то значение поля будет считаться правильным
  16. boolean $translateDescription=true - если true, то будет переводить описание поля
  17. boolean $translateLabel=true - если true, то будет переводить метку поля
  18. string $type - тип поля формы
  19. string $validate - метод проверки для поля формы.
  20. mixed $value - значение для поля формы

Методы:
  1. Constructor __construct - метод для создания экземпляра объекта формы
JFormField __construct([object $form = null])
    • object $form - форма для подключения к объекту
  1. getFieldName - метод для получения имени поля, которое используется
string getFieldName( $fieldName, string $name)
    • string $name - имя элемента поля
    • $fieldName
  1. getId - метод получения id поля формы, которое используется
string getId(string $fieldId, string $fieldName)
    • string $fieldId - id элемента поля
    • string $fieldName - имя элемента поля
  1. getInput - метод для получения разметки поля ввода
string getInput()
  1. getLabel - метод для получения разметки поля Label
string getLabel()
  1. getName - метод для получения имени поля, используемое для тега поля ввода
string getName(string $fieldName)
    • string $fieldName - имя элемента поля
  1. getTitle - метод для получения поля title
string getTitle()
  1. setForm - метод для добавления JForm объекта в поле
object The setForm(JForm $form)
    • object $form - JForm объект, который добавляется к полю
  1. setup - метод для добавления JForm объекта в поле
boolean setup( &$element, mixed $value, [string $group = null], object $element)
    • object $element - JXML элемент, представляющих теги <field /> для объекта поля формы
    • mixed $value - значение по умолчанию поля формы
    • string $group - имя поля группы, так например, если поле имеет имя “foo”, а группа “bar”, то полное имя поля будет иметь следующий вид “bar[foo]”
    • &$element
  1. __get - метод для получения особых недоступных свойств поля объекта
mixed __get(string $name)
    • string $name - имя свойства для некоторого значения
Итак, мы с Вами рассмотрели класс JFormField. Данная статья является переводом официальной документации по созданию расширения для CMS Joomla 1.7.
В следующих постах мы перейдем от теории к практике и будем наращивать функционал нашего компонента. Для того, чтобы не пропустить выхода новых постов - подпишитесь на мой блог. Или Вы можете следить за мной в Twitter, Вы также можете найти меня в Google+. На этом все, всем удачной разработки.
А, да, забыл я создал страницу в Google+, посвященную CMS Joomla, на которую Вы можете подписаться по ссылке.

Понравилась статья? Поблагодарить автора:

Введите e-mail адрес:



0 коммент.:

Отправить комментарий