File: cookie.js

package info (click to toggle)
conkeror 1.0.3%2Bgit170123-1
  • links: PTS, VCS
  • area: main
  • in suites: stretch
  • size: 1,988 kB
  • sloc: ansic: 280; sh: 255; xml: 173; makefile: 69
file content (59 lines) | stat: -rw-r--r-- 2,485 bytes parent folder | download | duplicates (4)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
/**
 * (C) Copyright 2008 Jeremy Maitin-Shepard
 *
 * Use, modification, and distribution are subject to the terms specified in the
 * COPYING file.
**/

var cookie_manager = Cc["@mozilla.org/cookiemanager;1"]
    .getService(Ci.nsICookieManager2);

function clear_cookies () {
    cookie_manager.removeAll();
}
interactive("clear-cookies", "Permanently delete all existing cookies.",
          function (I) {
              clear_cookies();
              I.minibuffer.message("Cookies cleared.");
          });

define_label("COOKIE_LIFETIME_DEFAULT");
define_label("COOKIE_LIFETIME_SESSION");
define_label("COOKIE_LIFETIME_DAYS", "days");
define_label("COOKIE_LIFETIME_PROMPT");

define_special_variable("cookie_lifetime_policy",
                        function () {
                            switch (get_pref("network.cookie.lifetimePolicy")) {
                            case 0:
                                return COOKIE_LIFETIME_DEFAULT;
                            case 1:
                                return COOKIE_LIFETIME_PROMPT;
                            case 2:
                                  return COOKIE_LIFETIME_SESSION;
                            case 3:
                                return COOKIE_LIFETIME_DAYS(get_pref("network.cookie.lifetime.days"));
                            default:
                                return undefined;
                            }
                        },
                        function (value) {
                            switch (label_id(value)) {
                            case COOKIE_LIFETIME_DEFAULT:
                                session_pref("network.cookie.lifetimePolicy", 0);
                                break;
                            case COOKIE_LIFETIME_PROMPT:
                                session_pref("network.cookie.lifetimePolicy", 1);
                                break;
                            case COOKIE_LIFETIME_SESSION:
                                session_pref("network.cookie.lifetimePolicy", 2);
                                break;
                            case COOKIE_LIFETIME_DAYS:
                                session_pref("network.cookie.lifetimePolicy", 3);
                                session_pref("network.cookie.lifetime.days", value.days);
                                break;
                            }
                        },
                        "Specifies the default cookie lifetime policy.");

provide("cookie");