Fix: When run from command line, script must return return code

This commit is contained in:
Laurent Destailleur 2012-04-04 20:37:16 +02:00
parent b3c66fc123
commit e084dc306e
3 changed files with 34 additions and 27 deletions

View File

@ -39,10 +39,10 @@ error_reporting(0);
@set_time_limit(120); @set_time_limit(120);
error_reporting($err); error_reporting($err);
$setuplang=isset($_POST["selectlang"])?$_POST["selectlang"]:(isset($_GET["selectlang"])?$_GET["selectlang"]:'auto'); $setuplang=GETPOST("selectlang",'',3)?GETPOST("selectlang",'',3):'auto';
$langs->setDefaultLang($setuplang); $langs->setDefaultLang($setuplang);
$versionfrom=isset($_GET["versionfrom"])?$_GET["versionfrom"]:''; $versionfrom=GETPOST("versionfrom",'',3)?GETPOST("versionfrom",'',3):(empty($argv[1])?'':$argv[1]);
$versionto=isset($_GET["versionto"])?$_GET["versionto"]:''; $versionto=GETPOST("versionto",'',3)?GETPOST("versionto",'',3):(empty($argv[2])?'':$argv[2]);
$langs->load("admin"); $langs->load("admin");
$langs->load("install"); $langs->load("install");
@ -147,9 +147,7 @@ print '<tr><td colspan="2">'.$langs->trans("PleaseBePatient").'</td></tr>';
flush(); flush();
/* // Run repair SQL file
* Load sql files
*/
if ($ok) if ($ok)
{ {
$dir = "mysql/migration/"; $dir = "mysql/migration/";
@ -178,7 +176,7 @@ if ($ok)
} }
} }
// Boucle sur chaque fichier // Loop on each file
foreach($filelist as $file) foreach($filelist as $file)
{ {
print '<tr><td nowrap>'; print '<tr><td nowrap>';
@ -191,7 +189,7 @@ if ($ok)
} }
} }
// Run purge of directory
if (GETPOST('purge')) if (GETPOST('purge'))
{ {
$conf->setValues($db); $conf->setValues($db);
@ -317,11 +315,6 @@ print '</table>';
if ($db->connected) $db->close();
if (empty($actiondone)) if (empty($actiondone))
{ {
print '<div class="error">'.$langs->trans("ErrorWrongParameters").'</div>'; print '<div class="error">'.$langs->trans("ErrorWrongParameters").'</div>';
@ -334,4 +327,8 @@ print '</a></center>';
pFooter(1,$setuplang); pFooter(1,$setuplang);
if ($db->connected) $db->close();
// Return code if ran from command line
if (! $ok && isset($argv[1])) exit(1);
?> ?>

View File

@ -42,10 +42,10 @@ error_reporting(0);
@set_time_limit(120); @set_time_limit(120);
error_reporting($err); error_reporting($err);
$setuplang=isset($_POST["selectlang"])?$_POST["selectlang"]:(isset($_GET["selectlang"])?$_GET["selectlang"]:'auto'); $setuplang=GETPOST("selectlang",'',3)?GETPOST("selectlang",'',3):'auto';
$langs->setDefaultLang($setuplang); $langs->setDefaultLang($setuplang);
$versionfrom=isset($_POST["versionfrom"])?$_POST["versionfrom"]:(isset($_GET["versionfrom"])?$_GET["versionfrom"]:''); $versionfrom=GETPOST("versionfrom",'',3)?GETPOST("versionfrom",'',3):(empty($argv[1])?'':$argv[1]);
$versionto=isset($_POST["versionto"])?$_POST["versionto"]:(isset($_GET["versionto"])?$_GET["versionto"]:''); $versionto=GETPOST("versionto",'',3)?GETPOST("versionto",'',3):(empty($argv[2])?'':$argv[2]);
$langs->load("admin"); $langs->load("admin");
$langs->load("install"); $langs->load("install");
@ -64,11 +64,11 @@ if (! is_object($conf)) dolibarr_install_syslog("upgrade2: conf file not initial
* View * View
*/ */
pHeader('',"upgrade2",isset($_REQUEST['action'])?$_REQUEST['action']:'','versionfrom='.$versionfrom.'&versionto='.$versionto); pHeader('',"upgrade2",GETPOST('action'),'versionfrom='.$versionfrom.'&versionto='.$versionto);
$actiondone=0; $actiondone=0;
// Action to launch the repair or migrate script // Action to launch the migrate script
if (! GETPOST("action") || preg_match('/upgrade/i',GETPOST('action'))) if (! GETPOST("action") || preg_match('/upgrade/i',GETPOST('action')))
{ {
$actiondone=1; $actiondone=1;
@ -77,7 +77,7 @@ if (! GETPOST("action") || preg_match('/upgrade/i',GETPOST('action')))
if (! $versionfrom && ! $versionto) if (! $versionfrom && ! $versionto)
{ {
print '<div class="error">Parameter versionfrom or version to missing. Upgrade is launched from page install/index.php (like a first install) instead of install/upgrade.php</div>'; print '<div class="error">Parameter versionfrom or versionto missing. Upgrade is launched from page install/index.php (like a first install) instead of install/upgrade.php</div>';
exit; exit;
} }
@ -353,4 +353,8 @@ if (empty($actiondone))
pFooter(! $ok && empty($_GET["ignoreerrors"]),$setuplang); pFooter(! $ok && empty($_GET["ignoreerrors"]),$setuplang);
if ($db->connected) $db->close();
// Return code if ran from command line
if (! $ok && isset($argv[1])) exit(1);
?> ?>

View File

@ -1,6 +1,6 @@
<?php <?php
/* Copyright (C) 2005 Marc Barilley / Ocebo <marc@ocebo.com> /* Copyright (C) 2005 Marc Barilley / Ocebo <marc@ocebo.com>
* Copyright (C) 2005-2010 Laurent Destailleur <eldy@users.sourceforge.net> * Copyright (C) 2005-2012 Laurent Destailleur <eldy@users.sourceforge.net>
* Copyright (C) 2005-2011 Regis Houssin <regis@dolibarr.fr> * Copyright (C) 2005-2011 Regis Houssin <regis@dolibarr.fr>
* Copyright (C) 2010 Juanjo Menent <jmenent@2byte.es> * Copyright (C) 2010 Juanjo Menent <jmenent@2byte.es>
* *
@ -50,10 +50,10 @@ error_reporting(0);
@set_time_limit(120); @set_time_limit(120);
error_reporting($err); error_reporting($err);
$setuplang=isset($_POST['selectlang'])?$_POST['selectlang']:(isset($_GET['selectlang'])?$_GET['selectlang']:'auto'); $setuplang=GETPOST("selectlang",'',3)?GETPOST("selectlang",'',3):'auto';
$langs->setDefaultLang($setuplang); $langs->setDefaultLang($setuplang);
$versionfrom=isset($_POST["versionfrom"])?$_POST["versionfrom"]:(isset($_GET["versionfrom"])?$_GET["versionfrom"]:''); $versionfrom=GETPOST("versionfrom",'',3)?GETPOST("versionfrom",'',3):(empty($argv[1])?'':$argv[1]);
$versionto=isset($_POST["versionto"])?$_POST["versionto"]:(isset($_GET["versionto"])?$_GET["versionto"]:''); $versionto=GETPOST("versionto",'',3)?GETPOST("versionto",'',3):(empty($argv[2])?'':$argv[2]);
$langs->load('admin'); $langs->load('admin');
$langs->load('install'); $langs->load('install');
@ -342,6 +342,12 @@ else
pFooter($error,$setuplang); pFooter($error,$setuplang);
if ($db->connected) $db->close();
// Return code if ran from command line
if ($error && isset($argv[1])) exit(1);
/** /**
* Reporte liens vers une facture de paiements sur table de jointure (lien n-n paiements factures) * Reporte liens vers une facture de paiements sur table de jointure (lien n-n paiements factures)