Fix switching to another account on mobile (#1108)

This commit is contained in:
RainLoop Team 2016-07-15 20:38:11 +03:00
parent c145137b25
commit e8df1cdb57
3 changed files with 24 additions and 13 deletions

View file

@ -229,10 +229,7 @@ class AbstractApp extends AbstractBoot
*/ */
loginAndLogoutReload(admin = false, logout = false, close = false) { loginAndLogoutReload(admin = false, logout = false, close = false) {
const const inIframe = !!Settings.appSettingsGet('inIframe');
mobile = Settings.appSettingsGet('mobile'),
inIframe = !!Settings.appSettingsGet('inIframe');
let customLogoutLink = pString(Settings.appSettingsGet('customLogoutLink')); let customLogoutLink = pString(Settings.appSettingsGet('customLogoutLink'));
if (logout) if (logout)
@ -245,7 +242,7 @@ class AbstractApp extends AbstractBoot
window.close(); window.close();
} }
customLogoutLink = customLogoutLink || (admin ? Links.rootAdmin(mobile) : Links.rootUser(mobile)); customLogoutLink = customLogoutLink || (admin ? Links.rootAdmin() : Links.rootUser());
if (logout && window.location.href !== customLogoutLink) if (logout && window.location.href !== customLogoutLink)
{ {

View file

@ -10,6 +10,7 @@ const
SUB_QUERY_PREFIX = '&q[]=', SUB_QUERY_PREFIX = '&q[]=',
VERSION = Settings.appSettingsGet('version'), VERSION = Settings.appSettingsGet('version'),
IS_MOBILE = Settings.appSettingsGet('mobile'),
WEB_PREFIX = Settings.appSettingsGet('webPath') || '', WEB_PREFIX = Settings.appSettingsGet('webPath') || '',
VERSION_PREFIX = Settings.appSettingsGet('webVersionPath') || 'rainloop/v/' + VERSION + '/', VERSION_PREFIX = Settings.appSettingsGet('webVersionPath') || 'rainloop/v/' + VERSION + '/',
@ -54,12 +55,11 @@ export function rootAdmin()
} }
/** /**
* @param {boolean=} mobile = false
* @returns {string} * @returns {string}
*/ */
export function rootUser(mobile = false) export function rootUser()
{ {
return mobile ? SERVER_PREFIX + '/Mobile/' : ROOT; return IS_MOBILE ? SERVER_PREFIX + '/Mobile/' : ROOT;
} }
/** /**
@ -171,7 +171,7 @@ export function append()
*/ */
export function change(email) export function change(email)
{ {
return serverRequest('Change') + encodeURIComponent(email) + '/'; return serverRequest('Change' + (IS_MOBILE ? 'Mobile' : '')) + encodeURIComponent(email) + '/';
} }
/** /**

View file

@ -1155,10 +1155,7 @@ class ServiceActions
return $sResult; return $sResult;
} }
/** private function changeAction()
* @return string
*/
public function ServiceChange()
{ {
$this->oHttp->ServerNoCache(); $this->oHttp->ServerNoCache();
@ -1184,7 +1181,24 @@ class ServiceActions
$this->oActions->AuthToken($oAccountToLogin); $this->oActions->AuthToken($oAccountToLogin);
} }
} }
}
/**
* @return string
*/
public function ServiceChangeMobile()
{
$this->changeAction();
$this->oActions->Location('./?/Mobile/');
return '';
}
/**
* @return string
*/
public function ServiceChange()
{
$this->changeAction();
$this->oActions->Location('./'); $this->oActions->Location('./');
return ''; return '';
} }