Array.prototype.exists = function(search) {
			for (var i = 0; i < this.length; i++) 
				if (this[i] == search)
					return true;
			
			return false;
		}

/*
Ritorna le dimensioni della pagina, valida per tutti i browser
se type=w, ritorna la larghezza, altrimenti l'altezza
*/
function getPageDim(type)
{
	if( window.innerHeight && window.scrollMaxY ) // Firefox 
	{
		pageWidth = window.innerWidth + window.scrollMaxX;
		pageHeight = window.innerHeight + window.scrollMaxY;
	}
	else if( document.body.scrollHeight > document.body.offsetHeight ) // all but Explorer Mac
	{
		pageWidth = document.body.scrollWidth;
		pageHeight = document.body.scrollHeight;
	}
	else // works in Explorer 6 Strict, Mozilla (not FF) and Safari
	{ 
		pageWidth = document.body.offsetWidth + document.body.offsetLeft; 
		pageHeight = document.body.offsetHeight + document.body.offsetTop; 
	}
	
	if (type=="w")
		return pageWidth;
	else
		return pageHeight;
		
}

//nasconde le select che "bucano" i div, solo su IE 6
function toggleSelect()
{
	if (vbIE6)
	{
		//inserire qui gli ID delle select che possono dare problemi al layer dei filtri
		var vaSelect = new Array;
		vaSelect[0] = "selPage2Jump";
		
		for (i=0;i<vaSelect.length;i++)
		{
			voSel = document.getElementById(vaSelect[i]);
			if (voSel)
			{
				if (voSel.style.visibility == "hidden")
					voSel.style.visibility = "visible";
				else
					voSel.style.visibility = "hidden";	
			}
		}
	}	
}

function openHelp(psPage,psAnchor)
{
	vsWinW = 900;
	vsWinH = 500;
	vsPagW = getPageDim("w");
	vsPagH = getPageDim("h");
	vsUrl = "src/html/help/index.php";
	if (psPage)
		vsUrl = vsUrl+"?page="+psPage;
	if (psAnchor)
		vsUrl = vsUrl+"&anchor="+psAnchor;	
	window.open(vsUrl,"help","width="+vsWinW+",height="+vsWinH+",top="+((vsPagH-vsWinH)/2)+",left="+((vsPagW-vsWinW)/2));
}

function resizeFrame()
{
	vnHeight = getPageDim("h");
	vnNewH = vnHeight-65;
	vnWidth = getPageDim("w");
	vnNewW = vnWidth-205;
	
	document.getElementById("help_frame").style.height=vnNewH+"px";
	document.getElementById("help_frame").style.width=vnNewW+"px";
	document.getElementById("help_frame").style.overflow="scroll";
	document.getElementById("help_frame").style.border="none";
}

function openCenteredWindow(url,name,width,height) 
{
    var left = parseInt((screen.availWidth/2) - (width/2));
    var top = parseInt((screen.availHeight/2) - (height/2));
    var windowFeatures = "width=" + width + ",height=" + height + ",left=" + left + ",top=" + top + "screenX=" + left + ",screenY=" + top + ',toolbar=no ,location=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=no';
    myWindow = window.open(url, "logibox", windowFeatures);
	//myWindow = window.open(url);
}
	

function matrObbl(vsMarchio,vsTipo)
{
	vsMarchio = vsMarchio.toUpperCase();
	vsTipo = vsTipo.toUpperCase();
	//se il marchio e tipo non sono tra quelli per cui e' obbligatoria la matricola
	if ((vsMarchio=="NIKON" && vsTipo!="ACCESSORI") || vsMarchio=="IROBOT" || vsMarchio=="MAGELLAN")
		return true;
	else
		return false;
	
}

function getElementsByClassName(_className)
{
	var _classArray = [];
	var _regExp = new RegExp('\\b' + _className + '\\b');
	var _getAllTags = document.getElementsByTagName('*');
	for(var i = 0; i < _getAllTags.length; i++)
	{
		if (_regExp.test(_getAllTags[i].className) == true)
		{
			_classArray.push(_getAllTags[i]);
		}
	}

	return _classArray;
}

document.getElementsByClassName = getElementsByClassName;

function showWaiting()
{
 voDiv = document.getElementById("divWaiting");
 voDiv.style.visibility = "visible";
 voDiv.style.display = "block";
}

function hideWaiting()
{
 voDiv = document.getElementById("divWaiting");
 voDiv.style.visibility = "hidden";
 voDiv.style.display = "none";
}
/**
* Delay for a number of milliseconds
*/
function sleep(delay)
{
    var start = new Date().getTime();
    while (new Date().getTime() < start + delay);
}	

function getInternetExplorerVersion()
// Returns the version of Internet Explorer or a -1
// (indicating the use of another browser).
{
  var rv = -1; // Return value assumes failure.
  if (navigator.appName == 'Microsoft Internet Explorer')
  {
    var ua = navigator.userAgent;
    var re  = new RegExp("MSIE ([0-9]{1,}[\.0-9]{0,})");
    if (re.exec(ua) != null)
      rv = parseFloat( RegExp.$1 );
  }
  return rv;
}

function checkVersion()
{
  var ver = getInternetExplorerVersion();

  if ( ver > -1 )
  {
    if ( ver < 7.0 )
	{ 
	  openDialog();
	  alert("Browser incompatibile!");
	  //MM_showHideLayers('apDiv_browsersupp','','show');
	}
  }
  else
  {
	if (navigator.userAgent.toLowerCase().indexOf('safari') > -1)
	{
		if (navigator.userAgent.toLowerCase().indexOf('chrome') > -1)
		{
			openDialog();
			alert("Browser incompatibile!");
			//MM_showHideLayers('apDiv_browsersupp','','show');
		}
	}
	else if (navigator.userAgent.toLowerCase().indexOf('firefox') == -1) //se non e' firefox 
	{
		openDialog();
		alert("Browser incompatibile!");
		//MM_showHideLayers('apDiv_browsersupp','','show');
	}
		
  }
}


function openDialog()
{
	$(function() {
		$("#browser-dialog").dialog({
			modal: true,
			buttons: { "Chiudi": function() { $(this).dialog("close"); } },
			closeOnEscape: false,
			width: 500
		});
		
	});
}

