/**
 * neodys.cookies: Neodys cookies management functions
 *
 * Functions:
 *            neodys.cookies.checkEnabled
 *            neodys.cookies.defined .......... Check cookie existence
 *            neodys.cookies.getHash .......... Get cookies in an object with elements cookieName:cookieValue
 *            neodys.cookies.getValue ......... Get cookie.value
 **/

var neodys;
if (!neodys) neodys = {};

neodys.cookies = {};

neodys.cookies.checkEnabled = function() {
  var cookieEnabled=(navigator.cookieEnabled)? true : false;

  //if navigator,cookieEnabled is not supported
  if (typeof navigator.cookieEnabled=="undefined" && !cookieEnabled){ 
    document.cookie="testcookie";
        cookieEnabled=(document.cookie.indexOf("testcookie")!=-1)? true : false;
  }
  
  if (cookieEnabled) {
    return true;
  } else {
    return false;
  }

};




neodys.cookies.getHash = function (cookieName) {
    /**
     * Returns the cookies in an object simulating a hassh with 
     * key:value pairs in the form cookieName:cookieValue
     * 
     **/

    var cookiesArray = document.cookie.split(/\s*;\s*/);
    var cookiesHash = new Object ();
    for (var n=0; n < cookiesArray.length; n++) {
	//	alert(cookiesArray[n]);
	var x = cookiesArray[n].split(/=/); // split key=value
	cookiesHash[x[0]] = x[1];
    };

    return cookiesHash;
};

neodys.cookies.getValue = function (cookieName) {
    var cookiesHash = neodys.cookies.getHash()
    return cookiesHash[cookieName];
};

neodys.cookies.defined = function (cookieName) {
    if ( neodys.cookies.getValue(cookieName) == undefined ) {
	return false;
    } else {
	return true;
    }
};

neodys.cookies.getValue_old = function (cookieName) {
    /**
     * Returns the value for cookieName
     * If cookieName is not set returns undef;
     **/

    var cookiesArray = document.cookie.split(/\s*;\s*/);
    var cookiesHash = new Object ();
    for (var n=0; n < cookiesArray.length; n++) {
	//	alert(cookiesArray[n]);
	var x = cookiesArray[n].split(/=/); // split key=value
	cookiesHash[x[0]] = x[1];
    };

    return cookiesHash[cookieName];
};