diff --git a/gulliver/system/class.bootstrap.php b/gulliver/system/class.bootstrap.php index 1e7b78f56..8acb42d21 100644 --- a/gulliver/system/class.bootstrap.php +++ b/gulliver/system/class.bootstrap.php @@ -446,11 +446,7 @@ class Bootstrap } define ( "SYS_LANG", $args ['SYS_LANG'] ); - if (isset($_COOKIE['workspaceSkin'])) { - define('SYS_SKIN', $_COOKIE['workspaceSkin']); - } else { - define('SYS_SKIN', $args ['SYS_SKIN']); - } + define('SYS_SKIN', $args ['SYS_SKIN']); define ( 'SYS_COLLECTION', $args ['SYS_COLLECTION'] ); define ( 'SYS_TARGET', $args ['SYS_TARGET'] ); diff --git a/workflow/engine/classes/model/UsersProperties.php b/workflow/engine/classes/model/UsersProperties.php index dc0befca8..ebc0e0447 100755 --- a/workflow/engine/classes/model/UsersProperties.php +++ b/workflow/engine/classes/model/UsersProperties.php @@ -251,7 +251,16 @@ class UsersProperties extends BaseUsersProperties $url = ''; if (substr( SYS_SKIN, 0, 2 ) == 'ux' && SYS_SKIN != 'uxs') { - $url = '/sys' . SYS_SYS . '/' . $this->lang . '/' . SYS_SKIN . '/main'; + if (isset($_COOKIE['workspaceSkin'])) { + if (substr( $_COOKIE['workspaceSkin'], 0, 2 ) != 'ux') { + $url = $this->_getDefaultLocation(); + return $url; + } else { + $url = '/sys' . SYS_SYS . '/' . $this->lang . '/' . $_COOKIE['workspaceSkin'] . '/main'; + } + } else { + $url = '/sys' . SYS_SYS . '/' . $this->lang . '/' . SYS_SKIN . '/main'; + } global $RBAC; G::loadClass( 'configuration' ); $oConf = new Configurations(); @@ -317,7 +326,11 @@ class UsersProperties extends BaseUsersProperties if (isset( $aRedirectLogin ) && is_array( $aRedirectLogin )) { foreach ($aRedirectLogin as $key => $detail) { if (isset( $detail->sPathMethod ) && $detail->sRoleCode == $userRole) { - $url = '/sys' . SYS_SYS . '/' . $this->lang . '/' . SYS_SKIN . '/' . $detail->sPathMethod; + if (isset($_COOKIE['workspaceSkin'])) { + $url = '/sys' . SYS_SYS . '/' . $this->lang . '/' . $_COOKIE['workspaceSkin'] . '/' . $detail->sPathMethod; + } else { + $url = '/sys' . SYS_SYS . '/' . $this->lang . '/' . SYS_SKIN . '/' . $detail->sPathMethod; + } } } } @@ -378,7 +391,12 @@ class UsersProperties extends BaseUsersProperties $oConf = new Configurations(); $oConf->loadConfig( $x, 'USER_PREFERENCES', '', '', $_SESSION['USER_LOGGED'], '' ); - $baseUrl = '/sys' . SYS_SYS . '/' . $this->lang . '/' . SYS_SKIN . '/'; + //$baseUrl = '/sys' . SYS_SYS . '/' . $this->lang . '/' . SYS_SKIN . '/'; + if (isset($_COOKIE['workspaceSkin'])) { + $baseUrl = '/sys' . SYS_SYS . '/' . $this->lang . '/' . $_COOKIE['workspaceSkin'] . '/'; + } else { + $baseUrl = '/sys' . SYS_SYS . '/' . $this->lang . '/' . SYS_SKIN . '/'; + } $url = ''; if (sizeof( $oConf->aConfig ) > 0) { diff --git a/workflow/engine/controllers/home.php b/workflow/engine/controllers/home.php index 72539314c..9a2cf107f 100755 --- a/workflow/engine/controllers/home.php +++ b/workflow/engine/controllers/home.php @@ -98,9 +98,11 @@ class Home extends Controller $processList = $case->getStartCasesPerType( $_SESSION['USER_LOGGED'], 'category' ); $switchLink = $userProperty->getUserLocation( $_SESSION['USER_LOGGED'] ); - if (substr( $sysConf['default_skin'], 0, 2 ) == 'ux') { - $_SESSION['_defaultUserLocation'] = $switchLink; - $switchLink = '/sys' . SYS_SYS . '/' . SYS_LANG . '/' . $sysConf['default_skin'] . '/main'; + if (!isset($_COOKIE['workspaceSkin'])) { + if (substr( $sysConf['default_skin'], 0, 2 ) == 'ux') { + $_SESSION['_defaultUserLocation'] = $switchLink; + $switchLink = '/sys' . SYS_SYS . '/' . SYS_LANG . '/' . $sysConf['default_skin'] . '/main'; + } } unset( $processList[0] );