var checkfieldsret = true;
var AddFieldDmy = true;

function checkField(fieldname, len, param1, param2, addfield)
{
	if(addfield == undefined) addfield = "";
	if(len == undefined) len = "";
	if(param1 == undefined) param1 = "";
	if(param2 == undefined) param2 = "";
	/*
	Ext.Ajax.request({
		url: '/index.cfm?event=ajax.checkfields',
		params: { fname: fieldname, param1: param1, param2: param2 },
		success: function(result, request){
			CheckfieldsRet = result.responseText;			
			}
		//failure: alert('Fehler')			
	});	
	*/
	
	IsValidStore = new Ext.data.JsonStore({
		autoLoad: false, 
	    url: '/index.cfm?event=ajax.community.checkfields',
	    fields: [{name:'ISVALID', type:'boolean'}],
		baseParams: {'fname': fieldname, 'len': len, 'param1': param1, 'param2': param2, 'val': document.getElementById(fieldname).value }
	});
	
	IsValidStore.load({
		callback: function(thisStore, records, options) {
			
			if(IsValidStore && IsValidStore.reader && IsValidStore.reader.jsonData) {
				IsValid = IsValidStore.reader.jsonData.ISVALID;
				Mess = IsValidStore.reader.jsonData.MESSAGE;
				
				if(IsValid) {
					checkfieldsret = true;
					Ext.getCmp(fieldname).clearInvalid();
					
					
				}
				else
				{
					checkfieldsret = Mess;
					Ext.getCmp(fieldname).markInvalid(Mess);
										
				}	
				
				if (addfield != "") {
					if (AddFieldDmy) {
						Ext.getCmp(addfield).validate();
						AddFieldDmy = false;
					}
					else {
						AddFieldDmy = true;
					}
				}			
				
			} else {
				
				checkfieldsret = "Es ist ein Fehler aufgetreten";
			}
						
		}
	});
	
	return checkfieldsret;
}


