Установка и удаление модуля — различия между версиями
VITL' (обсуждение | вклад) (Новая страница: «Как вам уже должно быть известно, при установке какого либо модуля используется файл: <pre> cl…») |
(нет различий)
|
Текущая версия на 05:23, 2 декабря 2011
Как вам уже должно быть известно, при установке какого либо модуля используется файл:
classes/modules/mymodule/install.php
в этом файле прописываются различные ключи реестра и их значения по умолчанию, к примеру:
$INFO['per_page'] = "20";
Но в этом же файле, в случае необходимости, можно с помощью API UMI.CMS прописать другой код, который при установке модуля создаст какой-либо тип данных, справочник или выполнит какие-либо другие действия.
При удалении модуля, в конечном итоге для удаляемого модуля вызывается метод uninstall:
$module = cmsController::getInstance()->getModule($module_name); $module->uninstall();
если метод не будет найден в классе удаляемого из системы модуля, то выполнится метод uninstall в классе def_module, файл classes/modules/def_module.php. Но, если если при удалении модуля, необходимо не только удалить ключи реестра, но и выполнить еще какие-либо действия, то необходимо добавить метод uninstall в ваш class.php:
classes/modules/mymodule/class.php
Каркас метода:
public function uninstall() {
//дополнительные действия
//стандартные действия
$regedit = regedit::getInstance();
$className = get_class($this);
$k = $regedit->getKey('//modules/' . $className);
$regedit->delVar('//modules/' . $className);
}