window.addEvent('domready', function(){
	
	$$('div.sub').each(function(item,index){
		var trigger = item.getPrevious('input.trigger');
		if(trigger){
			var triggerStatus = trigger.getProperty('checked');
			if(!triggerStatus){
				item.addClass('hide');
			}
		}
	});
	
	$$('.trigger').each(function(item,index){
		item.addEvent('click', function(){
			var triggerStatus = item.getProperty('checked');
			var nextSub = item.getNext('div.sub');
			if(triggerStatus){
				nextSub.removeClass('hide');
			} else{
				nextSub.addClass('hide');
				var innerInputs = nextSub.getChildren('input');
				innerInputs.each(function(innerInput,index){
					innerInputType = innerInput.getProperty('type');
					if(innerInputType == 'text'){
						innerInput.setProperty('value','');
					} else if(innerInputType == 'checkbox'){
							innerInput.setProperty('checked',false);
					};
				});
				
				var innerTextareas = nextSub.getChildren('textarea');
				innerTextareas.each(function(innerTextarea,index){
					innerTextarea.setProperty('value','');
				});
			};
		});
	});
	
	$$('form input').each(function(item,index){
		var inputType = item.getProperty('type');
		if(inputType == 'radio'){
			item.addClass('tmp');
			item.addEvent('click', function(){
				$$('input.tmp').each(function(trigger,index){
					var triggerClass = trigger.hasClass('trigger')
					if(triggerClass){
						var triggerStatus = trigger.getProperty('checked');
						if(!triggerStatus){
							var nextSub = trigger.getNext('div.sub');
							nextSub.addClass('hide');
							var innerInputs = nextSub.getChildren('input');
							innerInputs.each(function(innerInput,index){
								innerInputType = innerInput.getProperty('type');
								if(innerInputType == 'text'){
									innerInput.setProperty('value','');
								} else if(innerInputType == 'checkbox'){
										innerInput.setProperty('checked',false);
								};
							});
							
							var innerTextareas = nextSub.getChildren('textarea');
							innerTextareas.each(function(innerTextarea,index){
								innerTextarea.setProperty('value','');
							});
						} else{
							var nextSub = trigger.getNext('div.sub');
							nextSub.removeClass('hide');
							trigger.setProperty('checked','true')
						};
					};
				});
			});
		};
	});
	
});