// JavaScript Document

// [BEG HANDLER] ------------------------------------------------------------

// _UIT_AddEvent() and _UIT_RemoveEvent() allow mutliple functions linking to the same
// event handler with replacement / substitution
// No previous registered functions will be deleted
// Original source code provided by ScottAndrew.com (2001)
// -> Alberto Vassena

// Usage sample:
// _UIT_AddEvent(window, 'load', foo);
// _UIT_AddEvent(window, 'load', bar);

function _UIT_AddEvent(obj, evType, fn, useCapture){
  if (obj.addEventListener){
    obj.addEventListener(evType, fn, useCapture);
    return true;
  } else if (obj.attachEvent){
    var r = obj.attachEvent("on"+evType, fn);
    return r;
  } else {
    alert('_UIT_AddEvent: Handler could not be attached');
  }
}

function _UIT_RemoveEvent(obj, evType, fn, useCapture){
  if (obj.removeEventListener){
    obj.removeEventListener(evType, fn, useCapture);
    return true;
  } else if (obj.detachEvent){
    var r = obj.detachEvent("on"+evType, fn);
    return r;
  } else {
    alert('_UIT_RemoveEvent: Handler could not be removed');
  }
}
// [END HANDLER] ------------------------------------------------------------

// [BEG PRELOAD] ------------------------------------------------------------

// In _UIT_PreloadImages(), we maintain the list of the images to automatically preload.
// _UIT_PreloadImages() should be the only function to modify / adjust.
// -> Alberto Vassena

// Usage sample
// HTML:       <body onload="_UIT_PreloadImages();">
// JavaScript: _UIT_AddEvent(window, 'load', _UIT_PreloadImages);

// Globals initialization
var UIT_BASE_GS_SELECTED = '', UIT_BASE_GB_PRELOAD_FLAG = false;

function _UIT_NewImage(arg) {
	if (document.images) {
		rslt = new Image();
		rslt.src = arg;
		return rslt;
	}
}

function _UIT_FindElement(n,ly) {
	var ua = window.navigator.userAgent;
	var browserVers = parseInt(ua.charAt(ua.indexOf('/')+1),10);
	if (browserVers < 4)		return document[n];
	var curDoc = ly ? ly.document : document;
	var elem = curDoc[n];
	if (!elem) {
		for (var i=0;i<curDoc.layers.length;i++) {
			elem = _UIT_FindElement(n,curDoc.layers[i]);
			if (elem) return elem;
		}
	}
	return elem;
}

function _UIT_ChangeImagesArray(array) {
	if (document.images && (UIT_BASE_GB_PRELOAD_FLAG == true)) {
		for (var i=0; i<array.length; i+=2) {
			img = null;
			if (document.layers) {
				img = _UIT_FindElement(array[i],0);
			}
			else {
				img = document.images[array[i]];
			}
			if (img) {
				img.src = array[i+1];
			}
		}
	}
}

function _UIT_ChangeImages() {
	_UIT_ChangeImagesArray(_UIT_ChangeImages.arguments);
}

function _UIT_ToggleImages() {
	for (var i=0; i<_UIT_ToggleImages.arguments.length; i+=2) {
		if (UIT_BASE_GS_SELECTED == _UIT_ToggleImages.arguments[i])      _UIT_ChangeImagesArray(_UIT_ToggleImages.arguments[i+1]);
	}
}

function _UIT_PreloadImages() {
	if (document.images) {
		imgThumb01 = _UIT_NewImage("img/thumb_01.jpg");
		imgThumb02 = _UIT_NewImage("img/thumb_02.jpg");
		imgThumb03 = _UIT_NewImage("img/thumb_03.jpg");
		imgThumb04 = _UIT_NewImage("img/thumb_04.jpg");
		imgThumb05 = _UIT_NewImage("img/thumb_05.jpg");
		imgThumb06 = _UIT_NewImage("img/thumb_06.jpg");

		home_s = _UIT_NewImage("img/home_s.png");
		realizzazioni_s = _UIT_NewImage("img/realizzazioni_s.png");
		contatti_s = _UIT_NewImage("img/contatti_s.png");
		main_s = _UIT_NewImage("img/main_s.gif");
		main_s024 = _UIT_NewImage("img/main_s-24.gif");
		main_s030 = _UIT_NewImage("img/main_s-30.gif");

		UIT_BASE_GB_PRELOAD_FLAG = true;
	}
}
// [END PRELOAD] ------------------------------------------------------------

// [BEG INIT] ---------------------------------------------------------------
_UIT_AddEvent(window, 'load', _UIT_PreloadImages);
// [END INIT] ---------------------------------------------------------------

