diff --git a/datamodel/itop-change-mgmt-1.0.0/module.itop-change-mgmt.php b/datamodel/itop-change-mgmt-1.0.0/module.itop-change-mgmt.php index 404554f31..2042d9e34 100644 --- a/datamodel/itop-change-mgmt-1.0.0/module.itop-change-mgmt.php +++ b/datamodel/itop-change-mgmt-1.0.0/module.itop-change-mgmt.php @@ -45,50 +45,53 @@ SetupWebPage::AddModule( ) ); -// Module installation handler -// -class ChangeManagementInstaller extends ModuleInstallerAPI +if (!class_exists('ChangeManagementInstaller')) { - public static function BeforeWritingConfig(Config $oConfiguration) + // Module installation handler + // + class ChangeManagementInstaller extends ModuleInstallerAPI { - // If you want to override/force some configuration values, do it here - return $oConfiguration; - } - - /** - * Handler called before creating or upgrading the database schema - * @param $oConfiguration Config The new configuration of the application - * @param $sPreviousVersion string PRevious version number of the module (empty string in case of first install) - * @param $sCurrentVersion string Current version number of the module - */ - public static function BeforeDatabaseCreation(Config $oConfiguration, $sPreviousVersion, $sCurrentVersion) - { - // If you want to migrate data from one format to another, do it here - } - - /** - * Handler called after the creation/update of the database schema - * @param $oConfiguration Config The new configuration of the application - * @param $sPreviousVersion string PRevious version number of the module (empty string in case of first install) - * @param $sCurrentVersion string Current version number of the module - */ - public static function AfterDatabaseCreation(Config $oConfiguration, $sPreviousVersion, $sCurrentVersion) - { - // Bug #464 - start_date was both in Ticket and Change tables - // - $sSourceTable = 'change'; - $sSourceKeyField = 'id'; - - $sTargetTable = 'ticket'; - $sTargetKeyField = 'id'; - - $sField = 'start_date'; - - if (CMDBSource::IsField($sSourceTable, $sField) && CMDBSource::IsField($sTargetTable, $sField) && CMDBSource::IsField($sSourceTable, $sSourceKeyField) && CMDBSource::IsField($sTargetTable, $sTargetKeyField)) + public static function BeforeWritingConfig(Config $oConfiguration) { - SetupPage::log_info("Issue #464 - Copying change/start_date into ticket/start_date"); - $sRepair = "UPDATE `$sTargetTable`, `$sSourceTable` SET `$sTargetTable`.`$sField` = `$sSourceTable`.`$sField` WHERE `$sTargetTable`.`$sField` IS NULL AND`$sTargetTable`.`$sTargetKeyField` = `$sSourceTable`.`$sSourceKeyField`"; - CMDBSource::Query($sRepair); + // If you want to override/force some configuration values, do it here + return $oConfiguration; + } + + /** + * Handler called before creating or upgrading the database schema + * @param $oConfiguration Config The new configuration of the application + * @param $sPreviousVersion string PRevious version number of the module (empty string in case of first install) + * @param $sCurrentVersion string Current version number of the module + */ + public static function BeforeDatabaseCreation(Config $oConfiguration, $sPreviousVersion, $sCurrentVersion) + { + // If you want to migrate data from one format to another, do it here + } + + /** + * Handler called after the creation/update of the database schema + * @param $oConfiguration Config The new configuration of the application + * @param $sPreviousVersion string PRevious version number of the module (empty string in case of first install) + * @param $sCurrentVersion string Current version number of the module + */ + public static function AfterDatabaseCreation(Config $oConfiguration, $sPreviousVersion, $sCurrentVersion) + { + // Bug #464 - start_date was both in Ticket and Change tables + // + $sSourceTable = 'change'; + $sSourceKeyField = 'id'; + + $sTargetTable = 'ticket'; + $sTargetKeyField = 'id'; + + $sField = 'start_date'; + + if (CMDBSource::IsField($sSourceTable, $sField) && CMDBSource::IsField($sTargetTable, $sField) && CMDBSource::IsField($sSourceTable, $sSourceKeyField) && CMDBSource::IsField($sTargetTable, $sTargetKeyField)) + { + SetupPage::log_info("Issue #464 - Copying change/start_date into ticket/start_date"); + $sRepair = "UPDATE `$sTargetTable`, `$sSourceTable` SET `$sTargetTable`.`$sField` = `$sSourceTable`.`$sField` WHERE `$sTargetTable`.`$sField` IS NULL AND`$sTargetTable`.`$sTargetKeyField` = `$sSourceTable`.`$sSourceKeyField`"; + CMDBSource::Query($sRepair); + } } } }