// VARS ##############################################
var slide_in_speed = 300; // millisecond duration of slide into view
var slide_out_speed = 200; // millisecond duration of slide out of view
var curGlideLyr;
var robotX=0;
var robotY=0;


// BEGIN FUNCTIONS ####################################
function init() {
   //hideLayer('filmstrip');
   robotX = findPosX( document.getElementById('robots') );
   robotY = findPosY( document.getElementById('robots') );
   initLayers( robotX, robotY );
   //initFilmStrip( robotX, robotY );
}

function validate()
{
   bool = true;
   msg = "";
   /* if( document.forms[0].firstName.value == "" )
   {
      bool = false;
      msg += "You must enter your first name.\r";
   }
   if( document.forms[0].lastName.value == "" )
   {
      bool = false;
      msg += "You must enter your last name.\r";
   } */
   
   if( document.forms[0].email.value == "" )
   {
      alert("You must enter your email address.");
      document.forms[0].email.focus();
      return false;
   }
   if( document.forms[0].email.value.indexOf('@') == -1 )
   {
      alert("Email does not appear to be Valid.");
      document.forms[0].email.focus();
      return false;
   }
   if( document.forms[0].email.value.indexOf('.') == -1 )
   {
      alert("Email does not appear to be Valid.");
      document.forms[0].email.focus();
      return false;
   }
   if( document.forms[0].email.value.indexOf('.') > -1
            && document.forms[0].email.value.substring( document.forms[0].email.value.indexOf('.'), document.forms[0].email.value.length-1 ).length < 2 )
   {
      alert("Email does not appear to be Valid.");
      document.forms[0].email.focus();
      return false;
   }
   if(!bool)
   {
      alert(msg);
      return false;
   }
   else
   {
      return true;
   }
  
}

function initLayers(x,y) {
   var glideLyrs = new Array();
   
   // Set up your layers here
   // arguments: id, left=0 (offset calculated based on width), top
   glideLyrs[0] = new dynObj('bio', 0, y+25);
   glideLyrs[1] = new dynObj('news', 0, y+25);
   glideLyrs[2] = new dynObj('calendar', 0, y+25);
   glideLyrs[3] = new dynObj('photos', 0, y+20);
   glideLyrs[4] = new dynObj('discography', 0, y+25);
   glideLyrs[5] = new dynObj('friends', 0, y+25);
   glideLyrs[6] = new dynObj('presskit', 0, y+25);
   
   for (var i=0; glideLyrs[i]; i++) {
      // hold original left position
      //glideLyrs[i].xOff = -(glideLyrs[i].w + 10);
      glideLyrs[i].xOff = x+750;
      glideLyrs[i].shiftTo( glideLyrs[i].xOff, glideLyrs[i].y );
      glideLyrs[i].show();
   }
   
   //slideEm('glideDiv0'); // Slide first one into view
}

function initFilmStrip(x,y) {
   el = document.getElementById('filmstrip');
   el.style.left = robotX + 85;
   el.style.top = robotY - 65;
}

function slideEm(id) {
   var oldLyr, newLyr;
   
   // if link for current layer clicked, slide it out of view
   if (curGlideLyr == id) {
      if(id=='photos') { hideLayer('filmstrip'); }
      oldLyr = dynObj.getInstance(curGlideLyr);
      oldLyr.slideTo(oldLyr.xOff, null, slide_out_speed, -1);
      curGlideLyr = ""; return;
   }

   // if layer currently in view, set up to slide new one into view
   // after current one slides away
   if (curGlideLyr) {
      if(curGlideLyr=='photos') { hideLayer('filmstrip'); } else if(id=='photos') { showLayer('filmstrip'); }
      oldLyr = dynObj.getInstance(curGlideLyr);
      oldLyr.onSlideEnd = function() {
      	dynObj.holder[curGlideLyr].slideTo(robotX+70, null, slide_in_speed, -1);
      	this.onSlideEnd = function() { if (this.el) this.el = null }
      }
      // slide current layer out of view
      oldLyr.slideTo(oldLyr.xOff, null, slide_out_speed, -1);
   } else {
      if(id=='photos') { showLayer('filmstrip'); }
      // if no layer currently in view
      newLyr = dynObj.getInstance(id);
      newLyr.slideTo(robotX+70, null, slide_in_speed, -1);
   }
   
   curGlideLyr = id;
}

function findPosX(obj) {
   var curleft = 0;
   if(obj.offsetParent)
   while(1)
   {
      curleft += obj.offsetLeft;
      if(!obj.offsetParent)
      {
         break;
      }
      obj = obj.offsetParent;
   }
   else if(obj.x)
   {
      curleft += obj.x;
   }
   return curleft;
}


function findPosY(obj) {
   var curtop = 0;
   if(obj.offsetParent)
   while(1)
   {
      curtop += obj.offsetTop;
      if(!obj.offsetParent)
      {
         break;
      }
      obj = obj.offsetParent;
   }
   else if(obj.y)
   {
      curtop += obj.y;
   }
   return curtop;
}


function showLayer(id) {
   document.getElementById(id).style.visibility = 'visible'; 
}

function hideLayer(id) {
   document.getElementById(id).style.visibility = "hidden"; 
}