// FILE: lac.js
// CREATED: 02/20/2007
// MODIFIED: 02/20/2007
// AUTHOR: Christopher W. DeLaurentis
// EMAIL: cwd@thoughtchamber.com
// MODIFIED-BY: Christopher W. DeLaurentis
// NOTES: 

//CWD----------------------------------------------------------------------------------------------
function checkEmail(form){
   var reg = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/;
   var address = form.email_address.value;
   if(reg.test(address) == false) {
      alert('Invalid Email Address');
      return false;
   }else{
   		form.submit();
   }

}
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;
}
//CWD--------------------------------------------

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;
}
//CWD--------------------------------------------

function makePageCall(strURL,strParams,fLoading,fComplete)
{
  var myAjax=new Ajax.Request( 
      strURL, 
      { 
          parameters: strParams,
          method: 'get', 
          onLoading: fLoading,
          onComplete: fComplete
      }
  );
}
//CWD--------------------------------------------

function setNavRolls(oParent)
{
  if(!oParent)
    oParent=document.body;

  var aButtons=document.getElementsByClassName("nav_Button",oParent);

  for(var i=0;i<aButtons.length;++i)
  {
    aButtons[i].observe('mouseover',function(event)
        {
          var oImg=Event.element(event);
          str=oImg.src;
          var iLen=(str.length-"_OFF.gif".length);
          str=str.substring(0,iLen);
          oImg.src=str+"_ON.gif";
        });

    aButtons[i].observe('mouseout',function(event)
        {
          var oImg=Event.element(event);
          str=oImg.src;
          var iLen=(str.length-"_ON.gif".length);
          str=str.substring(0,iLen);
          oImg.src=str+"_OFF.gif";
        });
  }
}
//CWD--------------------------------------------

function setFooterRolls(oParent)
{
  if(!oParent)
    oParent=document.body;

  var aButtons=document.getElementsByClassName("footerText",oParent);

  for(var i=0;i<aButtons.length;++i)
  {
    aButtons[i].observe('mouseover',function(event)
        {
          Event.element(event).className="footerText_Over";
        });

    aButtons[i].observe('mouseout',function(event)
        {
          Event.element(event).className="footerText";
        });
  }
}
//CWD--------------------------------------------

function setMenuSelectionCSS(oParentDiv,strFrom,strTo,oDiv)
{
  var aItems=document.getElementsByClassName(strFrom,oParentDiv);

  for(var i=0;i<aItems.length;++i)
    aItems[i].className=strTo;

  if(oDiv)
    oDiv.className=strFrom;
}
//CWD--------------------------------------------

function toggleMenu(strMenuDiv,strMenuArrow)
{
  var oMenu=$(strMenuDiv);
  var oImg=$(strMenuArrow);


  var aSets=document.getElementsByClassName("menuItemsSetDiv");
  
  for(var i=0;i<aSets.length;++i)
  {
    if(aSets[i].id!=strMenuDiv)
      new Effect.BlindUp(aSets[i]);
  }

  aSets=document.getElementsByClassName("menuItemArrow");
  
  for(var i=0;i<aSets.length;++i)
  {
    if(aSets[i].id!=strMenuArrow)
      aSets[i].src="/images/menuArrow_Right.gif";
  }

  Effect.toggle(oMenu, "blind");

  if(oMenu.style.display=="none")
    oImg.src="/images/menuArrow_Down.gif";
  else
    oImg.src="/images/menuArrow_Right.gif";

}
//CWD--------------------------------------------

function createFloatingLayer(strDiv)
{
  var oDiv=$(strDiv);

  if($("careerLocation"))
  {
    Element.hide($("careerLocation"));
    Element.hide($("careerDepartment"));
    Element.hide($("careerPosition"));
  }

  if(oDiv)
    return oDiv;

  var oMain=$("mainContentDiv");
  var x=findPosX(oMain);
  var y=findPosY(oMain);
  var str="position: absolute; z-index: 11000; text-align: center; width: 810px; left: "+x+"px; top: "+y+"px; height: "+oMain.getHeight();

  oDiv=Builder.node("div", { id: strDiv, name: strDiv, className: "contentArea", style: str });
  document.body.appendChild(oDiv);
  return oDiv;
}
//CWD--------------------------------------------

function hideFloatingLayer(strDiv)
{
//  Element.hide(strDiv);
//  new Effect.Puff(strDiv);
  new Effect.Fade(strDiv);

  if($("careerLocation"))
  {
    Element.show($("careerLocation"));
    Element.show($("careerDepartment"));
    Element.show($("careerPosition"));
  }
}
//CWD--------------------------------------------

function showMsg(strDiv,strMsg)
{
  var oDiv=$(strDiv);
  oDiv.innerHTML=strMsg;
  Element.show(oDiv);
  new Effect.Highlight(oDiv);
}
//CWD--------------------------------------------

//CWD----------------------------------------------------------------------------------------------

function loadHomePage(iPageID)
{
  var strURL="/index.jsp";

  if(iPageID)
    strURL=strURL+"?PAGEID="+iPageID;

  document.location=strURL;
}

function loadAboutUs(iPageID)
{
  var strURL="/aboutUs.jsp";

  if(iPageID)
    strURL=strURL+"?PAGEID="+iPageID;

  document.location=strURL;
}
//CWD--------------------------------------------


function loadCollections(iPageID)
{
  var strURL="collections.jsp";

  if(iPageID)
    strURL=strURL+"?PAGEID="+iPageID;

  document.location=strURL;
}
//CWD--------------------------------------------

function loadStores(iPageID,blnShowAll)
{
  var strURL="stores.jsp?&TYPE=";

  if(blnShowAll)
    strURL=strURL+"all";

  if(iPageID)
    strURL=strURL+"&PAGEID="+iPageID;


  document.location=strURL;
}
//CWD--------------------------------------------

function loadDesigner(iPageID)
{
  var strURL="designer.jsp";

  if(iPageID)
    strURL=strURL+"?PAGEID="+iPageID;

  document.location=strURL;
}
//CWD--------------------------------------------

function loadCareers(iPageID)
{
  var strURL="careers.jsp";

  if(iPageID)
    strURL=strURL+"?PAGEID="+iPageID;

  document.location=strURL;
}
//CWD--------------------------------------------

function loadPress(iPageID)
{
  var strURL="press.jsp";

  if(iPageID)
    strURL=strURL+"?PAGEID="+iPageID;

  document.location=strURL;
}
//CWD--------------------------------------------

function loadWhatsNew(iPageID)
{
  var strURL="whatsNew.jsp";

  if(iPageID)
    strURL=strURL+"?PAGEID="+iPageID;

  document.location=strURL;
}
//CWD--------------------------------------------

function loadSales(iPageID)
{
  var strURL="sales.jsp";

  if(iPageID)
    strURL=strURL+"?PAGEID="+iPageID;

  document.location=strURL;
}
//CWD--------------------------------------------


function loadPage(iTypeID,iPageID,blnShowLoading)
{
  var strURL="";
  iCurrentPageID=iPageID
  iCurrentTypeID=iTypeID;

  switch(iTypeID)
  {
    case(1):
    {
      strURL="/CMS/templateHome.jsp";
      break;
    }
    case(2):
    {
      strURL="/CMS/templateCollection.jsp";
      break;
    }
    case(7):
    {
      strURL="/CMS/templateAboutUs.jsp";
      break;
    }
    case(8):
    {
      //strURL="/CMS/templateStores.jsp";
      loadStores(iPageID);
      break;
    }
    default:
    {
    }
  }

  var fLoading=function() {};

  if(blnShowLoading)
  {
    fLoading=function()
    {
      $("mainContentDiv").innerHTML=('<div style="text-align: center;padding-top:10px;"><img src="/images/indicator_snake.gif" alt="" /></div>')
    };
  }

  var fFunc=function(ret) 
      {
        var oDiv=$("mainContentDiv");
        //Element.hide(oDiv);
        oDiv.innerHTML=ret.responseText;
        //Effect.toggle(oDiv, 'appear' );
      };

  makePageCall(strURL,"PAGEID="+iPageID,fLoading,fFunc);
}
//CWD--------------------------------------------

function loadMenu(iPageTypeID,iPageID,blnShowLoading)
{
  var fLoading=function() {};

  if(blnShowLoading)
  {
    fLoading=function()
    {
      $("menuDiv").innerHTML=('<div style="text-align: center;padding-top:10px;"><img src="/images/indicator_snake.gif" alt="" /></div>')
    };
  }

  var fFunc=function(ret) 
      {
        var oDiv=$("menuDiv");
        Element.hide(oDiv);
        oDiv.innerHTML=ret.responseText;
        Effect.toggle(oDiv, 'appear' );
        setNavRolls(oDiv);
      };

  makePageCall("fetchMenu.jsp","PAGETYPEID="+iPageTypeID+"&PAGEID="+iPageID,fLoading,fFunc);
}

//CWD--------------------------------------------


function showPrivacy()
{
  var oDiv=createFloatingLayer("privacyFormDiv");
  
  var fLoading=function() { };

  var fComplete=function(ret)
    {
      var oPrivacyDiv=$("privacyFormDiv");
      oPrivacyDiv.innerHTML=ret.responseText;
      setNavRolls(oPrivacyDiv);
      Element.show(oPrivacyDiv);
      oSearchDiv.style.filter="alpha(opacity=100)"; //CWD-- ie quick fix for scriptaculous puff effect
    };

  makePageCall("/CMS/mainPagePrivacy.jsp","",fLoading,fComplete);
}
//CWD--------------------------------------------

function executeSearch()
{
  var fLoading=function() { };
  var strParams="MODE=1&VALUE="+escape($F("searchText"))+"&TYPE="+$F("selectSearchType");

  var fComplete=function(ret)
    {
      var oSearchDiv=$("searchFormDiv");
      oSearchDiv.innerHTML=ret.responseText;
      setNavRolls(oSearchDiv);
      Element.show(oSearchDiv);
      oSearchDiv.style.filter="alpha(opacity=100)"; //CWD-- ie quick fix for scriptaculous puff effect
    };

  makePageCall("/search.jsp",strParams,fLoading,fComplete);
}
//CWD--------------------------------------------


function loadSearch()
{
  var oDiv=createFloatingLayer("searchFormDiv");
  
  var fLoading=function() { };

  var fComplete=function(ret)
    {
      var oSearchDiv=$("searchFormDiv");
      oSearchDiv.innerHTML=ret.responseText;
      $("searchText").focus();
      setNavRolls(oSearchDiv);
      Element.show(oSearchDiv);
      oSearchDiv.style.filter="alpha(opacity=100)"; //CWD-- ie quick fix for scriptaculous puff effect
    };

  makePageCall("/search.jsp","",fLoading,fComplete);
}
//CWD--------------------------------------------

function loadLogin()
{
  if((g_iSiteUserID!=null)&&(g_iSiteUserID!=-1))
  {
    alert("You're already logged in!");
    return;
  }

  var oDiv=createFloatingLayer("loginFormDiv");

  if($("signUpFormDiv"))
    Element.hide("signUpFormDiv");

  var fLoading=function() { };

  var fComplete=function(ret)
    {
      var oLoginDiv=$("loginFormDiv");
      oLoginDiv.innerHTML=ret.responseText;
      setNavRolls(oLoginDiv);
      Element.show(oLoginDiv);
      oLoginDiv.style.filter="alpha(opacity=100)"; //CWD-- ie quick fix for scriptaculous puff effect
    };

  makePageCall("/login.jsp","",fLoading,fComplete);
}
//CWD--------------------------------------------

function loginUser()
{
  var strEmail=$F("loginEmail").strip();
  var strPassword=$F("loginPassword").strip();


  var fLoading=function() { };

  var fComplete=function(ret)
    {
      var oLoginDiv=$("loginFormDiv");
      oLoginDiv.innerHTML=ret.responseText;
      Element.show(oLoginDiv);
      oLoginDiv.style.filter="alpha(opacity=100)"; //CWD-- ie quick fix for scriptaculous puff effect
      g_iSiteUserID=parseInt($("loginUserIDDiv").innerHTML);

      if(g_iSiteUserID==-1)
        loadLogin();
      else
        setTimeout("new Effect.Puff('loginFormDiv')",1000);
    };

  var strParams="MODE=1&EMAIL="+strEmail+"&PASSWORD="+strPassword;

  makePageCall("/login.jsp",strParams,fLoading,fComplete);
}
//CWD--------------------------------------------

function loadSignUp()
{
  if((g_iSiteUserID!=null)&&(g_iSiteUserID!=-1))
  {
    alert("You're already signed up!");
    return;
  }

  var oDiv=createFloatingLayer("signUpFormDiv");

  if($("loginFormDiv"))
    Element.hide("loginFormDiv");

  var fLoading=function() { };

  var fComplete=function(ret)
    {
      var oSignUpDiv=$("signUpFormDiv");
      oSignUpDiv.innerHTML=ret.responseText;
      setNavRolls(oSignUpDiv);
      Element.show(oSignUpDiv);
      oSignUpDiv.style.filter="alpha(opacity=100)"; //CWD-- ie quick fix for scriptaculous puff effect
    };

  makePageCall("/signUp.jsp","",fLoading,fComplete);
}
//CWD--------------------------------------------

function signUpUser()
{
  var strFirstName=$F("signUpFirstName").strip();
  var strLastName=$F("signUpLastName").strip();
  var strEmail=$F("signUpEmail").strip();
  var strPassword=$F("signUpPassword").strip();
  var strConfirmPassword=$F("signUpConfirmPasword").strip();

  var strAddress=$F("signUpAddress").strip();
  var strCity=$F("signUpCity").strip();
  var strState=$F("signUpState").strip();
  var strZip=$F("signUpZip").strip();
  var strPhone=$F("signUpPhone1").strip()+$F("signUpPhone2").strip()+$F("signUpPhone3").strip();


  var filter=/^([\w-]+(?:\.[\w-]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/i

/*
  if(strFirstName=="")
  {
    showMsg("signUpMsgDiv","Please enter a first name");
    $("signUpFirstName").focus();
    return;
  }

  if(strLastName=="")
  {
    showMsg("signUpMsgDiv","Please enter a last name");
    $("signUpLastName").focus();
    return;
  }
*/
  if((strEmail=="")||(!filter.test(strEmail)))
  {
    showMsg("signUpMsgDiv","Please enter a valid email address");
    $("signUpEmail").focus();
    return;
  }

  if((strPassword=="")||(strPassword!=strConfirmPassword))
  {
    showMsg("signUpMsgDiv","Please enter a valid password");
    $("signUpPassword").focus();
    return;
  }

/*
  if(strAddress=="")
  {
    showMsg("signUpMsgDiv","Please enter an address");
    $("signUpAddress").focus();
    return;
  }
*/

  var fLoading=function() { };

  var fComplete=function(ret)
    {
      var oSignUpDiv=$("signUpFormDiv");
      oSignUpDiv.innerHTML=ret.responseText;
      Element.show(oSignUpDiv);
      oSignUpDiv.style.filter="alpha(opacity=100)"; //CWD-- ie quick fix for scriptaculous puff effect
      g_iSiteUserID=parseInt($("signUpUserIDDiv").innerHTML);
      setTimeout("new Effect.Puff('signUpFormDiv')",1500);
    };

  var strParams="MODE=1&EMAIL="+strEmail+"&FIRSTNAME="+strFirstName+"&LASTNAME="+strLastName+"&PASSWORD="+strPassword+"&ADDRESS="+strAddress+"&CITY="+strCity+"&STATEID="+strState+"&ZIP="+strZip+"&PHONE="+strPhone;

  makePageCall("/signUp.jsp",strParams,fLoading,fComplete);
}
//CWD--------------------------------------------

function loadContactUs()
{
  var oDiv=createFloatingLayer("contactFormDiv");

  var fLoading=function() { };

  var fComplete=function(ret)
    {
      var oFormDiv=$("contactFormDiv");
      oFormDiv.innerHTML=ret.responseText;
      setNavRolls(oFormDiv);
      Element.show(oFormDiv);
      oFormDiv.style.filter="alpha(opacity=100)"; //CWD-- ie quick fix for scriptaculous puff effect
    };

  makePageCall("/contactUs.jsp","",fLoading,fComplete);
}
//CWD--------------------------------------------

function contactUs()
{
  var filter=/^([\w-]+(?:\.[\w-]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/i
  var strFirst=$F("contactFirstName").strip();

  if(strFirst=="")
  {
    $("contactFirstName").focus();
    showMsg("contactMsgDiv","Firstname is required");
    return;
  }

  var strLast=$F("contactLastName").strip();

  if(strLast=="")
  {
    $("contactLastName").focus();
    showMsg("contactMsgDiv","Lastname is required");
    return;
  }

  var strEmail=$F("contactEmail").strip();

  if((strEmail=="")||(!filter.test(strEmail)))
  {
    $("contactEmail").focus();
    showMsg("contactMsgDiv","A valid email address is required");
    return;
  }

  var strAddress=$F("contactAddress").strip();
  var strCity=$F("contactCity").strip();
  var strState=$F("contactState").strip();
  var strZip=$F("contactZip").strip();
  var strMsg=$F("contactMsg").strip();
  var strCanContact="0";

  if(document.contactForm.contactReceiveInfo[0].checked)
    strCanContact="1";

  var fLoading=function() { };

  var fComplete=function(ret)
    {
      var oFormDiv=$("contactFormDiv");
      oFormDiv.innerHTML=ret.responseText;
      Element.show(oFormDiv);
      oFormDiv.style.filter="alpha(opacity=100)"; //CWD-- ie quick fix for scriptaculous puff effect
      setTimeout("new Effect.Puff('contactFormDiv')",1000);
    };

  var strParams="MODE=1&FIRSTNAME="+strFirst+"&LASTNAME="+strLast+"&EMAIL="+strEmail+"&ADDRESS="+strAddress+"&CITY="+strCity+"&STATE="+strState+"&ZIP="+strZip+"&COMMENTS="+strMsg+"&RECEIVEINFO="+strCanContact;
  makePageCall("/contactUs.jsp",strParams,fLoading,fComplete);
}

//CWD--------------------------------------------


  window.name="LACMAIN";