
var lastStatePanelId = null;
var nextStatePanelId = null;
var lastSelectedCareer =  "career_0";
var applyButtonEnabled = false;
var careerPanelCount = 1;

var lastStateButton = null;
var nextStateButton = null;

var actions_enabled = true;
var careersSelected = null;

function showState(stateId){

	actions_enabled = false;
	nextStatePanelId = stateId;
	
	// hide the state detail if visible
	if(lastStatePanelId!=null){
		var panelId = "state_display_"+lastStatePanelId;
		$(panelId).setStyle("display","none");
	}
	
	createStatePanel();
}

function onStatePanelHidden(){
	createStatePanel();
}

function createStatePanel(){

	applyButtonEnabled = false;	
	
	// disable apply button
	var currentApplyButton = $$("#state_display_"+nextStatePanelId+" div.apply_button");
	currentApplyButton.setStyle("display","none");	

	var panelId = "state_display_"+nextStatePanelId;
	//$(panelId).setStyle("display","block");
	$(panelId).reveal();
	lastStatePanelId = nextStatePanelId;
	
	onPanelDisplayed();
}

function onPanelDisplayed(){
	actions_enabled = true;
}

function hideCareerSelectionPanels(){
	onCareersSelectionHidden();
}

function onCareersSelectionHidden(){
	careerPanelHiddenCount++;
	if(careerPanelHiddenCount==careerPanelCount){
		showCareerForm();
	}	
}

function showCareerForm(){

	actions_enabled = false;
	var selectedCount = careersSelected.length;
	var careerCount = careerData.length;
	var posValue = new Array();

	for(var i = 0; i<careerCount; i++) {
		var selCareer = careerData[i];
		if(careersSelected["career_"+i] == true){
			posValue.push(selCareer);			
		}
	}

	var posValue = posValue.toString();	
	
	$('Position').set('value',posValue);
	
	var panelId = "careers_panel";
	$(panelId).setStyle("display","none");
	
	var panelId = "form_panel";
	//$(panelId).setStyle("display","block");
	$(panelId).reveal();
	
	
}

function highlightStateButton(newButton){
	nextStateButton = newButton;
	if(lastStateButton!=null){
		lastStateButton.removeClass("button_active");
	}
	//nextStateButton.highlight('#ece8e3');
	nextStateButton.addClass("button_active");
	lastStateButton = nextStateButton;
}

function check_val() {
	var ins = document.getElementsByName('career')
	var i;
	var vals = new Array();
	for(i=0;i<ins.length;i++) {
		var id = ins[i].get('id');
		vals[id]=ins[i].get('checked');
	}
	return vals;
}



window.addEvent('domready', function() {

	// create state button listeners
	var stateCount = stateData.length;
	for(var i = 0; i<stateCount; i++){
		var stateButton = $("state_button_"+stateData[i]);
		stateButton.bId = stateData[i];
		stateButton.addEvent("click",function(event){
			if(actions_enabled){
				highlightStateButton(this);
				showState(this.bId);
			}
		});
	}
	
	// listen to career radio events
	$$('input.career_radio').addEvent("click",function(){
		//lastSelectedCareer = this.id;
		//console.log(this.get('value'));
		
		careersSelected = check_val();
		
		if(!applyButtonEnabled){
			// enable apply button
			var currentApplyButton = $$("#state_display_"+lastStatePanelId+" div.apply_button");
			currentApplyButton.setStyle("display","block");	
			applyButtonEnabled = true;
		}
	});
	
	// listen to apply button events
	$$('div.apply_button').addEvent("click",function(){
		careerPanelHiddenCount = 0;
		hideCareerSelectionPanels();
	});
	
	// setup accordion	
	var accordion = new Accordion($$('.acc_toggle'), $$('.acc_content'), {
	    alwaysHide:true
	});
	
});