dojo/cookie.js

  • Provides:

    • dojo.cookie
  • dojo.__cookieProps

    • type
      Function
    • source: [view]
      define("dojo/cookie", ["dojo", "dojo/regexp"], function(dojo) {




      dojo.__cookieProps = function(){
       // expires: Date|String|Number?
       //  If a number, the number of days from today at which the cookie
       //  will expire. If a date, the date past which the cookie will expire.
       //  If expires is in the past, the cookie will be deleted.
       //  If expires is omitted or is 0, the cookie will expire when the browser closes. << FIXME: 0 seems to disappear right away? FF3.
       // path: String?
       //  The path to use for the cookie.
       // domain: String?
       //  The domain to use for the cookie.
       // secure: Boolean?
       //  Whether to only send the cookie on secure connections
       this.expires = expires;
       this.path = path;
       this.domain = domain;
       this.secure = secure;
    • summary
  • dojo.__cookieProps.expires

    • type
      Date|String|Number?
    • summary
      If a number, the number of days from today at which the cookie
      will expire. If a date, the date past which the cookie will expire.
      If expires is in the past, the cookie will be deleted.
      If expires is omitted or is 0, the cookie will expire when the browser closes. &lt;&lt; FIXME: 0 seems to disappear right away? FF3.
  • dojo.__cookieProps.path

    • type
      String?
    • summary
      The path to use for the cookie.
  • dojo.__cookieProps.domain

    • type
      String?
    • summary
      The domain to use for the cookie.
  • dojo.__cookieProps.secure

    • type
      Boolean?
    • summary
      Whether to only send the cookie on secure connections
  • dojo.cookie

    • type
      Function
    • parameters:
      • name: (typeof String)
        Name of the cookie
      • value: (typeof String)
        Value for the cookie
      • props: (typeof dojo.__cookieProps)
        Properties for the cookie
    • source: [view]
       var c = document.cookie;
       if(arguments.length == 1){
        var matches = c.match(new RegExp("(?:^|; )" + dojo.regexp.escapeString(name) + "=([^;]*)"));
        return matches ? decodeURIComponent(matches[1]) : undefined; // String or undefined
       }else{
        props = props || {};
      // FIXME: expires=0 seems to disappear right away, not on close? (FF3) Change docs?
        var exp = props.expires;
        if(typeof exp == "number"){
         var d = new Date();
         d.setTime(d.getTime() + exp*24*60*60*1000);
         exp = props.expires = d;
        }
        if(exp && exp.toUTCString){ props.expires = exp.toUTCString(); }


        value = encodeURIComponent(value);
        var updatedCookie = name + "=" + value, propName;
        for(propName in props){
         updatedCookie += "; " + propName;
         var propValue = props[propName];
         if(propValue !== true){ updatedCookie += "=" + propValue; }
        }
        document.cookie = updatedCookie;
       }
    • summary
      Get or set a cookie.
    • description
      If one argument is passed, returns the value of the cookie
      For two or more arguments, acts as a setter.
    • returns
      String or undefined
    • example
      set a cookie with the JSON-serialized contents of an object which
      will expire 5 days from now:
      
      	dojo.cookie("configObj", dojo.toJson(config), { expires: 5 });
    • example
      de-serialize a cookie back into a JavaScript object:
      
      	var config = dojo.fromJson(dojo.cookie("configObj"));
    • example
      delete a cookie:
      
      	dojo.cookie("configObj", null, {expires: -1});
  • dojo.cookie.isSupported

    • type
      Function
    • source: [view]
       if(!("cookieEnabled" in navigator)){
        this("__djCookieTest__", "CookiesAllowed");
        navigator.cookieEnabled = this("__djCookieTest__") == "CookiesAllowed";
        if(navigator.cookieEnabled){
         this("__djCookieTest__", "", {expires: -1});
        }
       }
       return navigator.cookieEnabled;
    • summary
      Use to determine if the current browser supports cookies or not.
      
      Returns true if user allows cookies.
      Returns false if user doesn't allow cookies.
  • dojo

    • type
      Object
    • summary