Cookies

A better cookie approach

by rodhartzell

JavaScript

var cookieLife = 7;
var init = '5';
createCookie('GigyaLoginCounter',init,cookieLife);
alert('initial value of cookie: ' + init);

for (var i=0;i<3;i++){
	UpdateLoginCounter();
  var x = readCookie('GigyaLoginCounter')
    if (x) {
        alert('new value of cookie: ' + x);
    }
}


function UpdateLoginCounter() {	
					var loginCount = readCookie("GigyaLoginCounter");
					if (loginCount != '') {
						loginCount = parseInt(loginCount) + 1;						
					} else {
						loginCount = '1';						
					}	
					
					createCookie("GigyaLoginCounter", loginCount, cookieLife);
				}

function createCookie(name,value,days) {
    if (days) {
        var date = new Date();
        date.setTime(date.getTime()+(days*24*60*60*1000));
        var expires = "; expires="+date.toGMTString();
    }
    else var expires = "";
    document.cookie = name+"="+value+expires+"; path=/";
}

function readCookie(name) {
    var nameEQ = name + "=";
    var ca = document.cookie.split(';');
    for(var i=0;i < ca.length;i++) {
        var c = ca[i];
        while (c.charAt(0)==' ') c = c.substring(1,c.length);
        if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
    }
    return null;
}

function eraseCookie(name) {
    createCookie(name,"",-1);
}