diff --git a/ui/app/admin/initialization.js b/ui/app/admin/initialization.js index d44e689dc8..52f8f0ba2d 100644 --- a/ui/app/admin/initialization.js +++ b/ui/app/admin/initialization.js @@ -7,7 +7,7 @@ angular.module('bahmni.admin') var configNames = ['quickLogoutComboKey', 'contextCookieExpirationTimeInMinutes']; return configurations.load(configNames).then(function () { $rootScope.quickLogoutComboKey = configurations.quickLogoutComboKey() || 'Escape'; - $rootScope.cookieExpiryTime = configurations.contextCookieExpirationTimeInMinutes() || 30; + $rootScope.cookieExpiryTime = configurations.contextCookieExpirationTimeInMinutes() || 0; }); }; diff --git a/ui/app/adt/initialization.js b/ui/app/adt/initialization.js index 09b9e133a0..b2fa34d996 100644 --- a/ui/app/adt/initialization.js +++ b/ui/app/adt/initialization.js @@ -12,7 +12,7 @@ angular.module('bahmni.adt').factory('initialization', ['$rootScope', '$q', 'app $rootScope.relationshipTypeMap = configurations.relationshipTypeMap(); $rootScope.diagnosisStatus = (appService.getAppDescriptor().getConfig("diagnosisStatus") && appService.getAppDescriptor().getConfig("diagnosisStatus").value || "RULED OUT"); $rootScope.quickLogoutComboKey = configurations.quickLogoutComboKey() || 'Escape'; - $rootScope.cookieExpiryTime = configurations.contextCookieExpirationTimeInMinutes() || 30; + $rootScope.cookieExpiryTime = configurations.contextCookieExpirationTimeInMinutes() || 0; config.resolve(); }); return config.promise; diff --git a/ui/app/bedmanagement/initialization.js b/ui/app/bedmanagement/initialization.js index f886fcbe85..e13c309e95 100644 --- a/ui/app/bedmanagement/initialization.js +++ b/ui/app/bedmanagement/initialization.js @@ -12,7 +12,7 @@ angular.module('bahmni.ipd').factory('initialization', ['$rootScope', '$q', '$ba $rootScope.relationshipTypeMap = configurations.relationshipTypeMap(); $rootScope.diagnosisStatus = ((appService.getAppDescriptor().getConfig("diagnosisStatus") && appService.getAppDescriptor().getConfig("diagnosisStatus").value) || "RULED OUT"); $rootScope.quickLogoutComboKey = configurations.quickLogoutComboKey() || 'Escape'; - $rootScope.cookieExpiryTime = configurations.contextCookieExpirationTimeInMinutes() || 30; + $rootScope.cookieExpiryTime = configurations.contextCookieExpirationTimeInMinutes() || 0; config.resolve(); }); return config.promise; diff --git a/ui/app/clinical/initialization.js b/ui/app/clinical/initialization.js index 6d0d7b97ab..2790696f0e 100644 --- a/ui/app/clinical/initialization.js +++ b/ui/app/clinical/initialization.js @@ -27,7 +27,7 @@ angular.module('bahmni.clinical').factory('initialization', $rootScope.diagnosisStatus = (appService.getAppDescriptor().getConfig("diagnosisStatus") && appService.getAppDescriptor().getConfig("diagnosisStatus").value || "RULED OUT"); $rootScope.prescriptionEmailToggle = configurations.prescriptionEmailToggle(); $rootScope.quickLogoutComboKey = configurations.quickLogoutComboKey() || 'Escape'; - $rootScope.cookieExpiryTime = configurations.contextCookieExpirationTimeInMinutes() || 30; + $rootScope.cookieExpiryTime = configurations.contextCookieExpirationTimeInMinutes() || 0; }); }; diff --git a/ui/app/common/auth/authentication.js b/ui/app/common/auth/authentication.js index 48b2d0c4e3..09df4b2f25 100644 --- a/ui/app/common/auth/authentication.js +++ b/ui/app/common/auth/authentication.js @@ -75,10 +75,11 @@ angular.module('authentication') var self = this; var destroySessionFromServer = function () { - var currentTime = new Date(); - var expiryTime = new Date(currentTime.getTime() + $rootScope.cookieExpiryTime * 60000); - if ($window.location.hash.includes("careViewDashboard") || $window.location.hash.includes("ipd")) { - $bahmniCookieStore.put($rootScope.currentProvider.uuid, $window.location.pathname + $window.location.hash, {path: '/', expires: expiryTime}); + if ($rootScope.cookieExpiryTime && $rootScope.cookieExpiryTime > 0) { + var currentTime = new Date(); + var expiryTime = new Date(currentTime.getTime() + $rootScope.cookieExpiryTime * 60000); + var params = (decodeURIComponent($window.location.search.substring(1))); + $bahmniCookieStore.put($rootScope.currentProvider.uuid, $window.location.pathname + (params ? '?' + params : '') + $window.location.hash, {path: '/', expires: expiryTime}); } return $http.delete(sessionResourcePath); }; @@ -139,8 +140,7 @@ angular.module('authentication') userService.getProviderForUser(data.results[0].uuid).then(function (providers) { if (!_.isEmpty(providers.results) && hasAnyActiveProvider(providers.results)) { $rootScope.currentUser = new Bahmni.Auth.User(data.results[0]); - $rootScope.currentUser.provider = providers.results[0]; - $rootScope.currentUser.currentLocation = null; + $rootScope.currentUser.currentLocation = $bahmniCookieStore.get(Bahmni.Common.Constants.locationCookieName).name; $rootScope.$broadcast('event:user-credentialsLoaded', data.results[0]); deferrable.resolve(data.results[0]); } else { diff --git a/ui/app/document-upload/initialization.js b/ui/app/document-upload/initialization.js index f881d848fd..b5fdb11f39 100644 --- a/ui/app/document-upload/initialization.js +++ b/ui/app/document-upload/initialization.js @@ -12,7 +12,7 @@ angular.module('opd.documentupload').factory('initialization', return configurations.load(configNames).then(function () { $rootScope.genderMap = configurations.genderMap(); $rootScope.quickLogoutComboKey = configurations.quickLogoutComboKey() || 'Escape'; - $rootScope.cookieExpiryTime = configurations.contextCookieExpirationTimeInMinutes() || 30; + $rootScope.cookieExpiryTime = configurations.contextCookieExpirationTimeInMinutes() || 0; }); }; diff --git a/ui/app/home/initialization.js b/ui/app/home/initialization.js index 36ff0750b3..4d6c1613ad 100644 --- a/ui/app/home/initialization.js +++ b/ui/app/home/initialization.js @@ -4,8 +4,9 @@ angular.module('bahmni.home') .factory('initialization', ['$rootScope', 'appService', 'spinner', 'configurationService', function ($rootScope, appService, spinner, configurationService) { var getConfigs = function () { - configurationService.getConfigurations(['quickLogoutComboKey']).then(function (response) { + configurationService.getConfigurations(['quickLogoutComboKey', 'contextCookieExpirationTimeInMinutes']).then(function (response) { $rootScope.quickLogoutComboKey = response.quickLogoutComboKey || 'Escape'; + $rootScope.cookieExpiryTime = response.contextCookieExpirationTimeInMinutes || 0; }); }; var initApp = function () { diff --git a/ui/app/orders/initialization.js b/ui/app/orders/initialization.js index 559c304ac1..9da1aa4cd7 100644 --- a/ui/app/orders/initialization.js +++ b/ui/app/orders/initialization.js @@ -5,7 +5,7 @@ angular.module('bahmni.orders') function ($rootScope, $q, appService, spinner, configurations, orderTypeService, locationService) { var getConfigs = function () { var config = $q.defer(); - var configNames = ['encounterConfig', 'patientConfig', 'genderMap', 'relationshipTypeMap', 'quickLogoutComboKey']; + var configNames = ['encounterConfig', 'patientConfig', 'genderMap', 'relationshipTypeMap', 'quickLogoutComboKey', 'contextCookieExpirationTimeInMinutes']; configurations.load(configNames).then(function () { var conceptConfig = appService.getAppDescriptor().getConfigValue("conceptSetUI"); var customLocationTags = _.get(conceptConfig, 'facilityLocationTags'); @@ -18,6 +18,7 @@ angular.module('bahmni.orders') $rootScope.genderMap = configurations.genderMap(); $rootScope.relationshipTypeMap = configurations.relationshipTypeMap(); $rootScope.quickLogoutComboKey = configurations.quickLogoutComboKey() || 'Escape'; + $rootScope.cookieExpiryTime = configurations.contextCookieExpirationTimeInMinutes() || 0; config.resolve(); }); return config.promise; diff --git a/ui/app/ot/initialization.js b/ui/app/ot/initialization.js index bfe38e8964..fd25f83b02 100644 --- a/ui/app/ot/initialization.js +++ b/ui/app/ot/initialization.js @@ -6,7 +6,7 @@ angular.module('bahmni.ot').factory('initialization', ['$rootScope', '$q', 'surg var configNames = ['quickLogoutComboKey', 'contextCookieExpirationTimeInMinutes']; return configurations.load(configNames).then(function () { $rootScope.quickLogoutComboKey = configurations.quickLogoutComboKey() || 'Escape'; - $rootScope.cookieExpiryTime = configurations.contextCookieExpirationTimeInMinutes() || 30; + $rootScope.cookieExpiryTime = configurations.contextCookieExpirationTimeInMinutes() || 0; }); }; var initApp = function () { diff --git a/ui/app/registration/initialization.js b/ui/app/registration/initialization.js index ce1742ec9e..d0e87cf7ee 100644 --- a/ui/app/registration/initialization.js +++ b/ui/app/registration/initialization.js @@ -4,7 +4,7 @@ angular.module('bahmni.registration').factory('initialization', ['$rootScope', '$q', 'configurations', 'authenticator', 'appService', 'spinner', 'preferences', 'locationService', 'mergeService', '$translate', function ($rootScope, $q, configurations, authenticator, appService, spinner, preferences, locationService, mergeService, $translate) { var getConfigs = function () { - var configNames = ['encounterConfig', 'patientAttributesConfig', 'identifierTypesConfig', 'addressLevels', 'genderMap', 'relationshipTypeConfig', 'relationshipTypeMap', 'loginLocationToVisitTypeMapping', 'helpDeskNumber', 'quickLogoutComboKey']; + var configNames = ['encounterConfig', 'patientAttributesConfig', 'identifierTypesConfig', 'addressLevels', 'genderMap', 'relationshipTypeConfig', 'relationshipTypeMap', 'loginLocationToVisitTypeMapping', 'helpDeskNumber', 'quickLogoutComboKey', 'contextCookieExpirationTimeInMinutes']; return configurations.load(configNames).then(function () { var mandatoryPersonAttributes = appService.getAppDescriptor().getConfigValue("mandatoryPersonAttributes"); var patientAttributeTypes = new Bahmni.Common.Domain.AttributeTypeMapper().mapFromOpenmrsAttributeTypes(configurations.patientAttributesConfig(), mandatoryPersonAttributes, {}, $rootScope.currentUser.userProperties.defaultLocale); @@ -22,6 +22,7 @@ angular.module('bahmni.registration').factory('initialization', $rootScope.relationshipTypeMap = configurations.relationshipTypeMap(); $rootScope.relationshipTypes = configurations.relationshipTypes(); $rootScope.quickLogoutComboKey = configurations.quickLogoutComboKey() || 'Escape'; + $rootScope.cookieExpiryTime = configurations.contextCookieExpirationTimeInMinutes() || 0; }); }; diff --git a/ui/app/reports/initialization.js b/ui/app/reports/initialization.js index 603d8f9d38..96db39712b 100644 --- a/ui/app/reports/initialization.js +++ b/ui/app/reports/initialization.js @@ -8,7 +8,7 @@ angular.module('bahmni.reports').factory('initialization', var configNames = ['quickLogoutComboKey', 'contextCookieExpirationTimeInMinutes']; return configurations.load(configNames).then(function () { $rootScope.quickLogoutComboKey = configurations.quickLogoutComboKey() || 'Escape'; - $rootScope.cookieExpiryTime = configurations.contextCookieExpirationTimeInMinutes() || 30; + $rootScope.cookieExpiryTime = configurations.contextCookieExpirationTimeInMinutes() || 0; }); }; var initApp = function () {