Объект системы "Плагин"

Объект "Плагин" принадлежит системному справочнику "Плагины".

Справочник "Плагины" содержит ссылки на файлы плагинов расположенных в директории сервера "plugin", группируя их по типу.

Плагин CMS представляет собой набор одноименных файлов:

  • файл со статическим кодом ('.aspx')
  • файл с кодом на языках VB.NET и C#.NET ('.aspx.vb' или '.aspx.cs')
  • файл с клиентским JavaScript ('.js')

Плагины могут загружаться с через сервис cms в виде пакета установки '.plp' или через FTP в распакованном виде в папку "/plugin".

Статический файл ('.aspx') должен содержать код:

≤%@
Page Language='указатель языка VB или C#' AutoEventWireup='false' ContentType='text/html; charset=utf-8' CodeFile='имя_кодового_файла' Inherits=' имя класса в кодовом файле' Title='** группа плагина | имя плагина */*'
%≥

≤% 
Имя процедуры входа
  %≥

Кодовый файл должен:

  • Читать сессионные переменные:
    • 'userID' - идентификатор пользователя
    • 'ModID' - идентификатор модуля
    • 'serv' - имя сервера
  • Принимать передаваемые параметры GET или POST

Метод GET

(Метод GET имеет ограничение по длине передаваемой строки параметров)
  • При загрузке страницы, для первого обращения к модулю используется только метод GET
  • Для отправки запроса методом GET используется скрытый фрейм с id вида:

    "ifedit_" + OID

    OID - уникальный идентификационный код объекта создаваемого модулем на странице.

    Строка URL c запросом должна иметь вид

    url_адрес_плагина?uid=' + guserid + '&oid= + OID+ &имя_параметра_1 = значение_параметра_1 ... &имя_параметра_n = значение_параметра_n

    OID - уникальный идентификационный код объекта создаваемого модулем на странице.

    guserid - уникальный идентификатор пользователя - глобальна переменная JavaScript для текущей страницы, значение которой присваивается автоматически. (в текущей версии CMS не обязательный параметр)

  • Для возврата результатов запроса отправленных методом GET используется общая для любой страницы сгенерированной CMS функция JavaScript:

    returnInPage(ID_принимающего_объекта, возвращаемое_значений, возвращаемый_скрипт)

Метод POST

  • Для отправки запроса методом POST и возврата результатов используется общая для любой страницы сгенерированной CMS функция JavaScript:

    sendingRequestWithReturn(адрес_плагина, ID_принимающего_объекта, заставка_ожидания, строка_параметров)

    адрес_плагина - URL адрес плагина, например:

    /plugin/myplugin.aspx

    заставка_ожидания - html код передаваемый ожидающему объекту до возврата результатов обработки, например:

    Ожидание загрузки...

    строка_параметров - строка передаваемых произвольных параметров. По мимо произвольных данных должна содержать ID модуля

  • Для отправки запроса методом POST без ожидания возврата результатов используется общая для любой страницы сгенерированной CMS функция JavaScript:

    sendingRequestWithoutReturn(адрес_плагина, строка_параметров)

    адрес_плагина - URL адрес плагина, например:

    /plugin/myplugin.aspx

    строка_параметров - строка передаваемых произвольных параметров. По мимо произвольных данных должна содержать ID модуля

Встроенные функции для работы с методами GET и PОST возвращают результаты, используя свойство принимающего объекта innerHTML. Присвоить элементам 'input' значение (.value) нельзя.

Для упрощения работы, любая страница сгенерированная CMS содержит переменные JavaScript:

  • nameserver - содержит имя сервера
  • pluginspath - URL путь папки плагинов