G.data.server = url; G.data.stash('server');
G.data.session = { 'key' : G.auth.session.key, 'auth' : G.auth.session.authtime }; G.data.stash('session');
G.data.stash_retrieve();
+ try {
+ var ios = Components.classes["@mozilla.org/network/io-service;1"].getService(Components.interfaces.nsIIOService);
+ var cookieUri = ios.newURI("http://" + G.data.server_unadorned, null, null);
+ var cookieUriSSL = ios.newURI("https://" + G.data.server_unadorned, null, null);
+ var cookieSvc = Components.classes["@mozilla.org/cookieService;1"].getService(Components.interfaces.nsICookieService);
+
+ cookieSvc.setCookieString(cookieUri, null, "ses="+G.data.session.key, null);
+ cookieSvc.setCookieString(cookieUriSSL, null, "ses="+G.data.session.key, null);
+
+ } catch(E) {
+ alert('Error setting session cookie: ' + E);
+ }
grant_perms(url);
network.simple_request('AUTH_DELETE', [ obj.data.session.key ] );
obj.data.session = obj.data.previous_session;
obj.data.stash('session');
+ try {
+ var ios = Components.classes["@mozilla.org/network/io-service;1"].getService(Components.interfaces.nsIIOService);
+ var cookieUri = ios.newURI("http://" + obj.data.server_unadorned, null, null);
+ var cookieUriSSL = ios.newURI("https://" + obj.data.server_unadorned, null, null);
+ var cookieSvc = Components.classes["@mozilla.org/cookieService;1"].getService(Components.interfaces.nsICookieService);
+
+ cookieSvc.setCookieString(cookieUri, null, "ses="+obj.data.session.key, null);
+ cookieSvc.setCookieString(cookieUriSSL, null, "ses="+obj.data.session.key, null);
+
+ } catch(E) {
+ alert('Error setting session cookie: ' + E);
+ }
+
removeCSSClass(document.getElementById('main_tabbox'),'operator_change');
} else {
if (network.get_new_session(offlineStrings.getString('menu.cmd_chg_session.label'),{'url_prefix':obj.url_prefix})) {
data.session.key = data.temporary_session.key;
data.session.authtime = data.temporary_session.authtime;
data.stash('session');
+ try {
+ var ios = Components.classes["@mozilla.org/network/io-service;1"].getService(Components.interfaces.nsIIOService);
+ var cookieUri = ios.newURI("http://" + data.server_unadorned, null, null);
+ var cookieUriSSL = ios.newURI("https://" + data.server_unadorned, null, null);
+ var cookieSvc = Components.classes["@mozilla.org/cookieService;1"].getService(Components.interfaces.nsICookieService);
+
+ cookieSvc.setCookieString(cookieUri, null, "ses="+data.session.key, null);
+ cookieSvc.setCookieString(cookieUriSSL, null, "ses="+data.session.key, null);
+
+ } catch(E) {
+ alert('Error setting session cookie: ' + E);
+ }
if (! data.list.au ) data.list.au = [];
data.list.au[0] = JSON2js( data.temporary_session.usr );
data.stash('list');