Lib.Utils.NamespaceUtils.createIfNecessary('Lib.Utils');

/**
* author: Nate Minshew (NJMINSH)
* date created: 11/04/2005
* description:
*   This object is a utility object for performing actions on the document.
*/
Lib.Utils.DocumentUtils = {};

/**
* author: Nate Minshew (NJMINSH)
* date created: 11/04/2005
* access level: public
* description:
*   This method adds the specified class name to the specified element.
*
* element - Element on the page.
* className - Name of the class to add to the element.
*/
Lib.Utils.DocumentUtils.addClass = function(element, className) {
    if (!this.containsClass(element, className)) {
        if (element) {
            if (element.className.length > 0) {
                element.className = element.className + ' ' + className;
            } else {
                element.className = className;
            }
        }
    }
}

/**
* author: Nate Minshew (NJMINSH)
* date created: 11/04/2005
* access level: public
* description:
*   This method removes the specified class name for the specified element.
*
* element - Element on the page.
* className - Name of the class to remove from the element.
*/
Lib.Utils.DocumentUtils.removeClass = function(element, className) {
    if (this.containsClass(element, className)) {
        if (element && element.className.indexOf(className) > -1) {
            var pre = element.className.substring(0, element.className.indexOf(className) - 1);
            var post = element.className.substring(element.className.indexOf(className) + className.length + 1);
            element.className = pre + ' ' + post;
        }
    }
}

/**
* author: Nate Minshew
* date created: 03/08/2006
* access level: public
* description:
*   This method returns whether the specified element contains the specified css class.
*
* @param element - Page Element to check.
* @param className - String representing the css class to check for.
* @return boolean - Representing if the element contains the class.
*/
Lib.Utils.DocumentUtils.containsClass = function(element, className) {
    return element.className.indexOf(className) > -1;
}