/**
* common library of javascript functions
*/

function addEvent(obj, evType, fn) {
    if (obj.addEventListener) {
		obj.addEventListener(evType, fn, true);
		return true;
    } else if (obj.attachEvent)  {
        var r = obj.attachEvent("on" + evType, fn);
        return r;
    } else {
        return false;
    }
}

/*
* fix alpha pngs on a page (turn on transparency for IE)
*/

//Commenting this out. Use the custom tag for applying IE transparency filter.

function fixAlphaPng() {
    var src     = '';
    var ua      = '';
    var width   = '';
    var height  = '';
    var rpng    = new RegExp('\.(png)$');
    var rmsie   = new RegExp('msie');
    var rmac    = new RegExp('mac');

    for (var i = 0; i < document.getElementsByTagName('IMG').length; i++) {
        src     = document.getElementsByTagName('IMG')[i].getAttribute('src');
        ua      = navigator.userAgent.toLowerCase();
        width   = document.getElementsByTagName('IMG')[i].getAttribute('width');
        height  = document.getElementsByTagName('IMG')[i].getAttribute('height');

        if (src.match(rpng) && ua.match(rmsie) && !ua.match(rmac)) {
        	document.getElementsByTagName('IMG')[i].setAttribute('src', '/templates/images/spacer.gif');
            document.getElementsByTagName('IMG')[i].style.filter = 'progid:DXImageTransform.Microsoft.AlphaImageLoader(src=\'' + src + '\', sizingMethod=scale)';
          	document.getElementsByTagName('IMG')[i].style.width = width + 'px';
        	document.getElementsByTagName('IMG')[i].style.height = height + 'px';            
        }
    }
}
addEvent(window, 'load', fixAlphaPng);

/*
* fix alpha pngs on a page (turn on transparency for IE)
*/

//Commenting this out. Use the custom tag for applying IE transparency filter.

function fixAlphaPngById(imageId) {
    var src     = '';
    var ua      = '';
    var width   = '';
    var height  = '';
    var rpng    = new RegExp('\.(png)$');
    var rmsie   = new RegExp('msie');
    var rmac    = new RegExp('mac');
	
	src     = document.getElementById(imageId).getAttribute('src');
	ua      = navigator.userAgent.toLowerCase();
	width   = document.getElementById(imageId).getAttribute('width');
	height  = document.getElementById(imageId).getAttribute('height');
	
    if (src.match(rpng) && ua.match(rmsie) && !ua.match(rmac)) {
    	document.getElementById(imageId).setAttribute('src', '/templates/images/spacer.gif');
        document.getElementById(imageId).style.filter = 'progid:DXImageTransform.Microsoft.AlphaImageLoader(src=\'' + src + '\', sizingMethod=scale)';
       	document.getElementById(imageId).style.width = width + 'px';
        document.getElementById(imageId).style.height = height + 'px';            
    }
}

/*
switch image 
*/
function swapImage(id, imageSrc) {
	document.getElementById(id).setAttribute('src', imageSrc);
	fixAlphaPngById(id);
}

/*
clears a form field
*/
function clearField(thefield) { 
	if (thefield.defaultValue==thefield.value) 
	{
		thefield.value = '';
	}
}
/**
* submit form
*/
function submitForm(formID)
{
	document.forms[formID].submit();
}

/**
* Dialog box
*/
//function dialogAction(diaID,action) {
//	if (action=='close' || action=='cancel') {
//		document.getElementById(diaID).className="";
//	} else if (action=='ok') {
//		document.getElementById(diaID).submit();
//		document.getElementById(diaID).className="";
//	} else {
//		document.getElementById(diaID).className="open";
//		/*
//		fixAlphaPng loses the width and height of PNGs in a display: none element like this
//		so we reset them below.
//		*/
//       	document.getElementById('ok').style.width = '61px';
//        document.getElementById('ok').style.height = '20px';            
//      	document.getElementById('cancel').style.width = '61px';
//        document.getElementById('cancel').style.height = '20px';            
//	}
//}


/**
* Dialog box
*/
function dialogAction(diaID,action) {
    if (action=='close' || action=='cancel') {
        document.getElementById(diaID).className="";
    } else if (action=='ok') {
        document.getElementById("dialogForm").submit();
        document.getElementById(diaID).className="";
    } else if (action=='ok2') {
        document.getElementById("dialog_emailForm").submit();
        document.getElementById(diaID).className="";
    } else {
        document.getElementById(diaID).className="open";
/*
        fixAlphaPng loses the width and height of PNGs in a display: none element like this
        so we reset them below.
        */
            
        document.getElementById('ok_email').style.width = '61px';
        document.getElementById('ok_email').style.height = '20px';
        document.getElementById('cancel_email').style.width = '61px';
        document.getElementById('cancel_email').style.height = '20px';
         
        document.getElementById('ok-fav').style.width = '61px';
        document.getElementById('ok-fav').style.height = '20px';
          document.getElementById('cancel-fav').style.width = '61px';
        document.getElementById('cancel-fav').style.height = '20px';
    }
}


function toggleCSS( file ){
	var head = document.getElementsByTagName('head')[0];
	var ltags = document.getElementsByTagName('link');
	var ltag = document.createElement('link'); 
	
	for(var i=0; i < ltags.length; i++){
		if(ltags[i].href.indexOf(file) > -1) {
			ltags[i].parentNode.removeChild(ltags[i]);
			return;
		}
	}
	ltag.type = "text/css"; 
	ltag.href = file; 
	ltag.rel = "stylesheet"; 
	head.appendChild(ltag);
	return; 
}


/* Text Size Change */

function setActiveStyleSheet(title) {
  var i, a, main;
  for(i=0; (a = document.getElementsByTagName("link")[i]); i++) {
    if(a.getAttribute("rel").indexOf("style") != -1 && a.getAttribute("title")) {
      a.disabled = true;
      if(a.getAttribute("title") == title) a.disabled = false;
    }
  }
}

function getActiveStyleSheet() {
  var i, a;
  for(i=0; (a = document.getElementsByTagName("link")[i]); i++) {
    if(a.getAttribute("rel").indexOf("style") != -1 && a.getAttribute("title") && !a.disabled) return a.getAttribute("title");
  }
  return null;
}

function getPreferredStyleSheet() {
  var i, a;
  for(i=0; (a = document.getElementsByTagName("link")[i]); i++) {
    if(a.getAttribute("rel").indexOf("style") != -1
       && a.getAttribute("rel").indexOf("alt") == -1
       && a.getAttribute("title")
       ) return a.getAttribute("title");
  }
  return null;
}

function createCookie(name,value,days) {
  if (days) {
    var date = new Date();
    date.setTime(date.getTime()+(days*24*60*60*1000));
    var expires = "; expires="+date.toGMTString();
  }
  else expires = "";
  document.cookie = name+"="+value+expires+"; path=/";
}

function readCookie(name) {
  var nameEQ = name + "=";
  var ca = document.cookie.split(';');
  for(var i=0;i < ca.length;i++) {
    var c = ca[i];
    while (c.charAt(0)==' ') c = c.substring(1,c.length);
    if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
  }
  return null;
}

window.onload = function(e) {
  var cookie = readCookie("style");
  var title = cookie ? cookie : getPreferredStyleSheet();
  setActiveStyleSheet(title);
}

window.onunload = function(e) {
  var title = getActiveStyleSheet();
  createCookie("style", title, 365);
}

var cookie = readCookie("style");
var title = cookie ? cookie : getPreferredStyleSheet();
setActiveStyleSheet(title);
