Разработка модулей для Битрикс. Создание установщика

В одной из прошлых статей мы рассмотрели структуру файлов модуля для 1С-Битрикс. В этой статье мы посмотрим, что такое инсталлятор и деинсталлятор для модуля.

Посмотрим файл /bitrix/modules/ID модуля/install/index.php. В нем должен быть описан класс, название которого совпадает с ID модуля. Например, так:

<?
Class mymodule extends CModule
{
    var $MODULE_ID = "mymodule";
    var $MODULE_NAME;

    function DoInstall()
    {
        global $DB, $APPLICATION, $step;
        $APPLICATION->IncludeAdminFile(GetMessage("FORM_INSTALL_TITLE"),                 $_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/mymodule/install/step1.php");
    }

    function DoUninstall()
    {
        global $DB, $APPLICATION, $step;
        $APPLICATION->IncludeAdminFile(GetMessage("FORM_INSTALL_TITLE"),                 $_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/mymodule/install/unstep1.php");

    }
}
?>

Метод DoInstall() будет вызываться при нажатии на кнопку «Установить» в списке модулей административной панели. Соответственно, DoUninstall() – при нажатии на кнопку «Удалить».

Также в папке install находятся файлы step1.php и unstep1.php. Если нужен многошаговый установщик, то следует создать файлы step1.php, step2.php и т.д. Задача установщика – зарегистрировать модуль в системе. На самом деле, для этого достаточно вызвать всего лишь одну функцию:

RegisterModule("mymodule");

Однако скорее всего для модуля понадобятся свои таблицы в БД и файлы. В таком случае, следует создать их в шагах инсталлятора (step1.php, step2.php и т.д.). Аналогично, в деинтсталляторе нужно сделать противоположные действия (удалить таблицы и файлы). Наиболее наглядный установщик у модуля «Формы».

Дата: 08 августа 2010
Теги: модули, инсталлятор, деинсталлятор
Добавить в закладки:

Комментарии (0)