diff --git a/lib/classes/module/console/systemUpgrade.class.php b/lib/classes/module/console/systemUpgrade.class.php
index 529d15c3c7..22d62f2a66 100644
--- a/lib/classes/module/console/systemUpgrade.class.php
+++ b/lib/classes/module/console/systemUpgrade.class.php
@@ -36,9 +36,44 @@ class module_console_systemUpgrade extends Command
public function execute(InputInterface $input, OutputInterface $output)
{
- if(!setup::is_installed())
+ if (!setup::is_installed())
{
- throw new RuntimeException('Phraseanet is not set up');
+
+ if (file_exists(dirname(__FILE__) . "/../../../../config/connexion.inc")
+ && !file_exists(dirname(__FILE__) . "/../../../../config/config.inc")
+ && file_exists(dirname(__FILE__) . "/../../../../config/_GV.php"))
+ {
+
+ $output->writeln('This version of Phraseanet requires a config/config.inc');
+ $output->writeln('Would you like it to be created based on your settings ?');
+
+ $dialog = $this->getHelperSet()->get('dialog');
+ do
+ {
+ $continue = mb_strtolower($dialog->ask($output, '' . _('Create automatically') . ' (Y/n)', 'y'));
+ }
+ while (!in_array($continue, array('y', 'n')));
+
+ if ($continue == 'y')
+ {
+ require __DIR__ . "/../../../../config/_GV.php";
+
+ $datas = 'write('Upgrading...', true);
$appbox = appbox::get_instance();
-
- if(count(User_Adapter::get_wrong_email_users($appbox)) > 0)
+
+ if (count(User_Adapter::get_wrong_email_users($appbox)) > 0)
{
return $output->writeln(sprintf('You have to fix your database before upgrade with the system:mailCheck command '));
}
-
+
$upgrader = new Setup_Upgrade($appbox);
$advices = $appbox->forceUpgrade($upgrader);
}