jQuery(document).ready(function(){

    /******************************************************************************
     *
     * Set vars
     *
     ******************************************************************************/	
	    
    var childFirstname = jQuery('#tx_tcbrmemberform_pi1_childfirstname');
    var childLastname = jQuery('#tx_tcbrmemberform_pi1_childlastname');
    var parentFirstname = jQuery('#tx_tcbrmemberform_pi1_parentfirstname');
    var parentLastname = jQuery('#tx_tcbrmemberform_pi1_parentlastname');
    var parentEmail = jQuery('#tx_tcbrmemberform_pi1_parentemail');
    var repeatEmail = jQuery('#tx_tcbrmemberform_pi1_repeatemail');
    var adress1 = jQuery('#tx_tcbrmemberform_pi1_adress_1');
    var postnr = jQuery('#tx_tcbrmemberform_pi1_postnr');
    var city = jQuery('#tx_tcbrmemberform_pi1_city');
    var gender = jQuery('#tx_tcbrmemberform_pi1_gender');
    var birthday = jQuery('#tx_tcbrmemberform_pi1_birthday');    
    var daySelect = jQuery('#tx_tcbrmemberform_pi1_day');    
    var monthSelect = jQuery('#tx_tcbrmemberform_pi1_month');    
    var yearSelect = jQuery('#tx_tcbrmemberform_pi1_year');    
    var submitButton = jQuery('#tx_tcbrmemberform_pi1_submit');
    var memberForm = jQuery('#memberForm');
    
    /******************************************************************************
     *
     * date picker
     *
     ******************************************************************************/	        
    /*
    //
    jQuery('#datepicker').datepicker(datepickerConf);
    
    //
    
    var month = jQuery('select.ui-datepicker-new-month');
    jQuery(month).children('option').removeAttr( 'selected' ) ;
	var monthHTML = jQuery(month).html();
	monthHTML = '<option value="-1" selected="selected">'+extConf['monthLabel']+'</option>'+monthHTML;
	jQuery(month).html(monthHTML);
	    
    //
    
    var year = jQuery('select.ui-datepicker-new-year');
    jQuery(year).children('option').removeAttr( 'selected' ) ;
    var yearHTML = jQuery(year).html();
    yearHTML = '<option value="-1" selected="selected">'+extConf['yearLabel']+'</option>'+yearHTML;
    jQuery(year).html(yearHTML);

    //
    jQuery('td.ui-datepicker-current-day').removeClass('ui-datepicker-current-day');
    
    
    /******************************************************************************
     *
     * Form
     *
     ******************************************************************************/   
	jQuery(submitButton).click(function(){
			
		var error=false;
		var errorBithday=false;
		var errorEmail=false;
		
		var email = jQuery(parentEmail).val();
		urlConf['email'] = email;	
		var myDate=new Date();
		urlConf['unique'] = myDate.getTime();
		
		$.getJSON(makeURL(urlConf), function(data){

			var cParentEmail = (data == 1) ? true : false;
			if(!cParentEmail){errorEmail = true;}
			if(jQuery(parentEmail).val() != jQuery(repeatEmail).val()){errorEmail = true;}
			if(errorEmail){jQuery(parentEmail).addClass('emailError');}else{jQuery(parentEmail).removeClass('emailError');}
			if(errorEmail){jQuery(repeatEmail).addClass('emailError');}else{jQuery(repeatEmail).removeClass('emailError');}
			if(jQuery(childFirstname).val()==''){jQuery(childFirstname).addClass('formError');error=true;}	
			if(jQuery(childLastname).val()==''){jQuery(childLastname).addClass('formError');error=true;}		
			if(jQuery(parentFirstname).val()==''){jQuery(parentFirstname).addClass('formError');error=true;}		
			if(jQuery(parentLastname).val()==''){jQuery(parentLastname).addClass('formError');error=true;}		
			if(jQuery(adress1).val()==''){jQuery(adress1).addClass('formError');error=true;}		
			if(jQuery(postnr).val()==''){jQuery(postnr).addClass('formError');error = true;} 		
			if(jQuery(city).val()==''){jQuery(city).addClass('formError');error = true;}

			if(jQuery(gender).val()==0){jQuery(gender).addClass('formError');error = true;}
			if(jQuery(daySelect).val()==0){jQuery(daySelect).addClass('formError');error = true;}
			if(jQuery(monthSelect).val()==0){jQuery(monthSelect).addClass('formError');error = true;}
			if(jQuery(yearSelect).val()==0){jQuery(yearSelect).addClass('formError');error = true;}
			
			if(jQuery(parentEmail).hasClass('emailError')){jQuery(parentEmail).addClass('formError');error = true;}
			if(jQuery(repeatEmail).hasClass('emailError')){jQuery(repeatEmail).addClass('formError');error = true;}
	    	
			if(!error && confirm(extConf['confirmLabel'])){
	    		memberForm.submit();
	    	} else {
	    		var i = 1;
	    		var msg = i+'. '+extConf['missingDataLabel'];
	    		if(errorBithday==true){i++;msg +=  "\n"+i+'. '+extConf['missingDateLabel'];}
	    		if(errorEmail==true){i++;msg += "\n"+i+'. '+extConf['errorEmailLabel'];}
	    		alert(msg);
	    	}
    	});
    });
    
 	/******************************************************************************
     *
     * Misc functions
     *
     ******************************************************************************/
    
    /**
	 *
	 * @param array
	 * @author Rasmus JÔøΩrgensen <rj@typoconsult.dk>
	 * @return string URL
	 */
	function makeURL(urlVars){
		var urlStr = '';
		if(typeof urlVars != "undefined"){ // Make the url to request including some params that the server will like
			for(key in urlVars){
				urlStr = urlStr + key + "=" + urlVars[key] + "&";
			}
		}
		// Remove trailing &
		urlStr = urlStr.substr(0,urlStr.length-1);
		urlStr = "http://" + top.location.host + top.location.pathname + "?" + encodeURI(urlStr);
		return urlStr;
	}
});