// JavaScript Document

function mapinit(){
if (GBrowserIsCompatible()) {
 var map = new GMap2(document.getElementById("map"));
 map.setCenter(new GLatLng(53.804527, -1.927999), 11);
 var point = new GLatLng(53.804527, -1.927999);

 var info = "<div style='font-size: 0.7em;'>The Dog &amp; Gun<BR>Denholme Road<BR>Oxenhope<br>West Yorkshire<br>BD22 9SN<br>Tel:01535 643159</div>";
 var marker= new GMarker(point);
 GEvent.addListener(marker, "click", function(){marker.openInfoWindowHtml(info);});
 map.addOverlay(marker);

 map.addControl(new GLargeMapControl());
 map.addControl(new GMapTypeControl());

}
else
{
 document.getElementById("map").innerHTML = "<img src='images/map.jpg'>";
 document.getElementById("map").style.width="350px";
 document.getElementById("map").style.height="330px";  
}
init();
}

function init()
{
 ie6markw=document.getElementById("ie6marker").offsetWidth;
 ie6boj=0;
 if (ie6markw==2)
 {
  ie6boj=2;
  document.getElementById("logo").src="images/logo.gif";
 }

 document.getElementById("mainfooter").style.paddingLeft="0px";
    
 mywidth=document.getElementById("mybody").offsetWidth;
 if (mywidth>995)
 {
  setouter=940;
 }
 else if (mywidth<785)
 {
  setouter=710;
 }
 else
 {
  setouter=mywidth-65;
 }
 document.getElementById("outer").style.width=setouter+"px";

 rhcolwidth=document.getElementById("rhcol").offsetWidth;

 midwidth=setouter-rhcolwidth-30-15; //rcol; mid padding (L and R);  
 document.getElementById("midcol").style.width=midwidth+"px";
 innermastw=midwidth+100+8;
 bgpos=midwidth-253;
 document.getElementById("insidemain").style.backgroundPosition=bgpos+"px 100%";


 dwidth=(document.getElementById("davy").offsetWidth)*1;
 fwidth=(document.getElementById("mainfooter").offsetWidth)*1;
 fwidthm=parseInt((setouter-fwidth)/2)+1-ie6boj;
 if((fwidthm+fwidth+dwidth) > setouter)
 {
  fwidthm=fwidthm-((fwidthm+fwidth+dwidth)-setouter)
 }
 
 if (ie6markw==2)
 {
  document.getElementById("mainfooter").style.paddingLeft="10px";
 }
 else
 {
  document.getElementById("mainfooter").style.paddingLeft=fwidthm+"px";
 }
 
 posRH=findPos(document.getElementById("rhcol"));
 posFoot=findPos(document.getElementById("footer"));
 heightRH=posFoot-posRH;
 heightCheck=530;
 if (document.getElementById("rhstatic"))
 {
  staticheight=document.getElementById("rhstatic").offsetHeight;
  bp=335+staticheight;
  document.getElementById("rhcol").style.backgroundPosition="right "+bp+"px";
  heightCheck=865;
 } 
 if (heightRH>heightCheck)
 {
  document.getElementById("rhcol").style.height=heightRH+"px";
 }

 dyn = setouter+" "+midwidth;
 setDynamics(dyn);

 externalLinks();
}


function sendEnquiryK(){
var keycode;
if (window.event){
 keycode = window.event.keyCode;
}
else if (e && e.which){
 keycode = e.which;
}
else {
 return true;
}
if (keycode==13){
 sendEnquiry();
}
}
function sendEnquiry(){
 required=checkRequired();
 if (required==2)
 {
  alert ("Please let us know your telephone number or email address and complete all the fields marked with an asterisk.");
  return;
 }
 else if (required==1)
 {
 document.getElementById("labeltelephone").style.color="#AA0000"; 
 document.getElementById("labelemail").style.color="#AA0000";  
 alert ("Please complete all the fields marked with an asterisk.");
 }
 else
 {
  document.EnquiryForm.action = "thanks.php";
  document.EnquiryForm.submit();
 }
}

function checkRequired()
{
 required=0;
 document.getElementById("labelname").style.color="#000000";
 document.getElementById("labeltelephone").style.color="#000000"; 
 document.getElementById("labelemail").style.color="#000000";
 document.getElementById("labelenquiry").style.color="#000000"; 

 if (document.EnquiryForm.telephone.value=="")
 {
  document.getElementById("labeltelephone").style.color="#AA0000";
  required=1;  
 }
 if (document.EnquiryForm.email.value=="")
 {
  document.getElementById("labelemail").style.color="#AA0000";
  required=1;  
 }
 
 if (document.EnquiryForm.telephone.value == "" && document.EnquiryForm.email.value == "")
 {
  required=2;
  return (required);
 }
 else
 {
  required=0;
  document.getElementById("labeltelephone").style.color="#000000"; 
  document.getElementById("labelemail").style.color="#000000";  
 }
 
 if (document.EnquiryForm.Name.value=="")
 {
  document.getElementById("labelname").style.color="#AA0000";
  required=1;  
 }
 if (document.EnquiryForm.enquiry.value=="")
 {
  document.getElementById("labelenquiry").style.color="#AA0000";
  required=1;  
 }

  return (required);
}


function findPos(obj)
{
 toppos=0;
 if (obj.offsetParent)
 {
  do
  {
	 toppos += obj.offsetTop;
  }while (obj = obj.offsetParent);
 }
 return[toppos];
}


function fieldchange(id){
value=document.getElementById(id).value;
setSession(id,value);
}

function navOn(here){
here.style.backgroundPosition="0 -5px";
}

function navOff(here){
here.style.backgroundPosition="center";
}

function externalLinks() { 
 if (!document.getElementsByTagName) return;
  if (document.getElementById("newwindowlinks")){
   document.getElementById("newwindowlinks").style.display="inline"; 
  }
 var fieldspecs = document.getElementsByTagName("a"); 
 for (var i=0; i<fieldspecs.length; i++) { 
   var fieldspec = fieldspecs[i]; 
   if (fieldspec.getAttribute("href") && 
       fieldspec.getAttribute("rel") == "external") 
       fieldspec.target = "_blank"; 
 } 
}
function externalLinksOff() { 
 if (!document.getElementsByTagName) return;
 var fieldspecs = document.getElementsByTagName("a"); 
 for (var i=0; i<fieldspecs.length; i++) { 
   var fieldspec = fieldspecs[i]; 
   if (fieldspec.getAttribute("href") && 
       fieldspec.getAttribute("rel") == "external") 
       fieldspec.target = "_self"; 
 }
 var images = document.getElementsByTagName("img");
 for (var i=0; i<images.length; i++) { 
   var image = images[i];
   var firstchar = image.getAttribute("src").lastIndexOf("/") + 1;
   var filename = image.getAttribute("src").substring(firstchar,firstchar+6);
   if (filename == "newwin")
     image.style.display = "none";
 }  
} 

function findAccessKeys() { 
var fieldspecs = document.getElementsByTagName("a"); 
 for (var i=0; i<fieldspecs.length; i++) { 
  var fieldspec = fieldspecs[i]; 
  if (fieldspec.getAttribute("accesskey")) {
     highlightAccessKey(fieldspec, fieldspec.getAttribute("accesskey"));
   }
 }
} 
function highlightAccessKey(e, accessKey) {
    if (e.hasChildNodes())
    {
     var childNode, txt;
     //find the first text node that contains the access character
     for (var i = 0; i < e.childNodes.length; i++)
     {
      txt = e.childNodes[i].nodeValue;
      if (e.childNodes[i].nodeType == 3 && txt.toLowerCase().indexOf(accessKey.toLowerCase()) != -1)
      {
       childNode = e.childNodes[i];
       break;
      }
     }
        
     if (!childNode)
     {
      //access character was not found
      return;
     }
 
     var pos = txt.toLowerCase().indexOf(accessKey.toLowerCase());
     var span = document.createElement('span');
     var spanText = document.createTextNode(txt.substr(pos, 1));
     span.className = 'accesskey';
     span.appendChild(spanText);
     //the text before the access key
     var text1 = document.createTextNode(txt.substr(0, pos));
     //the text after the access key
     var text2 = document.createTextNode(txt.substr(pos + 1));
     if (text1.length > 0) e.insertBefore(text1, childNode);
     e.insertBefore(span, childNode);
     if (text2.length > 0) e.insertBefore(text2, childNode);
     e.removeChild(childNode);
    }
}


function increase()
{
 size=document.getElementById("main").style.fontSize.replace("em","");
 size=Math.round(size*100)/100;
 if (size<1.8)
 {
  if (size<0.7)
  {
   size=0.75;
  }
  else if (size<1)
  {
   size=Math.round((size+0.1)*100)/100;
  }  
  else if (size<1.15)
  {
   size=Math.round((size+0.05)*100)/100;
  }
  else
  {
   size=Math.round((size+0.1)*100)/100;
  } 
  document.getElementById("main").style.fontSize=size+"em";
  document.getElementById("topnavbar").style.fontSize=size+"em";
 }
 setSize(size);
}
function decrease()
{
 size=document.getElementById("main").style.fontSize.replace("em","");
 size=Math.round(size*100)/100;
 if (size>0.5)
 {
  size=Math.round((size-0.1)*100)/100;
 } 
 document.getElementById("main").style.fontSize=size+"em";
 document.getElementById("topnavbar").style.fontSize=size+"em"; 
 setSize(size);
}
function reset()
{
 document.getElementById("main").style.fontSize="0.8em";
 document.getElementById("topnavbar").style.fontSize="0.8em"; 
 setSize(0.8);
}


var fieldObject;
function setSession(fieldspec, value){
value=value.replace(/\n/g, "-*--");
 if (fieldObject) 
 {
  document.body.removeChild(fieldObject);
 }
 fieldObject = document.createElement("script");
 fieldObject.src = "setsession.php?fieldspec="+fieldspec+"&value="+value;
 fieldObject.type = "text/javascript";
 document.body.appendChild(fieldObject);
}

var dynObject;
function setDynamics(dyn){
 if (dynObject) 
 {
  document.body.removeChild(dynObject);
 }
 dynObject = document.createElement("script");
 dynObject.src = "setdyn.php?dyn="+dyn+"&page="+thisPage;
 dynObject.type = "text/javascript";
 document.body.appendChild(dynObject);
}
