//Copyright Chris Tausanovitch 2007

selected = "name"
fields = new Array("name","bio","news","resume","video","portfolio","links","contact")

inprogress=1

addLoadEvent(loadup)

function loadup() {
	Morph("name",{'style':{'top':'-250px'}})
	setStyle("namepanel",{'opacity':1})
	//Opacity("namepanel",to=1)
	slideDown("namepanel",{afterFinish: function() {
		Opacity("namecontent",to=1)
		inprogress=0
		}})
	panel = {}
	panel['namepanel'] = getElement('namepanel') 
	panel['biopanel'] = removeElement('biopanel')
	panel['newspanel'] = removeElement('newspanel')
	panel['resumepanel'] = removeElement('resumepanel')
	panel['linkspanel'] = removeElement('linkspanel')
    panel['videopanel'] = removeElement('videopanel')
    panel['portfoliopanel'] = removeElement('portfoliopanel')
    panel['contactpanel'] = removeElement('contactpanel')
	}

function changepage(elem) {
	if (elem != selected && inprogress !=1) {
		inprogress=1
		//This section moves things around to accomodate a new box size/shape
		//We use MochiKit for animations
		panelwidth = parseInt(getStyle(panel[elem + "panel"],"width"))
		panelheight = parseInt(getStyle(panel[elem + "panel"],"height"))
		buttonwidth = parseInt(getStyle(elem,"width"))
		
		removeElementClass(elem + "label","unselected")
		removeElementClass(selected,"selected")
		addElementClass(elem,"selected")
		addElementClass(selected + "label","unselected")

		Opacity(selected + "panel",{'to':0,afterFinish: function() {			
			Morph(panel[elem + "panel"],{'style':{'marginLeft':-(panelwidth + buttonwidth)/2 + buttonwidth + "px"},
			beforeSetup: function() {	
				for (i in fields) {
					Morph(fields[i],{'style':{'marginLeft':(-(panelwidth + buttonwidth)/2) + "px"}})
				}
				},
			afterFinish : function() {
				//setStyle(panel[elem + "panel"],{'height':0,'opacity':1})
				//Morph(panel[elem + "panel"],{'style':{'height':panelheight + "em"},afterFinish: function() {
									Opacity(elem + "panel")
									Opacity(elem + "content")
				//	}})

				selected = elem
				inprogress=0
			},
			beforeStart: function() {
				setStyle(selected + "content",{'opacity':0})
				swapDOM(panel[selected + "panel"],panel[elem + "panel"])

				for (i in fields) {
					Morph(fields[i],{'style':{'marginLeft':(-(panelwidth + buttonwidth)/2) + "px"}})
				}
		    }
			})
		}})
	}
}

function mouseon(elem) {
	addElementClass(elem,"over")
}

function mouseoff(elem) {
	removeElementClass(elem,"over")
}
