Fix: on verifie si les dependances sont valides

This commit is contained in:
Regis Houssin 2010-04-20 14:59:15 +00:00
parent d58313488c
commit 56942f72d1

View File

@ -61,10 +61,10 @@ if (isset($_GET["action"]) && $_GET["action"] == 'reset' && $user->admin)
} }
/** /**
\brief Enable a module * \brief Enable a module
\param value Nom du module a activer * \param value Nom du module a activer
\param withdeps Active/desactive aussi les dependances * \param withdeps Active/desactive aussi les dependances
\return string Error message or ''; * \return string Error message or '';
*/ */
function Activate($value,$withdeps=1) function Activate($value,$withdeps=1)
{ {
@ -116,28 +116,40 @@ function Activate($value,$withdeps=1)
} }
if ($withdeps) if ($withdeps)
{
if (is_array($objMod->depends) && !empty($objMod->depends))
{ {
// Activation des modules dont le module depend // Activation des modules dont le module depend
for ($i = 0; $i < sizeof($objMod->depends); $i++) for ($i = 0; $i < sizeof($objMod->depends); $i++)
{
if (file_exists(DOL_DOCUMENT_ROOT."/includes/modules/".$objMod->depends[$i].".class.php"))
{ {
Activate($objMod->depends[$i]); Activate($objMod->depends[$i]);
} }
}
}
if (is_array($objMod->conflictwith) && !empty($objMod->conflictwith))
{
// Desactivation des modules qui entrent en conflit // Desactivation des modules qui entrent en conflit
for ($i = 0; $i < sizeof($objMod->conflictwith); $i++) for ($i = 0; $i < sizeof($objMod->conflictwith); $i++)
{
if (file_exists(DOL_DOCUMENT_ROOT."/includes/modules/".$objMod->conflictwith[$i].".class.php"))
{ {
UnActivate($objMod->conflictwith[$i],0); UnActivate($objMod->conflictwith[$i],0);
} }
} }
}
}
return $ret; return $ret;
} }
/** /**
\brief Disable a module * \brief Disable a module
\param value Nom du module a desactiver * \param value Nom du module a desactiver
\param requiredby 1=Desactive aussi modules dependants * \param requiredby 1=Desactive aussi modules dependants
*/ */
function UnActivate($value,$requiredby=1) function UnActivate($value,$requiredby=1)
{ {