Signed-off-by: Thomas Citharel <tcit@tcit.fr>
This commit is contained in:
Thomas Citharel 2018-08-03 14:06:23 +02:00
parent b40957f484
commit 5ffd4361e4
6 changed files with 32 additions and 22 deletions

3
.gitignore vendored
View File

@ -8,7 +8,8 @@ nav
app/inc/config.php
vendor
cache/
tpl_c/
tpl_c/*
!tpl_c/.gitkeep
.php_cs.cache
.zanata-cache/

View File

@ -10,7 +10,6 @@ test:
stage: test
script:
- composer install -o --no-interaction --no-progress --prefer-dist
- mkdir tpl_c
- php vendor/bin/php-cs-fixer fix --verbose --dry-run
- vendor/bin/phpunit --bootstrap app/tests/bootstrap.php --debug app/tests
cache:
@ -39,10 +38,10 @@ pages:
- git checkout ${latesttag}
- composer install -o --no-interaction --no-progress --prefer-dist --no-dev
- composer dump-autoload --optimize --no-dev --classmap-authoritative
- mkdir tpl_c
- mkdir framadate
- mv `ls -A | grep -v framadate` ./framadate
- chmod -R 644 framadate/ && chmod -R 770 framadate/tpl_c/ && chmod -R 770 framadate/app/inc/
- find framadate/ -type d -exec chmod 750 {} \;
- find framadate/ -type f -exec chmod 640 {} \;
- zip -r latest.zip framadate
- mkdir .public
- cp latest.zip .public
@ -64,7 +63,6 @@ beta:
- composer dump-autoload --optimize --no-dev --classmap-authoritative
- if [ ! -z ${ZANATA_CONFIG_FRAMABOT+x} ]; then mkdir -p ${HOME}/.config; echo -e "${ZANATA_CONFIG_FRAMABOT}" > ${HOME}/.config/zanata.ini; fi
- if [ ! -z ${ZANATA_CONFIG_FRAMABOT+x} ]; then make pull-locales; fi
- mkdir tpl_c
- mkdir .public
- cp -r * .public
- cp -r .git .public

View File

@ -37,11 +37,13 @@ if (!empty($_POST)) {
if ($result['status'] === 'OK') {
header(('Location: ' . Utils::get_server_name() . 'admin/migration.php'));
exit;
}
$error = __('Error', $result['code']);
}
$error = __('Error', $result['code']);
}
$smarty->assign('error', $error);
$smarty->assign('error_details', $result['details']);
$smarty->assign('title', __('Admin', 'Installation'));
$smarty->assign('fields', $installService->getFields());
$smarty->display('admin/install.tpl');
$smarty->display('admin/install.tpl');

View File

@ -55,9 +55,10 @@ class InstallService {
}
// Connect to database
$connect = $this->connectTo($this->fields['dbConnectionString'], $this->fields['dbUser'], $this->fields['dbPassword']);
if (!$connect) {
return $this->error('CANT_CONNECT_TO_DATABASE');
try {
$connect = $this->connectTo($this->fields['dbConnectionString'], $this->fields['dbUser'], $this->fields['dbPassword']);
} catch(\Exception $e) {
return $this->error('CANT_CONNECT_TO_DATABASE', $e->getMessage());
}
// Write configuration to conf.php file
@ -68,15 +69,19 @@ class InstallService {
return $this->ok();
}
/**
* Connect to PDO compatible source
*
* @param string $connectionString
* @param string $user
* @param string $password
* @return \PDO
*/
function connectTo($connectionString, $user, $password) {
try {
$pdo = @new \PDO($connectionString, $user, $password);
$pdo->setAttribute(\PDO::ATTR_DEFAULT_FETCH_MODE, \PDO::FETCH_OBJ);
$pdo->setAttribute(\PDO::ATTR_ERRMODE, \PDO::ERRMODE_EXCEPTION);
return $pdo;
} catch(\Exception $e) {
return null;
}
$pdo = @new \PDO($connectionString, $user, $password);
$pdo->setAttribute(\PDO::ATTR_DEFAULT_FETCH_MODE, \PDO::FETCH_OBJ);
$pdo->setAttribute(\PDO::ATTR_ERRMODE, \PDO::ERRMODE_EXCEPTION);
return $pdo;
}
function writeConfiguration(Smarty &$smarty) {
@ -110,10 +115,11 @@ class InstallService {
* @param $msg
* @return array
*/
function error($msg) {
function error($msg, $details = '') {
return [
'status' => 'ERROR',
'code' => $msg
'code' => $msg,
'details' => $details,
];
}

View File

@ -6,7 +6,10 @@
<form action="" method="POST">
{if $error}
<div id="result" class="alert alert-danger">{$error}</div>
<div id="result" class="alert alert-danger">
<h4>{$error}</h4>
<small>{$error_details}</small>
</div>
{/if}
<fieldset>

0
tpl_c/.gitkeep Normal file
View File