
var lastStatePanelId = null;
var nextStatePanelId = null;
var lastStorePanelId = null;
var nextStorePanelId = null;

var lastStateButton = null;
var nextStateButton = null;
var lastStoreButton = null;
var nextStoreButton = null;

var actions_enabled = true;

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");
	}
	
	// hide the store detail if visible
	if(lastStorePanelId!=null){
		var panelId = "store_display_"+lastStorePanelId;
		$(panelId).setStyle("display","none");
	}
	
	// clear the store button highlight
	if(lastStoreButton!=null){
		lastStoreButton.removeClass("button_active");
	}
	
	createStatePanel();

}

function createStatePanel(){
	
	var panelId = "state_display_"+nextStatePanelId;
	//$(panelId).setStyle("display","block");
	$(panelId).reveal();
	lastStatePanelId = nextStatePanelId;
	
	onPanelDisplayed();

}

function onPanelDisplayed(){
	actions_enabled = true;
}

function showStore(storeId){

	actions_enabled = false;
	nextStorePanelId = storeId;
	
	// hide the store detail if visible
	if(lastStorePanelId!=null){
		var panelId = "store_display_"+lastStorePanelId;
		$(panelId).setStyle("display","none");
	}
	
	createStorePanel();
}

function onStorePanelHidden(){
	createStorePanel();
}

function createStorePanel(){
	
	var panelId = "store_display_"+nextStorePanelId;
	//$(panelId).setStyle("display","block");
	$(panelId).reveal();
	lastStorePanelId = nextStorePanelId;
	
	onPanelDisplayed();
}

function highlightStateButton(newButton){
	nextStateButton = newButton;
	if(lastStateButton!=null){
		lastStateButton.removeClass("button_active");
	}
	nextStateButton.addClass("button_active");
	lastStateButton = nextStateButton;
}

function highlightStoreButton(newButton){
	nextStoreButton = newButton;
	if(lastStoreButton!=null){
		lastStoreButton.removeClass("button_active");
	}
	nextStoreButton.addClass("button_active");
	lastStoreButton = nextStoreButton;
}

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);
			}
		});
	}
	
	// create store button listeners
	for(var i = 0; i<storeCount; i++){
		var storeButton = $("store_button_"+i);
		storeButton.bId = i;
		storeButton.addEvent("click",function(event){
			if(actions_enabled){
				highlightStoreButton(this);
				showStore(this.bId);
			}
		});
	}
	
});