var xmlhttp = false;
try {
  xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
  try {
    xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
  } catch (e) {
  xmlhttp = false;
  }
}
if(!xmlhttp && typeof (XMLHttpRequest != 'undefined')) {
  xmlhttp = new XMLHttpRequest();
}

window.onload = initialise;
function initialise() {
  preload_images(new Array('content/images/template/3trpd-logo.jpg', 'content/images/template/3trpd.jpg', 'content/images/template/menu-selected.gif'));
  newWindowLinks();
  if(document.getElementById('experts-imgs')) {
    //setup_experts_image_rollovers();
    document.getElementById('experts-text').style.display = "none";
  }
  if(document.getElementById('filterResults')) {
    document.getElementById('filterResults').onclick = function() {
      filterResults();
      return false;
    }
  }
  preventRightClicks();
  setInterval("preventRightClicks()", 500);
}
function preload_images(preloadImgsArr) {
  var myimages = new Array();
  for(i=0;i<preloadImgsArr.length;i++) {
    myimages[i] = new Image();
    myimages[i].src = preloadImgsArr[i];
  }
}
function setup_experts_image_rollovers() {
  var imgPath = "content/images/pages/original/";
  var imgFileSuffix = "-readmore.jpg";
  var rolloverImgs = new Array("hannah", "luis-breakout", "graham", "vaughan", "dave", "annika", "clive", "lars", "hamish");
  var preloadArr = [];

  for(var i = 0; i < rolloverImgs.length; i++) {
    var curImg = document.getElementById('expert' + (i + 1));
    curImg.onmouseover = (function(rolloverImg) { return function() { this.src = imgPath + rolloverImg + imgFileSuffix; }; })(rolloverImgs[i]);
    curImg.onmouseout =  (function(srcImg) { return function() { this.src = srcImg; }; })(curImg.src);
    preloadArr[i] = imgPath + rolloverImgs[i] + imgFileSuffix;
  }

  preload_images(preloadArr);
}
function preventRightClicks() {
  var imgs = document.getElementsByTagName('img');
  for(i = 0; i < imgs.length; i++) {
    imgs[i].oncontextmenu = showRightClickMsg;
  }
}
function showRightClickMsg() {
  alert("Images © 3T RPD Ltd");
  return false;
}
function toggleLogo(flag) {
  if(document.getElementById('tlogo') && !document.getElementById('init')) {
    switch(flag) {
      case false:
        document.getElementById('tlogo').src = 'content/images/template/3trpd-logo.jpg';
        document.getElementById('logoSwitch').style.backgroundImage = 'none';
      break;
      case true:
        document.getElementById('tlogo').src = 'content/images/template/3trpd.jpg';
        document.getElementById('logoSwitch').style.backgroundImage = 'url(content/images/template/menu-selected.gif)';
      break;
    }
  }
}
function newWindowLinks() {
  if(!document.getElementsByTagName) {
    return;
  } else {
    var anchors = document.getElementsByTagName("a");
    for(var i=0; i<anchors.length; i++) {
      var anchor = anchors[i];
      if(anchor.getAttribute("href") && anchor.getAttribute("rel") == "external" || anchor.getAttribute("rel") == "external nofollow") {
        anchor.target = "_blank";
      }
    }
  }
}
function regenerateCaptcha(imageID, viewName) {
  xmlhttp.open("GET", "ajax/generatecaptcha.php?imageid=" + imageID + "&viewname=" + viewName);
  xmlhttp.onreadystatechange = function() {
    if(xmlhttp.readyState == 4 && xmlhttp.status == 200) {
      document.getElementById(imageID).src = xmlhttp.responseText;
    }
  }
  xmlhttp.send(null);
}
function filterResults() {
  var getString = '';
  if(document.getElementById('filterResultsForm')) {
    for(x=0;x<document.getElementById('filterResultsForm').elements.length;x++) {

      if(document.getElementById('filterResultsForm').elements[x].name.toLowerCase() != document.getElementById('filterResultsForm').elements[x].value.toLowerCase()
        && document.getElementById('filterResultsForm').elements[x].value.toLowerCase() != 'all') {
        getString = getString + document.getElementById('filterResultsForm').elements[x].name + '=' + document.getElementById('filterResultsForm').elements[x].value + '&';
      }
    }
  }
  if(getString.length > 0) {
    getString = '?' + getString.substring(0, getString.length - 1);
  }
  window.location = document.getElementById('filterResultsForm').action + getString;
}
function navigate(url) {
  window.location = url;
}
var useBSNns;
if(useBSNns) {
  if(typeof(bsn) == "undefined") {
    bsn = {}
  }
  var _bsn = bsn;
} else {
  var _bsn = this;
}
_bsn.Crossfader = function(divs, fadetime, delay) {
  this.nAct = -1;
  this.aDivs = divs;
  for(var i=0;i<divs.length;i++) {
    document.getElementById(divs[i]).style.opacity = 0;
    document.getElementById(divs[i]).style.position = "absolute";
    document.getElementById(divs[i]).style.filter = "alpha(opacity=0)";
    document.getElementById(divs[i]).style.visibility = "hidden";
  }
  this.nDur = fadetime;
  this.nDelay = delay;
  this._newfade();
}
_bsn.Crossfader.prototype._newfade = function() {
  if(this.nID1) {
    clearInterval(this.nID1);
  }
  this.nOldAct = this.nAct;
  this.nAct++;
  if(!this.aDivs[this.nAct]) {
    this.nAct = 0;
  }
  if(this.nAct == this.nOldAct) {
    return false;
  }
  document.getElementById(this.aDivs[this.nAct]).style.visibility = "visible";
  this.nInt = 50;
  this.nTime = 0;
  var p = this;
  this.nID2 = setInterval(function() { p._fade() }, this.nInt);
}
_bsn.Crossfader.prototype._fade = function() {
  this.nTime += this.nInt;
  var ieop = Math.round(this._easeInOut(this.nTime, 0, 1, this.nDur) * 100);
  var op = ieop / 100;
  document.getElementById(this.aDivs[this.nAct]).style.opacity = op;
  document.getElementById(this.aDivs[this.nAct]).style.filter = "alpha(opacity="+ieop+")";
  if(this.nOldAct > -1) {
    document.getElementById(this.aDivs[this.nOldAct]).style.opacity = 1 - op;
    document.getElementById(this.aDivs[this.nOldAct]).style.filter = "alpha(opacity="+(100 - ieop)+")";
  }
  if(this.nTime == this.nDur) {
    clearInterval(this.nID2);
    if(this.nOldAct > -1) {
      document.getElementById(this.aDivs[this.nOldAct]).style.visibility = "hidden";
    }
    var p = this;
    this.nID1 = setInterval(function() { p._newfade() }, this.nDelay);
  }
}
_bsn.Crossfader.prototype._easeInOut = function(t,b,c,d) {
  return c/2 * (1 - Math.cos(Math.PI*t/d)) + b;
}
function initialiseXFade(divStringArray, fadeTime, delayTime) {
  divArray = divStringArray.split(',');
  var xbanner = new Crossfader(divArray, fadeTime, delayTime);
  xbanner = null;
}

// Switch expert image
function switch_expert_image(image, id) {
  var pImage;
  pImage = document.getElementById(id);
  pImage.src = 'content/images/askourexperts/overlay/' + image;
}

// Reset expert image
function reset_expert_image(image, id) {
  var pImage;

  pImage = document.getElementById(id);
  pImage.src = 'content/images/askourexperts/main/' + image;
}
