diff --git a/classes/Language.php b/classes/Language.php index 2efb49528..5b4659f70 100644 --- a/classes/Language.php +++ b/classes/Language.php @@ -704,10 +704,8 @@ class LanguageCore extends ObjectModel $lang->name = $lang_pack->name; } elseif ($params_lang !== null && is_array($params_lang)) - { foreach ($params_lang as $key => $value) $lang->$key = $value; - } else return false; diff --git a/classes/db/DbMySQLi.php b/classes/db/DbMySQLi.php index 4a31a47cf..41d1d5a35 100644 --- a/classes/db/DbMySQLi.php +++ b/classes/db/DbMySQLi.php @@ -62,8 +62,8 @@ class DbMySQLiCore extends Db } else $link = @new mysqli($host, $user, $password); - $success = $link->query('CREATE DATABASE `'.bqSQL($dbname).'`'); - if ($dropit && ($link->exec('DROP DATABASE `'.bqSQL($dbname).'`') !== false)) + $success = $link->query('CREATE DATABASE `'.str_replace('`', '\\`', $dbname).'`'); + if ($dropit && ($link->query('DROP DATABASE `'.str_replace('`', '\\`', $dbname).'`') !== false)) return true; return $success; } diff --git a/classes/db/DbPDO.php b/classes/db/DbPDO.php index fcf2013a7..2e267e0a4 100644 --- a/classes/db/DbPDO.php +++ b/classes/db/DbPDO.php @@ -50,8 +50,8 @@ class DbPDOCore extends Db { try { $link = DbPDO::_getPDO($host, $user, $password, false); - $success = $link->exec('CREATE DATABASE `'.bqSQL($dbname).'`'); - if ($dropit && ($link->exec('DROP DATABASE `'.bqSQL($dbname).'`') !== false)) + $success = $link->exec('CREATE DATABASE `'.str_replace('`', '\\`', $dbname).'`'); + if ($dropit && ($link->exec('DROP DATABASE `'.str_replace('`', '\\`', $dbname).'`') !== false)) return true; } catch (PDOException $e) { return false; diff --git a/classes/db/MySQL.php b/classes/db/MySQL.php index 8b7e0ca61..062f2608e 100644 --- a/classes/db/MySQL.php +++ b/classes/db/MySQL.php @@ -50,8 +50,8 @@ class MySQLCore extends Db public static function createDatabase($host, $user, $password, $dbname, $dropit = false) { $link = mysql_connect($host, $user, $password); - $success = mysql_query('CREATE DATABASE `'.bqSQL($dbname).'`', $link); - if ($dropit && ($link->exec('DROP DATABASE `'.bqSQL($dbname).'`') !== false)) + $success = mysql_query('CREATE DATABASE `'.str_replace('`', '\\`', $dbname).'`', $link); + if ($dropit && (mysql_query('DROP DATABASE `'.str_replace('`', '\\`', $dbname).'`', $link) !== false)) return true; return $success; } diff --git a/install-dev/models/install.php b/install-dev/models/install.php index ca62908fc..f2be6f8ee 100644 --- a/install-dev/models/install.php +++ b/install-dev/models/install.php @@ -307,8 +307,8 @@ class InstallModelInstall extends InstallAbstractModel if (!$xml = @simplexml_load_file(_PS_INSTALL_LANGS_PATH_.$iso.'/language.xml')) throw new PrestashopInstallerException($this->language->l('File "language.xml" not valid for language iso "%s"', $iso)); - $params_lang = array('name' => (string)$xml->name, 'iso_code' => (string)$xml->language_code); - + $params_lang = array('name' => (string)$xml->name, 'iso_code' => substr((string)$xml->language_code, 0, 2)); + if (InstallSession::getInstance()->safe_mode) Language::checkAndAddLanguage($iso, false, true, $params_lang); else