bbo
Version:
bbo is a utility library of zero dependencies for javascript.
46 lines (33 loc) • 1.23 kB
JavaScript
;
/**
* setCookie / getCookie / deleteCookie
* From https://stackoverflow.com/questions/1458724/how-do-i-set-unset-cookie-with-jquery/1458728#1458728
*/
var setCookie = (name, value, option) => {
var longTime = 10; // let path = '; path=/';
var val = option && option.raw ? value : encodeURIComponent(value);
var cookie = encodeURIComponent(name) + '=' + val;
if (option) {
if (option.days) {
var date = new Date();
var ms = option.days * 24 * 3600 * 1000;
date.setTime(date.getTime() + ms);
cookie += '; expires=' + date.toGMTString();
} else if (option.hour) {
var _date = new Date();
var _ms = option.hour * 3600 * 1000;
_date.setTime(_date.getTime() + _ms);
cookie += '; expires=' + _date.toGMTString();
} else {
var _date2 = new Date();
var _ms2 = longTime * 365 * 24 * 3600 * 1000;
_date2.setTime(_date2.getTime() + _ms2);
cookie += '; expires=' + _date2.toGMTString();
}
if (option.path) cookie += '; path=' + option.path;
if (option.domain) cookie += '; domain=' + option.domain;
if (option.secure) cookie += '; true';
}
document.cookie = cookie;
};
module.exports = setCookie;