From e1ceb050e19c7574bca146a8da7047ee4ff456b5 Mon Sep 17 00:00:00 2001
From: Marius Burkard <m.burkard@pixcept.de>
Date: Sun, 10 Jul 2016 05:02:35 -0400
Subject: [PATCH] Merge branch 'stable-3.1'
---
server/mods-available/database_module.inc.php | 78 +++++++++++++++++++++++++-------------
1 files changed, 51 insertions(+), 27 deletions(-)
diff --git a/server/mods-available/database_module.inc.php b/server/mods-available/database_module.inc.php
index 740e8f8..a427677 100644
--- a/server/mods-available/database_module.inc.php
+++ b/server/mods-available/database_module.inc.php
@@ -1,7 +1,7 @@
<?php
/*
-Copyright (c) 2008, Till Brehm, projektfarm Gmbh
+Copyright (c) 2007, Till Brehm, projektfarm Gmbh
All rights reserved.
Redistribution and use in source and binary forms, with or without modification,
@@ -29,62 +29,86 @@
*/
class database_module {
-
+
var $module_name = 'database_module';
var $class_name = 'database_module';
- var $actions_available = array( 'database_insert',
- 'database_update',
- 'database_delete'
- );
-
+ var $actions_available = array( 'database_insert',
+ 'database_update',
+ 'database_delete',
+ 'database_user_insert',
+ 'database_user_update',
+ 'database_user_delete'
+ );
+
+ //* This function is called during ispconfig installation to determine
+ // if a symlink shall be created for this plugin.
+ function onInstall() {
+ global $conf;
+
+ if($conf['services']['db'] == true) {
+ return true;
+ } else {
+ return false;
+ }
+
+ }
+
/*
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('web_database','database_module','process');
-
+
+ $app->modules->registerTableHook('web_database', 'database_module', 'process');
+ $app->modules->registerTableHook('web_database_user', 'database_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 'web_database':
- if($action == 'i') $app->plugins->raiseEvent('database_insert',$data);
- if($action == 'u') $app->plugins->raiseEvent('database_update',$data);
- if($action == 'd') $app->plugins->raiseEvent('database_delete',$data);
+ case 'web_database':
+ if($action == 'i') $app->plugins->raiseEvent('database_insert', $data);
+ if($action == 'u') $app->plugins->raiseEvent('database_update', $data);
+ if($action == 'd') $app->plugins->raiseEvent('database_delete', $data);
break;
+
+ case 'web_database_user':
+ if($action == 'i') $app->plugins->raiseEvent('database_user_insert', $data);
+ if($action == 'u') $app->plugins->raiseEvent('database_user_update', $data);
+ if($action == 'd') $app->plugins->raiseEvent('database_user_delete', $data);
+ break;
+
} // end switch
} // end function
} // end class
-?>
\ No newline at end of file
+?>
--
Gitblit v1.9.1