// ** To automatically open the quote page in a new window
// ** just as if the link were clicked

loadPopUp();

function loadPopUp() {
	var page=getVar('f');
	switch (page) {
		case 'gbquotation':
			openWindow('webx','contactgbquote.aspx', 'Information','toolbar=no,status=no,menubar=no,resizable=no,scrollbars=yes,width=600,height=560,top=100,left=100');
		break;
		default:
	}
}

// ********************************************
// **    Make Area Clickable version 1.0     **
// **   by Aidan Thomson for Zeta Commerce   **
// **   some code by Sitepoint and others    **
// **              13.04.2008                **
// ********************************************

addLoadListener(init);

/*
JSTarget function by Roger Johansson, www.456bereastreet.com
*/
var JSTarget = {
	init: function(att,val,warning) {
		if (document.getElementById && document.createElement && document.appendChild) {
			var strAtt = ((typeof att == 'undefined') || (att == null)) ? 'class' : att;
			var strVal = ((typeof val == 'undefined') || (val == null)) ? 'non-html' : val;
			var strWarning = ((typeof warning == 'undefined') || (warning == null)) ? ' (opens in a new window)' : warning;
			var oWarning;
			var arrLinks = document.getElementsByTagName('a');
			var oLink;
			var oRegExp = new RegExp("(^|\\s)" + strVal + "(\\s|$)");
			for (var i = 0; i < arrLinks.length; i++) {
				oLink = arrLinks[i];
				if ((strAtt == 'class') && (oRegExp.test(oLink.className)) || (oRegExp.test(oLink.getAttribute(strAtt)))) {
					oLink.title = oLink.title + '' + strWarning + '';
					oLink.onclick = JSTarget.openWin;
				}
			}
			oWarning = null;
		}
	},
	openWin: function(e) {
		var event = (!e) ? window.event : e;
		if (event.shiftKey || event.altKey || event.ctrlKey || event.metaKey) return true;
		else {
		    var oWin = window.open(this.getAttribute('href'), 'TeachersForm','width=520,location=1,scrollbars=1,status=1,toolbar=1,resizable=1');
			if (oWin) {
				if (oWin.focus) oWin.focus();
				return false;
			}
			oWin = null;
			return true;
		}
	},
	/*
	addEvent function from http://www.quirksmode.org/blog/archives/2005/10/_and_the_winner_1.html
	*/
	addEvent: function(obj, type, fn) {
		if (obj.addEventListener)
			obj.addEventListener(type, fn, false);
		else if (obj.attachEvent) {
			obj["e"+type+fn] = fn;
			obj[type+fn] = function() {obj["e"+type+fn]( window.event );}
			obj.attachEvent("on"+type, obj[type+fn]);
		}
	}
};

JSTarget.addEvent(window, 'load', function(){JSTarget.init();});

function getElementsByClassName(oElm, strTagName, strClassName){
	var arrElements = (strTagName == "*" && oElm.all)? oElm.all : oElm.getElementsByTagName(strTagName);
	var arrReturnElements = new Array();
	strClassName = strClassName.replace(/\-/g, "\\-");
	var oRegExp = new RegExp("(^|\\s)" + strClassName + "(\\s|$)");
	var oElement;
	for(var i=0; i<arrElements.length; i++){
		oElement = arrElements[i];
		if(oRegExp.test(oElement.className)){
			arrReturnElements.push(oElement);
		}
	}
	return (arrReturnElements)
}

function attachElements (el,elClass) {
  els = getElementsByClassName(document, el, elClass);
  for (var i=0;i<els.length;i++) {
  	 if (els[i] !=undefined) {
 		attachEventListener(els[i], "mouseover", changeCursor, false);
		attachEventListener(els[i], "click", makeLink, false);
	 }
  }
}

function attachToHide(el, elClass) {
	var show = getVar('show');
	if(!show) show='';
	hide(show);
}

function init() {
  el1 = attachElements('div','promo');
  el2 = attachElements('div','sectionPromo');
  el3 = attachToHide('div','hidden');
  return true;
}

function changeCursor(event) {
  if (typeof event == "undefined") {
    event = window.event;
  }
  var target=getEventTarget(event);
  target.style.cursor = "pointer";
  stopDefaultAction(event);
  return false;
}

function makeLink(event) {
  if (typeof event == "undefined") {
    event = window.event;
  }
  var target=getEventTarget(event);
  var links = "";
  var cName = target.className.toLowerCase();
  var currentLink = "";
  if(cName && (cName.indexOf('promo')>0)) {
	 links = target.getElementsByTagName("a");
  } else if(target.parentNode.nodeName.toLowerCase() == 'a') {
	 links = target.parentNode.parentNode.getElementsByTagName("a");
  } else {
  	 links = target.parentNode.getElementsByTagName("a");
  }
  for (i=0;i<links.length;i++) {
    currentLink = links[i];
  }
  currentLink = currentLink.toString();
  if (currentLink.indexOf('javascript:') > 0 ) {
  	  currentLink = currentLink.substring(11);
  }
  location.href=currentLink;
  stopDefaultAction(event);
  return false;
}

function getEventTarget(event) {
  var targetElement = null;
  if (typeof event.target != "undefined")  {
    targetElement = event.target;
  } else {
    targetElement = event.srcElement;
  }
  while (targetElement.nodeType == 3 && targetElement.parentNode != null) {
    targetElement = targetElement.parentNode;
  }
  return targetElement;
}

function stopDefaultAction(event) {
  event.returnValue = false;
  if (typeof event.preventDefault != "undefined") {
    event.preventDefault();
  }
  return true; 
}

function attachEventListener(target, eventType, functionRef, capture) {
  if (typeof target.addEventListener != "undefined") {
    target.addEventListener(eventType, functionRef, capture);
  } else if (typeof target.attachEvent != "undefined") {
    target.attachEvent("on" + eventType, functionRef);
  } else {
    eventType = "on" + eventType;
    if (typeof target[eventType] == "function") {
      var oldListener = target[eventType];
      target[eventType] = function() {
        oldListener();
        return  functionRef();
      }
    } else {
      target[eventType] = functionRef;
    }
  }
  return true; 
}

function addLoadListener(fn) {
  if (typeof window.addEventListener != 'undefined') {
    window.addEventListener('load', fn, false);
  } else if (typeof document.addEventListener != 'undefined') {
    document.addEventListener('load', fn, false);
  } else if (typeof window.attachEvent != 'undefined') {
    window.attachEvent('onload', fn);
  } else {
    var oldfn = window.onload;
    if (typeof window.onload != 'function') {
      window.onload = fn;
    } else {
      window.onload = function() {
        oldfn();
        fn();
      };
    }
  }
}

function getVar(name) {
  get_string = document.location.search;         
  return_value = '';
         
  do { //This loop is made to catch all instances of any get variable.
    name_index = get_string.indexOf(name + '=');
            
    if(name_index != -1) {
      get_string = get_string.substr(name_index + name.length + 1, get_string.length - name_index);
              
      end_of_value = get_string.indexOf('&');
      if(end_of_value != -1) value = get_string.substr(0, end_of_value);                
      else value = get_string;                
                
      if(return_value == '' || value == '') return_value += value;
      else return_value += ', ' + value;
    }
  } while(name_index != -1);
            
  //Restores all the blank spaces.
  space = return_value.indexOf('+');
  while(space != -1) { 
    return_value = return_value.substr(0, space) + ' ' + return_value.substr(space + 1, return_value.length);
	 space = return_value.indexOf('+');
  }
  return(return_value);        
}


// ********************************************
// **       Show/Hide ID version 1.2.5       **
// **    by Aidan Thomson (Zeta Commerce)    **
// ** 27.02.2005 / 20.07.2006 / 15.10.2006   **
// ** 08.09.2007 / 13.04.2008                **
// ********************************************

function previousSibling(obj) {
	sibling=obj.previousSibling.previousSibling; // IE
	if(obj.previousSibling.nodeType=='3') {
		sibling=sibling.previousSibling; // Moz. Opera
   }
	return sibling;
}

function chgImg(id,type) {
	var el = document.getElementById(id);
	el = previousSibling(el);
	imgEl = el.firstChild;
	if (type==1) {
		imgEl.src='images/icon_minus.png';
		imgEl.width='16';
		imgEl.alt='Close';
	} else {
		imgEl.src='images/icon_plus.png';
		imgEl.width='16';
		imgEl.alt='Open';
	}
}

function zShow(num) {
	var elID = "hidden" + num;
	var el = document.getElementById(elID);
	if (el.style.display=="none") {
		hide(num);
		el.style.display="block";
		chgImg(elID,1);
	} else {
		el.style.display="none";
		chgImg(elID,0);
	}
}

function hide(num) {
	var hideID; var el;
	var els = document.getElementsByTagName('div');
	for (var i=0;i<els.length;i++) {
		if (els[i]) {
		if (els[i].className == 'hidden') {
			if (els[i].id) {
				hideID =	els[i].className + num;
				if ((hideID) != els[i].id) {
					chgImg(els[i].id,0);
					els[i].style.display="none";
				} else {
					if (num > 0) {
						chgImg(els[i].id,1);
					}
				}
			}
		}
		}
	}
}
