2 if(!defined('sugarEntry') || !sugarEntry) die('Not A Valid Entry Point');
3 /*********************************************************************************
4 * SugarCRM Community Edition is a customer relationship management program developed by
5 * SugarCRM, Inc. Copyright (C) 2004-2012 SugarCRM Inc.
7 * This program is free software; you can redistribute it and/or modify it under
8 * the terms of the GNU Affero General Public License version 3 as published by the
9 * Free Software Foundation with the addition of the following permission added
10 * to Section 15 as permitted in Section 7(a): FOR ANY PART OF THE COVERED WORK
11 * IN WHICH THE COPYRIGHT IS OWNED BY SUGARCRM, SUGARCRM DISCLAIMS THE WARRANTY
12 * OF NON INFRINGEMENT OF THIRD PARTY RIGHTS.
14 * This program is distributed in the hope that it will be useful, but WITHOUT
15 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
16 * FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more
19 * You should have received a copy of the GNU Affero General Public License along with
20 * this program; if not, see http://www.gnu.org/licenses or write to the Free
21 * Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
24 * You can contact SugarCRM, Inc. headquarters at 10050 North Wolfe Road,
25 * SW2-130, Cupertino, CA 95014, USA. or at email address contact@sugarcrm.com.
27 * The interactive user interfaces in modified source and object code versions
28 * of this program must display Appropriate Legal Notices, as required under
29 * Section 5 of the GNU Affero General Public License version 3.
31 * In accordance with Section 7(b) of the GNU Affero General Public License version 3,
32 * these Appropriate Legal Notices must retain the display of the "Powered by
33 * SugarCRM" logo. If the display of the logo is not reasonably feasible for
34 * technical reasons, the Appropriate Legal Notices must display the words
35 * "Powered by SugarCRM".
36 ********************************************************************************/
42 global $app_list_strings;// $modInvisList
44 $sugar_smarty = new Sugar_Smarty();
46 $sugar_smarty->assign('MOD', $mod_strings);
47 $sugar_smarty->assign('APP', $app_strings);
49 /*foreach($modInvisList as $modinvisname){
50 $app_list_strings['moduleList'][$modinvisname] = $modinvisname;
52 $sugar_smarty->assign('APP_LIST', $app_list_strings);
53 /*foreach($modInvisList as $modinvisname){
54 unset($app_list_strings['moduleList'][$modinvisname]);
56 $role = new ACLRole();
58 $return= array('module'=>'ACLRoles', 'action'=>'index', 'record'=>'');
59 if(!empty($_REQUEST['record'])){
60 $role->retrieve($_REQUEST['record']);
61 $categories = ACLRole::getRoleActions($_REQUEST['record']);
63 $role_name = $role->name;
64 if(!empty($_REQUEST['isDuplicate'])){
65 //role id is stripped here in duplicate so anything using role id after this will not have it
68 $return['record']= $role->id;
69 $return['action']='DetailView';
73 $categories = ACLRole::getRoleActions('');
75 $sugar_smarty->assign('ROLE', $role->toArray());
78 if(isset($_REQUEST['return_module'])){
79 $return['module']=$_REQUEST['return_module'];
80 if(isset($_REQUEST['return_action']))$return['action']=$_REQUEST['return_action'];
81 if(isset($_REQUEST['return_record']))$return['record']=$_REQUEST['return_record'];
84 $sugar_smarty->assign('RETURN', $return);
85 $names = ACLAction::setupCategoriesMatrix($categories);
86 if(!empty($names))$tdwidth = 100 / sizeof($names);
87 $sugar_smarty->assign('CATEGORIES', $categories);
88 $sugar_smarty->assign('CATEGORY_NAME', $_REQUEST['category_name']);
89 $sugar_smarty->assign('TDWIDTH', $tdwidth);
90 $sugar_smarty->assign('ACTION_NAMES', $names);
91 $actions = $categories[$_REQUEST['category_name']]['module'];
92 $sugar_smarty->assign('ACTIONS', $actions);
95 if($_REQUEST['category_name'] == 'All'){
96 echo $sugar_smarty->fetch('modules/ACLRoles/EditAllBody.tpl');
98 //WDong Bug 23195: Strings not localized in Role Management.
99 echo getClassicModuleTitle($_REQUEST['category_name'],array($app_list_strings['moduleList'][$_REQUEST['category_name']]), false);
100 echo $sugar_smarty->fetch('modules/ACLRoles/EditRole.tpl');