Merge pull request #557 from marcoAntonioNina/BUG-9740

BUG 9740 New option for Default main menu option SOLVED
This commit is contained in:
julceslauhub
2012-09-13 12:22:31 -07:00
3 changed files with 102 additions and 53 deletions

View File

@@ -262,8 +262,44 @@ class UsersProperties extends BaseUsersProperties
if (substr(SYS_SKIN, 0, 2) == 'ux' && SYS_SKIN != 'uxs') {
$url = '/sys' . SYS_SYS . '/' . $this->lang . '/' . SYS_SKIN . '/main';
global $RBAC;
G::loadClass('configuration');
$oConf = new Configurations;
$oConf->loadConfig($x, 'USER_PREFERENCES','','',$_SESSION['USER_LOGGED'],'');
if ( sizeof($oConf->aConfig) > 0) {
if ($oConf->aConfig['DEFAULT_MENU'] == 'PM_USERS') {
$oConf->aConfig['DEFAULT_MENU'] = 'PM_SETUP';
}
switch ($oConf->aConfig['DEFAULT_MENU']) {
case 'PM_SETUP':
if ($RBAC->userCanAccess('PM_SETUP') == 1) {
$getUrl = 'admin';
}
break;
case 'PM_FACTORY':
if ($RBAC->userCanAccess('PM_FACTORY') == 1) {
$getUrl = 'designer';
}
break;
case 'PM_CASES':
if ($RBAC->userCanAccess('PM_CASES') == 1) {
$getUrl = 'home';
}
break;
case 'PM_USERS':
if ($RBAC->userCanAccess('PM_USERS') == 1) {
$getUrl = 'admin';
}
break;
case 'PM_DASHBOARD':
if ($RBAC->userCanAccess('PM_DASHBOARD') == 1) {
$getUrl = 'dashboard';
}
break;
}
$url = $url."?st=".$getUrl;
}
}
return $url;
}
@@ -351,11 +387,9 @@ class UsersProperties extends BaseUsersProperties
if( sizeof($oConf->aConfig) > 0) { // this user has a configuration record
// backward compatibility, because now, we don't have user and dashboard menu.
if ($oConf->aConfig['DEFAULT_MENU'] == 'PM_USERS')
$oConf->aConfig['DEFAULT_MENU'] = 'PM_SETUP';
if ($oConf->aConfig['DEFAULT_MENU'] == 'PM_DASHBOARD')
if ($oConf->aConfig['DEFAULT_MENU'] == 'PM_USERS') {
$oConf->aConfig['DEFAULT_MENU'] = 'PM_SETUP';
}
switch ($oConf->aConfig['DEFAULT_MENU']) {
case 'PM_SETUP':
@@ -380,7 +414,7 @@ class UsersProperties extends BaseUsersProperties
break;
case 'PM_DASHBOARD':
if ($RBAC->userCanAccess('PM_DASHBOARD') == 1) {
$url = 'dashboard/dashboard';
$url = 'dashboard/main';
}
break;
}

View File

@@ -358,7 +358,7 @@ switch($_POST['action'])
/* Saving preferences */
$def_lang = $form['PREF_DEFAULT_LANG'];
$def_menu = $form['PREF_DEFAULT_MENUSELECTED'];
$def_cases_menu = $form['PREF_DEFAULT_CASES_MENUSELECTED'];
$def_cases_menu = isset($form['PREF_DEFAULT_CASES_MENUSELECTED']) ? $form['PREF_DEFAULT_CASES_MENUSELECTED'] : '';
G::loadClass('configuration');
@@ -465,11 +465,15 @@ switch($_POST['action'])
case 'PM_FACTORY' :
$menuSelected = strtoupper(G::LoadTranslation('ID_APPLICATIONS'));
break;
case 'PM_DASHBOARD':
$menuSelected = strtoupper(G::LoadTranslation('ID_DASHBOARD'));
break;
}
}
}
}
$aFields['MENUSELECTED_NAME'] = $menuSelected;
$oMenu = new Menu();
@@ -509,6 +513,9 @@ switch($_POST['action'])
case 'PM_FACTORY':
$rows[] = Array('id'=>'PM_FACTORY', 'name'=>strtoupper(G::LoadTranslation('ID_APPLICATIONS')));
break;
case 'PM_DASHBOARD':
$rows[] = Array('id'=>'PM_DASHBOARD', 'name'=>strtoupper(G::LoadTranslation('ID_DASHBOARD')));
break;
}
}
print(G::json_encode($rows));

View File

@@ -672,6 +672,14 @@ Ext.onReady(function () {
mode : "local"
});
comboDefaultCasesMenuOption.disable();
comboDefaultMainMenuOption.on('select',function(cmb,record,index) {
comboDefaultCasesMenuOption.disable();
if (record.get('id') == 'PM_CASES') {
comboDefaultCasesMenuOption.enable();
}
},this);
var preferencesFields = new Ext.form.FieldSet({
title : _('ID_PREFERENCES'),
// for display or not a preferences FieldSet