67 lines
1.8 KiB
PHP
Executable File
67 lines
1.8 KiB
PHP
Executable File
<?php
|
|
/**
|
|
* Handles plugin registration.
|
|
*/
|
|
class PluginMDM extends Plugin {
|
|
|
|
/**
|
|
* Called to initialize the plugin and register for hooks.
|
|
*/
|
|
function init(){
|
|
$this->registerHook('server.core.settings.init.before');
|
|
|
|
// This hook is used to add the Z-Push server version to the settings
|
|
$this->registerHook('server.index.load.main.before');
|
|
}
|
|
|
|
/**
|
|
* Function is executed when a hook is triggered by the PluginManager
|
|
* @param String $eventID Identifier of the hook
|
|
* @param Array $data Reference to the data of the triggered hook
|
|
*/
|
|
function execute($eventID, &$data){
|
|
switch($eventID){
|
|
case 'server.core.settings.init.before':
|
|
$this->onBeforeSettingsInit($data);
|
|
break;
|
|
case 'server.index.load.main.before':
|
|
$this->addZPushVersionToSettings();
|
|
break;
|
|
}
|
|
}
|
|
|
|
/**
|
|
* Called when the core Settings class is initialized and ready to accept sysadmin default
|
|
* settings. Registers the sysadmin defaults for the StatsLogging plugin.
|
|
* @param Array $data Reference to the data of the triggered hook
|
|
*/
|
|
function onBeforeSettingsInit(&$data){
|
|
$data['settingsObj']->addSysAdminDefaults(Array(
|
|
'zarafa' => Array(
|
|
'v1' => Array(
|
|
'plugins' => Array(
|
|
'mdm' => Array(
|
|
'enable' => PLUGIN_MDM_USER_DEFAULT_ENABLE_MDM,
|
|
)
|
|
)
|
|
)
|
|
)
|
|
));
|
|
}
|
|
|
|
/**
|
|
* Adds the version of the z-push server to the MDM settings
|
|
*/
|
|
function addZPushVersionToSettings(){
|
|
// This is a bit ugly, but since all z-push logic was put in the MDM module class,
|
|
// we have added the getServerVersion function there also
|
|
require_once(BASE_PATH . 'server/includes/modules/class.module.php');
|
|
require_once('class.pluginmdmmodule.php');
|
|
|
|
$module = new PluginMDMModule('fakeid', array());
|
|
$version = $module->getServerVersion();
|
|
$GLOBALS['settings']->set("zarafa/v1/plugins/mdm/zpush-server-version", $version);
|
|
}
|
|
}
|
|
?>
|