// JavaScript Document

function init(){
doHeights();
findAccessKeys();
externalLinks();
}

function doHeights(){
contenth=document.getElementById("content").offsetHeight;
horiznavsh=document.getElementById("horiznavs").offsetHeight;
leftriderh=document.getElementById("leftrider").offsetHeight;
navsh=document.getElementById("navs").offsetHeight;
if (contenth+horiznavsh>leftriderh+navsh-10)
{
 navsh=contenth+horiznavsh-leftriderh+10;
 document.getElementById("navs").style.height=navsh + "px"; 
}
}

function hoverover(link){
document.getElementById(link).style.backgroundColor="#EEEEEE";
}
function hoverout(link){
document.getElementById(link).style.backgroundColor="#FFFFFF";
}

function download(file,fileid,uid){
window.open("uploads/"+file);
setDownload(fileid, uid);
}

function disableKey(keyid)
{
 changeKey(keyid, "1");
 disid="dis"+keyid;
 document.getElementById(disid).innerHTML="Key Disabled - <a href=\"javascript:enableKey('"+keyid+"')\">Enable this key</a>";
}
function enableKey(keyid)
{
 changeKey(keyid, "0");
 disid="dis"+keyid;
 document.getElementById(disid).innerHTML="Key Enabled - <a href=\"javascript:disableKey('"+keyid+"')\">Disable this key</a>";
}

function confirmDelete(question, where)
{
 temp = window.confirm(question);
 if (temp) //delete
 {
  document.location.href=where;  
 }
}

function upload(here){
document.getElementById("dleditform").action = "news.php";
document.getElementById("filecontrol").value=here.id;
document.getElementById("dleditform").submit();
}

function helpOn() {
document.getElementById("help").style.display="block";
document.getElementById("helplink").style.display="none";
}
function adminHelpOn() {
document.getElementById("adminhelp").style.display="block";
document.getElementById("adminhelplink").style.display="none";
}

function changesection(section){
document.location.href="news.php?section="+section;
}

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('em');
        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 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 sendEnquiry(){
 required=0;
 document.getElementById("labelname").style.color="#000000";
 document.getElementById("labelemail").style.color="#000000"; 
 if (document.EnquiryForm.name.value=="")
 {
  document.getElementById("labelname").style.color="#DD0000";
  required=1;  
 }
 if (document.EnquiryForm.email.value=="")
 {
  document.getElementById("labelemail").style.color="#DD0000";
  required=1;  
 } 

 if (required==1)
 {
  alert ("Please complete all the fields marked with a *");
  return;
 }
 else
 {
  document.EnquiryForm.action = "thanks.php";
  document.EnquiryForm.submit();
 }
}

function sendReferral(){
 required=0;
 document.getElementById("labelname").style.color="#000000";
 document.getElementById("labelemail").style.color="#000000"; 
 document.getElementById("labelfriendname").style.color="#000000";
 document.getElementById("labelfriendemail").style.color="#000000"; 
 if (document.ReferralForm.name.value=="")
 {
  document.getElementById("labelfriendname").style.color="#DD0000";
  required=1;  
 }
 if (document.ReferralForm.friendemail.value=="")
 {
  document.getElementById("labelfriendemail").style.color="#DD0000";
  required=1;  
 }
 if (document.ReferralForm.friendname.value=="")
 {
  document.getElementById("labelfriendname").style.color="#DD0000";
  required=1;  
 }
 if (document.ReferralForm.friendemail.value=="")
 {
  document.getElementById("labelfriendemail").style.color="#DD0000";
  required=1;  
 } 
 
 if (document.ReferralForm.gift[1].checked==true)
 {
  if ((document.ReferralForm.colour[0].checked==false) && (document.ReferralForm.colour[1].checked==false) && (document.ReferralForm.colour[2].checked==false))
  {
   alert ("Please select your wine colour");
   return;
  }
 } 
 if (document.ReferralForm.gift[2].checked==true)
 {
  if (document.ReferralForm.charity.value=="")
  {
   alert ("Please select your charity");
   return;
  }
 } 

 if (required==1)
 {
  alert ("Please complete all the fields marked with a *");
  return;
 }
 else
 {
  document.ReferralForm.action = "referralthanks.php";
  document.ReferralForm.submit();
 }
}

function increase()
{
 size=document.getElementById("content").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("content").style.fontSize=size+"em";
 }
 setSize(size);
 doHeights();
}
function decrease()
{
 size=document.getElementById("content").style.fontSize.replace("em","");
 size=Math.round(size*100)/100;
 if (size>0.5)
 {
  size=Math.round((size-0.1)*100)/100;
 } 
 document.getElementById("content").style.fontSize=size+"em";
 setSize(size);
 doHeights();
}
function reset()
{
 document.getElementById("content").style.fontSize="1em";
 setSize(1);
 doHeights();
}


var sizeObject;
function setSize(size){
 if (sizeObject) 
 {
  document.body.removeChild(sizeObject);
 }
 dynObject = document.createElement("script");
 dynObject.src = "setsize.php?size="+size;
 dynObject.type = "text/javascript";
 document.body.appendChild(dynObject);
}

var downloadObject;
function setDownload(fileid, uid){
 if (downloadObject) 
 {
  document.body.removeChild(downloadObject);
 }
 downloadObject = document.createElement("script");
 downloadObject.src = "setdownload.php?fileid="+fileid+"&uid="+uid;
 downloadObject.type = "text/javascript";
 document.body.appendChild(downloadObject);
}

var keyObject;
function changeKey(keyid, state)
{
 if (keyObject) 
 {
  document.body.removeChild(keyObject);
 }
 keyObject = document.createElement("script");
 keyObject.src = "setkey.php?keyid="+keyid+"&disable="+state;
 keyObject.type = "text/javascript";
 document.body.appendChild(keyObject);
}


