var activeinput=null;
var makeautocomplete = function(el){
    var ajax_url="index.php?id=903";
	if (activeinput !== el){    
	activeinput=el;
	var postVar = el.get('search');
	var prefix = el.get('prefix');
	var choices=$$('.regatta-choices');
	var postData = null;
	if (choices) choices.destroy();
    if (postVar == 'vorname'){
		var verein = $(prefix+'_verein').get('value');
		var rennklasse = $('sp_rennklasse').get('html');
		var altersklasse = $('sp_altersklasse').get('html');
		postData = {
			verein:verein,
			rennklasse:rennklasse,
			altersklasse:altersklasse
		};
	}
    if (postVar == 'nachname'){
		var verein = $(prefix+'_verein').get('value');
		var vorname = $(prefix+'_vorname').get('value');
		var rennklasse = $('sp_rennklasse').get('html');
		var altersklasse = $('sp_altersklasse').get('html');
		postData = {
			vorname:vorname,
			verein:verein,
			rennklasse:rennklasse,
			altersklasse:altersklasse
		};
	}
	// Our instance for the element with id "demo-word"
	new Autocompleter.Request.JSON(el, ajax_url, {
		'postData' : postData,
		'indicatorClass': 'autocompleter-loading',
		'width' : 'auto',
		'zIndex':'1000',
		'cache':false,
		'postVar':postVar,
		className: 'regatta-choices',
  injectChoice: function(choice) {
    var id = choice.id;
    if(postVar == 'vorname'||postVar == 'nachname'){
    var el = new Element('li');
	el.set('html', this.markQueryValue(choice.caption));
    if (postVar == 'vorname') {
	el.inputValue = choice.vorname;
    el.store('nachname', choice.nachname);	
	}
	else{
	el.inputValue = choice.nachname;
    el.store('vorname', choice.vorname);			
	}
    el.store('verein', choice.vereinsname);
	el.store('id', choice.id);
	el.store('alter', choice.alter);		
	this.addChoiceEvents(el).inject(this.choices);		
	}
	else{
    var el = new Element('li');
	el.set('html', this.markQueryValue(choice));
    el.inputValue = choice;
    this.addChoiceEvents(el).inject(this.choices);				
	}

  },
  onSelection: function(element, selected, value, input) {
  if(postVar == 'vorname'||postVar == 'nachname'){
  	if (postVar == 'vorname') {
	$(prefix+'_nachname').set('value',selected.retrieve('nachname'));
	}
	else{
	$(prefix+'_vorname').set('value',selected.retrieve('vorname'));	
	}
 	
	$(prefix+'_verein').set('value',selected.retrieve('verein'));
	$(prefix+'_alter').set('value',selected.retrieve('alter'));
	var alter = selected.retrieve('alter');
	$('td_'+prefix+'_alter').set('html',alter);
	$('tv_input_'+prefix).set('value',selected.retrieve('id'));
    calcalter(prefix,alter);	
  }
  },
  onShow:function(element,choices){
    	var elpos = element.getCoordinates();
		var chpos = choices.getCoordinates();
	    choices.setStyles({
				'top': elpos.bottom-chpos.height-elpos.height-2
			});  	
  }

	});		
	}
}

var calcalter = function(prefix,alter){
	var gesamtalter=0;
	var count=0;
	
	$$('.calc_alter').each(function(el){
		if (el.get('value')>0){
		gesamtalter=parseInt(gesamtalter)+parseInt(el.get('value'));
		count++;			
		}
	})

	var durchschnitt=(count>0)?gesamtalter/count:0;	
	$('calc_durchschnitt').set('html',durchschnitt); 	
	if (prefix !== 'cox'){
		var backcolor='green';
		var min_age=$('min_age');
		if (min_age){
			if (alter<parseInt(min_age.get('html'))){
				backcolor='red';
			}
		}
		var max_age=$('max_age');
		if (max_age){
			if (alter>parseInt(max_age.get('html'))){
				backcolor='red';
			}
		}		
		$('td_'+prefix+'_alter').setStyle('background-color',backcolor);
		var backcolor='green';
		var mda_age=$('mda_age');
		if (mda_age){
			if (durchschnitt<parseInt(mda_age.get('html'))){
				backcolor='red';
			}
			$('calc_durchschnitt').setStyle('background-color',backcolor);
		}		
	}	
}

var clearrowerinputs = function(el){
	var prefix = el.get('prefix');
	$(prefix+'_nachname').set('value','');
	$(prefix+'_vorname').set('value','');	
	$(prefix+'_verein').set('value','');
	$(prefix+'_alter').set('value','0');
	var alter=0;
	$('td_'+prefix+'_alter').set('html','0');
	$('tv_input_'+prefix).set('value','0');	
	calcalter(prefix,alter);
	return false;
}


var createnumbers = function(){
    var number_input=null;
    var number=null;
	var lastnumber=0;
	var highestnumber=0;
	var inputs = [];
	$$('.xedit_input').each(function(el){
	    if (el.get('fieldname')=='startnummer'){
			number_input=el.getElement('input');
            number=number_input.get('value');
			if (number !== '99999' && Number(number)>Number(highestnumber)){
				highestnumber = number;
			}
			if (number=='99999'){
                inputs.push(number_input);
			}			
		}    	
    
	});	
	
	inputs.each(function(el){
		highestnumber++;
		el.set('value',highestnumber);
	});
	}
    var createtimes = function(){
    
        var zeitabstand = $('zeitabstand').get('value');
		var firststart = $('firststart').get('value');
		var zeit_input = null;
        var input_zeit = null;
        var fixzeit_input = null;
        var fixzeit = '0';
        var Zeit = new Date();
        Zeit.setHours(firststart);
        Zeit.setMinutes(0);
       
        $$('.xedit_input').each(function(el){
			
            if (el.get('fieldname') == 'fixzeit') {
                fixzeit_input = el.getElement('input');
                fixzeit = fixzeit_input.checked?'1':'0';
            }
            if (el.get('fieldname') == 'startzeit') {
				zeit_input = el.getElement('input');
                fixzeit = fixzeit.trim();
				if (fixzeit == '1') {
                input_zeit = zeit_input.get('value');
				splitzeit = input_zeit.split(":");
                Zeit.setHours(splitzeit[0]);
                Zeit.setMinutes(splitzeit[1]);                
                }
                zeit_input.set('value', Zeit.format('%H:%M'));
                Zeit.increment('minute', zeitabstand);
				fixzeit = '0';
            }
            
        })
    }
var resetnumbers = function(){
	$$('.xedit_input').each(function(el){
	    if (el.get('fieldname')=='startnummer'){
			var number_input=el.getElement('input');
			number_input.set('value','99999');
		}    	
	})
	}	
var resettimes = function(){
	$$('.xedit_input').each(function(el){
	    if (el.get('fieldname')=='startzeit'){
			var number_input=el.getElement('input');
			number_input.set('value','99:99');
		}    	
	})
	}		
