// global
var global = {
	initialize: function(){
		$('fieldset.dynamic').children('.item').map(
			function(){
				$($(this).children()[0]).nextAll().toggle();
				$($(this).children()[0]).click(function(){$(this).nextAll().show()});
				$($(this).children()[0]).click(function(){$(this).nextAll().show()});
				return $(this).children()[0]
			}
		);
		if($('fieldset.childrens_object').length > 0 ){
			childrens_object.initialize();
		}
		if($('fieldset.child_object').length > 0 ){
			child_object.initialize();
		}
	}
}


// end of global


// Child Object   <- watch out for Childrens Object

var child_object = {
	initialize: function(){
		this.all_form_styles().each(function(){
			$(this).each(function(i,x){if(i>0){$(x).children('span').css('padding-left', '20px');}})});
		    },
	all_items: function(){
	       return $('fieldset.child_object').children('div.item');
	       },
	all_but_first: function(){
	       return $('fieldset.child_object').children('div.item').map(function(i,x){
			       if(i > 0){ return x}
			       });
	       },
	all_form_styles: function(){
		return this.all_items().map(
			function(i,x){
				return $(this).children();
			});
	},
	child_inputs: function(){
		return this.all_form_styles().map(function(i,x){
			return $(x).children('input');
		});
	}
}









// End of  Childs Object


// Childrens Object
var childrens_object = {
	initialize: function(){
		this.inputs().each(function(){$(this[1]).css('width','120px')});
		this.inputs().each(function(){$(this[0]).css('width','280px')})
		this.all_form_styles().each(function(){$(this[1]).css('width','130px')})
		this.all_form_styles().each(function(){$(this[0]).css('width','290px')})
		// Hide all spans but first in childrens Object
		this.spans().each(function(i,x){x.each(function(){$(this).hide();})});
	},
	all_but_first_items: function(){
			var item_ary = $('fieldset.childrens_object').children('div.item').map(
				function(i,x){
					if(i>0){
						return $(x);
					}
				});
			return item_ary;
		       },
	all_items: function(){
		var all_childrens_object = $('fieldset.childrens_object').children('div.item').map(
			function(i,x){
				return $(x);
			});
		return all_childrens_object;
	},
	all_form_styles: function(){
		var all_styles = this.all_items().map(
			function(){
				return this.children();
			})
		return all_styles;
	},
	form_styles:  function(){
		return this.all_but_first_items().map(
			function(){
			return this.children();
		});
	},
	inputs : function(){
		return this.all_form_styles().map(function(i,x){
			return $(x).children('input');
		});
	},
	spans: function(){
		return this.form_styles().map(function(i,x){
			return $(x).children('span');
		});
       },
	all_but_first_names: function(){
		return this.all_but_first_items().map(function(i,x){
			return $(x).find('input').first();
		});
   }
}	




//End of Childrens Object


global.initialize();

var minimum_cost = 0;

var form_type = $('form').attr('id');
switch(form_type){
		case 'form_L009':
		{
			minimum_cost = 750;
			break;
		}
		case 'form_L025':
		{
			minimum_cost = 135;
			break;
		}
		case 'form_L022':
		{
			minimum_cost = 220;
			break;
		}
		case 'form_L037':
		{
			minimum_cost = 550;
			break;
		}
		case 'form_L034':
		{
			minimum_cost = 750;
			break;
		}
		case 'form_L035':
		{
			minimum_cost = 550;
			break;
		}
		case 'form_L012':
		{
			minimum_cost = 550;
			break;
		}
};
var cost = minimum_cost;
var additional_cost = 220;

if ($('fieldset.childrens_object').size()>0){
	childrens_object.all_but_first_names().each(function(){
			$(this).change(function(){
				cost = minimum_cost;
				childrens_object.all_but_first_names().each(
					function(){
						if($(this).val() != ''){
						cost =	cost + additional_cost;
					}
				});	
			$('.billing_object').children('div.item').children().children('input').val(cost + ' AUD');
			});	
			});

}
if ($('fieldset.child_object').size()>0){
	child_object.all_but_first().each(function(){
			$($(this).find('input')[0]).change(function(){
				cost = minimum_cost;
				child_object.all_but_first().each(
					function(){
						if($($(this).find('input')[0]).val() != ''){
						cost =	cost + additional_cost;
					}
				});	
			$('.billing_object').children('div.item').children().children('input').val(cost + ' AUD');
			});	
			});

}
if ($('fieldset.Father_object .item').size()>0){
	$($('fieldset.Father_object .item')[1]).find('input').first().change(function(){
		cost = minimum_cost;
		if($(this).val() !=''){
				cost =	cost + additional_cost;
				}
		$('.billing_object').children('div.item').children().children('input').val(cost + ' AUD');
			});	


}
// Billing Object
$('.billing_object').children('div.item').children().children('input').val(cost + ' AUD');
// End of  Billing Object

$('form').validate(
		{
			messages: {
				child_1_dob: "Enter Date of Birth"
			}
		}	
		);

