// namespace:
var stringutil = new Object();

/**
 * @author: Benny Bottema
 * void (Object, String, String)
 * - vervangt css style (class) 'original' met css style 'replacement'
 * - handig om bijvoorbeeld een achtergrond af te wisselen onmouseover/onmouseout
 */
stringutil.replaceCSS = function(ele, original, replacement) {
	ele.className = stringutil.removeWord(ele.className, original);
	ele.className = ele.className + " " + replacement;
}

/**
 * @author: Benny Bottema
 * void (Object, boolean, String, String)
 * - voegt/vervangt een css klasse afhankelijk van een boolean expression waarde
 * - handig om met javascript foute input velden weer te geven
 * - element kan een id string zijn of een element referentie
 */
stringutil.setCSSClass = function(element, expression, classOK, classERROR) {
	var ele = (typeof element == "string") ? document.getElementById(element) : element;
	
	if (ele != null) {
		ele.className = this.removeWord(ele.className, classOK);
		ele.className = this.removeWord(ele.className, classERROR);
		ele.className = ele.className + " " + ((expression) ? classOK : classERROR);
		
	}
}

/**
 * @author: Benny Bottema
 * String (String, String)
 * - verwijdert een woord uit een zin en geeft het resultaat terug
 */
stringutil.removeWord = function(str, word) {
	str = " " + str + " ";
	word = " " + word + " ";
	var index = str.indexOf(word);
	return (index != -1) ? trim(str.substring(0, index + 1) + str.substring(index + word.length, str.length)) : str;
}


/**
 * @author: http://www.bigbold.com/snippets/posts/show/701
 * String (String)
 * - haalt 'leading and ending whitespaces' weg
 */
trim = function(str) {
	return ltrim(rtrim(str));
}
/**
 * @author: http://www.bigbold.com/snippets/posts/show/701
 * String (String)
 * - haalt 'leading whitespaces' weg
 */
ltrim = function(str) {
	return str.replace(/\s*((\S+\s*)*)/, "$1");
}
/**
 * @author: http://www.bigbold.com/snippets/posts/show/701
 * String (String)
 * - haalt 'ending whitespaces' weg
 */
rtrim = function(str) {
	return str.replace(/((\s*\S+)*)\s*/, "$1");
}

/**
 * @author: internet
 * String (String)
 * - stript een string van komma's
 */
function stripCommas(numString) {
    var re = /,/g;
    return numString.replace(re,"");
}
