1 // Initializes the cookie dialog
2 function webdeveloper_initializeCookie()
4 var stringBundle
= document
.getElementById("webdeveloper-string-bundle");
6 // If the first argument equals add
7 if(window
.arguments
[0] == "add")
9 var url
= Components
.classes
["@mozilla.org/network/standard-url;1"].createInstance(Components
.interfaces
.nsIURL
);
10 var windowContent
= window
.opener
.document
.getElementById("content");
12 document
.title
= stringBundle
.getString("webdeveloper_addCookie");
13 url
.spec
= windowContent
.browsers
[windowContent
.mTabBox
.selectedIndex
].contentDocument
.documentURI
;
15 document
.getElementById("webdeveloper-cookie-expires").value
= new Date().toUTCString();
16 document
.getElementById("webdeveloper-cookie-host").value
= url
.host
;
17 document
.getElementById("webdeveloper-cookie-path").value
= url
.path
;
21 document
.title
= stringBundle
.getString("webdeveloper_editCookie");
23 document
.getElementById("webdeveloper-cookie-name").value
= window
.arguments
[1];
24 document
.getElementById("webdeveloper-cookie-value").value
= window
.arguments
[2];
25 document
.getElementById("webdeveloper-cookie-host").value
= window
.arguments
[3];
26 document
.getElementById("webdeveloper-cookie-path").value
= window
.arguments
[4];
28 // If the cookie is a session cookie
29 if(window
.arguments
[5] == stringBundle
.getString("webdeveloper_viewCookieInformationSession"))
31 document
.getElementById("webdeveloper-cookie-expires").disabled
= true;
32 document
.getElementById("webdeveloper-cookie-session").checked
= true;
36 document
.getElementById("webdeveloper-cookie-expires").value
= window
.arguments
[5];
39 // If the cookie is secure
40 if(window
.arguments
[6] == "true")
42 document
.getElementById("webdeveloper-cookie-secure").checked
= true;
48 function webdeveloper_saveCookie()
50 var host
= document
.getElementById("webdeveloper-cookie-host").value
.trim();
52 var expires
= document
.getElementById("webdeveloper-cookie-expires").value
.trim();
53 var expiresDate
= new Date(expires
);
54 var name
= document
.getElementById("webdeveloper-cookie-name").value
.trim();
55 var path
= document
.getElementById("webdeveloper-cookie-path").value
.trim();
56 var stringBundle
= document
.getElementById("webdeveloper-string-bundle");
58 // If the name is empty
61 errors
+= stringBundle
.getString("webdeveloper_emptyName") + "\n";
64 // If the host is empty
67 errors
+= stringBundle
.getString("webdeveloper_emptyHost") + "\n";
70 // If the path is empty
73 errors
+= stringBundle
.getString("webdeveloper_emptyPath") + "\n";
76 // If this is not a session cookie
77 if(!document
.getElementById("webdeveloper-cookie-session").checked
)
79 // If the expires is empty
82 errors
+= stringBundle
.getString("webdeveloper_emptyExpires") + "\n";
84 else if(expiresDate
&& expiresDate
== "Invalid Date")
86 errors
+= stringBundle
.getString("webdeveloper_invalidExpires") + "\n";
90 // If there are errors
93 webdeveloper_error(errors
.trim());
99 var cookie
= name
+ "=" + document
.getElementById("webdeveloper-cookie-value").value
.trim() + ";";
100 var cookieService
= Components
.classes
["@mozilla.org/cookieService;1"].getService().QueryInterface(Components
.interfaces
.nsICookieService
);
101 var scheme
= "http://";
102 var secure
= document
.getElementById("webdeveloper-cookie-secure").checked
;
103 var session
= document
.getElementById("webdeveloper-cookie-session").checked
;
106 // If the first argument equals edit
107 if(window
.arguments
[0] == "edit")
109 Components
.classes
["@mozilla.org/cookiemanager;1"].getService(Components
.interfaces
.nsICookieManager
).remove(window
.arguments
[3], window
.arguments
[1], window
.arguments
[4], false);
112 // If the host is a domain
113 if(host
.charAt(0) == ".")
115 cookie
+= "domain=" + host
+ ";";
118 cookie
+= "path=" + path
+ ";";
120 // If this is not a session cookie
123 cookie
+= "expires=" + expiresDate
+ ";";
126 // If the cookie is secure
133 uri
= Components
.classes
["@mozilla.org/network/io-service;1"].getService(Components
.interfaces
.nsIIOService
).newURI(scheme
+ host
+ path
, null, null);
135 cookieService
.setCookieString(uri
, null, cookie
, null);
141 // Updates the expiry status
142 function webdeveloper_updateExpiryStatus()
144 var disabled
= false;
145 var expires
= new Date();
147 // If session cookie is checked
148 if(document
.getElementById("webdeveloper-cookie-session").checked
)
154 document
.getElementById("webdeveloper-cookie-expires").disabled
= disabled
;
155 document
.getElementById("webdeveloper-cookie-expires").value
= expires
;