Based on testing and further reading into this, a date in a UTC/GMT format is required by cookies e.g. Sun, 15 Jul 2012 00:00:01 GMT
Therefore any dates in other formats such as 15 Jul 2012, or 15/Jul/2012, or 07/15/2012, have to be passed as a new Date
object and then through the toUTCString()
or the toGMTString()
function.
therefore I have edited my function to the following:
function setCookie(name, value, exdate) {
//If exdate exists then pass it as a new Date and convert to UTC format
(exdate) && (exdate = new Date(exdate).toUTCString());
var c_value = escape(value) + ((exdate === null || exdate === undefined) ? "" : "; expires=" + exdate);
document.cookie = name + "=" + c_value;
};