Функции системы

    browse_messages($cc_env, $range)
    Доступность: шаблоны вывода компонентов
    Отображает блок навигации по страницам списка объектов компонента в формате «1 2 3 >>». Массив $cc_env является неизменным параметром данной функции и содержит переменные окружения текущего компонента раздела. Параметр $range определяет количество выводимых страниц. Вместо этой переменной обычно пишется число. Подразумевается, что из множества страниц одновременно будет показываться только список из $range страниц. Например, ваш листинг состоит из 20 страниц. Если $range=10, то, находясь на первой странице, Вы будете видеть страницы с 1 по 10, находясь на 15-й странице, Вы будете видеть страницы 10-20. Для настройки формата отображения используется массив $browse_msg[], значения которого указываются в настройках макета дизайна. Макропеременная %PAGE обозначает номер страницы, макропеременная %URL – ссылку на соответствующие страницы. Возможно также использование макропеременных %FROM и %TO, соответственно обозначающих номера начального и конечного объекта на странице.



    Пример использования
    Необходимо внизу списка объектов выводить постраничную навигацию по 15 ссылок (Страницы 1 2 3 ... 15). Фрагмент суффикса списка объектов компонента:

".s_browse_messages($cc_env, 15)."

    is_even(int $param)
    Доступность: везде
    Проверяет параметр на четность.
    Пример использования
    Необходимо чередовать цвета строк в таблице при выводе объектов компонента. Фрагмент шаблона вывода объекта в списке:



    listQuery(char $sql_query, char $output_template = NULL)
    Доступность: везде
    Функция производит запрос $sql_query к базе данных, форматирует в соответствии с шаблоном $output_template и выводит результаты запроса. Чаще всего функция используется за запросов SELECT. В шаблоне $output_template могут использоваться обращения к массиву $data[] с маскировочным слешем перед знаком $: \$data[Name]. В качестве индексов массива используются названия столбцов таблиц, из которых происходит выборка.
    Примеры использования
    Вывод списка всех включенных пользователей системы в порядке очередности регистрации в тексте макета или компонента:



    Вывод в выпадающем списке всех значений списка Money:



    Будьте осторожны, используя эту функцию: при помощи нее Вы получаете прямой доступ к базе данных.

    nc_file_field($field_name, $style = NULL)
    Доступность: шаблоны вывода и действий компонентов
    Данная функция позволяет генерировать поле типа Файл. В большинстве случаев она применяется в альтернативных формах компонента, чтобы вывести информацию о поле типа Файл.
    • $field_name – название поля в компоненте, например, MyFile;
    • $style – стиль и параметры поля input для ввода файла. Например, size=1 style=’color:red;’, является необязательным параметром.
    Пример использования
    В альтернативной форме добавления объекта вывести поле для закачки файла, соответствующее полю компонента Photo. Фрагмент альтернативной формы добавления:



    nc_list_select ($classificator_name, $field_name = NULL, $current_value = NULL, $sort_type = NULL, $sort_direction = NULL, $template_prefix = NULL, $template_object = NULL, $template_suffix = NULL, $template_any = NULL)
    Доступность: везде
    Данная функция позволяет генерировать HTML списки из Списков NetCat. В большинстве случаев она применяется в альтернативных формах компонента, чтобы вывести информацию о поле типа Список.
    • $classificator_name – имя списка, например, Gallery, обязательный параметр;
    • $field_name – название поля в компоненте (без префикса f_, например, Field);
    • $current_value – выбранный элемент списка (например, $f_Field_id, если мы используем фунцию в альтернативной форме добавления/изменения);
    • $sort_type – поле сортировки, необязательный параметр (не указан – ID, 1 – имя, 2 - приоритет);
    • $sort_direction - порядок сортировки, необязательный параметр (не указан – восходящий, 1 - нисходящий);
    • $template_prefix – темплейт префикса списка, необязательный параметр (не указан - "< select name='f_\$field_name'>\r\n”), ;
    • $template_object – темплейт элемента списка, необязательный параметр (не указан - “< option value='${value_id}'${value_selected}>${value_name}< /option>”);
    • $template_suffix – темплейт суффикса списка, необазательный параметр (не указан - "< /select>\r\n”);
    • $template_any – темпелейт для первого нулевого элемента списка, если поле может быть пустым (не указан - < option value=’’>--выбрать--< /option>).

    Не забывайте экранировать кавычки!
    Поле $template_prefix имеет «константу». Переменная, а точнее запись вида «\$field_name», автоматически заменится на указанный в вызове функции параметр $field_name.
    Поле $template_object имеет 3 «константы»: «\$value_id», «\$value_selected» и «\$value_name», которые отвечают за подстановку ID, выбранной записи и название элемента.
    Пример использования
    Необходимо сгенерировать в альтернативной форме изменения объекта HTML-код для отображения поля GalleryName из компонента, которое использует список Gallery. Сортировка по ID нисходящая. Имеется 3 темплейта: префикс, элемент списка и суффикс. Темпелейт для первого нулевого элемента списка (если поле является необязательным для заполнения) будет использован по умолчанию из функции.



    nc_mail2queue($recipient, $from, $subject, $message)
    Доступность: везде
    Функция является частью функционала по рассылке писем. Указанное письмо кладется в таблицу БД mail_queue, откуда в дальнейшем будет разослано скриптом /netcat/admin/mailer.php.
    • $recipient содержит адрес получателя;
    • $from содержит координаты отправителя;
    • $subject – тема письма;
    • $message – сообщение.
    При желании Вы можете отсылать даже письма с файлами – для этого при помощи каких-либо средств необходимо сгенерировать правильный $message. Однако учтите, что письмо кладется в БД ровно столько раз, сколько подписчиков его должны получить, и при большом вложенном файле размер БД может значительно вырасти.
    Файл /netcat/admin/mailer.php, отвечает за порционную рассылку писем. Количество писем задается параметром number, если не указано – высылается 20 писем из очереди. Этот скрипт должен быть добавлен в CRON Вашего сервера (каждую минуту, /netcat/admin/mailer.php?number=20). При наличии писем в очереди они будут отсылаться порциями. При отсутствии писем скрипт ничего делать не будет.
    Пример использования
    Необходимо отправлять на почту администратору сайта все новые сообщения из гостевой книги. Фрагмент шаблона действия после добавления компонента:



    nc_message_link (int $message_id, int $class_id)
    Доступность: везде
    Функция позволяет получить относительный путь к объекту (без домена) по номеру (ID) этого объекта и номеру (ID) компонента, которому он принадлежит.
    3. $message_id – номер объекта;
    4. $class_id – номер компонента.
    Будьте внимательны, не путайте номера компонента и номер компонента раздела. Номер компонента Вы можете узнать, например, в разделе «Список компонентов» системы администрирования.
    Пример использования
    Необходимо вывести ссылку на объект номер 52 в компоненте номер 2.
    Фрагмент шаблона:

".nc_message_link(52,2)."

    opt($flag, $string)
    Доступность: везде
    Функция выводит строку $string в случае если $flag не ложь, не имеет пустое значение или не ноль.
    Пример использования
    В шаблоне вывода объекта в списке выводить фамилию с подписью «Фамилия» только в том случае, если это поле заполнено. Фрагмент шаблона вывода объекта:



    opt_case($flag, $string1, $string2)
    Доступность: везде
    Выводит строку $string1 в случае если $flag не ложь, не имеет пустое значение или не ноль; в противном случае выводит строку $string1.
    Пример использования: по аналогии с opt()

    parentofmessage($message, $classID)
    Доступность: везде
    Возвращает номер объекта – родителя «ветки» объектов (может использоваться в иерархическом форуме), в которой, в частности, содержится объект с номером $message. Параметр $classID определяет номер компонента.
    Пример использования
    В простом иерархическом форуме необходимо вывести ссылку на уровень “вверх”. Фрагмент шаблона вывода объекта:



    s_browse_catalogue($template)
    Доступность: макеты дизайна
    Функция выводит список сайтов (блок навигации) в соответствии с шаблоном, описанным в хэш-массиве $template. Массив должен иметь элементы со следующими индексами:
    • prefix – выводится перед списком
    • suffix – выводится после списка
    • active – шаблон вывода активного элемента списка (а данном случае это касается текущего сайта)
    • active_link – шаблон вывода активного элемента списка в том случае, если ссылка на этот элемент идентична адресу текущей страницы
    • unactive – шаблон вывода неактивного элемента списка (в данном случае это касается всех сайтов, кроме текущего)
    • divider – шаблон разделителя между элементами списка
    • sortby – признак сортировки элементов
    Пример использования
    В макете страницы необходимо вывести список всех сайтов в виде нумерованного списка. Текущий сайт ссылкой выделяться не должен.
    Фрагмент хедера или футера макета:

".s_browse_catalogue($cat_template)."

    Фрагмент шаблона вывода навигации макета:



    s_browse_cc($template)
    Доступность: макеты дизайна
    Выводит список ссылок по компонентам раздела в соответствии с шаблоном $template.
    Пример использования: аналогично s_browse_catalogue()

    s_browse_level(int $level, $template)
    Доступность: макеты дизайна
    Выводит список разделов уровня $level в соответствии с шаблоном $template.
    Обратите внимание, что нумерация уровней начинается с нуля, т.е. Для вывода списка разделов верхнего уровня первый параметр функции должна быть равен нулю.
    Пример использования: аналогично s_browse_catalogue()

    s_browse_path($template)
    Доступность: макеты дизайна
    Выводит навигацию типа “хлебные крошки” (путь до текущей страницы) в соответствии с шаблоном $template.
    Пример использования: аналогично s_browse_catalogue()

    s_browse_path_range($from,$to,$template)
    Доступность: макеты дизайна
    функция аналогична s_browse_path(), но выводит только путь указанного диапазона (минимальное значение $from – (-1), максимальное значение $to - $sub_level_count), в соответствии с шаблоном, описанным в массиве $template.
    Например: s_browse_path_range(0,$sub_level_count, $template) выведет навигацию от корня сайта, но без текущего раздела.
    Пример использования: аналогично s_browse_catalogue()

    s_browse_sub(int $parent_sub, $template)
    Доступность: макеты дизайна
    Выводит список подразделов раздела $parent_sub в соответствии с шаблоном $template.
    Пример использования: аналогично s_browse_catalogue()

    s_list_class(int $sub, int $cc, char $params, bool $show_in_admin_mode = FALSE)
    Доступность: везде
    Функция выводит “верхние” объекты из раздела $sub компонента раздела $cc с параметрами $params. Параметры подаются в URL-формате: ¶m1=12¶m2=46. Последний параметр функции необязателен: если он имеет значение TRUE (истина), этот блок будет выведен и в режиме администрирования, иначе только в обычном режиме аботы сайта.
    Третий параметр функции - $params – может содержать произвольный состав параметров. Все они могут быть обработаны в тексте шаблона вывода объекта.
    Пример использования
    В макете дизайна титульной страницы необходимо вывести список последних трех новостей, но без листинга и в укороченном формате. Номер раздела новостей 1, номер компонента раздела новостей – 2. Фрагмент хедера/футера макета:

".s_list_class(1, 2, "recNum=3&isTitle=1")."

    Необходимо обратить внимание, что название isTitle выбрано произвольно. Этот параметр будет “виден” в тексте шаблона вывода. Например, он может быть использован для того чтобы не выводить листинг по страницам компонента. Для этого обратимся к нему в суффиксе списка вывода объектов компонента “Новости”:

".opt(!$isTitle, browse_messages($cc_env, 10)."

    А в списке объектов компонента помимо “полного” (обычного) вида списка новостей укажем укороченный:


« Назад          Содержание


Сайты по теме:


    

Интересное в сети: