Ejemplo n.º 1
0
 public function installChangeTables()
 {
     $strReturn = "";
     $arrFields = array();
     $arrFields["change_id"] = array("char20", false);
     $arrFields["change_date"] = array("long", true);
     $arrFields["change_user"] = array("char20", true);
     $arrFields["change_systemid"] = array("char20", true);
     $arrFields["change_system_previd"] = array("char20", true);
     $arrFields["change_class"] = array("char254", true);
     $arrFields["change_action"] = array("char254", true);
     $arrFields["change_property"] = array("char254", true);
     $arrFields["change_oldvalue"] = array("text", true);
     $arrFields["change_newvalue"] = array("text", true);
     $arrTables = array("changelog");
     $arrProvider = class_module_system_changelog::getAdditionalProviders();
     foreach ($arrProvider as $objOneProvider) {
         $arrTables[] = $objOneProvider->getTargetTable();
     }
     $arrDbTables = $this->objDB->getTables();
     foreach ($arrTables as $strOneTable) {
         if (!in_array(_dbprefix_ . $strOneTable, $arrDbTables)) {
             if (!$this->objDB->createTable($strOneTable, $arrFields, array("change_id"), array("change_date", "change_user", "change_systemid", "change_property"), false)) {
                 $strReturn .= "An error occurred! ...\n";
             }
         }
     }
     return $strReturn;
 }