diff --git a/htdocs/user/group/perms.php b/htdocs/user/group/perms.php index 6436b908411..ddbe07bcb00 100644 --- a/htdocs/user/group/perms.php +++ b/htdocs/user/group/perms.php @@ -88,6 +88,35 @@ if ($_GET["id"]) dolibarr_fiche_head($head, $hselected, $langs->trans("Group").": ".$fgroup->nom); + $db->begin(); + + // Charge les modules soumis a permissions + $dir = DOL_DOCUMENT_ROOT . "/includes/modules/"; + $handle=opendir($dir); + $modules = array(); + while (($file = readdir($handle))!==false) + { + if (is_readable($dir.$file) && substr($file, 0, 3) == 'mod' && substr($file, strlen($file) - 10) == '.class.php') + { + $modName = substr($file, 0, strlen($file) - 10); + + if ($modName) + { + include_once("../../includes/modules/$file"); + $objMod = new $modName($db); + if ($objMod->rights_class) { + + $ret=$objMod->insert_permissions(); + + $modules[$objMod->rights_class]=$objMod; + //print "modules[".$objMod->rights_class."]=$objMod;"; + } + } + } + } + + $db->commit(); + // Lecture des droits groupes $permsgroup = array(); @@ -98,8 +127,6 @@ if ($_GET["id"]) $result=$db->query($sql); - - if ($result) { $num = $db->num_rows($result); @@ -118,28 +145,6 @@ if ($_GET["id"]) } - // Charge les modules soumis a permissions - $dir = DOL_DOCUMENT_ROOT . "/includes/modules/"; - $handle=opendir($dir); - $modules = array(); - while (($file = readdir($handle))!==false) - { - if (is_readable($dir.$file) && substr($file, 0, 3) == 'mod' && substr($file, strlen($file) - 10) == '.class.php') - { - $modName = substr($file, 0, strlen($file) - 10); - - if ($modName) - { - include_once("../../includes/modules/$file"); - $objMod = new $modName($db); - if ($objMod->rights_class) { - $modules[$objMod->rights_class]=$objMod; - //print "modules[".$objMod->rights_class."]=$objMod;"; - } - } - } - } - /* * Ecran ajout/suppression permission */ diff --git a/htdocs/user/perms.php b/htdocs/user/perms.php index b5a0b26143c..05673da90e8 100644 --- a/htdocs/user/perms.php +++ b/htdocs/user/perms.php @@ -102,6 +102,35 @@ if ($_GET["id"]) dolibarr_fiche_head($head, $hselected, $langs->trans("User").": ".$fuser->fullname); + $db->begin(); + + // Charge les modules soumis a permissions + $dir = DOL_DOCUMENT_ROOT . "/includes/modules/"; + $handle=opendir($dir); + $modules = array(); + while (($file = readdir($handle))!==false) + { + if (is_readable($dir.$file) && substr($file, 0, 3) == 'mod' && substr($file, strlen($file) - 10) == '.class.php') + { + $modName = substr($file, 0, strlen($file) - 10); + + if ($modName) + { + include_once("../includes/modules/$file"); + $objMod = new $modName($db); + if ($objMod->rights_class) { + + $ret=$objMod->insert_permissions(); + + $modules[$objMod->rights_class]=$objMod; + //print "modules[".$objMod->rights_class."]=$objMod;"; + } + } + } + } + + $db->commit(); + // Lecture des droits utilisateurs $permsuser = array(); @@ -156,28 +185,6 @@ if ($_GET["id"]) } - // Charge les modules soumis a permissions - $dir = DOL_DOCUMENT_ROOT . "/includes/modules/"; - $handle=opendir($dir); - $modules = array(); - while (($file = readdir($handle))!==false) - { - if (is_readable($dir.$file) && substr($file, 0, 3) == 'mod' && substr($file, strlen($file) - 10) == '.class.php') - { - $modName = substr($file, 0, strlen($file) - 10); - - if ($modName) - { - include_once("../includes/modules/$file"); - $objMod = new $modName($db); - if ($objMod->rights_class) { - $modules[$objMod->rights_class]=$objMod; - //print "modules[".$objMod->rights_class."]=$objMod;"; - } - } - } - } - /* * Ecran ajout/suppression permission */