﻿// JScript File
window.ANDI_PreloadUrls = new Array();
window.ANDI_PreloadImgs = new Array();
window.ANDI_OnloadAttached = false;
window.IsGecko = (navigator.userAgent.toLowerCase().indexOf('gecko') != -1);
window.IsIE = (navigator.userAgent.toLowerCase().indexOf('msie') != -1);

function ANDI_AddPreloadImg(imageUrl) {
	window.ANDI_PreloadUrls[window.ANDI_PreloadUrls.length] = imageUrl;
	if (!window.ANDI_OnloadAttached) {
		window.ANDI_OnloadAttached = true;
		ANDI_AttachEvent(window, ANDI_OnPreloadImgs, 'onload');
	}
	return window.ANDI_PreloadUrls.length-1;
}

function ANDI_OnPreloadImgs() {
	var w = window;
	if (w.ANDI_PreloadUrls.length != 0) {
		for (var i=0; i < w.ANDI_PreloadUrls.length; i++) {
			w.ANDI_PreloadImgs[i] = new Image;
			w.ANDI_PreloadImgs[i].src = w.ANDI_PreloadUrls[i];
		}
	}
}

function jsSetImageMouseEffect(obj, imageUrl) {
	obj.src = imageUrl;
}

/*********** Utilities Functions ***********************************************/

function ANDI_AttachEvent(objHandler, funcHandler, sIEMethod) {
	var sMethod = sIEMethod;
	if (window.IsGecko) {
		if (sMethod == 'onload') sMethod = 'load';
	}
	if (window.IsIE) {
		objHandler.attachEvent(sMethod, ANDI_OnPreloadImgs); 
		objHandler.onload = ANDI_OnPreloadImgs;
	} else {
		objHandler.addEventListener(sMethod, ANDI_OnPreloadImgs, false);
	}
}


/*********** STATE IMAGE *******************************************************/

function ANDI_SIB_Add(CtrlID, hoverImageUrl) {
	var ctrl = document.getElementById(CtrlID);
	ctrl.hoverIndex = ANDI_AddPreloadImg(hoverImageUrl);
	ctrl.normalImage = ctrl.src;
	ctrl.onmouseover = ANDI_SIB_MO;
	ctrl.onmouseout = ANDI_SIB_MT;
}

function ANDI_SIB_MO(e) {
	var obj = e!=null ? e.target : event.srcElement;
	obj.src = window.ANDI_PreloadUrls[obj.hoverIndex];
}

function ANDI_SIB_MT(e) {
	var obj = e!=null ? e.target : event.srcElement;
	obj.src = obj.normalImage;
}
