var Forms = {

	init: function() {
		Forms.observeTabs();
		Forms.observeForms();
	},
	
	/* Tabs */
	observeTabs: function(){
		Forms.tabs = $$('.tab');		
		Forms.tabs.invoke('observe', 'click', Forms.onTabClick);				
		Forms.tabPages = $$('#forms-main div');
		Forms.tabPages.invoke('hide');
		// Show default
		Forms.currentPage = $('page-default');
		Forms.showCurrentPage();
	},
	
	onTabClick: function(e){		
		var element = e.findElement("div");		
		var target = "page-"+element.getAttribute('data-target');	
		Forms.setCurrentPage(target);
	},
	
	setCurrentPage: function(element){
		var delay = 0;
		if(Forms.currentPage){
			delay = 0.6;
			Forms.currentPage.fade({duration:0.6});
		}
		Forms.currentPage = $(element);
		Forms.showCurrentPage.delay(delay);
	},
	
	setTabState: function (tabId, name, toSave, isComplete) {
		if (toSave) {
			$(tabId).setStyle (
				{ backgroundColor: 'red' }
			); 
		} else 
		if (isComplete) {
			$(tabId).setStyle (
				{ backgroundColor: '#22644A' }
			); 
		} else {
			$(tabId).setStyle (
				{ backgroundColor: 'black' }
			); 
		}
		
		$(tabId).isComplete = isComplete;
	},
	
	setFormSaved: function (tabId) {
		Forms.setTabState(tabId, null, false, $(tabId).isComplete);
	},
	
	showCurrentPage: function(){
		if (Forms.currentPage) {
			Forms.currentPage.appear({duration:0.6});
		}
	},
	
	/* Forms */
	observeForms: function(){
		
		$('innovation-form').observe("submit", Forms.onInnovationFormSubmit);
        $('procurement-form').observe("submit", Forms.onProcurementFormSubmit);
		$('waste-form').observe("submit", Forms.onWasteFormSubmit);
        $('water-form').observe("submit", Forms.onWaterFormSubmit);
		$('energy-form').observe("submit", Forms.onEnergyFormSubmit);
		
		try
		{
			handleWaterFormEdit(false);	
			handleWasteFormEdit(false);		
			handleEnergyFormEdit(false);
			handleInnovationFormEdit(false);
			handleProcurementFormEdit(false);
		} catch (ex) {alert(ex);}
		
		if ($('biodiversity-form') != null && $('biodiversity-form') != undefined)
		{
			$('biodiversity-form').observe("submit", Forms.onBiodiversityFormSubmit);
			handleBioDiversityFormEdit(false);
		}
		
	},
	
	onWaterFormSubmit: function(e){
		e.stop();
		$('water-form').request({
			onComplete: Forms.onWaterFormSubmitComplete,
			onException: Forms.exception
		});
	},
	
	onWaterFormSubmitComplete: function(r) {
		Forms.currentPage.hide();
		Forms.currentPage = $('page-default');
		Forms.showCurrentPage();
		var html = "<p>"+r.responseText+"</p><p>Please proceed in filling out another form.</p>";
		$('page-default').update(html);
		Forms.setFormSaved('tabWater');		
	},
	
	onEnergyFormSubmit: function(e){
		e.stop();
		$('energy-form').request({
			onComplete: Forms.onEnergyFormSubmitComplete,
			onException: Forms.exception
		});
	},
	
	onBiodiversityFormSubmit: function(e){
		e.stop();
		$('biodiversity-form').request({
			onComplete: Forms.onBiodiversityFormSubmitComplete,
			onException: Forms.exception
		});
	},
	
	onEnergyFormSubmitComplete: function(r) {
		Forms.currentPage.hide();
		Forms.currentPage = $('page-default');
		Forms.showCurrentPage();
		var html = "<p>"+r.responseText+"</p><p>Please proceed in filling out another form.</p>";
		$('page-default').update(html);
		Forms.setFormSaved('tabEnergy');		
	},
		
	onWasteFormSubmit: function(e){
		e.stop();
		$('waste-form').request({
			onComplete: Forms.onWasteFormSubmitComplete,
			onException: Forms.exception
		});
	},
	
	onWasteFormSubmitComplete: function(r){
		Forms.currentPage.hide();
		Forms.currentPage = $('page-default');
		Forms.showCurrentPage();
		var html = "<p>"+r.responseText+"</p><p>Please proceed in filling out another form.</p>";
		$('page-default').update(html);
		Forms.setFormSaved('tabWaste');		
	},
	
	onProcurementFormSubmit: function(e){
		e.stop();
		$('procurement-form').request({
			onComplete: Forms.onProcurementFormSubmitComplete,
			onException: Forms.exception
		});
	},
	
	onProcurementFormSubmitComplete: function(r){
		Forms.currentPage.hide();
		Forms.currentPage = $('page-default');
		Forms.showCurrentPage();
		var html = "<p>"+r.responseText+"</p><p>Please proceed in filling out another form.</p>";
		$('page-default').update(html);
		Forms.setFormSaved('tabProcurement');		
	},
	
	onInnovationFormSubmit: function(e){
		e.stop();
		$('innovation-form').request({
			onComplete: Forms.onInnovationFormSubmitComplete,
			onException: Forms.exception
		});
	},
	
	onInnovationFormSubmitComplete: function(r){
		Forms.currentPage.hide();
		Forms.currentPage = $('page-default');
		Forms.showCurrentPage();
		var html = "<p>"+r.responseText+"</p><p>Please proceed in filling out another form.</p>";
		$('page-default').update(html);
		Forms.setFormSaved('tabInnovationSED');		
	},	
	
	onBiodiversityFormSubmitComplete: function(r){
		Forms.currentPage.hide();
		Forms.currentPage = $('page-default');
		Forms.showCurrentPage();
		var html = "<p>"+r.responseText+"</p><p>Please proceed in filling out another form.</p>";
		$('page-default').update(html);
		Forms.setFormSaved('tabBioDiversity');		
	},	
	
	exception: function(r, e){
		alert(e.message);
	}
};

function getBusinessType(){
	if($('utype').value == 'property'){
		$('cats').show();
	}else{
		$('cats').hide();
	}
	if($('utype').value == 'partner'){
		$('ctypes').show();
	}else{
		$('ctypes').hide();
	}
	if($('utype').value == 'business'){
		$('stypes').show();
	}else{
		$('stypes').hide();
	}
}