From 919523f2e2f67f87a53108c054beb61a2dc76409 Mon Sep 17 00:00:00 2001 From: Regis Houssin Date: Thu, 24 Nov 2011 08:23:16 +0100 Subject: [PATCH] Change default prefix if needed --- htdocs/core/lib/admin.lib.php | 6 ++++++ htdocs/core/modules/DolibarrModules.class.php | 2 +- htdocs/install/etape2.php | 18 ++++++++++++++++++ 3 files changed, 25 insertions(+), 1 deletion(-) diff --git a/htdocs/core/lib/admin.lib.php b/htdocs/core/lib/admin.lib.php index b79072b0ada..c8bf01a17c9 100644 --- a/htdocs/core/lib/admin.lib.php +++ b/htdocs/core/lib/admin.lib.php @@ -220,6 +220,12 @@ function run_sql($sqlfile,$silent=1,$entity='',$usesavepoint=1,$handler='') { if ($sql) { + // Replace the prefix tables + if (MAIN_DB_PREFIX != 'llx_') + { + $sql=preg_replace('/llx_/i',MAIN_DB_PREFIX,$sql); + } + if (!empty($handler)) $sql=preg_replace('/__HANDLER__/i',"'".$handler."'",$sql); $newsql=preg_replace('/__ENTITY__/i',(!empty($entity)?$entity:$conf->entity),$sql); diff --git a/htdocs/core/modules/DolibarrModules.class.php b/htdocs/core/modules/DolibarrModules.class.php index 463ae3c172f..59673f7971c 100644 --- a/htdocs/core/modules/DolibarrModules.class.php +++ b/htdocs/core/modules/DolibarrModules.class.php @@ -408,7 +408,7 @@ abstract class DolibarrModules $sql = "DELETE FROM ".MAIN_DB_PREFIX."dolibarr_modules"; $sql.= " WHERE numero = ".$this->numero; - $sql.= " AND entity in (0, ".$conf->entity.")"; + $sql.= " AND entity IN (0, ".$conf->entity.")"; dol_syslog(get_class($this)."::_dbunactive sql=".$sql, LOG_DEBUG); $this->db->query($sql); diff --git a/htdocs/install/etape2.php b/htdocs/install/etape2.php index 865989f9e61..8f81e55614c 100644 --- a/htdocs/install/etape2.php +++ b/htdocs/install/etape2.php @@ -188,6 +188,12 @@ if ($action == "set") { $buffer=preg_replace('/type=innodb/i','ENGINE=innodb',$buffer); } + + // Replace the prefix tables + if ($dolibarr_main_db_prefix != 'llx_') + { + $buffer=preg_replace('/llx_/i',$dolibarr_main_db_prefix,$buffer); + } //print "Creation de la table $name/td>"; $requestnb++; @@ -330,6 +336,12 @@ if ($action == "set") $buffer=trim($req); if ($buffer) { + // Replace the prefix tables + if ($dolibarr_main_db_prefix != 'llx_') + { + $buffer=preg_replace('/llx_/i',$dolibarr_main_db_prefix,$buffer); + } + //print "Creation des cles et index de la table $name: '$buffer'"; $requestnb++; if ($conf->file->character_set_client == "UTF-8") @@ -538,6 +550,12 @@ if ($action == "set") // We loop on each requests foreach($arrayofrequests as $buffer) { + // Replace the prefix tables + if ($dolibarr_main_db_prefix != 'llx_') + { + $buffer=preg_replace('/llx_/i',$dolibarr_main_db_prefix,$buffer); + } + //dolibarr_install_syslog("Request: ".$buffer,LOG_DEBUG); $resql=$db->query($buffer); if ($resql)