
//****************************HEADER******************************
// USAGE:
// 
// The Javascript contained in this file was written for use in
// the production of Caski Absolute's web site
//
// AUTHOR:
//
// Antony Thickitt, antony.thickitt@caski.com
//
// DATE:
//
// August 2007
//
//*************************END HEADER*****************************



// Use Status Bar to give meaningful link info:


   function StatusMsg(Status)

      {

         if (Status == 'Default_Msg')

         {

            window.status = ('Caski Absolute - Intelligent Decommissioning')

         }

         else if (Status == 'Image_Msg')

         {

            window.status = ('Open Image In A New Window')            

         }

         else

         {

            window.status = (Status);

         }

         return true

      }



// Swap One image with another:

   function SwapImages(imgName, imgSrc) 

      {

         if (document.images)

            {

               if (imgSrc != "none")

                  {
     
                     document.images[imgName].src = imgSrc;

                  }
                  
            }

      }



// Open a window with no toolbars etc:

   function NewWindow(URL, Height, Width)

      {

         window.open(URL, 'Image_Window', 'Toolbar=no,width='+Width+',height='+Height+',status=no,scrollbars=no,resize=no,menubar=no')

      }



// Navigation Code

var disappeardelay=250  //menu disappear speed onMouseout (in miliseconds)
var enableanchorlink=0 //Enable or disable the anchor link when clicked on? (1=e, 0=d)
var hidemenu_onclick=1 //hide menu when user clicks within menu? (1=yes, 0=no)

var ie5=document.all
var ns6=document.getElementById&&!document.all

   function getposOffset(what, offsettype)

      {

         var totaloffset = (offsettype == "left")? what.offsetLeft : what.offsetTop;
         var parentEl = what.offsetParent;

         while (parentEl!=null)

            {

               totaloffset = (offsettype == "left")? totaloffset + parentEl.offsetLeft : totaloffset + parentEl.offsetTop;
               parentEl = parentEl.offsetParent;

            }

         return totaloffset;

      }

   function showhide(obj, e, visible, hidden)

      {

         if (ie5 || ns6)

            dropmenuobj.style.left = dropmenuobj.style.top = -500

         if (e.type == "click" && obj.visibility == hidden || e.type=="mouseover")
            
            obj.visibility = visible

         else if (e.type == "click")

            obj.visibility = hidden

      }

   function iecompattest()

      {

         return (document.compatMode && document.compatMode != "BackCompat")? document.documentElement : document.body

      }

   function clearbrowseredge(obj, whichedge)

      {

         var edgeoffset = 0

         if (whichedge == "rightedge")

            {

               var windowedge = ie5 && !window.opera? iecompattest().scrollLeft + iecompattest().clientWidth - 15 : window.pageXOffset + window.innerWidth - 15
               dropmenuobj.contentmeasure = dropmenuobj.offsetWidth

               if (windowedge-dropmenuobj.x < dropmenuobj.contentmeasure)
               
                  edgeoffset=dropmenuobj.contentmeasure-obj.offsetWidth

            }

         else

            {
 
               var topedge = ie5 && !window.opera? iecompattest().scrollTop : window.pageYOffset
               var windowedge = ie5 && !window.opera? iecompattest().scrollTop + iecompattest().clientHeight - 15 : window.pageYOffset + window.innerHeight - 18
               dropmenuobj.contentmeasure = dropmenuobj.offsetHeight

               if (windowedge-dropmenuobj.y < dropmenuobj.contentmeasure)

                  {

                     edgeoffset = dropmenuobj.contentmeasure + obj.offsetHeight

                     if ((dropmenuobj.y-topedge)<dropmenuobj.contentmeasure)

                        edgeoffset=dropmenuobj.y+obj.offsetHeight-topedge

                  }

            }

         return edgeoffset

      }

   function dropdownmenu(obj, e, dropmenuID)

      {

         if (window.event) event.cancelBubble = true

         else if (e.stopPropagation) e.stopPropagation()

         if (typeof dropmenuobj != "undefined")

            dropmenuobj.style.visibility="hidden"

            clearhidemenu()

         if (ie5 || ns6)

            {

               obj.onmouseout = delayhidemenu
               dropmenuobj = document.getElementById(dropmenuID)

               if (hidemenu_onclick) dropmenuobj.onclick = function(){dropmenuobj.style.visibility = 'hidden'}

               dropmenuobj.onmouseover = clearhidemenu
               dropmenuobj.onmouseout = ie5? function(){dynamichide(event)} : function(event){ dynamichide(event)}
               showhide(dropmenuobj.style, e, "visible", "hidden")
               dropmenuobj.x=getposOffset(obj, "left")
               dropmenuobj.y=getposOffset(obj, "top")
               dropmenuobj.style.left=dropmenuobj.x-clearbrowseredge(obj, "rightedge")+"px"
               dropmenuobj.style.top=dropmenuobj.y-clearbrowseredge(obj, "bottomedge")+obj.offsetHeight+"px"

            }

         return clickreturnvalue()

      }

   function clickreturnvalue()

      {

         if ((ie5||ns6) && !enableanchorlink) return false

         else return true

      }

   function contains_ns6(a, b) 

      {

         while (b.parentNode)

            if ((b = b.parentNode) == a)

            return true;
            return false;
      }

   function dynamichide(e)

      {

         if (ie5&&!dropmenuobj.contains(e.toElement))

            delayhidemenu()

         else if (ns6&&e.currentTarget!= e.relatedTarget&& !contains_ns6(e.currentTarget, e.relatedTarget))
        
            delayhidemenu()
      }

   function delayhidemenu()
  
      {

         delayhide=setTimeout("dropmenuobj.style.visibility = 'hidden'", disappeardelay)

      }

   function clearhidemenu()

      {

         if (typeof delayhide!="undefined")

            clearTimeout(delayhide)
      }
      
      
// Validate the feedback form - message required, e-mail format:

   function ValidateForm(message, email)

      {

          if (message == "")

          {

             alert("Please enter a message before sending.");

             return false;


          }

          var string = new String(email);
          var index = string.indexOf("@");

          if (index <=0)

          {

             alert("please enter a valid e-mail address before sending.");

             return false;

          }
          
      }



