/* ------------------------------- */
/* --- Utility Funktionen -------- */
/* ------------------------------- */

/**
 * Funktion escaped wie in PHP ueblich JS variablen per Backslash
 * @author tr <thomas.ruediger@mindwerk.de>  
 */
function MWcfgUtil_addslashes(str) {
	str=str.replace(/\'/g,'\\\'');
	str=str.replace(/\"/g,'\\"');
	str=str.replace(/\\/g,'\\\\');
	str=str.replace(/\0/g,'\\0');
	return str;
}

/**
 * Funktion entfernt per 'MWcfgUtil_addslashes()' escapte String Variablen wieder
 * @author tr <thomas.ruediger@mindwerk.de>  
 */
function MWcfgUtil_stripslashes(str) {
	str=str.replace(/\\'/g,'\'');
	str=str.replace(/\\"/g,'"');
	str=str.replace(/\\\\/g,'\\');
	str=str.replace(/\\0/g,'\0');
	return str;
}

/**
 * Funktion loescht einen Eintrag (item) innerhalb des uebergebenen Arrays (arr) anhand des uebergebene Wertes (items)
 * @author tr <thomas.ruediger@mindwerk.de>  
 */
function MWcfgUtil_ArrayRemoveItem(arr,item){
	var arr = arr || new Array();
	var arrt = new Array();
	if(arr.length >0){
		for(i=0; i < arr.length; i++){
			if(arr[i] !== item) arrt.push(arr[i]);
		}
	}
	return arrt;
}

/**
 * Funktion gibt ein (JSON) Objekt anhand des uebergebenen Keys(idname,id) innerhalb des angebenen Arrays(arr) zurueck
 * @author tr <thomas.ruediger@mindwerk.de>  
 */
function MWcfgUtil_GetJsonObjectFromArray(arr,idname,id){
	var arr = arr || false;
	var idname = idname || false;
	var id = id || false;
	if(arr.length >0){	
		for(i=0; i < arr.length; i++){
			if(eval('arr['+ i +'].'+ idname) == id) {
				//alert(arr[i ].value);
				return arr[i];
			}
		}
	}
}
/**
 * Funktion ersetzt ein (JSON) Objekt mit dem uebergebenen Key(idname,id) innerhalb des angebenen Arrays(arr) durch ein 
 * anderes uebergebenes Objekt (objnew) und gibt das (arr) zurueck
 * @author tr <thomas.ruediger@mindwerk.de>  
 */
function MWcfgUtil_ReplaceJsonObjectFromArray(arr,idname,id,objnew){
	var arr = arr || false;
	var idname = idname || false;
	var id = id || false;
	var objnew = objnew || false;
	if(arr.length > 0){
		for(i=0; i < arr.length; i++){
			if(eval('arr['+ i +'].'+ idname) == id){
				//alert('REPLACE:'+i + "|" + arr[i].toJSONString());			
				arr[i] = objnew;
			}
		}
	}
	return arr;
}
/**
 * Funktion loescht ein (JSON) Objekt mit dem uebergebenen Key(idname,id) innerhalb des angebenen Arrays(arr) und gibt es zurueck
 * @author tr <thomas.ruediger@mindwerk.de>  
 */
function MWcfgUtil_RemoveJsonObjectFromArray(arr,idname,id){
	var arr = arr || false;
	var idname = idname || false;
	var id = id || false;
	var arrt = new Array();	
	if(arr.length > 0){
		for(i=0; i < arr.length; i++){
			if(eval('arr['+ i +'].'+ idname) != id){
				//alert(arr[i ].value);
				arrt.push(arr[i]);
			}
		}
	}
	return arrt;
}
/**
 * Funktion prueft ob ein (JSON) Objekt mit dem uebergebenen Key(idname,id) innerhalb des angebenen Arrays(arr) vorhanden ist
 * @author tr <thomas.ruediger@mindwerk.de>  
 */
function MWcfgUtil_IsJsonObjectInArray(arr,idname,id){
	var ret = false;
	var arr = arr || false;
	var idname = idname || false;
	var id = id || false;
	if(arr.length >0){	
		for(i=0; i < arr.length; i++){
			if(eval('arr['+ i +'].'+ idname) == id) {
				//alert(arr[i ].value);
				ret = true;
			}
		}
	}
	return ret;
}
