понедельник, 16 января 2012 г.

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

Доброго времени суток. И мы с Вами продолжаем создавать расширение для CMS Joomla 1.7. В статье “Создание расширения для CMS Joomla 1.7. Часть 7. Дизайн административного (backend) интерфейса.” я рассмотрел как изменить дизайн в админке нашего компонента.  Следующим шагом в создании нашего компонента для CMS Joomla 1.7 мы должны рассмотреть как добавить языковые файлы для компонента. Но прежде, чем к этому приступить нам необходимо закончить с отображением компонента в админке нашего сайта, а именно мы затронули два класса:
  1. JHtml
  2. JText
В данном посте мы остановимся на классе JHtml. Кому это не интересно может дальше не читать, а все остальные вперед...

Класс JHtml обеспечивает отображение HTML классов.
Теперь рассмотрим методы и свойства данного класса.
Переменные:
  1. array $formatOptions  = array('format.depth' => 0,
      'format.eol' => "\n",
      'format.indent' => "\t")
    Значения опций, связанных с генерацией html кода. 
  2. array $includePaths = array()
    Массив для хранения включенных путей.
  3. array $registry = array()
    Массив для хранения ссылок. 
Методы:
  1. addIncludePath
    - для добавления каталога, в котором Jhtml искать дополнения. Можно передать строку или массив.


array addIncludePath ([string $path = '']

    • string $path - путь для поиска
  1. calendar
    - отображает поле календаря


void calendar (string $value, string $name, string $id, [string $format = '%Y-%m-%d'], [array $attribs = null])

    • string $value - значение даты
    • string $name - имя для текстового поля
    • string $id - id текстового поля
    • string $format - формат даты
    • array $attribs - добавление атрибутов html
  1. call
    - метод вызывающей функции


mixed call (string $function, array $args)

    • string $function - функция или метод для вызова
    • array $args - аргументы, которые передаются функции
  1. core


void core ([boolean $debug = null])

    • boolean $debug - если true, то включаем метод отладки
  1. date
    - возвращает форматированную дату и время в соответствии с заданным часовым поясом


string date ([string $input = 'now'], [string $format = null], [mixed $tz = true], [ $gregorian = false])

    • string $input - строка в формате date(), по умолчанию “now”
    • string $format - дполнительный формат для даты и времени
    • mixed $tz - часовой пояс, который будет использоваться для форматирования даты и времени. Дополнительно: если true, то будут применены пользовательские настройки, если false, то - настройки сервера
    • $gregorian
  1. extract
    - метод для извлечения ключа


array extract (string $key)

    • string $key - название вспомогательного метода
  1. iframe
    - метод для записи <iframe></iframe> элемента


string iframe (string $url, string $name, [array $attribs = null], [string $noFrames = ''])

    • string $url - абсолютный или относительный путь
    • string $attribs - целевой признак для того, что бы использовать
    • array $relative - для добавления ассоциативного массива атрибутов
    • boolean $path_only - если true, то пытается найти переопределение файла в шаблоне
    • $alt
  1. isRegistered
    - проверяет ключ зарегистрирован или нет


boolean isRegistered(string $key)

    • string $key - имя ключа
  1. link
    - записывает <a></a> элемент


string link (string $url, string $text, [array $attribs = null])

    • string $url - относительный путь, который используется в href атрибуте
    • string $text - используется в атрибуте target
    • array $attribs - добавляет ассоциативный массив атрибутов
  1. register
    - регистрирует функцию, которая будет вызвана по конкретному ключу


boolean register (string $key, string $function)

    • string $key - имя ключа
    • string $function - функция или метод
  1. script
    - записывает <script></script> элемент


mixed  script (string $file, [boolean $framework = false], [boolean $relative =  false], [boolean $path_only = false], [boolean $detect_browser = true])

    • string $file - путь к файлу
    • boolean $framework - загружает JS фреймворк
    • boolean $relative - указывается относоительный путь к файлу в /media папке
    • boolean $path_only - возвращает только путь к файлу
    • boolean $detect_browser - определяет браузер, для того чтобы загрузить необходимые JS файлы
  1. setFormatOptions
    - устанавливает формат связанных параметров


void setFormatOptions (array $options)

    • array $options - параметры пара ключ-значение
  1. stylesheet
    - записывает <link rel="stylesheet" style="text/css" /> элемент


mixed  stylesheet (string $file, [array $attribs = array()], [boolean  $relative = false], [boolean $path_only = false], [boolean  $detect_browser = true])

    • string $file - путь к файлу
    • array $attribs - атрибуты, которые добавляются к stylesheet
    • boolean $relative - относительный путь к файлу в папке /media
    • boolean $path_only - возвращает только путь к файлу
    • boolean $detect_browser - определяет браузер
  1. tooltip
    - создает всплывающую подсказку с изображением в качестве кнопки


string  tooltip (string $tooltip, [mixed $title = ''], [string $image =  'tooltip.png'], [string $text = ''], [string $href = ''], [string $alt =  'Tooltip'], [ $class = 'hasTip'])

    • string $tooltip - текст подсказки
    • mixed $title - название подсказки или ассоциативный массив с параметрами {'title','image','text','href','alt'}
    • string $image - изображение для подсказки, если текста нет
    • string $text - текст для подсказки
    • string $href - URL, который используется для создания ссылки
    • string $alt - атрибут alt для картинки
    • $class
  1. unregister
    - метод для удаления ключа функции из регистрации


boolean unregister (string $key)

    • string $key - имя ключа
  1. _
    - класс загрузки метода


mixed _ (string $key)

    • string $key - имя вспомогательного метода для загрузки
  1. _includeRelativeFiles
    - вычисление файлов, которые будут включены


array _includeRelativeFiles (string $file, boolean $relative, boolean $detect_browser, folder $folder)

    • string $file - путь к файлу
    • boolean $relative - относительный путь к файлу в папке /media
    • boolean $detect_browser - определение браузера для загрузки соответствующих JS файлов
    • folder $folder - имя папки в которой искать файлы (картинки, css, js и др.)

Сегодня мы рассмотрели класс JHtml фреймворка Joomla. В следующих статьях мы рассмотрим классы JRoute и JText. А после продолжим наращивать функциональность для нашего расширения для CMS Joomla 1.7. Так, что не пропускайте выхода новых постов, подписавшись на RSS рассылку данного блога. Или следите за мной в twitter. Вы также можете найти много полезной информации на странице в Google Plus.
Всем удачной разработки и до скорой встречи.

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

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



    0 коммент.:

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