/** +++++++++++++++++++++++++++++++++++++++++++++++++++++++	**/
/** +	Dieses Javascript soll dazu dienen,   						**/
/** +	alle AJAX-Aktionen in Bezug auf die Formulare zu		**/
/** +	beherbergen															**/
/** +																			**/
/** +	@copyright (c) 2008 , Martin Glück							**/
/** +	@author Martin Glück <martin.glueck@fibee.de>			**/
/** +	@package formularManager										**/
/** +																			**/
/** +++++++++++++++++++++++++++++++++++++++++++++++++++++++	**/

/** +++++++++++++++++++++++++++++++++++++++++++++++++++++++	**/
/** +	-- ANFANG --- Verhindere ein mehrfaches Laden 			**/
/** +++++++++++++++++++++++++++++++++++++++++++++++++++++++	**/
if (globalFormularManagerJavaScriptLoaded != 1 ){
	
var globalFormularManagerJavaScriptLoaded = 1;
var globalIdUser 	= 0;
var globalUin 		= '';
var globalFormularManagerAjaxServerURL;
var globalLanguage = 'de';
var idForm = 0;

// Array mit Informationen in Bezug auf die gewählten Attribute
var globalSelectedAttributes = new Array();

/** +++++++++++++++++++++++++++++++++++++++++++++++++++++++	**/
/** +																			**/
/** +	 DIVERSE SET-METHODEN											**/
/** +																			**/
/** +++++++++++++++++++++++++++++++++++++++++++++++++++++++	**/
// Funktion, zum setzten der idFormular
function setIdForm(id){
	idForm	= id ;
}
// Funktion, zum setzten der chatUin
function setUin(uin){
	globalUin	= uin ;	
}
// Funktion, zum setzten der userId
function setIdUser(idUser){
	globalIdUser	= idUser ;	
}
// Funktion, zum setzten der Sprache
function setLanguage(value){
	globalLanguage	= value ;	
}
// Funktion, zum setzten der Url für den AjaxServer
function setFormularManagerAjaxServerUrl(url){
	globalFormularManagerAjaxServerURL	= url ;	
}
// Funktion, zum setzen der Attribute, die für die Vorauswahl benötigt werden, wenn Formular editiert wird
function setAttributeAssignment(idFormularAttribut,idFormularAttributwert,wertEingabe){
	myIndex = globalSelectedAttributes.length;
	globalSelectedAttributes[myIndex] = new Object();
	globalSelectedAttributes[myIndex]["idFormularAttribut"] 		= idFormularAttribut;
	globalSelectedAttributes[myIndex]["idFormularAttributwert"] = idFormularAttributwert;
	globalSelectedAttributes[myIndex]["wertEingabe"]				= wertEingabe;
}

/** +++++++++++++++++++++++++++++++++++++++++++++++++++++++	**/
/** +																			**/
/** +	 METHODEN FÜR DIE ATTRIBUTDEFINITION						**/
/** +																			**/
/** +++++++++++++++++++++++++++++++++++++++++++++++++++++++	**/
// Funktion, sendet Abfrage an Ajaxserver, um sich den Inhalt für die
// Attributzuordnung zu holen
function getCurrentAttributeDefinition(){
	var idFormular;
	// ermittle gewählte Formular-ID
	var selectForm = document.getElementById('dynamicFormularManagerFormSelection');
	if (selectForm) idFormular = selectForm.options[selectForm.selectedIndex].value;
	else idFormular = idForm;
	
	// String mit Infos in Bezug auf die gesetzen Attribute auslesen
	var myAttributeString = ''
	if (globalSelectedAttributes.length > 0)
	for (i = 0; i < globalSelectedAttributes.length; i++){
		myAttributeString += '&attribute[' + globalSelectedAttributes[i]["idFormularAttribut"] + ']';
		myAttributeString +='[idFormularAttributwert][]=' + globalSelectedAttributes[i]["idFormularAttributwert"] ;
		myAttributeString += '&attribute[' + globalSelectedAttributes[i]["idFormularAttribut"] + ']';
		myAttributeString += '[wert]=' + globalSelectedAttributes[i]["wert"] ;
	}
	
	// alle bisherigen Werte ermitteln uns speichern
	// HOLE ABFRAGE VOM SERVER
	 $.ajax({
	   type: "GET",
	   url: globalFormularManagerAjaxServerURL,
	   data: "ajaxRequestName=getCurrentAttributeDefinition&idUser=" + globalIdUser + "&uin=" + globalUin + "&language=" + globalLanguage + "&idFormular=" + idFormular + myAttributeString  ,
	   dataType: "html",
	   cache: "false",
	   success: function(msg){
	     setAttributeDefinitionContent(msg);
	   },
	   error: function(msg){
	   	alert(msg);
	   }
	 });	
}

// Funktion setz den Inhalt der Attributzuordnung 
function setAttributeDefinitionContent(strData){
	var resultBox 		= document.getElementById('dynamicFormularManagerAttributeDefinition');
	// wenn kein INhalt, dann leeren!!
	if (resultBox){
		resultBox.innerHTML = strData;
	}
}

/** +++++++++++++++++++++++++++++++++++++++++++++++++++++++	**/
/** +	DIVERSE KLEINe FUNKTIONEN							**/
/** +++++++++++++++++++++++++++++++++++++++++++++++++++++++	**/
function checkradio(feld){
	for (i=0; i<feld.length; i++){
			if(feld[i].checked == true){
				return feld[i].value;
			}
	}
}

// Removes leading whitespaces
function LTrim( value ) {
	var re = /\s*((\S+\s*)*)/;
	return value.replace(re, "$1");
}
// Removes ending whitespaces
function RTrim( value ) {
	var re = /((\s*\S+)*)\s*/;
	return value.replace(re, "$1");
}
// Removes leading and ending whitespaces
function trim( value ) {
	return LTrim(RTrim(value));
}

/** +++++++++++++++++++++++++++++++++++++++++++++++++++++++	**/
/** +	-- ENDE --- Verhindere ein mehrfaches Laden 		**/
/** +++++++++++++++++++++++++++++++++++++++++++++++++++++++	**/
}
