// Enable this when site goes live
/* function stopError() { */
/*   return true; */
/* } */
/* window.onerror = stopError; */

function changeClassByID(id, newClass) {
	identity=document.getElementById(id);
	identity.className=newClass;
}

function changeImages() {
	if (document.images) {
		for (var i=0; i<changeImages.arguments.length; i+=2) {
			document[changeImages.arguments[i]].src = changeImages.arguments[i+1];
		}

	}
}
function preloadImagesCommon(){
	if (document.images){
		var previous			= newImage("assets/images/arrow_left_on.gif");
		var next			= newImage("assets/images/arrow_right_on.gif");
		preloadFlag = true;
		}
	}


function rollover_init() {
  if (!document.getElementsByClassName) return
  var imgOriginSrc;
  var imgTemp = new Array();
  var imgarr = document.getElementsByClassName('rollover');
  for (var i = 0; i < imgarr.length; i++) {
	imgTemp[i] = new Image();
	var Src = imgarr[i].getAttribute('src');
	var splitArray = Src.split("_");
	var rawName= splitArray[0];
	var rawExt= splitArray[1];
	var splitNameArray = rawExt.split(".");
	var ext=splitNameArray[1];
	imgTemp[i].src = rawName+'_on.'+ext;
	imgarr[i].onmouseover = function() {
		var currentSrc = this.getAttribute('src');
		var splitArray = currentSrc.split("_");
		var rawName= splitArray[0];
		var rawExt= splitArray[1];
		var splitNameArray = rawExt.split(".");
		var ext=splitNameArray[1];
		imgOriginSrc = this.getAttribute('src');
		this.setAttribute('src',rawName+'_on.'+ext);
	}
	imgarr[i].onmouseout = function() {
		this.setAttribute('src',imgOriginSrc);
	}
  }
}

// Clean out focusoutline from anchors
function remove_focus(){
	if (document.links) {
		for (var i=0;i<document.links.length;i++) {
			var OriginalJSFunction = document.links[i].getAttribute("onclick");
			document.links[i].setAttribute("onclick","this.blur();" + OriginalJSFunction + ";");
		}
	}
}

function pageInit() {
	//rollover_init();
	initializeMenu('navContainer');
	//Element.toggle('navmenu');
	//remove_focus();
}

function toggleClass(id, newClass, defaultClass){
	var classTog = document.getElementById(id);
	var currentClass = classTog.className;
	if (currentClass != newClass){
			classTog.className=newClass;
		}
  else {
			classTog.className=defaultClass;
		}
} 

function MM_initTimelines() {
    //MM_initTimelines() Copyright 1997 Macromedia, Inc. All rights reserved.
    var ns = navigator.appName == "Netscape";
    document.MM_Time = new Array(1);
    document.MM_Time[0] = new Array(1);
    document.MM_Time["MenuOff"] = document.MM_Time[0];
    document.MM_Time[0].MM_Name = "MenuOff";
    document.MM_Time[0].fps = 30;
    document.MM_Time[0][0] = new String("behavior");
    document.MM_Time[0][0].frame = 7;
    document.MM_Time[0][0].value = "closeMenu()";
    document.MM_Time[0].lastFrame = 7;
    for (i=0; i<document.MM_Time.length; i++) {
        document.MM_Time[i].ID = null;
        document.MM_Time[i].curFrame = 0;
        document.MM_Time[i].delay = 1000/document.MM_Time[i].fps;
    }
}



function MM_timelineGoto(tmLnName, fNew, numGotos) { //v2.0
  //Copyright 1997 Macromedia, Inc. All rights reserved.
  var i,j,tmLn,props,keyFrm,sprite,numKeyFr,firstKeyFr,lastKeyFr,propNum,theObj;
  if (document.MM_Time == null) MM_initTimelines(); //if *very* 1st time
  tmLn = document.MM_Time[tmLnName];
  if (numGotos != null)
    if (tmLn.gotoCount == null) tmLn.gotoCount = 1;
    else if (tmLn.gotoCount++ >= numGotos) {tmLn.gotoCount=0; return}
  jmpFwd = (fNew > tmLn.curFrame);
  for (i = 0; i < tmLn.length; i++) {
    sprite = (jmpFwd)? tmLn[i] : tmLn[(tmLn.length-1)-i]; //count bkwds if jumping back
    if (sprite.charAt(0) == "s") {
      numKeyFr = sprite.keyFrames.length;
      firstKeyFr = sprite.keyFrames[0];
      lastKeyFr = sprite.keyFrames[numKeyFr - 1];
      if ((jmpFwd && fNew<firstKeyFr) || (!jmpFwd && lastKeyFr<fNew)) continue; //skip if untouchd
      for (keyFrm=1; keyFrm<numKeyFr && fNew>=sprite.keyFrames[keyFrm]; keyFrm++);
      for (j=0; j<sprite.values.length; j++) {
        props = sprite.values[j];
        if (numKeyFr == props.length) propNum = keyFrm-1 //keyframes only
        else propNum = Math.min(Math.max(0,fNew-firstKeyFr),props.length-1); //or keep in legal range
        if (sprite.obj != null) {
          if (props.prop2 == null) sprite.obj[props.prop] = props[propNum];
          else        sprite.obj[props.prop2][props.prop] = props[propNum];
      } }
    } else if (sprite.charAt(0)=='b' && fNew == sprite.frame) eval(sprite.value);
  }
  tmLn.curFrame = fNew;
  if (tmLn.ID == 0) eval('MM_timelinePlay(tmLnName)');
}

function MM_timelinePlay(tmLnName, myID) { //v1.2
  //Copyright 1997 Macromedia, Inc. All rights reserved.
  var i,j,tmLn,props,keyFrm,sprite,numKeyFr,firstKeyFr,propNum,theObj,firstTime=false;
  if (document.MM_Time == null) MM_initTimelines(); //if *very* 1st time
  tmLn = document.MM_Time[tmLnName];
  if (myID == null) { myID = ++tmLn.ID; firstTime=true;}//if new call, incr ID
  if (myID == tmLn.ID) { //if Im newest
    setTimeout('MM_timelinePlay("'+tmLnName+'",'+myID+')',tmLn.delay);
    fNew = ++tmLn.curFrame;
    for (i=0; i<tmLn.length; i++) {
      sprite = tmLn[i];
      if (sprite.charAt(0) == 's') {
        if (sprite.obj) {
          numKeyFr = sprite.keyFrames.length; firstKeyFr = sprite.keyFrames[0];
          if (fNew >= firstKeyFr && fNew <= sprite.keyFrames[numKeyFr-1]) {//in range
            keyFrm=1;
            for (j=0; j<sprite.values.length; j++) {
              props = sprite.values[j]; 
              if (numKeyFr != props.length) {
                if (props.prop2 == null) sprite.obj[props.prop] = props[fNew-firstKeyFr];
                else        sprite.obj[props.prop2][props.prop] = props[fNew-firstKeyFr];
              } else {
                while (keyFrm<numKeyFr && fNew>=sprite.keyFrames[keyFrm]) keyFrm++;
                if (firstTime || fNew==sprite.keyFrames[keyFrm-1]) {
                  if (props.prop2 == null) sprite.obj[props.prop] = props[keyFrm-1];
                  else        sprite.obj[props.prop2][props.prop] = props[keyFrm-1];
        } } } } }
      } else if (sprite.charAt(0)=='b' && fNew == sprite.frame) eval(sprite.value);
      if (fNew > tmLn.lastFrame) tmLn.ID = 0;
  } }
}

function MM_timelineStop(tmLnName) { //v1.2
  //Copyright 1997 Macromedia, Inc. All rights reserved.
  if (document.MM_Time == null) MM_initTimelines(); //if *very* 1st time
  if (tmLnName == null)  //stop all
    for (var i=0; i<document.MM_Time.length; i++) document.MM_Time[i].ID = null;
  else document.MM_Time[tmLnName].ID = null; //stop one
}


function closeMenu() {
    var navmenu = document.getElementById('navmenu');
	navmenu.style.visibility = "hidden";

}

function initializeMenu(menuId,actuatorID) {
    var menu = document.getElementById(menuId);
    var navmenu = document.getElementById('navmenu');
    menu.onmouseout = function() {
      navmenu.style.visibility = "hidden";
		MM_timelineGoto('MenuOff','1');
		MM_timelinePlay('MenuOff');
    }
    menu.onmouseover = function() {
          navmenu.style.visibility = "visible";
		MM_timelineStop('MenuOff');
	}

}


// Open window to size for Calculator View
function openImage(image){
		myImage=window.open(image,"Image","toolbar=no,scrollbars=no,directories=no,status=no,menubar=no,resizable=no,width=500,height=500");
		myImage.focus();
		 if (myImage.opener == null) myImage.opener = window;
				myImage.opener.name = "mainWindow";
		return true
	}

