diff --git a/.htaccess b/.htaccess index defe7f3b6c..db7778a520 100755 --- a/.htaccess +++ b/.htaccess @@ -4,23 +4,22 @@ DirectoryIndex index.php index.html -# PROTECTED DIRECTORIES RewriteEngine On - RewriteCond %{REQUEST_FILENAME} -d - RewriteRule (?i)(data|api) - [F] - -RedirectMatch 403 (?i)/data/config\.php$ -RedirectMatch 403 (?i)/data/logs -RedirectMatch 403 (?i)/data/cache -RedirectMatch 403 (?i)/data/upload -RedirectMatch 403 (?i)/application -RedirectMatch 403 (?i)/custom -RedirectMatch 403 (?i)/vendor -#END PROTECTED DIRECTORIES - - RewriteEngine On + # PROTECTED DIRECTORIES + RewriteCond %{REQUEST_FILENAME} -d + RewriteRule ^/?(data|api)/ - [F] + + RewriteRule ^/?data/config\.php$ - [F] + RewriteRule ^/?data/logs/ - [F] + RewriteRule ^/?data/cache/ - [F] + RewriteRule ^/?data/upload/ - [F] + RewriteRule ^/?application/ - [F] + RewriteRule ^/?custom/ - [F] + RewriteRule ^/?vendor/ - [F] + #END PROTECTED DIRECTORIES + RewriteRule .* - [E=HTTP_ESPO_CGI_AUTH:%{HTTP:Authorization}] RewriteRule reset/?$ reset.html [QSA,L] diff --git a/application/Espo/Core/Utils/Database/DBAL/Schema/Comparator.php b/application/Espo/Core/Utils/Database/DBAL/Schema/Comparator.php index 8f8b34abe6..4e9ee27a37 100644 --- a/application/Espo/Core/Utils/Database/DBAL/Schema/Comparator.php +++ b/application/Espo/Core/Utils/Database/DBAL/Schema/Comparator.php @@ -29,79 +29,85 @@ class Comparator extends \Doctrine\DBAL\Schema\Comparator { public function diffColumn(Column $column1, Column $column2) - { - $changedProperties = array(); - if ( $column1->getType() != $column2->getType() ) { + { + $changedProperties = array(); + if ( $column1->getType() != $column2->getType() ) { //espo: fix problem with executing query for custom types $column1DbTypeName = method_exists($column1->getType(), 'getDbTypeName') ? $column1->getType()->getDbTypeName() : $column1->getType()->getName(); $column2DbTypeName = method_exists($column2->getType(), 'getDbTypeName') ? $column2->getType()->getDbTypeName() : $column2->getType()->getName(); if (strtolower($column1DbTypeName) != strtolower($column2DbTypeName)) { - $changedProperties[] = 'type'; + $changedProperties[] = 'type'; } //END: espo - } + } - if ($column1->getNotnull() != $column2->getNotnull()) { - $changedProperties[] = 'notnull'; - } + if ($column1->getNotnull() != $column2->getNotnull()) { + $changedProperties[] = 'notnull'; + } - if ($column1->getDefault() != $column2->getDefault()) { - $changedProperties[] = 'default'; - } + if ($column1->getDefault() != $column2->getDefault()) { + $changedProperties[] = 'default'; + } - if ($column1->getUnsigned() != $column2->getUnsigned()) { - $changedProperties[] = 'unsigned'; - } + if ($column1->getUnsigned() != $column2->getUnsigned()) { + $changedProperties[] = 'unsigned'; + } - if ($column1->getType() instanceof \Doctrine\DBAL\Types\StringType) { - // check if value of length is set at all, default value assumed otherwise. - $length1 = $column1->getLength() ?: 255; - $length2 = $column2->getLength() ?: 255; - if ($length1 != $length2) { - $changedProperties[] = 'length'; - } + if ($column1->getType() instanceof \Doctrine\DBAL\Types\StringType) { + // check if value of length is set at all, default value assumed otherwise. + $length1 = $column1->getLength() ?: 255; + $length2 = $column2->getLength() ?: 255; - if ($column1->getFixed() != $column2->getFixed()) { - $changedProperties[] = 'fixed'; - } - } + /** Espo: column length can be increased only */ + /*if ($length1 != $length2) { + $changedProperties[] = 'length'; + }*/ + if ($length2 > $length1) { + $changedProperties[] = 'length'; + } + /** Espo: end */ - if ($column1->getType() instanceof \Doctrine\DBAL\Types\DecimalType) { - if (($column1->getPrecision()?:10) != ($column2->getPrecision()?:10)) { - $changedProperties[] = 'precision'; - } - if ($column1->getScale() != $column2->getScale()) { - $changedProperties[] = 'scale'; - } - } + if ($column1->getFixed() != $column2->getFixed()) { + $changedProperties[] = 'fixed'; + } + } - if ($column1->getAutoincrement() != $column2->getAutoincrement()) { - $changedProperties[] = 'autoincrement'; - } + if ($column1->getType() instanceof \Doctrine\DBAL\Types\DecimalType) { + if (($column1->getPrecision()?:10) != ($column2->getPrecision()?:10)) { + $changedProperties[] = 'precision'; + } + if ($column1->getScale() != $column2->getScale()) { + $changedProperties[] = 'scale'; + } + } - // only allow to delete comment if its set to '' not to null. - if ($column1->getComment() !== null && $column1->getComment() != $column2->getComment()) { - $changedProperties[] = 'comment'; - } + if ($column1->getAutoincrement() != $column2->getAutoincrement()) { + $changedProperties[] = 'autoincrement'; + } - $options1 = $column1->getCustomSchemaOptions(); - $options2 = $column2->getCustomSchemaOptions(); + // only allow to delete comment if its set to '' not to null. + if ($column1->getComment() !== null && $column1->getComment() != $column2->getComment()) { + $changedProperties[] = 'comment'; + } - $commonKeys = array_keys(array_intersect_key($options1, $options2)); + $options1 = $column1->getCustomSchemaOptions(); + $options2 = $column2->getCustomSchemaOptions(); - foreach ($commonKeys as $key) { - if ($options1[$key] !== $options2[$key]) { - $changedProperties[] = $key; - } - } + $commonKeys = array_keys(array_intersect_key($options1, $options2)); - $diffKeys = array_keys(array_diff_key($options1, $options2) + array_diff_key($options2, $options1)); + foreach ($commonKeys as $key) { + if ($options1[$key] !== $options2[$key]) { + $changedProperties[] = $key; + } + } - $changedProperties = array_merge($changedProperties, $diffKeys); + $diffKeys = array_keys(array_diff_key($options1, $options2) + array_diff_key($options2, $options1)); - return $changedProperties; - } + $changedProperties = array_merge($changedProperties, $diffKeys); + + return $changedProperties; + } } \ No newline at end of file diff --git a/application/Espo/Core/Utils/File/Permission.php b/application/Espo/Core/Utils/File/Permission.php index d9597f5cb0..efcc763d91 100644 --- a/application/Espo/Core/Utils/File/Permission.php +++ b/application/Espo/Core/Utils/File/Permission.php @@ -420,7 +420,7 @@ class Permission $owner = $defaultPermissions['user']; if (empty($owner) && $usePosix) { - $owner = posix_getuid(); + $owner = function_exists('posix_getuid') ? posix_getuid() : null; } if (empty($owner)) { @@ -441,7 +441,7 @@ class Permission $group = $defaultPermissions['group']; if (empty($group) && $usePosix) { - $group = posix_getegid(); + $group = function_exists('posix_getegid') ? posix_getegid() : null; } if (empty($group)) { diff --git a/application/Espo/Core/Utils/System.php b/application/Espo/Core/Utils/System.php index 1752668150..012b022f36 100644 --- a/application/Espo/Core/Utils/System.php +++ b/application/Espo/Core/Utils/System.php @@ -33,9 +33,9 @@ class System { $serverSoft = $_SERVER['SERVER_SOFTWARE']; - preg_match('/^(.*)\//i', $serverSoft, $match); + preg_match('/^(.*?)\//i', $serverSoft, $match); if (empty($match[1])) { - preg_match('/^(.*)\/?/i', $serverSoft, $match); + preg_match('/^(.*?)\/?/i', $serverSoft, $match); } $serverName = strtolower( trim($match[1]) ); diff --git a/frontend/client/custom/.data b/frontend/client/custom/.data new file mode 100644 index 0000000000..0519ecba6e --- /dev/null +++ b/frontend/client/custom/.data @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/install/core/Installer.php b/install/core/Installer.php index d764e15e2a..cd3a454a85 100644 --- a/install/core/Installer.php +++ b/install/core/Installer.php @@ -94,6 +94,10 @@ class Installer return $this->app->getContainer()->get('fileManager'); } + public function getVersion() + { + return $this->getConfig()->get('version'); + } protected function auth() { diff --git a/install/core/Language.php b/install/core/Language.php index 8db1655272..e26e9dab3b 100644 --- a/install/core/Language.php +++ b/install/core/Language.php @@ -1,55 +1,98 @@ -systemHelper = new SystemHelper(); - } - - protected function getSystemHelper() - { - return $this->systemHelper; - } - - public function get($language) - { - if (empty($language)) { - $language = $this->defaultLanguage; - } - - $langFileName = 'install/core/i18n/'.$language.'/install.json'; - if (!file_exists($langFileName)) { - $langFileName = 'install/core/i18n/'.$this->defaultLanguage.'/install.json'; - } - - $i18n = file_get_contents($langFileName); - $i18n = json_decode($i18n, true); - - $this->afterRetrieve($i18n); - - return $i18n; - } - - /** - * After retrieve actions - * - * @param array $i18n - * @return array $i18n - */ - protected function afterRetrieve(array &$i18n) - { - /** Get rewrite rules */ - $serverType = $this->getSystemHelper()->getServerType(); - $rewriteRules = $this->getSystemHelper()->getRewriteRules(); - $i18n['options']['modRewriteHelp'][$serverType] = str_replace('{0}', $rewriteRules, $i18n['options']['modRewriteHelp'][$serverType]); - } - - -} +systemHelper = new SystemHelper(); + } + + protected function getSystemHelper() + { + return $this->systemHelper; + } + + public function get($language) + { + if (isset($this->data[$language])) { + return $this->data[$language]; + } + + if (empty($language)) { + $language = $this->defaultLanguage; + } + + $langFileName = 'install/core/i18n/'.$language.'/install.json'; + if (!file_exists($langFileName)) { + $langFileName = 'install/core/i18n/'.$this->defaultLanguage.'/install.json'; + } + + $i18n = $this->getLangData($langFileName); + + if ($language != $this->defaultLanguage) { + $i18n = $this->mergeWithDefaults($i18n); + } + + $this->afterRetrieve($i18n); + + $this->data[$language] = $i18n; + + return $this->data[$language]; + } + + /** + * Merge current language with default one + * + * @param array $data + * @return array + */ + protected function mergeWithDefaults($data) + { + $defaultLangFile = 'install/core/i18n/'.$this->defaultLanguage.'/install.json'; + $defaultData = $this->getLangData($defaultLangFile); + + foreach ($data as $categoryName => &$labels) { + foreach ($defaultData[$categoryName] as $defaultLabelName => $defaultLabel) { + if (!isset($labels[$defaultLabelName])) { + $labels[$defaultLabelName] = $defaultLabel; + } + } + } + + $data = array_merge($defaultData, $data); + + return $data; + } + + protected function getLangData($filePath) + { + $data = file_get_contents($filePath); + $data = json_decode($data, true); + + return $data; + } + + /** + * After retrieve actions + * + * @param array $i18n + * @return array $i18n + */ + protected function afterRetrieve(array &$i18n) + { + /** Get rewrite rules */ + $serverType = $this->getSystemHelper()->getServerType(); + $rewriteRules = $this->getSystemHelper()->getRewriteRules(); + $i18n['options']['modRewriteHelp'][$serverType] = str_replace('{0}', $rewriteRules, $i18n['options']['modRewriteHelp'][$serverType]); + } + + +} diff --git a/install/core/SystemHelper.php b/install/core/SystemHelper.php index 21da1c5b1f..c39dcf6277 100644 --- a/install/core/SystemHelper.php +++ b/install/core/SystemHelper.php @@ -24,22 +24,23 @@ class SystemHelper extends \Espo\Core\Utils\System { - protected $requirements = array( - 'phpVersion' => '5.4', + protected $requirements; - 'exts' => array( - 'json', - 'mcrypt', - 'pdo_mysql', - ), - ); + protected $apiPath; - protected $modRewriteUrl = '/api/v1/Metadata'; + protected $modRewriteUrl = '/Metadata'; protected $writableDir = 'data'; protected $combineOperator = '&&'; + public function __construct() + { + $config = include('config.php'); + + $this->requirements = $config['requirements']; + $this->apiPath = $config['apiPath']; + } public function initWritable() { @@ -55,7 +56,6 @@ class SystemHelper extends \Espo\Core\Utils\System return $this->writableDir; } - public function checkRequirements() { $result['success'] = true; @@ -64,10 +64,10 @@ class SystemHelper extends \Espo\Core\Utils\System $result['errors']['phpVersion'] = $this->requirements['phpVersion']; $result['success'] = false; } - if (!empty($this->requirements['exts'])) { - foreach ($this->requirements['exts'] as $extName) { + if (!empty($this->requirements['phpRequires'])) { + foreach ($this->requirements['phpRequires'] as $extName) { if (!extension_loaded($extName)) { - $result['errors']['exts'][] = $extName; + $result['errors']['phpRequires'][] = $extName; $result['success'] = false; } } @@ -77,62 +77,129 @@ class SystemHelper extends \Espo\Core\Utils\System return $result; } - public function checkDbConnection($hostName, $port, $dbUserName, $dbUserPass, $dbName, $dbDriver = 'pdo_mysql', $isCreateDatabase = true) + public function getRecommendationList($type = 'php', $data = null) + { + $list = array(); + + if ($type == 'mysql') { + $pdoConn = $this->getPdoConnection($data['dbHostName'], $data['dbPort'], $data['dbUserName'], $data['dbUserPass'], $data['dbName']); + } + + $currentVersion = ($type == 'php') ? PHP_VERSION : $this->getMysqlSetting('version', $pdoConn); + $list[$type . 'Version'] = array( + 'current' => $currentVersion, + 'required' => $this->requirements[$type . 'Version'], + 'acceptable' => true, + ); + + $recommendations = array_merge($this->requirements[$type . 'Requires'], $this->requirements[$type . 'Recommendations']); + + foreach ($recommendations as $name => $requiredValue) { + + $isExtension = false; + + if (is_int($name)) { + $name = $requiredValue; + $acceptable = extension_loaded($name); + $currentValue = $acceptable ? 'On' : 'Off'; + $isExtension = true; + + } else { + $currentValue = ($type == 'php') ? ini_get($name) : $this->getMysqlSetting($name, $pdoConn); + $acceptable = ( isset($currentValue) && $this->convertToBytes($currentValue) >= $this->convertToBytes($requiredValue) ) ? true : false; + } + + $list[$name] = array( + 'current' => $currentValue, + 'required' => $requiredValue, + 'acceptable' => $acceptable, + 'isExtension' => $isExtension, + ); + } + + return $list; + } + + protected function getMysqlSetting($name, \PDO $pdoConnection) + { + $sth = $pdoConnection->prepare("SHOW VARIABLES LIKE '" . $name . "'"); + $sth->execute(); + $res = $sth->fetch(PDO::FETCH_NUM); + + $version = empty($res[1]) ? null : $res[1]; + + return $version; + } + + public function checkDbConnection($hostName, $port, $dbUserName, $dbUserPass, $dbName, $isCreateDatabase = true) { $result['success'] = true; - switch ($dbDriver) { - case 'mysqli': - $mysqli = (empty($port)) ? new mysqli($hostName, $dbUserName, $dbUserPass, $dbName) : new mysqli($hostName, $dbUserName, $dbUserPass, $dbName, $port); - if (!$mysqli->connect_errno) { - $mysqli->close(); - } - else { - $result['errors']['dbConnect']['errorCode'] = $mysqli->connect_errno; - $result['errors']['dbConnect']['errorMsg'] = $mysqli->connect_error; - $result['success'] = false; - } - break; + $dbh = $this->getPdoConnection($hostName, $port, $dbUserName, $dbUserPass, $dbName); - case 'pdo_mysql': - try { - $dsn = "mysql:host={$hostName};" . ((!empty($port)) ? "port={$port};" : '') . "dbname={$dbName}"; - $dbh = new PDO($dsn, $dbUserName, $dbUserPass); - $dbh = null; - } catch (PDOException $e) { - - $result['errors']['dbConnect']['errorCode'] = $e->getCode(); - $result['errors']['dbConnect']['errorMsg'] = $e->getMessage(); - $result['success'] = false; - } - - /** try to create a database */ - if ($isCreateDatabase && !$result['success'] && $result['errors']['dbConnect']['errorCode'] == '1049') { - - $dsn = "mysql:host={$hostName};" . ((!empty($port)) ? "port={$port}" : ''); - $pdo = new PDO($dsn, $dbUserName, $dbUserPass); - - $isCreated = true; - try { - $pdo->query("CREATE DATABASE IF NOT EXISTS `$dbName`"); - } catch (PDOException $e) { - $isCreated = false; - } - - if ($isCreated) { - return $this->checkDbConnection($hostName, $port, $dbUserName, $dbUserPass, $dbName, $dbDriver, false); - } - } - /** END: try to create a database */ - - - - break; + if ($dbh instanceof \PDOException) { + $result['errors']['dbConnect']['errorCode'] = $dbh->getCode(); + $result['errors']['dbConnect']['errorMsg'] = $dbh->getMessage(); + $result['success'] = false; } + /** Check MySQL settings */ + if ($result['success']) { + $currentMysqlVersion = $this->getMysqlSetting('version', $dbh); + if (isset($currentMysqlVersion) && version_compare($currentMysqlVersion, $this->requirements['mysqlVersion']) == -1) { + $result['errors']['mysqlVersion'] = $this->requirements['mysqlVersion']; + $result['success'] = false; + } + + /** Check required MySQL settings */ + foreach ($this->requirements['mysqlRequires'] as $name => $requiredValue) { + $currentValue = $this->getMysqlSetting($name, $dbh); + $acceptable = ( isset($currentValue) && $this->convertToBytes($currentValue) >= $this->convertToBytes($requiredValue) ) ? true : false; + if (!$acceptable) { + $result['errors']['mysqlSetting'] = array( + 'errorCode' => 'mysqlSettingError', + 'name' => $name, + 'value' => $requiredValue, + ); + $result['success'] = false; + } + } + } + + /** try to create a database */ + if ($isCreateDatabase && !$result['success'] && $result['errors']['dbConnect']['errorCode'] == '1049') + { + $dsn = "mysql:host={$hostName};" . ((!empty($port)) ? "port={$port}" : ''); + $pdo = new PDO($dsn, $dbUserName, $dbUserPass); + + $isCreated = true; + try { + $pdo->query("CREATE DATABASE IF NOT EXISTS `$dbName`"); + } catch (PDOException $e) { + $isCreated = false; + } + + if ($isCreated) { + return $this->checkDbConnection($hostName, $port, $dbUserName, $dbUserPass, $dbName, false); + } + } + /** END: try to create a database */ + return $result; } + public function getPdoConnection($hostName, $port, $dbUserName, $dbUserPass, $dbName) + { + try { + $dsn = "mysql:host={$hostName};" . ((!empty($port)) ? "port={$port};" : '') . "dbname={$dbName}"; + $dbh = new PDO($dsn, $dbUserName, $dbUserPass); + } catch (PDOException $e) { + return $e; + } + + return $dbh; + } + public function getBaseUrl() { $pageUrl = ($_SERVER["HTTPS"] == 'on') ? 'https://' : 'http://'; @@ -148,9 +215,14 @@ class SystemHelper extends \Espo\Core\Utils\System return $baseUrl; } + public function getApiPath() + { + return $this->apiPath; + } + public function getModRewriteUrl() { - return $this->modRewriteUrl; + return $this->apiPath . $this->modRewriteUrl; } public function getChownCommand($path, $isSudo = false, $isCd = true) @@ -160,8 +232,8 @@ class SystemHelper extends \Espo\Core\Utils\System $path = implode(' ', $path); } - $owner = posix_getuid(); - $group = posix_getegid(); + $owner = function_exists('posix_getuid') ? posix_getuid() : null; + $group = function_exists('posix_getegid') ? posix_getegid() : null; $sudoStr = $isSudo ? 'sudo ' : ''; @@ -279,7 +351,7 @@ class SystemHelper extends \Espo\Core\Utils\System $serverType = $this->getServerType(); $rules = array( - 'nginx' => "location /api/v1/ {\n if (!-e " . '$request_filename' . "){\n rewrite ^/api/v1/(.*)$ /api/v1/index.php last; break;\n }\n}\n\nlocation / {\n rewrite reset/?$ reset.html break;\n}\n\nlocation /(data|api) {\n if (-e " . '$request_filename' . "){\n return 403;\n }\n}\n\nlocation /data/logs {\n return 403;\n}\nlocation /data/config.php$ {\n return 403;\n}\nlocation /data/cache {\n return 403;\n}\nlocation /data/upload {\n return 403;\n}\nlocation /application {\n return 403;\n}\nlocation /custom {\n return 403;\n}\nlocation /vendor {\n return 403;\n}", + 'nginx' => "location /api/v1/ {\n if (!-e " . '$request_filename' . "){\n rewrite ^/api/v1/(.*)$ /api/v1/index.php last; break;\n }\n}\n\nlocation / {\n rewrite reset/?$ reset.html break;\n}\n\nlocation ^~ (data|api)/ {\n if (-e " . '$request_filename' . "){\n return 403;\n }\n}\n\nlocation ^~ /data/logs/ {\n return 403;\n}\nlocation ^~ /data/config.php {\n return 403;\n}\nlocation ^~ /data/cache/ {\n return 403;\n}\nlocation ^~ /data/upload/ {\n return 403;\n}\nlocation ^~ /application/ {\n return 403;\n}\nlocation ^~ /custom/ {\n return 403;\n}\nlocation ^~ /vendor/ {\n return 403;\n}", ); if (isset($rules[$serverType])) { @@ -289,4 +361,22 @@ class SystemHelper extends \Espo\Core\Utils\System return ''; } + public function convertToBytes($value) + { + $value = trim($value); + $last = strtoupper(substr($value, -1)); + + switch ( $last ) + { + case 'G': + $value = (int) $value * 1024; + case 'M': + $value = (int) $value * 1024; + case 'K': + $value = (int) $value * 1024; + } + + return $value; + } + } diff --git a/install/core/actions/settingsTest.php b/install/core/actions/settingsTest.php index c3eae65f0f..6bf8e6bc0d 100644 --- a/install/core/actions/settingsTest.php +++ b/install/core/actions/settingsTest.php @@ -40,9 +40,8 @@ if ($result['success'] && !empty($_REQUEST['dbName']) && !empty($_REQUEST['hostN list($hostName, $port) = explode(':', trim($_REQUEST['hostName'])); $dbUserName = trim($_REQUEST['dbUserName']); $dbUserPass = trim($_REQUEST['dbUserPass']); - $dbDriver = (!empty($_REQUEST['dbDriver']))? $_REQUEST['dbDriver'] : 'pdo_mysql'; - $res = $systemHelper->checkDbConnection($hostName, $port, $dbUserName, $dbUserPass, $dbName, $dbDriver); + $res = $systemHelper->checkDbConnection($hostName, $port, $dbUserName, $dbUserPass, $dbName); $result['success'] &= $res['success']; if (!empty($res['errors'])) { $result['errors'] = array_merge($result['errors'], $res['errors']); diff --git a/install/core/actions/setupConfirmation.php b/install/core/actions/setupConfirmation.php new file mode 100644 index 0000000000..fa9b28d3bf --- /dev/null +++ b/install/core/actions/setupConfirmation.php @@ -0,0 +1,48 @@ +getRecommendationList(); +$smarty->assign('phpConfig', $phpConfig); + +$installData = $_SESSION['install']; +list($host, $port) = explode(':', $installData['hostName']); + +$dbConfig = array( + 'dbHostName' => $host, + 'dbPort' => $port, + 'dbName' => $installData['dbName'], + 'dbUserName' => $installData['dbUserName'], + 'dbUserPass' => $installData['dbUserPass'], +); +$mysqlConfig = $systemHelper->getRecommendationList('mysql', $dbConfig); + +$dbConfig['dbHostName'] = $installData['hostName']; +unset($dbConfig['dbPort'], $dbConfig['dbUserPass']); + +foreach ($dbConfig as $name => $value) { + $mysqlConfig[$name] = array( + 'current' => $value, + 'acceptable' => true, + ); +} + +$smarty->assign('mysqlConfig', $mysqlConfig); \ No newline at end of file diff --git a/install/core/config.php b/install/core/config.php new file mode 100644 index 0000000000..93085ad175 --- /dev/null +++ b/install/core/config.php @@ -0,0 +1,40 @@ + '/api/v1', + + 'requirements' => array( + 'phpVersion' => '5.4', + + 'phpRequires' => array( + 'JSON', + 'mcrypt', + 'pdo_mysql', + ), + + 'phpRecommendations' => array( + 'GD', + 'IMAP', + 'max_execution_time' => 180, + 'max_input_time' => 180, + 'memory_limit' => '256M', + 'post_max_size' => '20M', + 'upload_max_filesize' => '20M', + ), + + 'mysqlVersion' => '5.1', + 'mysqlRequires' => array( + + ), + + 'mysqlRecommendations' => array( + + ), + ), + + 'blog' => 'http://blog.espocrm.com', + 'twitter' => 'https://twitter.com/espocrm', + 'forum' => 'http://forum.espocrm.com', + +); \ No newline at end of file diff --git a/install/core/i18n/de_DE/install.json b/install/core/i18n/de_DE/install.json index fe6a3d3f38..b65ee88ed9 100644 --- a/install/core/i18n/de_DE/install.json +++ b/install/core/i18n/de_DE/install.json @@ -12,7 +12,7 @@ "Step5 page title": "SMTP Einstellungen für ausgehende E-Mails", "Errors page title": "Fehler", "Finish page title": "Die Installation ist abgeschlossen", - "Congratulation! Welcome to EspoCRM!": "Gratulation! EspoCRM wurde erfolgreich installiert.", + "Congratulation! Welcome to EspoCRM": "Gratulation! EspoCRM wurde erfolgreich installiert.", "Installation Guide": "Installationshandbuch", "admin": "admin", "localhost": "localhost", @@ -25,8 +25,14 @@ "Next": "Weiter", "Go to EspoCRM": "Zu EspoCRM", "Re-check": "Überprüfung wiederholen", + "Version": "Version", "Test settings": "Verbindung überprüfen", - "Database Settings Description": "Geben Sie die Verbindungsinformationen für Ihre MySQL Datebank ein (Hostname, Benutzername und Passwort). Sie können den Serverport z.B. so definieren: localhost:3306" + "Database Settings Description": "Geben Sie die Verbindungsinformationen für Ihre MySQL Datebank ein (Hostname, Benutzername und Passwort). Sie können den Serverport z.B. so definieren: localhost:3306", + "phpVersion": "PHP version", + "mysqlVersion": "MySQL version", + "dbHostName": "Host Name", + "dbName": "Datenbank Name", + "dbUserName": "Datenbank Benutzername" }, "fields": { "Choose your language": "Wählen Sie Ihre Sprache", @@ -63,6 +69,7 @@ "Bad init Permission": "Zugriff verweigert für Verzeichnis \"{*}\". Bitte setzen Sie 775 für \"{*}\" oder führen Sie dieses Kommando in einem Terminal Fenster aus
{C}<\/b><\/pre> Operation nicht erlaubt? Versuchen Sie das: {CSU}",
 		"Some errors occurred!": "Es sind Fehler passiert!",
 		"phpVersion": "Ihre PHP Version wird von EspoCRM nicht unterstützt. Bitte aktualisieren Sie zumindest auf {minVersion}",
+		"MySQLVersion": "Ihre MySQL Version wird von EspoCRM nicht unterstützt. Bitte aktualisieren Sie zumindest auf {minVersion}",
 		"The PHP extension was not found...": "Die {extName}<\/b> PHP Erweiterung wurde nicht gefunden...",
 		"All Settings correct": "Alle Einstellungen sind korrekt",
 		"Failed to connect to database": "Konnte nicht zur Datenbank verbinden",
@@ -95,7 +102,7 @@
 		},
 		"modRewriteInstruction": {
 			"apache": {
-				"linux": "

Für die .htaccess Unterstützung ändern\/ergänzen Sie die Server Einstellungen innerhalb der <VirtualHost> Sektion (httpd.conf):
<Directory \/PATH_TO_ESPO\/> AllowOverride All<\/b> <\/Directory><\/pre>Dann führen Sie dieses Kommando in einem Terminalfenster aus:
service apache2 restart<\/b><\/pre>
Um \"mod_rewrite\" zu aktivieren führen Sie diese Kommandos in einem Terminalfenster aus:
a2enmod rewrite 
service apache2 restart<\/b><\/pre>", + "linux": "

Um die RewriteBase Pfad hinzufügen, öffnen Sie eine Datei {API_PATH}.htaccess und ändern Sie die folgende Zeile:
# RewriteBase /
To
RewriteBase {ESPO_PATH}{API_PATH}

Für die .htaccess Unterstützung ändern\/ergänzen Sie die Server Einstellungen innerhalb der <VirtualHost> Sektion (httpd.conf):
<Directory \/PATH_TO_ESPO\/> AllowOverride All<\/b> <\/Directory><\/pre>Dann führen Sie dieses Kommando in einem Terminalfenster aus:
service apache2 restart<\/b><\/pre>
Um \"mod_rewrite\" zu aktivieren führen Sie diese Kommandos in einem Terminalfenster aus:
a2enmod rewrite 
service apache2 restart<\/b><\/pre>", "windows": "
1. Finden Sie die httpd.conf Datei (normalerweise in einem Verzeichnis conf, config oder ähnlich)
2. Innerhalb der httpd.conf Datei aktivieren Sie die Zeile LoadModule rewrite_module modules\/mod_rewrite.so (entfernen Sie das # Zeichen vom Anfang der Zeile)
3. Stellen Sie sicher, dass die Zeile ClearModuleList nicht auskommentiert ist, genauso wie die Zeile AddModule mod_rewrite.c. <\/pre>" }, "microsoft-iis": { @@ -103,7 +110,7 @@ } }, "modRewriteHelp": { - "apache": "API Fehler: EspoCRM API nicht verfügbar
Mögliches Problem: deaktiviertes \"mod_rewrite\" des Apache Servers oder des .htaccess Supports.", + "apache": "API Fehler: EspoCRM API nicht verfügbar
Mögliches Problem: RewriteBase erforderlich, deaktiviertes \"mod_rewrite\" des Apache Servers oder des .htaccess Supports.", "nginx": "API Error: EspoCRM API nicht verfügbar.
Fügen Sie diesen Code zu Nginx Host Config (innerhalb des \"server\" Blocks) hinzu:
 {0} <\/pre>",
 			"microsoft-iis": "API Fehler: EspoCRM API nicht verfügbar
Mögliches Problem: deaktiviertes \"URL Rewrite\". Bitte überprüfen und aktivieren Sie das \"URL Rewrite\" Modul im IIS Server.", "default": "API Fehler: EspoCRM API nicht verfügbar
Mögliches Problem: deaktiviertes Rewrite Modul. Bitte überprüfen und aktivieren Sie das Rewrite Modul (z.B. mod_rewrite im Apache Server) und die .htaccess Unterstützung." diff --git a/install/core/i18n/en_US/install.json b/install/core/i18n/en_US/install.json index 57915a4804..5e9553e5b6 100644 --- a/install/core/i18n/en_US/install.json +++ b/install/core/i18n/en_US/install.json @@ -12,7 +12,8 @@ "Step5 page title": "SMTP settings for outgoing emails", "Errors page title": "Errors", "Finish page title": "Installation is complete", - "Congratulation! Welcome to EspoCRM!": "Congratulation! EspoCRM has been successfully installed.", + "Congratulation! Welcome to EspoCRM": "Congratulation! EspoCRM has been successfully installed.", + "More Information": "For more information,
please visit our blog: {BLOG}
follow us on twitter: {TWITTER}

If you have any suggestions or questions, please ask on the forum:
{FORUM}", "Installation Guide": "Installation Guide", "admin": "admin", "localhost": "localhost", @@ -25,8 +26,20 @@ "Next": "Next", "Go to EspoCRM": "Go to EspoCRM", "Re-check": "Re-check", + "Version": "Version", "Test settings": "Test Connection", - "Database Settings Description": "Enter your MySQL database connection information (hostname, username and password). You can specify the server port for hostname like localhost:3306." + "Database Settings Description": "Enter your MySQL database connection information (hostname, username and password). You can specify the server port for hostname like localhost:3306.", + "Install": "Install", + "SetupConfirmation page title": "Recommended Settings", + "PHP Configuration": "Recommended PHP settings", + "MySQL Configuration": "MySQL Configuration", + "Configuration Instructions": "Configuration Instructions", + "phpVersion": "PHP version", + "mysqlVersion": "MySQL version", + "dbHostName": "Host Name", + "dbName": "Database Name", + "dbUserName": "Database User Name", + "OK": "OK" }, "fields": { "Choose your language": "Choose your language", @@ -63,6 +76,7 @@ "Bad init Permission": "Permission denied for \"{*}\" directory. Please set 775 for \"{*}\" or just execute this command in the terminal
{C}
\n\tOperation not permitted? Try this one: {CSU}", "Some errors occurred!": "Some errors occurred!", "phpVersion": "Your PHP version is not supported by EspoCRM, please update to PHP {minVersion} at least", + "MySQLVersion": "Your MySQL version is not supported by EspoCRM, please update to MySQL {minVersion} at least", "The PHP extension was not found...": "PHP Error: Extension {extName} is not found.", "All Settings correct": "All Settings are correct", "Failed to connect to database": "Failed to connect to database", @@ -76,7 +90,7 @@ "createUser error": "createUser error", "checkAjaxPermission error": "checkAjaxPermission error", "Ajax failed": "Ajax failed", - "Cannot create user": "Cannot create user", + "Cannot create user": "Cannot create a user", "Permission denied": "Permission denied", "permissionInstruction": "
Run this in Terminal
\"{C}\"
", "operationNotPermitted" : "Operation not permitted? Try this:
{CSU}", @@ -86,7 +100,10 @@ "Thousand Separator and Decimal Mark equal": "Thousand Separator and Decimal Mark cannot be equal", "1049": "Unknown database", "2005": "Unknown MySQL server host", - "1045": "Access denied for user" + "1045": "Access denied for user", + "extension": "{0} extension is missing", + "option": "Recommended value is {0}", + "mysqlSettingError": "EspoCRM requires the MySQL setting \"{NAME}\" to be set to {VALUE}" }, "options": { "db driver": { @@ -95,7 +112,7 @@ }, "modRewriteInstruction": { "apache": { - "linux": "

To enable .htaccess support add/edit the Server configuration settings inside your <VirtualHost> section (httpd.conf):
<Directory /PATH_TO_ESPO/>\n AllowOverride All\n</Directory>
\n Afterwards run this command in a Terminal:
service apache2 restart

To enable \"mod_rewrite\" run those commands in a Terminal:
a2enmod rewrite 
service apache2 restart
", + "linux": "

To add the RewriteBase path, open a file {API_PATH}.htaccess and change the following line:
# RewriteBase /
To
RewriteBase {ESPO_PATH}{API_PATH}

To enable .htaccess support add/edit the Server configuration settings inside your <VirtualHost> section (httpd.conf):
<Directory /PATH_TO_ESPO/>\n AllowOverride All\n</Directory>
\n Afterwards run this command in a Terminal:
service apache2 restart

To enable \"mod_rewrite\" run those commands in a Terminal:
a2enmod rewrite 
service apache2 restart
", "windows": "
1. Find the httpd.conf file (usually you will find it in a folder called conf, config or something along those lines)
\n2. Inside the httpd.conf file uncomment the line LoadModule rewrite_module modules/mod_rewrite.so (remove the pound '#' sign from in front of the line)
\n3. Also find the line ClearModuleList is uncommented then find and make sure that the line AddModule mod_rewrite.c is not commented out.\n
" }, "microsoft-iis": { @@ -103,7 +120,7 @@ } }, "modRewriteHelp": { - "apache": "API Error: EspoCRM API unavailable.
Possible problems: disabled \"mod_rewrite\" in Apache server or .htaccess support.", + "apache": "API Error: EspoCRM API unavailable.
Possible problems: RewriteBase required, disabled \"mod_rewrite\" in Apache server or .htaccess support.", "nginx": "API Error: EspoCRM API unavailable.
Add this code to your Nginx Host Config (inside \"server\" block):
\n
\n{0}\n
", "microsoft-iis": "API Error: EspoCRM API unavailable.
Possible problem: disabled \"URL Rewrite\". Please check and enable \"URL Rewrite\" Module in IIS server", "default": "API Error: EspoCRM API unavailable.
Possible problem: disabled Rewrite Module. Please check and enable Rewrite Module in your server (e.g. mod_rewrite in Apache) and .htaccess support." diff --git a/install/core/i18n/es_ES/install.json b/install/core/i18n/es_ES/install.json index 24e90a08ee..7af82c901b 100644 --- a/install/core/i18n/es_ES/install.json +++ b/install/core/i18n/es_ES/install.json @@ -12,7 +12,7 @@ "Step5 page title": "Configuración SMTP para los correos salientes", "Errors page title": "Errores", "Finish page title": "La instalación ha finalizado", - "Congratulation! Welcome to EspoCRM!": "¡Enhorabuena! EspoCRM(Español) se ha instalado correctamente.", + "Congratulation! Welcome to EspoCRM": "¡Enhorabuena! EspoCRM(Español) se ha instalado correctamente.", "Installation Guide": "Instrucciones de instalación", "admin": "admin", "localhost": "localhost", @@ -24,8 +24,14 @@ "Next": "Siguiente", "Go to EspoCRM": "Ir a EspoCRM(Español)", "Re-check": "Revisar otra vez", + "Version": "Version", "Test settings": "Test de conexión", - "Database Settings Description": "Enter your MySQL database connection information (hostname, username and password). You can specify the server port for hostname like localhost:3306." + "Database Settings Description": "Enter your MySQL database connection information (hostname, username and password). You can specify the server port for hostname like localhost:3306.", + "phpVersion": "PHP version", + "mysqlVersion": "MySQL version", + "dbHostName": "Hostname usualmente(localhost)", + "dbName": "Nombre de la Base de Datos", + "dbUserName": "Usuario de la Base de Datos" }, "fields": { "Choose your language": "Seleccione un lenguaje", @@ -61,7 +67,8 @@ "messages": { "Bad init Permission": "Permission denied for \"{*}\" directory. Please set 775 for \"{*}\" or just execute this command in the terminal
{C}
\n\tOperation not permitted? Try this one: {CSU}", "Some errors occurred!": "Some errors occurred!", - "phpVersion": "PHP version should be >= {minVersion}", + "phpVersion": "Your PHP version is not supported by EspoCRM, please update to PHP {minVersion} at least", + "MySQLVersion": "Your MySQL version is not supported by EspoCRM, please update to MySQL {minVersion} at least", "The PHP extension was not found...": "PHP Error: Extension {extName} is not found.", "All Settings correct": "All Settings are correct", "Failed to connect to database": "Failed to connect to database", @@ -94,7 +101,7 @@ }, "modRewriteInstruction": { "apache": { - "linux": "

To enable .htaccess support add/edit the Server configuration settings inside your <VirtualHost> section (httpd.conf):
<Directory /PATH_TO_ESPO/>\n AllowOverride All\n</Directory>
\n Afterwards run this command in a Terminal:
service apache2 restart

To enable \"mod_rewrite\" run those commands in a Terminal:
a2enmod rewrite 
service apache2 restart
", + "linux": "

To add the RewriteBase path, open a file {API_PATH}.htaccess and change the following line:
# RewriteBase /
To
RewriteBase {ESPO_PATH}{API_PATH}

To enable .htaccess support add/edit the Server configuration settings inside your <VirtualHost> section (httpd.conf):
<Directory /PATH_TO_ESPO/>\n AllowOverride All\n</Directory>
\n Afterwards run this command in a Terminal:
service apache2 restart

To enable \"mod_rewrite\" run those commands in a Terminal:
a2enmod rewrite 
service apache2 restart
", "windows": "
1. Find the httpd.conf file (usually you will find it in a folder called conf, config or something along those lines)
\n2. Inside the httpd.conf file uncomment the line LoadModule rewrite_module modules/mod_rewrite.so (remove the pound '#' sign from in front of the line)
\n3. Also find the line ClearModuleList is uncommented then find and make sure that the line AddModule mod_rewrite.c is not commented out.\n
" }, "microsoft-iis": { @@ -102,7 +109,7 @@ } }, "modRewriteHelp": { - "apache": "API Error: EspoCRM API unavailable.
Possible problems: disabled \"mod_rewrite\" in Apache server or .htaccess support.", + "apache": "API Error: EspoCRM API unavailable.
Possible problems: RewriteBase required, disabled \"mod_rewrite\" in Apache server or .htaccess support.", "nginx": "API Error: EspoCRM API unavailable.
Add this code to your Nginx Host Config (inside \"server\" block):
\n
\n{0}\n
", "microsoft-iis": "API Error: EspoCRM API unavailable.
Possible problem: disabled \"URL Rewrite\". Please check and enable \"URL Rewrite\" Module in IIS server", "default": "API Error: EspoCRM API unavailable.
Possible problem: disabled Rewrite Module. Please check and enable Rewrite Module in your server (e.g. mod_rewrite in Apache) and .htaccess support." diff --git a/install/core/i18n/fr_FR/install.json b/install/core/i18n/fr_FR/install.json index c9da6be879..cb920b3957 100644 --- a/install/core/i18n/fr_FR/install.json +++ b/install/core/i18n/fr_FR/install.json @@ -12,7 +12,7 @@ "Step5 page title": "Paramètres SMTP pour envoyer les emails", "Errors page title": "Erreurs", "Finish page title": "L'installation est terminée", - "Congratulation! Welcome to EspoCRM!": "Félicitation! EspoCRM a été installé avec succès.", + "Congratulation! Welcome to EspoCRM": "Félicitation! EspoCRM a été installé avec succès.", "Installation Guide": "Instructions d'installation", "admin": "admin", "localhost": "localhost", @@ -25,8 +25,14 @@ "Next": "Suivant", "Go to EspoCRM": "Aller à EspoCRM", "Re-check": "Revérifier", + "Version": "Version", "Test settings": "Tester la Connexion", - "Database Settings Description": "Enter your MySQL database connection information (hostname, username and password). You can specify the server port for hostname like localhost:3306." + "Database Settings Description": "Enter your MySQL database connection information (hostname, username and password). You can specify the server port for hostname like localhost:3306.", + "phpVersion": "Version PHP", + "mysqlVersion": "Version MySQL", + "dbHostName": "Nom d'hôte", + "dbName": "Nom de la Base de Donnée", + "dbUserName": "Nom d'utilisateur de la base de donnée" }, "fields": { "Choose your language": "Choisissez votre langue", @@ -63,6 +69,7 @@ "Bad init Permission": "Permission denied for \"{*}\" directory. Please set 775 for \"{*}\" or just execute this command in the terminal
{C}
\n\tOperation not permitted? Try this one: {CSU}", "Some errors occurred!": "Des erreurs se sont produites !", "phpVersion": "Your PHP version is not supported by EspoCRM, please update to PHP {minVersion} at least", + "MySQLVersion": "Your MySQL version is not supported by EspoCRM, please update to MySQL {minVersion} at least", "The PHP extension was not found...": "L'extension PHP {extName} est introuvable...", "All Settings correct": "Les Paramètres sont corrects", "Failed to connect to database": "Impossible de connecter la base de donnée", @@ -95,7 +102,7 @@ }, "modRewriteInstruction": { "apache": { - "linux": "

To enable .htaccess support add/edit the Server configuration settings inside your <VirtualHost> section (httpd.conf):
<Directory /PATH_TO_ESPO/>\n AllowOverride All\n</Directory>
\n Afterwards run this command in a Terminal:
service apache2 restart

To enable \"mod_rewrite\" run those commands in a Terminal:
a2enmod rewrite 
service apache2 restart
", + "linux": "

To add the RewriteBase path, open a file {API_PATH}.htaccess and change the following line:
# RewriteBase /
To
RewriteBase {ESPO_PATH}{API_PATH}

To enable .htaccess support add/edit the Server configuration settings inside your <VirtualHost> section (httpd.conf):
<Directory /PATH_TO_ESPO/>\n AllowOverride All\n</Directory>
\n Afterwards run this command in a Terminal:
service apache2 restart

To enable \"mod_rewrite\" run those commands in a Terminal:
a2enmod rewrite 
service apache2 restart
", "windows": "
1. Find the httpd.conf file (usually you will find it in a folder called conf, config or something along those lines)
\n2. Inside the httpd.conf file uncomment the line LoadModule rewrite_module modules/mod_rewrite.so (remove the pound '#' sign from in front of the line)
\n3. Also find the line ClearModuleList is uncommented then find and make sure that the line AddModule mod_rewrite.c is not commented out.\n
" }, "microsoft-iis": { @@ -103,7 +110,7 @@ } }, "modRewriteHelp": { - "apache": "API Error: EspoCRM API unavailable.
Possible problems: disabled \"mod_rewrite\" in Apache server or .htaccess support.", + "apache": "API Error: EspoCRM API unavailable.
Possible problems: RewriteBase required, disabled \"mod_rewrite\" in Apache server or .htaccess support.", "nginx": "API Error: EspoCRM API unavailable.
Add this code to your Nginx Host Config (inside \"server\" block):
\n
\n{0}\n
", "microsoft-iis": "API Error: EspoCRM API unavailable.
Possible problem: disabled \"URL Rewrite\". Please check and enable \"URL Rewrite\" Module in IIS server", "default": "API Error: EspoCRM API unavailable.
Possible problem: disabled Rewrite Module. Please check and enable Rewrite Module in your server (e.g. mod_rewrite in Apache) and .htaccess support." diff --git a/install/core/i18n/nl_NL/install.json b/install/core/i18n/nl_NL/install.json index 23c3a74ecc..a0c7381d9b 100644 --- a/install/core/i18n/nl_NL/install.json +++ b/install/core/i18n/nl_NL/install.json @@ -12,7 +12,7 @@ "Step5 page title": "SMTP instellingen voor uitgaande emails", "Errors page title": "Fouten", "Finish page title": "Installatie is compleet", - "Congratulation! Welcome to EspoCRM!": "Proficiat! EspoCRM heeft u succesvol geinstalleerd.", + "Congratulation! Welcome to EspoCRM": "Proficiat! EspoCRM heeft u succesvol geinstalleerd.", "Installation Guide": "Installation Guide", "admin": "admin", "localhost": "localhost", @@ -25,8 +25,14 @@ "Next": "Volgende", "Go to EspoCRM": "Ga naar EspoCRM", "Re-check": "Re-check", + "Version": "Versie", "Test settings": "Test Verbinding", - "Database Settings Description": "Enter your MySQL database connection information (hostname, username and password). You can specify the server port for hostname like localhost:3306." + "Database Settings Description": "Enter your MySQL database connection information (hostname, username and password). You can specify the server port for hostname like localhost:3306.", + "phpVersion": "PHP versie", + "mysqlVersion": "MySQL versie", + "dbHostName": "Host Naam", + "dbName": "Database Naam", + "dbUserName": "Database Gebruikers Naam" }, "fields": { "Choose your language": "Kies uw taal", @@ -63,6 +69,7 @@ "Bad init Permission": "Permission denied for \"{*}\" directory. Please set 775 for \"{*}\" or just execute this command in the terminal
{C}
\n\tOperation not permitted? Try this one: {CSU}", "Some errors occurred!": "Er zijn fouten gevonden!", "phpVersion": "Uw PHP versie wordt niet ondersteund door EspoCRM, u moet minimaal updaten naar PHP {minVersion}", + "MySQLVersion": "Uw MySQL versie wordt niet ondersteund door EspoCRM, u moet minimaal updaten naar MySQL {minVersion}", "The PHP extension was not found...": "PHP Error: Extension {extName} is not found.", "All Settings correct": "Alle Instellingen zijn juist", "Failed to connect to database": "Kan geen verbinding maken met de database", @@ -95,7 +102,7 @@ }, "modRewriteInstruction": { "apache": { - "linux": "

To enable .htaccess support add/edit the Server configuration settings inside your <VirtualHost> section (httpd.conf):
<Directory /PATH_TO_ESPO/>\n AllowOverride All\n</Directory>
\n Afterwards run this command in a Terminal:
service apache2 restart

To enable \"mod_rewrite\" run those commands in a Terminal:
a2enmod rewrite 
service apache2 restart
", + "linux": "

To add the RewriteBase path, open a file {API_PATH}.htaccess and change the following line:
# RewriteBase /
To
RewriteBase {ESPO_PATH}{API_PATH}

To enable .htaccess support add/edit the Server configuration settings inside your <VirtualHost> section (httpd.conf):
<Directory /PATH_TO_ESPO/>\n AllowOverride All\n</Directory>
\n Afterwards run this command in a Terminal:
service apache2 restart

To enable \"mod_rewrite\" run those commands in a Terminal:
a2enmod rewrite 
service apache2 restart
", "windows": "
1. Find the httpd.conf file (usually you will find it in a folder called conf, config or something along those lines)
\n2. Inside the httpd.conf file uncomment the line LoadModule rewrite_module modules/mod_rewrite.so (remove the pound '#' sign from in front of the line)
\n3. Also find the line ClearModuleList is uncommented then find and make sure that the line AddModule mod_rewrite.c is not commented out.\n
" }, "microsoft-iis": { @@ -103,7 +110,7 @@ } }, "modRewriteHelp": { - "apache": "API Error: EspoCRM API niet beschikbaar.
Mogelijke Oorzaak: disabled \"mod_rewrite\" in Apache server of .htaccess ondersteuning.", + "apache": "API Error: EspoCRM API niet beschikbaar.
Mogelijke Oorzaak: RewriteBase vereist, disabled \"mod_rewrite\" in Apache server of .htaccess ondersteuning.", "nginx": "API Error: EspoCRM API unavailable.
Add this code to your Nginx Host Config (inside \"server\" block):
\n
\n{0}\n
", "microsoft-iis": "API Error: EspoCRM API niet beschikbaar.
Mogelijk probleem: disabled \"URL Rewrite\". Controleer en activeer \"URL Rewrite\" Module in IIS server", "default": "API Error: EspoCRM API unavailable.
Possible problem: disabled Rewrite Module. Please check and enable Rewrite Module in your server (e.g. mod_rewrite in Apache) and .htaccess support." diff --git a/install/core/i18n/pl_PL/install.json b/install/core/i18n/pl_PL/install.json index a1deaa4628..51d2636ba0 100644 --- a/install/core/i18n/pl_PL/install.json +++ b/install/core/i18n/pl_PL/install.json @@ -12,7 +12,7 @@ "Step5 page title": "Ustawienia SMTP dla poczty wychodzącej", "Errors page title": "Błędy", "Finish page title": "Instalacja została ukończona", - "Congratulation! Welcome to EspoCRM!": "Gratuluje! EspoCRM zostało pomyślnie zainstalowane.", + "Congratulation! Welcome to EspoCRM": "Gratuluje! EspoCRM zostało pomyślnie zainstalowane.", "Installation Guide": "Instrukcja instalacji", "admin": "admin", "localhost": "localhost", @@ -25,8 +25,14 @@ "Next": "Następny", "Go to EspoCRM": "Idź do EspoCRM", "Re-check": "Sprawdź jeszcze raz", + "Version": "Wersja", "Test settings": "Test połączenia z bazą danych", - "Database Settings Description": "Enter your MySQL database connection information (hostname, username and password). You can specify the server port for hostname like localhost:3306." + "Database Settings Description": "Enter your MySQL database connection information (hostname, username and password). You can specify the server port for hostname like localhost:3306.", + "phpVersion": "Wersja PHP", + "mysqlVersion": "Wersja MySQL", + "dbHostName": "Host Name", + "dbName": "Nazwa Bazy Danych", + "dbUserName": "Nazwa Użytkonika Bazy Danych" }, "fields": { "Choose your language": "Wybierz swój język", @@ -63,6 +69,7 @@ "Bad init Permission": "Permission denied for \"{*}\" directory. Please set 775 for \"{*}\" or just execute this command in the terminal
{C}
\n\tOperation not permitted? Try this one: {CSU}", "Some errors occurred!": "Wystapiły błędy!", "phpVersion": "Wersja PHP nie jest wspierana przez EspoCRM, proszę wykonać aktualizację do minimalnej wersji PHP {minVersion}", + "MySQLVersion": "Wersja MySQL nie jest wspierana przez EspoCRM, proszę wykonać aktualizację do minimalnej wersji MySQL {minVersion}", "The PHP extension was not found...": "PHP Error: Extension {extName} is not found.", "All Settings correct": "Wszystkie ustwienia są poprawne", "Failed to connect to database": "Błąd połączenia z bazą danych", @@ -95,7 +102,7 @@ }, "modRewriteInstruction": { "apache": { - "linux": "

To enable .htaccess support add/edit the Server configuration settings inside your <VirtualHost> section (httpd.conf):
<Directory /PATH_TO_ESPO/>\n AllowOverride All\n</Directory>
\n Afterwards run this command in a Terminal:
service apache2 restart

To enable \"mod_rewrite\" run those commands in a Terminal:
a2enmod rewrite 
service apache2 restart
", + "linux": "

To add the RewriteBase path, open a file {API_PATH}.htaccess and change the following line:
# RewriteBase /
To
RewriteBase {ESPO_PATH}{API_PATH}

To enable .htaccess support add/edit the Server configuration settings inside your <VirtualHost> section (httpd.conf):
<Directory /PATH_TO_ESPO/>\n AllowOverride All\n</Directory>
\n Afterwards run this command in a Terminal:
service apache2 restart

To enable \"mod_rewrite\" run those commands in a Terminal:
a2enmod rewrite 
service apache2 restart
", "windows": "
1. Find the httpd.conf file (usually you will find it in a folder called conf, config or something along those lines)
\n2. Inside the httpd.conf file uncomment the line LoadModule rewrite_module modules/mod_rewrite.so (remove the pound '#' sign from in front of the line)
\n3. Also find the line ClearModuleList is uncommented then find and make sure that the line AddModule mod_rewrite.c is not commented out.\n
" }, "microsoft-iis": { @@ -103,7 +110,7 @@ } }, "modRewriteHelp": { - "apache": "Błąd API: API jest nie dostępne.
Pradwdopodobnie: wyłączyłeś \"mod_rewrite\" w serwerze Apache lub .htaccess.", + "apache": "Błąd API: API jest nie dostępne.
Pradwdopodobnie: wymagane RewriteBase, wyłączyłeś \"mod_rewrite\" w serwerze Apache lub .htaccess.", "nginx": "API Error: EspoCRM API unavailable.
Add this code to your Nginx Host Config (inside \"server\" block):
\n
\n{0}\n
", "microsoft-iis": "Błąd API: API jest nie dostepne.
Pradopodobnie: wyłączyłeś \"URL Rewrite\". Proszę sprawdź i włącz \"URL Rewrite\" Moduł w IIS serwer", "default": "API Error: EspoCRM API unavailable.
Possible problem: disabled Rewrite Module. Please check and enable Rewrite Module in your server (e.g. mod_rewrite in Apache) and .htaccess support." diff --git a/install/core/i18n/ro_RO/install.json b/install/core/i18n/ro_RO/install.json index b5fddb0377..7db8927731 100644 --- a/install/core/i18n/ro_RO/install.json +++ b/install/core/i18n/ro_RO/install.json @@ -12,7 +12,7 @@ "Step5 page title": "Setari SMTP pentru trimitere email-uri", "Errors page title": "Erori", "Finish page title": "Instalare finalizata", - "Congratulation! Welcome to EspoCRM!": "Felicitari! EspoCRM a fost instalat cu succes.", + "Congratulation! Welcome to EspoCRM": "Felicitari! EspoCRM a fost instalat cu succes.", "Installation Guide": "Instrucțiuni de instalare", "admin": "admin", "localhost": "localhost", @@ -25,8 +25,14 @@ "Next": "Inainte", "Go to EspoCRM": "Mergi la EspoCRM", "Re-check": "Re-verificare", + "Version": "Versiunea", "Test settings": "Testare Conexiune", - "Database Settings Description": "Enter your MySQL database connection information (hostname, username and password). You can specify the server port for hostname like localhost:3306." + "Database Settings Description": "Enter your MySQL database connection information (hostname, username and password). You can specify the server port for hostname like localhost:3306.", + "phpVersion": "Versiune PHP", + "mysqlVersion": "Versiune MySQL", + "dbHostName": "Numele Server-ului", + "dbName": "Numele Bazei de Date", + "dbUserName": "Nume Utilizator Baza de Date" }, "fields": { "Choose your language": "Alege Limba", @@ -63,6 +69,7 @@ "Bad init Permission": "Permission denied for \"{*}\" directory. Please set 775 for \"{*}\" or just execute this command in the terminal
{C}
\n\tOperation not permitted? Try this one: {CSU}", "Some errors occurred!": "Am intampinat erori!", "phpVersion": "Your PHP version is not supported by EspoCRM, please update to PHP {minVersion} at least", + "MySQLVersion": "Your MySQL version is not supported by EspoCRM, please update to MySQL {minVersion} at least", "The PHP extension was not found...": "PHP Error: Extension {extName} is not found.", "All Settings correct": "Toate setarile sunt corecte", "Failed to connect to database": "Nu s-a reusit conectarea la Baza de Date", @@ -95,7 +102,7 @@ }, "modRewriteInstruction": { "apache": { - "linux": "

To enable .htaccess support add/edit the Server configuration settings inside your <VirtualHost> section (httpd.conf):
<Directory /PATH_TO_ESPO/>\n AllowOverride All\n</Directory>
\n Afterwards run this command in a Terminal:
service apache2 restart

To enable \"mod_rewrite\" run those commands in a Terminal:
a2enmod rewrite 
service apache2 restart
", + "linux": "

To add the RewriteBase path, open a file {API_PATH}.htaccess and change the following line:
# RewriteBase /
To
RewriteBase {ESPO_PATH}{API_PATH}

To enable .htaccess support add/edit the Server configuration settings inside your <VirtualHost> section (httpd.conf):
<Directory /PATH_TO_ESPO/>\n AllowOverride All\n</Directory>
\n Afterwards run this command in a Terminal:
service apache2 restart

To enable \"mod_rewrite\" run those commands in a Terminal:
a2enmod rewrite 
service apache2 restart
", "windows": "
1. Find the httpd.conf file (usually you will find it in a folder called conf, config or something along those lines)
\n2. Inside the httpd.conf file uncomment the line LoadModule rewrite_module modules/mod_rewrite.so (remove the pound '#' sign from in front of the line)
\n3. Also find the line ClearModuleList is uncommented then find and make sure that the line AddModule mod_rewrite.c is not commented out.\n
" }, "microsoft-iis": { @@ -103,7 +110,7 @@ } }, "modRewriteHelp": { - "apache": "Eroare API: API-ul EspoCRM nu este valabil.
Probleme posibile: este dezactivat \"mod_rewrite\" in server-ul Apache, sau in .htaccess.", + "apache": "Eroare API: API-ul EspoCRM nu este valabil.
Probleme posibile: RewriteBase necesar, este dezactivat \"mod_rewrite\" in server-ul Apache, sau in .htaccess.", "nginx": "API Error: EspoCRM API unavailable.
Add this code to your Nginx Host Config (inside \"server\" block):
\n
\n{0}\n
", "microsoft-iis": "Eroare API: API-ul EspoCRM nu este valabil.
Probleme posibile: este dezactivat \"URL Rewrite\". Verificati si activati modulul \"URL Rewrite\" in server-ul IIS", "default": "API Error: EspoCRM API unavailable.
Possible problem: disabled Rewrite Module. Please check and enable Rewrite Module in your server (e.g. mod_rewrite in Apache) and .htaccess support." diff --git a/install/core/i18n/tr_TR/install.json b/install/core/i18n/tr_TR/install.json index 184ca85a22..1d339b73a9 100644 --- a/install/core/i18n/tr_TR/install.json +++ b/install/core/i18n/tr_TR/install.json @@ -12,7 +12,7 @@ "Step5 page title": "Giden epostalar için SMTP ayarları", "Errors page title": "Hatalar", "Finish page title": "Yükleme tamamlandı", - "Congratulation! Welcome to EspoCRM!": "Tebrikler! EspoCRM başarıyla yüklendi.", + "Congratulation! Welcome to EspoCRM": "Tebrikler! EspoCRM başarıyla yüklendi.", "Installation Guide": "Kurulum Talimatları", "admin": "Yçnetici", "localhost": "localhost", @@ -25,11 +25,17 @@ "Next": "Sonraki", "Go to EspoCRM": "EspoCRM sayfama git", "Re-check": "Tekrar Kontrol Et", - "Test settings": "Bağlantıyı Kontrol Et" + "Version": "Versiyon", + "Test settings": "Bağlantıyı Kontrol Et", + "phpVersion": "PHP sürümü", + "mysqlVersion": "MySQL sürümü", + "dbHostName": "Sunucu Adı", + "dbName": "Veritabanı adı", + "dbUserName": "Veritabanı Kullanıcı Adı" }, "fields": { "Choose your language": "Dili seçin", - "Database Name": "Veritabanı adı:", + "Database Name": "Veritabanı adı", "Host Name": "Sunucu Adı", "Port": "Bağlantı Noktası", "Database User Name": "Veritabanı Kullanıcı Adı", @@ -61,11 +67,12 @@ "messages": { "Bad init Permission": "Permission denied for \"{*}\" directory. Please set 775 for \"{*}\" or just execute this command in the terminal
{C}<\/b><\/pre>\n\tOperation not permitted? Try this one: {CSU}",
 		"Some errors occurred!": "Bazı hatalar oluştu!",
-		"Supported php version >=": "Desteklenen Php Sürümü >=",
+		"phpVersion": "Your PHP version is not supported by EspoCRM, please update to PHP {minVersion} at least",
+		"MySQLVersion": "Your MySQL version is not supported by EspoCRM, please update to MySQL {minVersion} at least",
 		"The PHP extension was not found...": "{extName}<\/b> PHP eklentisi bulunamadı...",
 		"All Settings correct": "Tüm ayarlar doğru",
 		"Failed to connect to database": "Veritabanına bağlanma başarısız oldu",
-		"PHP version: ": "PHP sürümü:",
+		"PHP version": "PHP sürümü",
 		"You must agree to the license agreement": "Lisans sözleşmesini kabul etmelisiniz",
 		"Passwords do not match": "Şifreler eşleşmiyor",
 		"Enable mod_rewrite in Apache server": "Mod_rewrite ı Apache sunucusunda etkinleştirin",
@@ -94,7 +101,7 @@
 		},
 		"modRewriteInstruction": {
 			"apache": {
-				"linux": "

To enable .htaccess support add/edit the Server configuration settings inside your <VirtualHost> section (httpd.conf):
<Directory \/PATH_TO_ESPO\/>\n AllowOverride All<\/b>\n<\/Directory><\/pre>\n Afterwards run this command in a Terminal:
service apache2 restart<\/b><\/pre>
To enable \"mod_rewrite\" run those commands in a Terminal:
a2enmod rewrite 
service apache2 restart<\/b><\/pre>", + "linux": "

To add the RewriteBase path, open a file {API_PATH}.htaccess and change the following line:
# RewriteBase /
To
RewriteBase {ESPO_PATH}{API_PATH}

To enable .htaccess support add/edit the Server configuration settings inside your <VirtualHost> section (httpd.conf):
<Directory /PATH_TO_ESPO/>\n AllowOverride All\n</Directory>
\n Afterwards run this command in a Terminal:
service apache2 restart

To enable \"mod_rewrite\" run those commands in a Terminal:
a2enmod rewrite 
service apache2 restart
", "windows": "
1. Find the httpd.conf file (usually you will find it in a folder called conf, config or something along those lines)
\n2. Inside the httpd.conf file uncomment the line LoadModule rewrite_module modules\/mod_rewrite.so (remove the pound '#' sign from in front of the line)
\n3. Also find the line ClearModuleList is uncommented then find and make sure that the line AddModule mod_rewrite.c is not commented out.\n<\/pre>" }, "microsoft-iis": { @@ -102,7 +109,7 @@ } }, "modRewriteHelp": { - "apache": "API Error: EspoCRM API unavailable.
Possible problems: disabled \"mod_rewrite\" in Apache server or .htaccess support.", + "apache": "API Error: EspoCRM API unavailable.
Possible problems: RewriteBase required, disabled \"mod_rewrite\" in Apache server or .htaccess support.", "nginx": "API Error: EspoCRM API unavailable.
Add this code to your Nginx Host Config (inside \"server\" block):
\n
\n{0}\n
", "microsoft-iis": "API Error: EspoCRM API unavailable.
Possible problem: disabled \"URL Rewrite\". Please check and enable \"URL Rewrite\" Module in IIS server", "default": "API Error: EspoCRM API unavailable.
Possible problem: disabled Rewrite Module. Please check and enable Rewrite Module in your server (e.g. mod_rewrite in Apache) and .htaccess support." diff --git a/install/core/i18n/vi_VN/install.json b/install/core/i18n/vi_VN/install.json index 4c6eebbc3b..e1f5137ea7 100644 --- a/install/core/i18n/vi_VN/install.json +++ b/install/core/i18n/vi_VN/install.json @@ -12,7 +12,7 @@ "Step5 page title": "Cài đặt SMTP cho email đi", "Errors page title": "Lỗi", "Finish page title": "Hoàn thành cài đặt", - "Congratulation! Welcome to EspoCRM!": "Xin chúc mừng bạn! EspoCRM đã được cài đặt thành công.", + "Congratulation! Welcome to EspoCRM": "Xin chúc mừng bạn! EspoCRM đã được cài đặt thành công.", "Installation Guide": "Hướng dẫn cài đặt", "admin": "admin", "localhost": "localhost", @@ -25,8 +25,14 @@ "Next": "Tiến", "Go to EspoCRM": "Đi đến EspoCRM", "Re-check": "Kiểm tra lại", + "Version": "Phiên bản", "Test settings": "Kiểm tra kết nối", - "Database Settings Description": "Enter your MySQL database connection information (hostname, username and password). You can specify the server port for hostname like localhost:3306." + "Database Settings Description": "Enter your MySQL database connection information (hostname, username and password). You can specify the server port for hostname like localhost:3306.", + "phpVersion": "Phiên bản PHP", + "mysqlVersion": "Phiên bản MySQL", + "dbHostName": "Tên máy chủ", + "dbName": "Tên cơ sở dữ liệu", + "dbUserName": "Tên truy cập csdl" }, "fields": { "Choose your language": "Chọn ngôn ngữ", @@ -63,6 +69,7 @@ "Bad init Permission": "Permission denied for \"{*}\" directory. Please set 775 for \"{*}\" or just execute this command in the terminal
{C}
\n\tOperation not permitted? Try this one: {CSU}", "Some errors occurred!": "Đã có lỗi xảy ra!", "phpVersion": "Your PHP version is not supported by EspoCRM, please update to PHP {minVersion} at least", + "MySQLVersion": "Your MySQL version is not supported by EspoCRM, please update to MySQL {minVersion} at least", "The PHP extension was not found...": "Không tìm thấy phần mở rộng {extName} của PHP", "All Settings correct": "cài đặt thành công", "Failed to connect to database": "Không thể kết nối tới csdl", @@ -95,7 +102,7 @@ }, "modRewriteInstruction": { "apache": { - "linux": "

To enable .htaccess support add/edit the Server configuration settings inside your <VirtualHost> section (httpd.conf):
<Directory /PATH_TO_ESPO/>\n AllowOverride All\n</Directory>
\n Afterwards run this command in a Terminal:
service apache2 restart

To enable \"mod_rewrite\" run those commands in a Terminal:
a2enmod rewrite 
service apache2 restart
", + "linux": "

To add the RewriteBase path, open a file {API_PATH}.htaccess and change the following line:
# RewriteBase /
To
RewriteBase {ESPO_PATH}{API_PATH}

To enable .htaccess support add/edit the Server configuration settings inside your <VirtualHost> section (httpd.conf):
<Directory /PATH_TO_ESPO/>\n AllowOverride All\n</Directory>
\n Afterwards run this command in a Terminal:
service apache2 restart

To enable \"mod_rewrite\" run those commands in a Terminal:
a2enmod rewrite 
service apache2 restart
", "windows": "
1. Find the httpd.conf file (usually you will find it in a folder called conf, config or something along those lines)
\n2. Inside the httpd.conf file uncomment the line LoadModule rewrite_module modules/mod_rewrite.so (remove the pound '#' sign from in front of the line)
\n3. Also find the line ClearModuleList is uncommented then find and make sure that the line AddModule mod_rewrite.c is not commented out.\n
" }, "microsoft-iis": { @@ -103,7 +110,7 @@ } }, "modRewriteHelp": { - "apache": "API Error: EspoCRM API unavailable.
Possible problems: disabled \"mod_rewrite\" in Apache server or .htaccess support.", + "apache": "API Error: EspoCRM API unavailable.
Possible problems: RewriteBase required, disabled \"mod_rewrite\" in Apache server or .htaccess support.", "nginx": "API Error: EspoCRM API unavailable.
Add this code to your Nginx Host Config (inside \"server\" block):
\n
\n{0}\n
", "microsoft-iis": "API Error: EspoCRM API unavailable.
Possible problem: disabled \"URL Rewrite\". Please check and enable \"URL Rewrite\" Module in IIS server", "default": "API Error: EspoCRM API unavailable.
Possible problem: disabled Rewrite Module. Please check and enable Rewrite Module in your server (e.g. mod_rewrite in Apache) and .htaccess support." diff --git a/install/core/tpl/errors.tpl b/install/core/tpl/errors.tpl index cea6682339..da505006dc 100644 --- a/install/core/tpl/errors.tpl +++ b/install/core/tpl/errors.tpl @@ -1,6 +1,3 @@ -
-

{$langs['labels']['Errors page title']}

-
{$errors}
@@ -14,7 +11,7 @@
- +
\ No newline at end of file diff --git a/install/core/tpl/step1.tpl b/install/core/tpl/step1.tpl index f5727fce48..da99944a40 100644 --- a/install/core/tpl/step1.tpl +++ b/install/core/tpl/step1.tpl @@ -1,13 +1,10 @@ -
-

{$langs['labels']['Step1 page title']}

-
-