Marius Cramer
2013-11-14 7fe908c50c8dbc5cc05f571dbe11d66141caacd4
server/mods-available/server_module.inc.php
@@ -29,97 +29,97 @@
*/
class server_module {
   var $module_name = 'server_module';
   var $class_name = 'server_module';
   var $actions_available = array(   'server_insert',
                           'server_update',
                           'server_delete',
                           'server_ip_insert',
                           'server_ip_update',
                           'server_ip_delete',
                           'firewall_insert',
                           'firewall_update',
                           'firewall_delete',
                           'software_update_inst_insert',
                           'software_update_inst_update',
                           'software_update_inst_delete');
   var $actions_available = array( 'server_insert',
      'server_update',
      'server_delete',
      'server_ip_insert',
      'server_ip_update',
      'server_ip_delete',
      'firewall_insert',
      'firewall_update',
      'firewall_delete',
      'software_update_inst_insert',
      'software_update_inst_update',
      'software_update_inst_delete');
   //* This function is called during ispconfig installation to determine
   //  if a symlink shall be created for this plugin.
   function onInstall() {
      global $conf;
      return true;
   }
   /*
       This function is called when the module is loaded
   */
   function onLoad() {
      global $app;
      /*
      Annonce the actions that where provided by this module, so plugins
      Annonce the actions that where provided by this module, so plugins
      can register on them.
      */
      $app->plugins->announceEvents($this->module_name,$this->actions_available);
      $app->plugins->announceEvents($this->module_name, $this->actions_available);
      /*
      As we want to get notified of any changes on several database tables,
      we register for them.
      The following function registers the function "functionname"
       to be executed when a record for the table "dbtable" is
       to be executed when a record for the table "dbtable" is
       processed in the sys_datalog. "classname" is the name of the
       class that contains the function functionname.
      */
      $app->modules->registerTableHook('server','server_module','process');
      $app->modules->registerTableHook('server_ip','server_module','process');
      $app->modules->registerTableHook('firewall','server_module','process');
      $app->modules->registerTableHook('software_update_inst','server_module','process');
      $app->modules->registerTableHook('server', 'server_module', 'process');
      $app->modules->registerTableHook('server_ip', 'server_module', 'process');
      $app->modules->registerTableHook('firewall', 'server_module', 'process');
      $app->modules->registerTableHook('software_update_inst', 'server_module', 'process');
      // Register service
      //$app->services->registerService('httpd','web_module','restartHttpd');
   }
   /*
    This function is called when a change in one of the registered tables is detected.
    The function then raises the events for the plugins.
   */
   function process($tablename,$action,$data) {
   function process($tablename, $action, $data) {
      global $app;
      switch ($tablename) {
         case 'server':
            if($action == 'i') $app->plugins->raiseEvent('server_insert',$data);
            if($action == 'u') $app->plugins->raiseEvent('server_update',$data);
            if($action == 'd') $app->plugins->raiseEvent('server_delete',$data);
      case 'server':
         if($action == 'i') $app->plugins->raiseEvent('server_insert', $data);
         if($action == 'u') $app->plugins->raiseEvent('server_update', $data);
         if($action == 'd') $app->plugins->raiseEvent('server_delete', $data);
         break;
         case 'server_ip':
            if($action == 'i') $app->plugins->raiseEvent('server_ip_insert',$data);
            if($action == 'u') $app->plugins->raiseEvent('server_ip_update',$data);
            if($action == 'd') $app->plugins->raiseEvent('server_ip_delete',$data);
      case 'server_ip':
         if($action == 'i') $app->plugins->raiseEvent('server_ip_insert', $data);
         if($action == 'u') $app->plugins->raiseEvent('server_ip_update', $data);
         if($action == 'd') $app->plugins->raiseEvent('server_ip_delete', $data);
         break;
         case 'firewall':
            if($action == 'i') $app->plugins->raiseEvent('firewall_insert',$data);
            if($action == 'u') $app->plugins->raiseEvent('firewall_update',$data);
            if($action == 'd') $app->plugins->raiseEvent('firewall_delete',$data);
      case 'firewall':
         if($action == 'i') $app->plugins->raiseEvent('firewall_insert', $data);
         if($action == 'u') $app->plugins->raiseEvent('firewall_update', $data);
         if($action == 'd') $app->plugins->raiseEvent('firewall_delete', $data);
         break;
         case 'software_update_inst':
            if($action == 'i') $app->plugins->raiseEvent('software_update_inst_insert',$data);
            if($action == 'u') $app->plugins->raiseEvent('software_update_inst_update',$data);
            if($action == 'd') $app->plugins->raiseEvent('software_update_inst_delete',$data);
      case 'software_update_inst':
         if($action == 'i') $app->plugins->raiseEvent('software_update_inst_insert', $data);
         if($action == 'u') $app->plugins->raiseEvent('software_update_inst_update', $data);
         if($action == 'd') $app->plugins->raiseEvent('software_update_inst_delete', $data);
         break;
      } // end switch
   } // end function
   /*
   // This function is used
   function restartHttpd($action = 'restart') {
@@ -134,4 +134,4 @@
} // end class
?>
?>