2 if(!defined('sugarEntry') || !sugarEntry) die('Not A Valid Entry Point');
3 /*********************************************************************************
4 * SugarCRM is a customer relationship management program developed by
5 * SugarCRM, Inc. Copyright (C) 2004-2011 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 ********************************************************************************/
38 /*********************************************************************************
40 * Description: TODO: To be written.
41 * Portions created by SugarCRM are Copyright (C) SugarCRM, Inc.
42 * All Rights Reserved.
43 * Contributor(s): ______________________________________..
44 ********************************************************************************/
49 require_once('modules/Roles/Forms.php');
52 global $app_list_strings;
58 if(isset($_REQUEST['record'])) {
59 $focus->retrieve($_REQUEST['record']);
61 if(isset($_REQUEST['isDuplicate']) && $_REQUEST['isDuplicate'] == '1') {
63 unset($_REQUEST['record']);
69 $GLOBALS['log']->info("Role Edit View");
70 echo get_module_title($mod_strings['LBL_MODULE_NAME'], $mod_strings['LBL_MODULE_NAME'].": ".$focus->name, true);
71 $xtpl=new XTemplate ('modules/Roles/EditView.html');
72 $xtpl->assign("MOD", $mod_strings);
73 $xtpl->assign("APP", $app_strings);
75 if (isset($_REQUEST['return_module'])) $xtpl->assign("RETURN_MODULE", $_REQUEST['return_module']);
76 if (isset($_REQUEST['return_action'])) $xtpl->assign("RETURN_ACTION", $_REQUEST['return_action']);
77 if (isset($_REQUEST['return_id'])) $xtpl->assign("RETURN_ID", $_REQUEST['return_id']);
78 // handle Create $module then Cancel
79 if (empty($_REQUEST['return_id'])) {
80 $xtpl->assign("RETURN_ACTION", 'index');
82 $xtpl->assign("PRINT_URL", "index.php?".$GLOBALS['request_string']);
83 $xtpl->assign("JAVASCRIPT", get_set_focus_js() . get_chooser_js() . get_validate_record_js());
84 $xtpl->assign("ID", $focus->id);
85 $xtpl->assign("NAME", $focus->name);
86 $xtpl->assign("DESCRIPTION", $focus->description);
88 require_once("include/templates/TemplateGroupChooser.php");
89 require_once("modules/MySettings/TabController.php");
91 $chooser = new TemplateGroupChooser();
92 $controller = new TabController();
93 $chooser->args['id'] = 'edit_tabs';
95 if(isset($_REQUEST['record']))
97 $chooser->args['values_array'][0] = $focus->query_modules(1);
98 $chooser->args['values_array'][1] = $focus->query_modules(0);
100 foreach ($chooser->args['values_array'][0] as $key=>$value)
102 $chooser->args['values_array'][0][$value] = $app_list_strings['moduleList'][$value];
103 unset($chooser->args['values_array'][0][$key]);
106 foreach ($chooser->args['values_array'][1] as $key=>$value)
108 $chooser->args['values_array'][1][$value] = $app_list_strings['moduleList'][$value];
109 unset($chooser->args['values_array'][1][$key]);
115 $chooser->args['values_array'] = $controller->get_tabs_system();
116 foreach ($chooser->args['values_array'][0] as $key=>$value)
118 $chooser->args['values_array'][0][$key] = $app_list_strings['moduleList'][$key];
120 foreach ($chooser->args['values_array'][1] as $key=>$value)
122 $chooser->args['values_array'][1][$key] = $app_list_strings['moduleList'][$key];
127 $chooser->args['left_name'] = 'display_tabs';
128 $chooser->args['right_name'] = 'hide_tabs';
129 $chooser->args['left_label'] = $mod_strings['LBL_ALLOWED_MODULES'];
130 $chooser->args['right_label'] = $mod_strings['LBL_DISALLOWED_MODULES'];
131 $chooser->args['title'] = $mod_strings['LBL_ASSIGN_MODULES'];
133 $xtpl->assign("TAB_CHOOSER", $chooser->display());
135 $xtpl->parse("main");
138 $javascript = new javascript();
139 $javascript->setFormName('EditView');
140 $javascript->setSugarBean($focus);
141 $javascript->addAllFields('');
142 echo $javascript->getScript();