window.addEvent('domready', initPage);

function initPage(){
	$('menu').getElements('li').forEach( function(item, index){
		if(item.getParent().getProperty('id') != 'menu') return;
		item.addEvent('mouseover', function(e){ this.addClass('hover') });
		item.addEvent('mouseout', function(e){ this.removeClass('hover') });
	});
	
	if($('location')){
		// init link to open map
		$('location').addEvent('click', function(e){
			(new Event(e)).stop();
			showFader();
		});
		// init close buttons
		$('close').addEvent('click', function(e){ hideFader(); });
		// init map links
		$('addresses').getElements('a[class^=dots]').forEach( function(item, index){ 
			item.addEvent('mouseover', function(e){
				(new Event(e)).stop();
				$('address').setHTML( this.getParent().getElement('div').innerHTML );
			});
			if(index == 0){
				$('address').setHTML( item.getParent().getElement('div').innerHTML );
			}
		});
	}

	
}


/**
 *	Fader functions
 */ 
var faderStatus = 'off';
window.addEvent('resize', redrawFader);

function initFader( content ){
	var fader = $('fader');
	if (fader){
		fader.setStyles({
			'display':'none',
			'position':'absolute',
			'left':'0',
			'top':'0',
			'width':'0',
			'height':'0'
		});

		$('popup').setStyles({
			'position': 'absolute',
			'display': 'none',
			'top': '0',
			'left': '0'
		});
	}
}

function showFader( content ){
	var fader = $('fader');
	if (fader){
		// IE selects fix
		if(document.all) $$('select').setStyle('visibility','hidden');
		
		fader.setStyles({
			'width':(document.all && String(navigator.appVersion).match(/MSIE\s6/))? (window.getScrollWidth()-21) + 'px' : window.getScrollWidth() + 'px',
			'height':window.getScrollHeight() + 'px',
			'display':'block',
			'position':'absolute',
			'left':'0',
			'top':'0',
			'opacity':'0.7',
			'background':'#8c8b90'
		});

		faderStatus = 'on';
		
		var popup = $('popup');
		popup.setStyles({
			'position': 'absolute',
			'display': 'block'
		});
		var posY = $('content').getTop() + 33;
		var posX = $('content').getLeft() + $('content').getSize().size.x - popup.getSize().size.x;
		popup.setStyles({
			'left': posX,
			'top': posY
		});
	}
}


//added by steve
function showFader2( content ){
	var fader = $('fader');
	if (fader){
		// IE selects fix
		if(document.all) $$('select').setStyle('visibility','hidden');
		
		fader.setStyles({
			'width':(document.all && String(navigator.appVersion).match(/MSIE\s6/))? (window.getScrollWidth()-21) + 'px' : window.getScrollWidth() + 'px',
			'height':window.getScrollHeight() + 'px',
			'display':'block',
			'position':'absolute',
			'left':'0',
			'top':'0',
			'opacity':'0.7',
			'background':'#8c8b90'
		});

		faderStatus = 'on';
		
		var popupchallenge = $('popupchallenge');
		popupchallenge.setStyles({
			'position': 'absolute',
			'display': 'block'
		});
		var posY = $('content').getTop() + 33;
		var posX = $('content').getLeft() + $('content').getSize().size.x - popupchallenge.getSize().size.x;
		popupchallenge.setStyles({
			'left': posX,
			'top': posY
		});
	}
}

//

function showFader4( content ){
	var fader = $('fader');
	if (fader){
		// IE selects fix
		if(document.all) $$('select').setStyle('visibility','hidden');
		
		fader.setStyles({
			'width':(document.all && String(navigator.appVersion).match(/MSIE\s6/))? (window.getScrollWidth()-21) + 'px' : window.getScrollWidth() + 'px',
			'height':window.getScrollHeight() + 'px',
			'display':'block',
			'position':'absolute',
			'left':'0',
			'top':'0',
			'opacity':'0.7',
			'background':'#8c8b90'
		});

		faderStatus = 'on';
		
		var popupchallenge = $('request_form_container');
		popupchallenge.setStyles({
			'position': 'absolute',
			'display': 'block'
		});
		var posY = $('content').getTop() + 33;
		var posX = $('content').getLeft() + $('content').getSize().size.x - popupchallenge.getSize().size.x;
		popupchallenge.setStyles({
			'left': posX,
			'top': posY
		});
	}
}


function hideFader(){
	var fader = $('fader');
	if (fader){
		// IE selects fix
		if(document.all) $$('select').setStyle('visibility','visible');

		fader.setStyles({
			'display': 'none'
		});
		$('popup').setStyles({
			'display': 'none'
		});
		$('popupchallenge').setStyles({
			'display': 'none'
		});
		
		$('request_form_container').setStyles({
			'display': 'none'
		});
		
		faderStatus = 'off';
	}
}

function redrawFader(){
	var fader = $('fader');
	if (fader && faderStatus == 'on'){
		var popup = $('popup');
		var posX = $('content').getLeft() + $('content').getSize().size.x - popup.getSize().size.x;
		popup.setStyles({
			'display': 'none',
			'left': 0
		});
		fader.setStyles({
			'position':'absolute',
			'left':'0',
			'top':'0',
			'width':(document.all && String(navigator.appVersion).match(/MSIE\s6/))? (window.getScrollWidth()-21) + 'px' : window.getScrollWidth() + 'px',
			'height':window.getScrollHeight() + 'px'
		});

		popup.setStyles({
			'display': 'block',
			'left': posX
		});
	}
}

// <![CDATA[
function selectReplacement(obj) {
  obj.className += ' replaced';
  var ul = document.createElement('ul');
  ul.className = 'selectReplacement';
  var opts = obj.options;
  for (var i=0; i<opts.length; i++) {
    var selectedOpt;
    if (opts[i].selected) {
      selectedOpt = i;
      break;
    } else {
      selectedOpt = 0;
    }
  }
  for (var i=0; i<opts.length; i++) {
    var li = document.createElement('li');
    var txt = document.createTextNode(opts[i].text);
    li.appendChild(txt);
    li.selIndex = opts[i].index;
    li.selectID = obj.id;
    li.onclick = function() {
      selectMe(this);
    }
    if (i == selectedOpt) {
      li.className = 'selected';
      li.onclick = function() {
        this.parentNode.className += ' selectOpen';
        this.onclick = function() {
          selectMe(this);
        }
      }
    }
    if (window.attachEvent) {
      li.onmouseover = function() {
        this.className += ' hover';
      }
      li.onmouseout = function() {
        this.className = 
          this.className.replace(new RegExp(" hover\\b"), '');
      }
    }
    ul.appendChild(li);
  }
  obj.parentNode.insertBefore(ul,obj);
}

function selectMe(obj) {
  var lis = obj.parentNode.getElementsByTagName('li');
  for (var i=0; i<lis.length; i++) {
    if (lis[i] != obj) {
      lis[i].className='';
      lis[i].onclick = function() {
        selectMe(this);
      }
    } else {
      setVal(obj.selectID, obj.selIndex);
      obj.className='selected';
      obj.parentNode.className = 
        obj.parentNode.className.replace(new RegExp(" selectOpen\\b"), '');
      obj.onclick = function() {
        obj.parentNode.className += ' selectOpen';
        this.onclick = function() {
          selectMe(this);
        }
      }
    }
  }
}

function setVal(objID, selIndex) {
  var obj = document.getElementById(objID);
  obj.selectedIndex = selIndex;
}

function setForm() {
  var s = document.getElementsByTagName('select');
  for (var i=0; i<s.length; i++) {
    selectReplacement(s[i]);
  }
}

window.onload = function() {
  (document.all && !window.print) ? null : setForm();
}