Minahito
minah****@users*****
2006年 9月 15日 (金) 14:38:04 JST
Index: xoops2jp/html/modules/base/include/groupperm.php diff -u xoops2jp/html/modules/base/include/groupperm.php:1.1.2.1 xoops2jp/html/modules/base/include/groupperm.php:1.1.2.2 --- xoops2jp/html/modules/base/include/groupperm.php:1.1.2.1 Wed Aug 9 18:47:36 2006 +++ xoops2jp/html/modules/base/include/groupperm.php Fri Sep 15 14:38:04 2006 @@ -4,12 +4,18 @@ * full-compatibility with XOOPS2. * * @package Legacy - * @version $Id: groupperm.php,v 1.1.2.1 2006/08/09 09:47:36 minahito Exp $ + * @version $Id: groupperm.php,v 1.1.2.2 2006/09/15 05:38:04 minahito Exp $ */ include '../../../include/cp_header.php'; $modid = isset($_POST['modid']) ? intval($_POST['modid']) : 0; +// +// Load Message catalog +// +$root =& XCube_Root::getSingleton(); +$root->mLanguageManager->loadModuleAdminMessageCatalog('base'); + // we dont want system module permissions to be changed here if ($modid <= 1 || !is_object($xoopsUser) || !$xoopsUser->isAdmin($modid)) { redirect_header(XOOPS_URL.'/index.php', 1, _NOPERM); @@ -27,36 +33,38 @@ $gperm_handler = xoops_gethandler('groupperm'); foreach ($_POST['perms'] as $perm_name => $perm_data) { if (false != $gperm_handler->deleteByModule($modid, $perm_name)) { - foreach ($perm_data['groups'] as $group_id => $item_ids) { - foreach ($item_ids as $item_id => $selected) { - if ($selected == 1) { - // make sure that all parent ids are selected as well - if ($perm_data['parents'][$item_id] != '') { - $parent_ids = explode(':', $perm_data['parents'][$item_id]); - foreach ($parent_ids as $pid) { - if ($pid != 0 && !in_array($pid, array_keys($item_ids))) { - // one of the parent items were not selected, so skip this item - $msg[] = sprintf(_MD_AM_PERMADDNG, '<b>'.$perm_name.'</b>', '<b>'.$perm_data['itemname'][$item_id].'</b>', '<b>'.$group_list[$group_id].'</b>').' ('._MD_AM_PERMADDNGP.')'; - continue 2; + if (is_array($perm_data['groups'])) { + foreach ($perm_data['groups'] as $group_id => $item_ids) { + foreach ($item_ids as $item_id => $selected) { + if ($selected == 1) { + // make sure that all parent ids are selected as well + if ($perm_data['parents'][$item_id] != '') { + $parent_ids = explode(':', $perm_data['parents'][$item_id]); + foreach ($parent_ids as $pid) { + if ($pid != 0 && !in_array($pid, array_keys($item_ids))) { + // one of the parent items were not selected, so skip this item + $msg[] = sprintf(_MD_AM_PERMADDNG, '<b>'.$perm_name.'</b>', '<b>'.$perm_data['itemname'][$item_id].'</b>', '<b>'.$group_list[$group_id].'</b>').' ('._MD_AM_PERMADDNGP.')'; + continue 2; + } } } + $gperm =& $gperm_handler->create(); + $gperm->setVar('gperm_groupid', $group_id); + $gperm->setVar('gperm_name', $perm_name); + $gperm->setVar('gperm_modid', $modid); + $gperm->setVar('gperm_itemid', $item_id); + if (!$gperm_handler->insert($gperm)) { + $msg[] = sprintf(_MD_AM_PERMADDNG, '<b>'.$perm_name.'</b>', '<b>'.$perm_data['itemname'][$item_id].'</b>', '<b>'.$group_list[$group_id].'</b>'); + } else { + $msg[] = sprintf(_MD_AM_PERMADDOK, '<b>'.$perm_name.'</b>', '<b>'.$perm_data['itemname'][$item_id].'</b>', '<b>'.$group_list[$group_id].'</b>'); + } + unset($gperm); } - $gperm =& $gperm_handler->create(); - $gperm->setVar('gperm_groupid', $group_id); - $gperm->setVar('gperm_name', $perm_name); - $gperm->setVar('gperm_modid', $modid); - $gperm->setVar('gperm_itemid', $item_id); - if (!$gperm_handler->insert($gperm)) { - $msg[] = sprintf(_MD_AM_PERMADDNG, '<b>'.$perm_name.'</b>', '<b>'.$perm_data['itemname'][$item_id].'</b>', '<b>'.$group_list[$group_id].'</b>'); - } else { - $msg[] = sprintf(_MD_AM_PERMADDOK, '<b>'.$perm_name.'</b>', '<b>'.$perm_data['itemname'][$item_id].'</b>', '<b>'.$group_list[$group_id].'</b>'); - } - unset($gperm); } } } } else { -+ $msg[] = sprintf(_MD_AM_PERMRESETNG, $module->getVar('name').'('.$perm_name.')'); + $msg[] = sprintf(_MD_AM_PERMRESETNG, $module->getVar('name').'('.$perm_name.')'); } } }