function cookieTime(days){
var now = new Date();
var exp = new Date();
var x = Date.parse(now) + days*24*60*60*1000;
exp.setTime(x);
str = exp.toUTCString();
re = '/(\d\d)\s(\w\w\w)\s\d\d(\d\d))/';
return str.replace(re,"$1-$2-$3");
}
function setCookie ( id, value) {
document.cookie = id+'='+value+';path=/;expires='+cookieTime(365);
}
function getCookie ( id, defaultValue ) {
var re = new RegExp(id+'=(.*)');
var value = re.exec(document.cookie);
return (value) ? value[1].split(';')[0] : defaultValue;
}
function doSomething (e) {
var event = e || window.event;
[body of event handler function goes here]
if (event.stopPropagation) {
event.stopPropagation();
} else {
event.cancelBubble = true;
}
}
/**
* Toggle ClassName
* Works on els with multiple classnames
*/
function toggleClassname (el, newClassname, defaultClassname) {
if (hasClass( el, defaultClassname)){
var re = new RegExp("(^|\\s)" + defaultClassname + "(\\s|$)");
el.className = el.className.replace(re, ' '+ newClassname +' ');
} else if (hasClass( el, newClassname)){
var re = new RegExp("(^|\\s)" + newClassname + "(\\s|$)");
el.className = el.className.replace(re, ' '+ defaultClassname +' ');
} else
el.className += ' ' + newClassname;
}
/**
* Has Class? (Matt Kruse)
* Kruse's hasClass, with slight modification
* Determine if an object or class string contains a given class.
* see http://groups.google.com/group/comp.lang.javascript/browse_thread/thread/b68cac304ee6de78/e445c1df18698a3f?lnk=gst&q=hasclass&rnum=3
*/
function hasClass (obj, className) {
if (typeof obj == 'undefined' || obj==null || !RegExp) {
return false;
}
var re = new RegExp("(^|\\s)" + className + "(\\s|$)");
if (typeof(obj)=="string") {
return re.test(obj);
}
else if (typeof(obj)=="object" && obj.className) {
return re.test(obj.className);
}
return false;
};