Ajout test sur version PHP dans prérequis module
This commit is contained in:
parent
aa86135c9c
commit
47b1e6f5a2
@ -33,20 +33,24 @@ require("./pre.inc.php");
|
|||||||
if (!$user->admin)
|
if (!$user->admin)
|
||||||
accessforbidden();
|
accessforbidden();
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Actions
|
||||||
|
*/
|
||||||
|
|
||||||
if ($_GET["action"] == 'set' && $user->admin)
|
if ($_GET["action"] == 'set' && $user->admin)
|
||||||
{
|
{
|
||||||
Activate($_GET["value"]);
|
$result=Activate($_GET["value"]);
|
||||||
|
$mesg='';
|
||||||
Header("Location: modules.php?spe=".$_GET["spe"]);
|
if ($result) $mesg=$result;
|
||||||
|
Header("Location: modules.php?spe=".$_GET["spe"]."&mesg=".urlencode($mesg));
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($_GET["action"] == 'reset' && $user->admin)
|
if ($_GET["action"] == 'reset' && $user->admin)
|
||||||
{
|
{
|
||||||
UnActivate($_GET["value"]);
|
$result=UnActivate($_GET["value"]);
|
||||||
|
$mesg='';
|
||||||
Header("Location: modules.php?spe=".$_GET["spe"]);
|
if ($result) $mesg=$result;
|
||||||
|
Header("Location: modules.php?spe=".$_GET["spe"]."&mesg=".urlencode($mesg));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -55,7 +59,7 @@ if ($_GET["action"] == 'reset' && $user->admin)
|
|||||||
*/
|
*/
|
||||||
function Activate($value)
|
function Activate($value)
|
||||||
{
|
{
|
||||||
global $db, $modules;
|
global $db, $modules, $langs;
|
||||||
|
|
||||||
$modName = $value;
|
$modName = $value;
|
||||||
|
|
||||||
@ -65,6 +69,15 @@ function Activate($value)
|
|||||||
$file = $modName . ".class.php";
|
$file = $modName . ".class.php";
|
||||||
include_once("../includes/modules/$file");
|
include_once("../includes/modules/$file");
|
||||||
$objMod = new $modName($db);
|
$objMod = new $modName($db);
|
||||||
|
|
||||||
|
// Test si version PHP ok
|
||||||
|
$verphp=versionphp();
|
||||||
|
$vermin=$objMod->phpmin;
|
||||||
|
if (is_array($vermin) && versioncompare($verphp,$vermin) < 0)
|
||||||
|
{
|
||||||
|
return $langs->trans("ErrorModuleRequirePHPVersion",versiontostring($vermin));
|
||||||
|
}
|
||||||
|
|
||||||
$objMod->init();
|
$objMod->init();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -80,6 +93,7 @@ function Activate($value)
|
|||||||
UnActivate($objMod->conflictwith[$i],0);
|
UnActivate($objMod->conflictwith[$i],0);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -111,30 +125,26 @@ function UnActivate($value,$requiredby=1)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
Header("Location: modules.php");
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Affichage page
|
||||||
|
*/
|
||||||
|
|
||||||
llxHeader("","");
|
llxHeader("","");
|
||||||
|
|
||||||
if (!$_GET["spe"])
|
|
||||||
{
|
|
||||||
$hselected = 0;
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
$hselected = 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
$h = 0;
|
$h = 0;
|
||||||
|
|
||||||
$head[$h][0] = DOL_URL_ROOT."/admin/modules.php?spe=0";
|
$head[$h][0] = DOL_URL_ROOT."/admin/modules.php?spe=0";
|
||||||
$head[$h][1] = $langs->trans("ModulesCommon");
|
$head[$h][1] = $langs->trans("ModulesCommon");
|
||||||
|
if (!$_GET["spe"]) $hselected=$h;
|
||||||
$h++;
|
$h++;
|
||||||
|
|
||||||
$head[$h][0] = DOL_URL_ROOT."/admin/modules.php?spe=1";
|
$head[$h][0] = DOL_URL_ROOT."/admin/modules.php?spe=1";
|
||||||
$head[$h][1] = $langs->trans("ModulesSpecial");
|
$head[$h][1] = $langs->trans("ModulesSpecial");
|
||||||
|
if ($_GET["spe"]) $hselected=$h;
|
||||||
$h++;
|
$h++;
|
||||||
|
|
||||||
dolibarr_fiche_head($head, $hselected, $langs->trans("Modules"));
|
dolibarr_fiche_head($head, $hselected, $langs->trans("Modules"));
|
||||||
@ -149,7 +159,11 @@ else
|
|||||||
print $langs->trans("ModulesSpecialDesc")."<br>\n";
|
print $langs->trans("ModulesSpecialDesc")."<br>\n";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if ($_GET["mesg"])
|
||||||
|
{
|
||||||
|
$mesg=urldecode($_GET["mesg"]);
|
||||||
|
print '<div class="error">'.$mesg.'</div>';
|
||||||
|
}
|
||||||
|
|
||||||
print "<br>\n";
|
print "<br>\n";
|
||||||
print "<table class=\"noborder\" width=\"100%\">\n";
|
print "<table class=\"noborder\" width=\"100%\">\n";
|
||||||
|
|||||||
@ -11,6 +11,7 @@ InternalUsers=Internal users
|
|||||||
ExternalUsers=External users
|
ExternalUsers=External users
|
||||||
GlobalSetup=Global setup
|
GlobalSetup=Global setup
|
||||||
GUISetup=GUI setup
|
GUISetup=GUI setup
|
||||||
|
ErrorModuleRequirePHPVersion=Error, this module require PHP version %s or higher
|
||||||
DictionnarySetup=Dictionnary setup
|
DictionnarySetup=Dictionnary setup
|
||||||
DisableJavascript=Disable javascript functions
|
DisableJavascript=Disable javascript functions
|
||||||
NextValue=Next value
|
NextValue=Next value
|
||||||
|
|||||||
@ -11,6 +11,7 @@ InternalUsers=Utilisateurs internes
|
|||||||
ExternalUsers=Utilisateurs externes
|
ExternalUsers=Utilisateurs externes
|
||||||
GlobalSetup=Général
|
GlobalSetup=Général
|
||||||
GUISetup=Interface
|
GUISetup=Interface
|
||||||
|
ErrorModuleRequirePHPVersion=Erreur, ce module requiert une version %s ou supérieure de PHP
|
||||||
DictionnarySetup=Dictionnaires
|
DictionnarySetup=Dictionnaires
|
||||||
DisableJavascript=Désactiver les fonctions javascript
|
DisableJavascript=Désactiver les fonctions javascript
|
||||||
NextValue=Prochaine valeur
|
NextValue=Prochaine valeur
|
||||||
|
|||||||
@ -39,6 +39,44 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
\brief Renvoi une version en chaine depuis une version en tableau
|
||||||
|
\param versionarray Tableau de version (vermajeur,vermineur,autre)
|
||||||
|
\return string Chaine version
|
||||||
|
*/
|
||||||
|
function versiontostring($versionarray)
|
||||||
|
{
|
||||||
|
$string='?';
|
||||||
|
if (isset($versionarray[0])) $string=$versionarray[0];
|
||||||
|
if (isset($versionarray[1])) $string.='.'.$versionarray[1];
|
||||||
|
if (isset($versionarray[2])) $string.='.'.$versionarray[2];
|
||||||
|
return $string;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
\brief Compare 2 versions
|
||||||
|
\param versionarray1 Tableau de version (vermajeur,vermineur,autre)
|
||||||
|
\param versionarray2 Tableau de version (vermajeur,vermineur,autre)
|
||||||
|
\return int <0 si versionarray1>versionarray2, 0 si =, >0 si versionarray1>versionarray2
|
||||||
|
*/
|
||||||
|
function versioncompare($versionarray1,$versionarray2)
|
||||||
|
{
|
||||||
|
// \todo
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
\brief Compare 2 versions
|
||||||
|
\return array Tableau de version (vermajeur,vermineur,autre)
|
||||||
|
*/
|
||||||
|
function versionphp()
|
||||||
|
{
|
||||||
|
return split('\.',PHP_VERSION);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
\brief Renvoi vrai si l'email est syntaxiquement valide
|
\brief Renvoi vrai si l'email est syntaxiquement valide
|
||||||
\param address adresse email (Ex: "toto@titi.com", "John Do <johndo@titi.com>")
|
\param address adresse email (Ex: "toto@titi.com", "John Do <johndo@titi.com>")
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user