dustin@920: /* Copyrighte(C) 2015 by Bundesamt fuer Strahlenschutz andre@608: * Software engineering by Intevation GmbH andre@608: * andre@608: * This file is Free Software under the GNU GPL (v>=3) andre@608: * and comes with ABSOLUTELY NO WARRANTY! Check out andre@608: * the documentation coming with IMIS-Labordaten-Application for details. andre@608: */ andre@608: andre@608: Ext.define('Lada.override.RestProxy', { andre@608: override: 'Ext.data.proxy.Rest', raimund@913: /* andre@608: buildRequest: function (operation) { andre@608: this.headers = { 'X-OPENID-PARAMS': Lada.openIDParams }; andre@608: return this.callParent(arguments); andre@608: }, rrenkert@917: */ andre@608: processResponse: function (success, operation, request, response, callback, scope) { dustin@920: /* dustin@920: SSO will send a 302 if the Client is not authenticated dustin@920: unfortunately this seems to be filtered by the browser. dustin@920: We assume that a 302 was send when the follwing statement dustin@920: is true. dustin@920: */ dustin@920: if (!success && response.status == 0 && response.responseText === "") { dustin@920: Ext.MessageBox.confirm('Erneutes Login erforderlich', dustin@920: 'Ihre Session ist abgelaufen.
'+ dustin@920: 'Für ein erneutes Login muss die Anwendung neu geladen werden.
' + dustin@920: 'Alle ungesicherten Daten gehen dabei verloren.
' + dustin@920: 'Soll die Anwendung jetzt neu geladen werden?', this.reload); dustin@920: } dustin@920: this.callParent(arguments); dustin@920: }, andre@608: dustin@920: dustin@920: parseStatus: function(status) { dustin@920: console.log(status); andre@608: this.callParent(arguments); andre@618: }, rrenkert@917: andre@618: reload: function(btn) { andre@618: if (btn === 'yes') { andre@618: location.reload(); andre@618: } andre@608: } andre@608: });