/* 
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

function hasClass(obj,cName) {
        return new RegExp('\\b'+cName+'\\b').test(obj.className); 
 } 

 function hasClasses(obj,classes) { 
        for (f=0; f<classes.length; f++) { 
                if (!hasClass(obj,classes[i])) return false; 
        } return true; 
 } 

 function addClass(obj,cName) { 
        if (!hasClass(obj,cName)) { 
                obj.className+=obj.className?' '+cName:cName; 
        } 
        return true; 
 } 

 function removeClass(obj,cName) { 
        if (!hasClass(obj,cName)) return false; 
        var rep=obj.className.match(' '+cName)?' '+cName:cName;
        obj.className=obj.className.replace(rep,'');
        return true; 
 } 

 function swapClasses(obj,class1,class2) { 
        if (hasClass(obj,class1)) { 
                removeClass(obj,class1); 
                addClass(obj,class2); return true; 
        } 
        if (hasClass(obj,class2)) { 
                removeClass(obj,class2); 
                addClass(obj,class1); return true; 
        } return false; 
 } 

 function switchClass(obj,to,from) { 
        if (hasClass(obj,from)) removeClass(obj,from);
        addClass(obj,to); 
        return true; 
 } 

 function getElementsByClassName(className,container,tag) { 
        container = container||document; 
        tag=tag||'*'; 
        var all = container.all||container.getElementsByTagName(tag);
        var found=new Array(); 
        for (f=0; f<all.length; f++) { 
                var el=all[f]; 
                if (hasClass(all[f],className)) { 
                        found.push(all[f]); 
                } 
        } 
        return found; 
 }


