JQ = jQuery.noConflict();

//quando la pagina è completamente caricata calcolo dove posizionare il div della ricerca e l'immagine di chiusura
JQ(document).ready(function() {
	calcPosition();
	calcPositionX();
	
	calcPositionOverFF();
});

//stessa cosa faccio ad ogni resize della finestra
JQ(window).resize(function() {
	calcPosition();
	calcPositionX();
});

//funzione che richiamo dall'iframe RicercaExtended.asp per settare il valore degli hdf
function setHiddenFieldsVal(category, categoryname) {
	if (category.indexOf("(") > 0)
		category = category.substring(0, category.indexOf("(")) + "'";

	JQ('#txtCategories').val(category);
	JQ('#txtCategoriesName').val(categoryname);
}

//funzione che richiamo dall'iframe RicercaExtended.asp per prendere il valore corrente da aggiornare degli hdf 
function getHiddenFieldsVal() {
	//prendo il valore dei due campi
	var strCategory = JQ('#txtCategories').val(strCategory);
	var strCategoryName = JQ('#txtCategoriesName').val(strCategoryName);
	
	//e lo metto in un array jquery per tornarlo a RicercaExtended.asp
	var objArrCategory = { 'strCategory': strCategory, 'strCategoryName': strCategoryName };
	
	return objArrCategory;
}

function removeElementFromHiddenField(sCategory, sCategoryName) {
	var arrCategory;
	var arrCategoryName;

	//prendo i valori correnti nei campi
	var objArr;
	objArr = getHiddenFieldsVal();
	
	//resituisce un array jquery, scorporo e prendo i valori
	JQ.each(objArr, function(key, val) {
		switch(key) {
			case 'strCategory':
				//inserisco i valori in un array jquery per poterli scorrere
				arrCategory = val.split(',');
				
				//scorro l'array
				JQ.each(arrCategory, function(key2, val2) {
					//se trovo dentro l'array il valore che ho passato da fuori, allora lo rimuovo
					if (JQ.trim(val2) == JQ.trim(sCategory)) {
						arrCategory[key2] = '';
					}
				});
				break;
			case 'strCategoryName':
				//inserisco i valori in un array jquery per poterli scorrere
				arrCategoryName = val.split(',');
				
				//scorro l'array
				JQ.each(arrCategoryName, function(key2, val2) {
					//se trovo dentro l'array il valore che ho passato da fuori, allora lo rimuovo
					if (JQ.trim(val2) == JQ.trim(sCategoryName)) {
						arrCategoryName[key2] = '';
					}
				});
				break;	
		}
	});
	
	//svuoto le stringhe
	sCategory = "";
	sCategoryName = "";
	
	//ricompongo le stringhe per settare i nuovi valori degli hdf
	JQ.each(arrCategory, function(key, val) {
		if (val != '') {
			if (sCategory == '')
				sCategory = val;
			else
				sCategory = sCategory + ',' + val
		}
	});
	JQ.each(arrCategoryName, function(key, val) {
		if (val != '') {
			if (sCategoryName == '')
				sCategoryName = val;
			else
				sCategoryName = sCategoryName + ',' + val
		}
	});
	
	setHiddenFieldsVal(sCategory, sCategoryName);
}

function showRicerca(where) {
	if ((!JQ('#iframeRicercaExtended').attr("src"))&&((JQ('#txtSearchPhrase').val() != ''))) {
		JQ('#iframeRicercaExtended').attr("src", "/RicercaExtended.asp?where=" + where);
		
		JQ('#iframeRicercaExtended').attr({
			src: JQ('#iframeRicercaExtended').attr("src")
		});
	}
	
	//se viene richiamata la ricerca (ad ogni keyup) MA il valore passato è vuoto, nascondo il greybox
	if (JQ('#txtSearchPhrase').val() == '') {
		hideGreyBox();
	}
	//altrimenti, se c'è qualcosa nel campo della ricerca
	else {
		//se il greybox è già fuori (ovvero se nel campo ricerca c'è qualcosa di scritto)
		if(JQ('#divGreybox').is(':visible')) {
			//aggiorno solamente il valore passato
			JQ('#txtRicerca').val('Cerca \'' + JQ('#txtSearchPhrase').val() + '\' in:');
		}
		//se invece è il primo keyup
		else {
			var left;
			var top;
			var top2;
			var scartoLeft;
			var scartoTop;
			
			//calcolo top e left per usarli per posizionare la x
			var arr = JQ('#txtSearchPhrase').offset();
			JQ.each(arr, function(key, val) {
				switch(key) {
					case "top":
						top = arr[key];
						break;
					case "left":
						left = arr[key];
						break;	
				}
			});
			
			//calcolo l'altezza della pagina per sapere quanto fare alto il greybox
			arr = JQ('.piede:last').offset();
			JQ.each(arr, function(key, val) {
				switch(key) {
					case "top":
						top2 = arr[key];
						break;
				}
			});
			
			//creo i div
			JQ('#bannerff').append('<div id=\"divGreybox\">&#160;</div>');
			JQ('body').append('<div id=\"divCloseGreybox\"><img id=\"imgChiudiRicerca\" src=\"img/Com/chiudiricerca.png\" width=\"25\" height=\"25\"/></div>');
			
			//gli assegno l'evento onclick
			JQ('#divGreybox').click(function() {
				hideGreyBox();
			});
			JQ('#divCloseGreybox').click(function() {
				hideGreyBox();
			});
			
			//faccio uscire la manina quando si va sopra la "X" rossa
			JQ('#imgChiudiRicerca').mouseover(function() {
				JQ('#imgChiudiRicerca').css('cursor','pointer').css('z-index', '100000');
			});
			
			//setto le proprietà di stile del greybox (grigio semitrasparente con z-index più alto di tutto tranne che del div della ricerca)
			JQ('#divGreybox') 
			.css('display','none') 
			.css('opacity','0.7') 
			.css('position','absolute') 
			.css('background-color','black') 
			.css('z-index','9000') 
			.css('height',parseInt(top2)+110) 
			.css('top','0') 
			.css('left','0') 
			.css('width','100%');
						
			
			//calcolo l'offset della "X" rispetto al div della ricerca (variabile da browser a browser)
			if (JQ.browser.msie) {
				scartoLeft = -120;
				scartoTop = 340;
			}
			else if (JQ.browser.mozilla) {
				scartoLeft = -120;
				scartoTop = 330;
			}
			else if (JQ.browser.safari) {
				scartoLeft = -121;
				scartoTop = 331;
			}
			else {
				scartoLeft = -115;
				scartoTop = 331;
			}
			
			//setto le proprietà di stile della "X" rossa (z-index più alto di tutto)
			JQ('#divCloseGreybox')
			.css('display','none')
			.css('position','absolute') 
			.css('z-index','11000') 
			.css('top',(parseInt(top)+parseInt(scartoTop)))
			.css('left',(parseInt(left)-parseInt(scartoLeft)));
			
			//faccio un fadeIn del greybox
			JQ('#divGreybox').fadeIn('fast', function () { 
				//faccio uscire a tendina il div della ricerca
				JQ('#divRicerca').slideDown('slow', function() {
					//setto il valore della parola scritta
					JQ('#txtRicerca').val('Cerca \'' + JQ('#txtSearchPhrase').val() + '\' in:');
					
					//faccio un fadeIn per far comparire il contenuto del div ricerca
					JQ('#divInRicerca').fadeIn('slow', function() { 
						//concluso tutto faccio comparire la "X" rossa per la chiusura
						JQ('#divCloseGreybox').fadeIn('fast');
					});
				});
			});
			
			 
		}
	}
}

//nascondo tutti gli elementi relativi alla ricerca
function hideGreyBox() {
	JQ('#divGreybox').hide(); 
	JQ('#divCloseGreybox').hide(); 
	JQ('#divRicerca').hide();
	JQ('#divGreybox').remove();
	JQ('#divCloseGreybox').remove(); 
}

//calcola l'elemento che il focus
function calcFocus() {
	//se non è sul campo ricerca
	if (JQ('#txtSearchPhrase').is(':focus') != true) {
		//nascondo il contenuto del div ricerca
		JQ('#divInRicerca').hide();
	}
	//altrimenti va fatta comparire la ricerca
	else {
		showRicerca();
	}
}

//calcola le coordinate per il posizionamento della X
function calcPositionX() {
	var left;
	var top;
	var scartoTop;
	var scartoLeft;
	
	//calcolo top e left per usarli per posizionare la x
	var arr = JQ('#txtSearchPhrase').offset();
	JQ.each(arr, function(key, val) {
		switch(key) {
			case "top":
				top = arr[key];
				break;
			case "left":
				left = arr[key];
				break;	
		}
	});
	
	//calcolo l'offset rispetto al div della ricerca (variabile da browser a browser)
	if (JQ.browser.msie) {
		scartoLeft = -120;
		scartoTop = 340;
	}
	else if (JQ.browser.mozilla) {
		scartoLeft = -120;
		scartoTop = 330;
	}
	else if (JQ.browser.safari) {
		scartoLeft = -121;
		scartoTop = 331;
	}
	else {
		scartoLeft = -115;
		scartoTop = 331;
	}
	
	//assegna le proprietà di stile
	JQ('#divCloseGreybox')
	.css('top',parseInt(top)+parseInt(scartoTop))
	.css('left',parseInt(left)-parseInt(scartoLeft));
}

function calcPosition() {
	var browserOffset;
	
	//calcolo gli offset differenti da browser a browser
	if (JQ.browser.msie) 
		browserOffset = { 'top': 15, 'left': 178 };
	else if (JQ.browser.mozilla)
		browserOffset = { 'top': 14, 'left': 180 };
	else if (JQ.browser.safari)
		browserOffset = { 'top': 15, 'left': 183 };
	else
		browserOffset = { 'top': 15, 'left': 183 };
	
	//trova la posizione dell'input della ricerca
	var arrPosition = JQ('#txtSearchPhrase').offset();
	
	//modifico la posizione del div
	JQ.each(arrPosition, function(key, val) {
		switch(key) {
			case "top":
				arrPosition[key] = arrPosition[key] + browserOffset[key];
				break;
			case "left":
				arrPosition[key] = arrPosition[key] - browserOffset[key];
				break;	
		}
	});
	
	//setta le nuove coordinate al div della ricerca
	JQ('#divRicerca').css(arrPosition);
}

function doFadeIn()
{
	JQ('#iframeForgotPassword').attr("src", "/ForgotPassword.asp");
	
	JQ('#iframeForgotPassword').attr({
		src: JQ('#iframeForgotPassword').attr("src")
	});
	JQ('#divForgotPassword').fadeIn('slow');
}

function reloadAndFocus(sLink) 
{
	alert('dentro a reloadAndFocus');
	window.location.href = sLink;
	window.focus();
}

function calcPositionOverFF() {
	//bindClickFF();
	//bindMouseOverFF();
	
	//var top;
	//var left;
	
	//calcolo top e left per usarli per posizionare la x
	//var arr = JQ("#credits").offset();
	//JQ.each(arr, function (key, val) {
	//	switch (key) {
	//		case "top":
	//			top = arr[key];
	//			break;
	//		case "left":
	//			left = arr[key];
	//			break;
	//	}
	//});
	
	//JQ("#bannerff").css("height", top + 80);
}

function bindClickFF(e) {
	//JQ("#bannerff").bind("click", function() {
	//	var element;
	//	
	//	if (window.event) {
	//		element = e.srcElement;
	//	}
	//	else if (e)	{
	//		element = e.target;
	//	}
	//	
	//	if (typeof element.type === "undefined") {
	//		window.location.href = "/Redirect.asp?id=19";
	//	}
	//});
}

function unbindClickFF() {
	//JQ("#bannerff").unbind("click");
}

function bindMouseOverFF() {
	//JQ("#bannerff").bind("mouseover", attachMouseOver);
}

function unbindMouseOverFF() {
	//JQ("#bannerff").unbind("mouseenter mouseleave mouseover mouseout");
	//detachMouseOver();
}

function attachMouseOver() {
	//JQ("#bannerff").css("cursor", "pointer");
}

function detachMouseOver() {
	//JQ("#bannerff").css("cursor", "default");
}

/* img_rot.js */
function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_findObj(n, d) { //v4.0
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && document.getElementById) x=document.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}	

/* logon.js */
function SubmitCheck()
{
	//Ensures user enters a User Name and Password
	var strUserName = document.forms["frmLogin"].txtUserName.value;
			
	if (strUserName.length == 0){
		alert("Attenzione! Inserire la Login");
		document.forms["frmLogin"].txtUserName.focus();
		return false;
	}

	var strPassword = document.forms["frmLogin"].txtPassword.value;
			
	if (strPassword.length == 0){
		alert("Attenzione! Inserire la Password");
		document.forms["frmLogin"].txtPassword.focus();
		return false;
	}

	var strPasswordPreBlanks = document.forms["frmLogin"].txtPassword.value;
	StripBlanks('txtPassword')
	var strPassword = document.forms["frmLogin"].txtPassword.value;	

	if (strPassword.length != strPasswordPreBlanks.length) {
		alert("Please enter a password that does not begin or end with blank spaces.");
		document.forms["frmLogin"].txtPassword.value = "";
		document.forms["frmLogin"].txtPassword.focus();
		return false;
	}
	
	//Redirect alla pagina che ha generato l'errore
	if (document.frmError != null)
	{
		var strRedirectURL = document.frmError.RedirectURL.value;
		if (strRedirectURL.length > 0){
			document.forms["frmLogin"].RedirectURL.value = strRedirectURL;
		}
	}
				
	return true;
}

function SubmitCheckFallco(){
	//Ensures user enters a User Name and Password
	var strUserName = document.forms["frmFallco"].txtUserName.value;
			
	if (strUserName.length == 0){
		alert("Attenzione! Inserire la Login");
		document.forms["frmFallco"].txtUserName.focus();
		return false;
	}

	var strPassword = document.forms["frmFallco"].txtPassword.value;
			
	if (strPassword.length == 0){
		alert("Attenzione! Inserire la Password");
		document.forms["frmFallco"].txtPassword.focus();
		return false;
	}

	var strPasswordPreBlanks = document.forms["frmFallco"].txtPassword.value;
	StripBlanks('txtPassword')
	var strPassword = document.forms["frmFallco"].txtPassword.value;	

	if (strPassword.length != strPasswordPreBlanks.length) {
		alert("Please enter a password that does not begin or end with blank spaces.");
		document.forms["frmFallco"].txtPassword.value = "";
		document.forms["frmFallco"].txtPassword.focus();
		return false;
	}
	
	//Redirect alla pagina che ha generato l'errore
	if (document.frmError != null)
	{
		var strRedirectURL = document.frmError.RedirectURL.value;
		if (strRedirectURL.length > 0){
			document.forms["frmLogin"].RedirectURL.value = strRedirectURL;
		}
	}
				
	return true;
}

function StripBlanks(strFieldName) {
	// receives field name as input. Strips leading and trailing blanks from the specified form field.

	// regExp to match leading blanks
	var reStartBlanks = /^\s*/;
	// regExp to match trailing blanks
	var reEndBlanks = /\s*$/;	
	
	// replace contents of specified form field with the current value with leading, then trailing
	// blanks replaced with empty string.
	document.getElementById(strFieldName).value = document.getElementById(strFieldName).value.replace(reStartBlanks,"");
	document.getElementById(strFieldName).value = document.getElementById(strFieldName).value.replace(reEndBlanks,"");
}

/* menu.js */
var defaultChoice;
defaultChoice = "";

function showSub(fatherId, childId, position) 
{
    var fatherObj;
    var childObj;
    
    var contentDivList;
    var contentMainDivList;
    var contentDiv;
    var contentMainDiv;
	
	JQ("img[name='divisorio']").show();
	JQ("#sfAutoMenu" + (position)).hide();
	JQ("#sfAutoMenu" + (position-1)).hide();
	
    fatherObj = document.getElementById(fatherId);
    childObj = document.getElementById(childId);
	
    contentMainDiv = document.getElementById('MainLevel');
    contentMainDivList = contentMainDiv.getElementsByTagName('*');
    contentDiv = document.getElementById('FirstLevel');
    contentDivList = contentDiv.getElementsByTagName('*');
    
    for (i = 0; i < contentMainDivList.length; i++)
    {
        if (contentMainDivList[i].nodeName == 'TD')
        {
            if (contentMainDivList[i].name != 'doNotTouch')
            {
                if (contentMainDivList[i].className != 'sfareautente')
                    contentMainDivList[i].className = 'sfmenu';
            }
        }
    }
    
    for (j = 0; j < contentDivList.length; j++)
    {
        if (contentDivList[j].nodeName == 'DIV')
        {
            contentDivList[j].style.display = 'none';
        }
    }
	
    fatherObj.className = 'sftestomenuon';
    childObj.style.display = 'block';
	
	if ((fatherId != 'areautenteregistrato')&&(fatherId != 'areautenteabbonato'))
	{
		var utenteregistrato = document.getElementById('areautenteregistrato');
		var utenteabbonato = document.getElementById('areautenteabbonato');
	
		if (utenteregistrato != null)
			utenteregistrato.className = 'sfareautente';
		else if (utenteabbonato != null)
			utenteabbonato.className = 'sfareautente';
	}
	
	clearCP(childId);
}

function showCP(action, fatherId, childId, chosenChoice)
{
	if (defaultChoice == "")
		defaultChoice = chosenChoice;

    var fatherObj;
    var childObj;
    var shadowObj;
    var nomeClasseUp;
    var nomeClasseDown;
	
    fatherObj = document.getElementById(fatherId);
    childObj = document.getElementById(childId);
    shadowObj = document.getElementById(fatherId + 'ombra');
	
    switch(action)
    {
        case 'show':
            if (fatherId != defaultChoice)
                fatherObj.className = 'testomenu2';
            else
                fatherObj.className = 'testomenu3';
            
            shadowObj.className = 'menuombra';
			JQ("#" + childId).show();
			
			if (JQ("#divtable" + childId.substring(2)).attr("class") != "doneShadow")
			{
				JQ("#divtable" + childId.substring(2)).attr("class", "doneShadow");
				JQ("#divtable" + childId.substring(2)).shadow();
			}
            break;
        case 'hide':
            if (fatherId != defaultChoice)
            {
                fatherObj.className = 'testomenu1';
                shadowObj.className = 'testomenu1';
            }
            else
            {
                fatherObj.className = 'testomenu4';
            }
            
            childObj.style.display = 'none';
            break;
    }
}

function keepCP(action, childId, grandFatherId, parentId)
{
    var childObj;
    var fatherObj;
    var grandFatherObj;
    var parentObj;
    
    var className = '';
    var visibility = '';
    
    childObj = document.getElementById(childId);
    grandFatherObj = document.getElementById(grandFatherId);
    parentObj = document.getElementById(parentId);
    shadowObj = document.getElementById(parentId + 'ombra');
	
    switch(action)
    {
        default:
            color = '';
            visibility = '';
            break;
        case 'keep':
            visibility = 'block';
            if (parentId != defaultChoice)
                className = 'testomenu5';
            else
                className = 'testomenu3';
                
            shadowObj.className = 'menuombra';
            break;
        case 'remove':
            visibility = 'none';
			if (parentId != defaultChoice)
			{
				className = 'testomenu1';
				shadowObj.className = className;
			}
			else
			{
				className = 'testomenu4';
			}
            break;
    }

    childObj.style.display = visibility;
    parentObj.className = className;
	
	clearCP(childId);
}

function clearCP(divNotToClearId)
{
	var cpList;
	var cp;
	
	cpList = document.getElementsByTagName('div');
	for(i = 0; i < cpList.length; i++)
	{
		if (cpList[i].id != divNotToClearId)
		{
			if (cpList[i].id.substring(0, 2) == 'cp')
			{
				document.getElementById(cpList[i].id).style.display = 'none';
			}
		}
	}
}

/* checkdiv.js */
function checkDiv()
{
	var div = document.getElementById('FirstLevel');
	var arrDiv = div.getElementsByTagName('div');
	
	var count = arrDiv.length;
	
	var obj;
	var check = false;

	for(i = 0; i < count; i++)
	{
		obj = document.getElementById(arrDiv[i].id);
		//alert(obj.id + " " + obj.style.display);
		if (obj.style.display == 'block')
		{
			check = false;
			break;
		}
		else
			check = true;
	}

	if (check)
		document.getElementById(arrDiv[2].id).style.display = 'block';
}

/* generic.js */
function getObj(name)
{
	if (document.getElementById)
	{
		if (name!='' && document.getElementById(name)) 
		{
			this.obj = document.getElementById(name);
			this.style = document.getElementById(name).style; //riga 50
		}
	}
	else if (document.all)
	{
		this.obj = document.all[name];
		this.style = document.all[name].style;
	}
	else if (document.layers)
	{
		if (document.layers[name])
		{
			this.obj = document.layers[name];
			this.style = document.layers[name];
		}
		else
		{
			this.obj = document.layers.testP.layers[name];
			this.style = document.layers.testP.layers[name];
		}
	}
}

function findPosX(obj)
{
	var curleft = 0;
	curleft += obj.offsetWidth;
	
	if (obj.offsetParent)
	{
		while (obj.offsetParent)
		{
		curleft += obj.offsetLeft;
		obj = obj.offsetParent;
		}
	}
	else if (obj.x)
	{
		curleft += obj.x;
	}
	
	return curleft;
}

function findPosY(obj)
{
	var curtop = 0;
	var level = 0;
	
	if (obj.offsetParent)
	{
		while (obj.offsetParent)
		{
		curtop += obj.offsetTop;
		obj = obj.offsetParent;
		}
	}
	else if (obj.y)
	{
		curtop += obj.y;
	}
	
	return curtop;
}

/* print.js */
var d = new Date();
var iYear = d.getFullYear();

function StampaDocumento(Servizio,Fonte,ViewTestata,campo1,campo2,campo3,size1,size2,size3,profilo){
	var child;
	var DataEstrazione;
	var NewData;
	var NewTime;
	var oDiv = new getObj('doc');
				
	DataEstrazione = new Date();
				
	NewData = DataEstrazione.getDate() + '/' + (DataEstrazione.getMonth() + 1) + '/' + DataEstrazione.getFullYear();
	NewTime = DataEstrazione.getHours() + ':' + DataEstrazione.getMinutes() + ':' + DataEstrazione.getSeconds();
					
	child = window.open('','docchild','toolbar=0,scrollbars=1,location=0,statusbar=0,menubar=1,resizable=1,width=760,height=400,left = 100,top = 234');
	child.document.write('<html>');
	child.document.write('<head>');
	child.document.write('<base href="http://sdi2.supermercato.it">');
	child.document.write('<title>::   Sd&igrave;    ::  Supermercato dell\'&igrave;nformazione - ' + Servizio + ' \(Versione per la stampa\)</title>');
	child.document.write('<style>');
	child.document.write('BODY {FONT-FAMILY:Arial, Helvetica, sans-serif;}');
	child.document.write('</style>');
	if (profilo == "ungdc")
	{
		child.document.write('<LINK href="img/ungdc/sdi.css" rel="stylesheet" rev="stylesheet" type="text/css" />');
		child.document.write('<LINK href="img/ungdc/menu.css" rel="stylesheet" rev="stylesheet" type="text/css" />');	
	}
	else
	{
		child.document.write('<LINK href="img/com/sdi.css" rel="stylesheet" rev="stylesheet" type="text/css" />');
		child.document.write('<LINK href="img/com/menu.css" rel="stylesheet" rev="stylesheet" type="text/css" />');
	}
	child.document.write('</head>');
	child.document.write('<body bgcolor="#ffffff" onload="javascript:window.focus();window.print()">');
	if ((Servizio == 'Visure Ordinarie' || Servizio == 'Visure Storiche' || Servizio == 'Visura con Autocertificazione')){
		child.document.write('<table width="596" border="0" cellpadding="0" cellspacing="0">');	
	}else{
		child.document.write('<table width="596" border="0" cellpadding="0" cellspacing="0">');
	}
	if (ViewTestata == 'True') 
	{
		child.document.write('<tr><td align="center"><font style="FONT-SIZE:' + size1 + 'px; COLOR:#333333;">' + campo1 + '</font></td></tr>');
		child.document.write('<tr><td align="center"><font style="FONT-SIZE:' + size2 + 'px; COLOR:#333333;">' + campo2 + '</font></td></tr>');
		child.document.write('<tr><td align="center"><font style="FONT-SIZE:' + size3 + 'px; COLOR:#333333;">' + campo3 + '</font></td></tr>');
	}
	child.document.write('<tr><td><hr style="color: #333333; height: 2px"/></td></tr>');
	child.document.write('<tr><td><b><font style="FONT-SIZE:11px; COLOR:#DA0000;">Distribuito da: </font><font style="FONT-SIZE:11px; COLOR:#333333;">Sd&igrave; Supermercato dell\'Informazione</font></b></td></tr>');
	child.document.write('<tr><td><font style="FONT-SIZE:11px; COLOR:#333333;"><b>Servizio: </b>' + Servizio + '</font></td></tr>');
	child.document.write('<tr><td><font style="FONT-SIZE:11px; COLOR:#333333;"><b>Fonte: </b>' + Fonte + '</font></td></tr>');
	child.document.write('<tr><td><font style="FONT-SIZE:11px; COLOR:#333333;"><b>Estrazione del: </b>' + NewData + '<b> alle ore: </b>' + NewTime + '</font></td></tr>');
	child.document.write('<tr><td><hr style="color: #333333; height: 2px"/></td></tr>');
	child.document.write('<tr><td height="15"><img src="images/spacer.gif" width="1" height="1" border="0"/></td></tr>');								
	child.document.write('</table>');
	child.document.write(oDiv.obj.innerHTML);
	
	if ((Servizio == 'Listino' || Servizio == 'Visure Ordinarie' || Servizio == 'Visure Storiche' || Servizio == 'Visura con Autocertificazione')){
		child.document.write('<br/><br/><table width="596" border="0" cellpadding="0" cellspacing="0" align="center">');	
	}else{
		child.document.write('<br/><br/><table width="596" border="0" cellpadding="0" cellspacing="0" align="center">');
	}
	child.document.write('<tr>'); 
	child.document.write('<td class="testostandard_nopadding_nograssetto_nounderline" style="text-align:center;">&#169; ' + iYear + ' Zucchetti spa Sd&#236; Supermercato dell\'&#236;nformazione - Tutti i diritti riservati</td>');
	child.document.write('</tr>');
	child.document.write('</table><br><br>');
	child.document.write('</body>');
	child.document.write('</html>');
	child.document.close();
}

function StampaDocumentoREA(Servizio,Fonte,ViewTestata,campo1,campo2,campo3,size1,size2,size3,profilo){
	var child;
	var DataEstrazione;
	var NewData;
	var NewTime;
	var oDiv = new getObj('docREA');
				
	DataEstrazione = new Date();
				
	NewData = DataEstrazione.getDate() + '/' + (DataEstrazione.getMonth() + 1) + '/' + DataEstrazione.getFullYear();
	NewTime = DataEstrazione.getHours() + ':' + DataEstrazione.getMinutes() + ':' + DataEstrazione.getSeconds();
					
	child = window.open('','docchild','toolbar=0,scrollbars=1,location=0,statusbar=0,menubar=1,resizable=1,width=760,height=400,left = 100,top = 234');
	child.document.write('<html>');
	child.document.write('<head>');
	child.document.write('<base href="http://sdi2.supermercato.it">');
	child.document.write('<title>::   Sd&igrave;    ::  Supermercato dell\'&igrave;nformazione - ' + Servizio + ' \(Versione per la stampa\)</title>');
	child.document.write('<style>');
	child.document.write('BODY {FONT-FAMILY:Arial, Helvetica, sans-serif;}');
	child.document.write('</style>');
	if (profilo == "ungdc")
	{
		child.document.write('<LINK href="img/ungdc/sdi.css" rel="stylesheet" rev="stylesheet" type="text/css" />');
		child.document.write('<LINK href="img/ungdc/menu.css" rel="stylesheet" rev="stylesheet" type="text/css" />');	
	}
	else
	{
		child.document.write('<LINK href="img/com/sdi.css" rel="stylesheet" rev="stylesheet" type="text/css" />');
		child.document.write('<LINK href="img/com/menu.css" rel="stylesheet" rev="stylesheet" type="text/css" />');
	}
	child.document.write('</head>');
	child.document.write('<body bgcolor="#ffffff" onload="javascript:window.focus();window.print()">');
	if ((Servizio == 'Visure Ordinarie' || Servizio == 'Visure Storiche' || Servizio == 'Visura con Autocertificazione')){
		child.document.write('<table width="596" border="0" cellpadding="0" cellspacing="0">');	
	}else{
		child.document.write('<table width="596" border="0" cellpadding="0" cellspacing="0">');
	}
	if (ViewTestata == 'True') 
	{
		child.document.write('<tr><td align="center"><font style="FONT-SIZE:' + size1 + 'px; COLOR:#333333;">' + campo1 + '</font></td></tr>');
		child.document.write('<tr><td align="center"><font style="FONT-SIZE:' + size2 + 'px; COLOR:#333333;">' + campo2 + '</font></td></tr>');
		child.document.write('<tr><td align="center"><font style="FONT-SIZE:' + size3 + 'px; COLOR:#333333;">' + campo3 + '</font></td></tr>');
	}
	child.document.write('<tr><td><hr style="color: #333333; height: 2px"/></td></tr>');
	child.document.write('<tr><td><b><font style="FONT-SIZE:11px; COLOR:#DA0000;">Distribuito da: </font><font style="FONT-SIZE:11px; COLOR:#333333;">Sd&igrave; Supermercato dell\'Informazione</font></b></td></tr>');
	child.document.write('<tr><td><font style="FONT-SIZE:11px; COLOR:#333333;"><b>Servizio: </b>' + Servizio + '</font></td></tr>');
	child.document.write('<tr><td><font style="FONT-SIZE:11px; COLOR:#333333;"><b>Fonte: </b>' + Fonte + '</font></td></tr>');
	child.document.write('<tr><td><font style="FONT-SIZE:11px; COLOR:#333333;"><b>Estrazione del: </b>' + NewData + '<b> alle ore: </b>' + NewTime + '</font></td></tr>');
	child.document.write('<tr><td><hr style="color: #333333; height: 2px"/></td></tr>');
	child.document.write('<tr><td height="15"><img src="images/spacer.gif" width="1" height="1" border="0"/></td></tr>');								
	child.document.write('</table>');
	child.document.write(oDiv.obj.innerHTML);
	if ((Servizio == 'Listino' || Servizio == 'Visure Ordinarie' || Servizio == 'Visure Storiche' || Servizio == 'Visura con Autocertificazione')){
		child.document.write('<br/><br/><table width="596" border="0" cellpadding="0" cellspacing="0" align="center">');	
	}else{
		child.document.write('<br/><br/><table width="596" border="0" cellpadding="0" cellspacing="0" align="center">');
	}
	child.document.write('<tr>'); 
	child.document.write('<td class="testostandard_nopadding_nograssetto_nounderline" style="text-align:center;">&#169; ' + iYear + ' Zucchetti spa Sd&#236; Supermercato dell\'&#236;nformazione - Tutti i diritti riservati</td>');
	child.document.write('</tr>');
	child.document.write('</table><br><br>');
	child.document.write('</body>');
	child.document.write('</html>');
	child.document.close();
}


function StampaDocumentoArchivio(Servizio,Fonte,DataRichiesta,ViewTestata,campo1,campo2,campo3,size1,size2,size3,profilo){
	var child;
	var DataElaborazione;
	var oDiv = new getObj('doc');
	
	DataElaborazione = DataRichiesta;
				
	child = window.open('','docchild','toolbar=0,scrollbars=1,location=0,statusbar=0,menubar=1,resizable=1,width=760,height=400,left = 100,top = 234');
	child.document.write('<html>');
	child.document.write('<head>');
	child.document.write('<base href="http://sdi2.supermercato.it">');
	child.document.write('<title>::   Sd&igrave;    ::  Supermercato dell\'&igrave;nformazione - ' + Servizio + ' \(Versione per la stampa\)</title>');
	child.document.write('<style>');
	child.document.write('BODY {FONT-FAMILY:Arial, Helvetica, sans-serif;}');
	child.document.write('</style>');
	if (profilo == "ungdc")
	{
		child.document.write('<LINK href="img/ungdc/sdi.css" rel="stylesheet" rev="stylesheet" type="text/css" />');
		child.document.write('<LINK href="img/ungdc/menu.css" rel="stylesheet" rev="stylesheet" type="text/css" />');
	}
	else
	{
		child.document.write('<LINK href="img/com/sdi.css" rel="stylesheet" rev="stylesheet" type="text/css" />');
		child.document.write('<LINK href="img/com/menu.css" rel="stylesheet" rev="stylesheet" type="text/css" />');	
	}
	child.document.write('</head>');
	child.document.write('<body bgcolor="#ffffff" onload="javascript:window.focus();window.print()">');
	
	if ((Servizio == 'Visura Ordinaria' || Servizio == 'Visura Storica' || Servizio == 'Visura con autocertificazione')){
		child.document.write('<table width="596" border="0" cellpadding="0" cellspacing="0">');	
	}else{
		child.document.write('<table width="596" border="0" cellpadding="0" cellspacing="0">');	
	}
	
	if (ViewTestata == 'True') 
	{
		child.document.write('<tr><td align="center"><font style="FONT-SIZE:' + size1 + 'px; COLOR:#333333;">' + campo1 + '</font></td></tr>');
		child.document.write('<tr><td align="center"><font style="FONT-SIZE:' + size2 + 'px; COLOR:#333333;">' + campo2 + '</font></td></tr>');
		child.document.write('<tr><td align="center"><font style="FONT-SIZE:' + size3 + 'px; COLOR:#333333;">' + campo3 + '</font></td></tr>');
	}
	child.document.write('<tr><td><hr style="color: #333333; height: 2px"/></td></tr>');
	child.document.write('<tr><td><b><font style="FONT-SIZE:11px; COLOR:#DA0000;">Distribuito da: </font><font style="FONT-SIZE:11px; COLOR:#333333;">Supermercato dell\'Informazione</font></b></td></tr>');
	child.document.write('<tr><td><font style="FONT-SIZE:11px; COLOR:#333333;"><b>Servizio: </b>' + Servizio + '</font></td></tr>');
	child.document.write('<tr><td><font style="FONT-SIZE:11px; COLOR:#333333;"><b>Fonte: </b>' + Fonte + '</font></td></tr>');
	child.document.write('<tr><td><font style="FONT-SIZE:11px; COLOR:#333333;"><b>Estrazione del: </b>' + DataElaborazione + '</font></td></tr>');
	child.document.write('<tr><td><hr style="color: #333333; height: 2px"/></td></tr>');
	child.document.write('<tr><td height="15">&#160;</td></tr>');								
	child.document.write('</table>');
	
	if ((Servizio == 'Visura Ordinaria' || Servizio == 'Visura Storica' || Servizio == 'Visura con autocertificazione')){
		// MBB modifica per archivio = visualizza le visure con carattere piccolo ma le stampa con carattere grande 
		myString = new String(oDiv.obj.innerHTML);
		var results = myString.replace('testovisura', 'testovisura12');
		var results = results.replace('width=536', 'width=618');
		child.document.write(results);
	}else{
		child.document.write(oDiv.obj.innerHTML);
	}
	
	if ((Servizio == 'Visura Ordinaria' || Servizio == 'Visura Storica' || Servizio == 'Visura con autocertificazione')){
		child.document.write('<br/><br/><table width="596" border="0" cellpadding="0" cellspacing="0" align="center">');	
	}else{
		child.document.write('<br/><br/><table width="596" border="0" cellpadding="0" cellspacing="0" align="center">');
	}
	child.document.write('<tr>'); 
	child.document.write('<td class="testostandard_nopadding_nograssetto_nounderline" style="text-align:center;">&#169; ' + iYear + ' Zucchetti spa Sd&#236; Supermercato dell\'&#236;nformazione - Tutti i diritti riservati</td>');
	child.document.write('</tr>');
	child.document.write('</table><br><br>');
	child.document.write('</body>');
	child.document.write('</html>');	
	child.document.close();
			
}

function StampaDocumentoGenerico(Servizio,Fonte,ViewTestata,campo1,campo2,campo3,size1,size2,size3,profilo){
	var child;					
	var DataEstrazione;
	var NewData;
	var oDiv = new getObj('doc');
				
	DataEstrazione = new Date();
				
	NewData = DataEstrazione.getDate() + '/' + (DataEstrazione.getMonth() + 1) + '/' + DataEstrazione.getFullYear();	
	
	child = window.open('','docchild','toolbar=0,scrollbars=1,location=0,statusbar=0,menubar=1,resizable=1,width=760,height=400,left = 100,top = 234');
	child.document.write('<html>');
	child.document.write('<head>');
	child.document.write('<base href="http://sdi2.supermercato.it">');
	child.document.write('<title>::   Sd&igrave;    ::  Supermercato dell\'&igrave;nformazione - ' + Servizio + ' \(Versione per la stampa\)</title>');
	child.document.write('<style>');
	child.document.write('BODY {FONT-FAMILY:Arial, Helvetica, sans-serif;}');
	child.document.write('</style>');
	if (profilo == "ungdc")
	{
		child.document.write('<LINK href="img/ungdc/sdi.css" rel="stylesheet" rev="stylesheet" type="text/css" />');
		child.document.write('<LINK href="img/ungdc/menu.css" rel="stylesheet" rev="stylesheet" type="text/css" />');
	}
	else
	{
		child.document.write('<LINK href="img/com/sdi.css" rel="stylesheet" rev="stylesheet" type="text/css" />');
		child.document.write('<LINK href="img/com/menu.css" rel="stylesheet" rev="stylesheet" type="text/css" />');
	}
	child.document.write('</head>');
	child.document.write('<body bgcolor="#ffffff" onload="javascript:window.focus();window.print()">');
	child.document.write('<table width="596" border="0" cellpadding="0" cellspacing="0">');	
	if (profilo == "sistemia")
		{
		child.document.write('<tr><td class="titolovocimenusu" style="text-align:left;padding-left:52px;"><span class="sdirosso">SOL</span> ' + Servizio + '<br><font style="FONT-SIZE:12px; COLOR:#333333;">Supermercato dell\'Informazione</font><br><font style="FONT-SIZE:12px; COLOR:#333333;">http://sistemiaonline.it</font><br><font style="FONT-SIZE:12px; COLOR:#333333;">stampa del ' + NewData +'</font></td></tr>');
		}
	else
	{
		child.document.write('<tr><td class="titolovocimenusu" style="text-align:left;padding-left:52px;"><span class="sdirosso">Sd&#236;</span> ' + Servizio + '<br><font style="FONT-SIZE:12px; COLOR:#333333;">Supermercato dell\'Informazione</font><br><font style="FONT-SIZE:12px; COLOR:#333333;">http://www.supermercato.it</font><br><font style="FONT-SIZE:12px; COLOR:#333333;">stampa del ' + NewData +'</font></td></tr>');
	}
	child.document.write('<tr><td height="15"><img src="images/spacer.gif" width="1" height="1" border="0"/></td></tr>');								
	child.document.write('</table>');
	child.document.write(oDiv.obj.innerHTML);
	child.document.write('<br/><br/><table width="596" border="0" cellpadding="0" cellspacing="0" align="center">');	
	child.document.write('<tr>'); 
	child.document.write('<td class="testostandard_nopadding_nograssetto_nounderline" style="text-align:center;">&#169; ' + iYear + ' Zucchetti spa Sd&#236; Supermercato dell\'&#236;nformazione - Tutti i diritti riservati</td>');
	child.document.write('</tr>');
	child.document.write('</table><br><br>');
	child.document.write('</body>');
	child.document.write('</html>');
	child.document.close();
}

function StampaDocumentoSOS(profilo)
{
	var child;
	var DataEstrazione;
	var NewData;
	var NewTime;
	
	DataEstrazione = new Date();
	NewData = DataEstrazione.getDate() + '/' + (DataEstrazione.getMonth() + 1) + '/' + DataEstrazione.getFullYear();
	NewTime = DataEstrazione.getHours() + ':' + DataEstrazione.getMinutes() + ':' + DataEstrazione.getSeconds();

	child = window.open('','print','toolbar=0,scrollbars=1,location=0,statusbar=0,menubar=1,resizable=1,width=660,height=650,left = 100,top = 234');
	child.document.write('<html>');
	child.document.write('<head>');
	child.document.write('<base href="http://sdi2.supermercato.it">');
	child.document.write('<title></title>');
	if (profilo == "com")
	{
		child.document.write('<link rel="stylesheet" type="text/css" href="/img/com/sdi.css">');
	}
	else
	{
		child.document.write('<link rel="stylesheet" type="text/css" href="/img/ungdc/sdi.css">');
	}
	child.document.write('</head>');
	child.document.write('<body bgcolor="#ffffff" onload="javascript:window.focus();window.print();">');
	//child.document.write('<table width="447" cellpadding="0" cellspacing="0" border="0" align="center"><tr><td height="42" class="titolosezione">Speciali - SOStitutiva</td></tr></table>');
	
	child.document.write('<table width="447" cellpadding="0" cellspacing="0" border="0" align="center">');
	child.document.write('<tr><td align="right"><b><font style="FONT-SIZE:12px; COLOR:#333333;">Sd&igrave; Supermercato dell\'Informazione</font></b></td></tr>');
	child.document.write('<tr><td align="right"><b><font style="FONT-SIZE:12px; COLOR:#333333;">www.supermercato.it</font></b></td></tr>');
	child.document.write('<tr><td align="right"><font style="FONT-SIZE:12px; COLOR:#333333;"><b>Servizio: </b> Speciali - SOStitutiva</font></td></tr>');
	child.document.write('</table>');
	
	child.document.write(document.all.item("docSOS").innerHTML);
	//innerHTML significa prendi tuttro quello che ho fra il tag di apertura e di chiusura,
	//nel nostro caso fra i tag <div id="docSOS"> e </div>
	child.document.write('<table width="447" cellpadding="0" cellspacing="0" border="0" align="center"><tr><td height="42" align="right"><br/><br/><img src="img/com/disclaimer.GIF" width="347" height="49" border="0"/> </td></tr></table>');
	child.document.write('</body>');
	child.document.write('</html>');
	child.document.close();
}

function StampaDocumentoGenericoTelemaco(Servizio,Fonte,ViewTestata,campo1,campo2,campo3,size1,size2,size3,profilo)
{
	var child;					
	var DataEstrazione;
	var NewData; 
				
	DataEstrazione = new Date();
				
	NewData = DataEstrazione.getDate() + '/' + (DataEstrazione.getMonth() + 1) + '/' + DataEstrazione.getFullYear();	
	
	child = window.open('','docchild','toolbar=0,scrollbars=1,location=0,statusbar=0,menubar=1,resizable=1,width=760,height=400,left = 100,top = 234');
	child.document.write('<html>');
	child.document.write('<head>');
	child.document.write('<base href="http://www.supermercato.it">');
	child.document.write('<title>::   Sd&igrave;    ::  Supermercato dell\'&igrave;nformazione - ' + Servizio + ' \(Versione per la stampa\)</title>');
	child.document.write('<style>');
	child.document.write('BODY {FONT-FAMILY:Arial, Helvetica, sans-serif;}');
	child.document.write('</style>');
	if (profilo == "ungdc")
	{
		child.document.write('<LINK href="img/ungdc/sdi.css" rel="stylesheet" rev="stylesheet" type="text/css" />');
		child.document.write('<LINK href="img/ungdc/menu.css" rel="stylesheet" rev="stylesheet" type="text/css" />');
	}
	else
	{
		child.document.write('<LINK href="img/com/sdi.css" rel="stylesheet" rev="stylesheet" type="text/css" />');
		child.document.write('<LINK href="img/com/menu.css" rel="stylesheet" rev="stylesheet" type="text/css" />');
	}
	child.document.write('</head>');
	child.document.write('<body bgcolor="#ffffff" onload="javascript:window.focus();window.print()">');
	child.document.write('<table width="451" border="0" cellpadding="0" cellspacing="0">');	
	child.document.write('<tr><td width="451">');
		child.document.write('<table width="451" border="0" cellpadding="0" cellspacing="0">');	
		child.document.write('<tr><td class="titolovocimenusu" style="text-align:left;padding-left:52px;"><span class="sdirosso">Sd&#236;</span> ' + Servizio + '<br><font style="FONT-SIZE:12px; COLOR:#333333;">Supermercato dell\'Informazione</font><br><font style="FONT-SIZE:12px; COLOR:#333333;">http://www.supermercato.it</font><br><font style="FONT-SIZE:12px; COLOR:#333333;">stampa del ' + NewData +'</font></td></tr>');
		child.document.write('<tr><td height="15"><img src="images/spacer.gif" width="1" height="1" border="0"/></td></tr>');								
		child.document.write('</table>');
	child.document.write('</td></tr>');
	child.document.write('<tr><td>');
		child.document.write(document.all.item("doc").innerHTML);
	child.document.write('</td></tr>');
	child.document.write('<tr><td>');
		child.document.write('<br/><br/><table width="451" border="0" cellpadding="0" cellspacing="0" align="center">');	
		child.document.write('<tr>'); 
		child.document.write('<td class="testostandard_nopadding_nograssetto_nounderline" style="text-align:center;">&#169; ' + iYear + ' Zucchetti spa Sd&#236; Supermercato dell\'&#236;nformazione - Tutti i diritti riservati</td>');
		child.document.write('</tr>');
		child.document.write('</table><br><br>');
	child.document.write('</td></tr>');
	child.document.write('</table>');
	child.document.write('</body>');
	child.document.write('</html>');
	child.document.close();
}

function StampaTestoCondizioni(Servizio,Fonte,ViewTestata,campo1,campo2,campo3,size1,size2,size3,profilo,servizio){ 
	var child;					
	var DataEstrazione;
	var NewData;
	var oDiv = new getObj('doc_' + servizio);
		
	DataEstrazione = new Date();
				
	NewData = DataEstrazione.getDate() + '/' + (DataEstrazione.getMonth() + 1) + '/' + DataEstrazione.getFullYear();	
	
	child = window.open('','docchild','toolbar=0,scrollbars=1,location=0,statusbar=0,menubar=1,resizable=1,width=760,height=400,left = 100,top = 234');
	child.document.write('<html>');
	child.document.write('<head>');
	child.document.write('<base href="http://www.supermercato.it">');
	child.document.write('<title>::   Sd&igrave;    ::  Supermercato dell\'&igrave;nformazione - ' + Servizio + ' \(Versione per la stampa\)</title>');
	child.document.write('<style>');
	child.document.write('BODY {FONT-FAMILY:Arial, Helvetica, sans-serif;}');
	child.document.write('</style>');
	if (profilo == "ungdc")
	{
		child.document.write('<LINK href="img/ungdc/all.css" rel="stylesheet" rev="stylesheet" type="text/css" />');
		child.document.write('<LINK href="img/ungdc/menu.css" rel="stylesheet" rev="stylesheet" type="text/css" />');
	}
	else
	{
		child.document.write('<LINK href="img/com/all.css" rel="stylesheet" rev="stylesheet" type="text/css" />');
		child.document.write('<LINK href="img/com/menu.css" rel="stylesheet" rev="stylesheet" type="text/css" />');
	}
	child.document.write('</head>');
	child.document.write('<body bgcolor="#ffffff" onload="javascript:window.focus();window.print()">');
	child.document.write('<table width="618" border="0" cellpadding="0" cellspacing="0">');	
	child.document.write('<tr><td class="titolovocimenusu"><span class="sdirosso">Sd&#236;</span> ' + Servizio + '<br><font style="FONT-SIZE:12px; COLOR:#333333;">Supermercato dell\'Informazione</font><br><font style="FONT-SIZE:12px; COLOR:#333333;">http://www.supermercato.it</font><br><font style="FONT-SIZE:12px; COLOR:#333333;">stampa del ' + NewData +'</font></td></tr>');
	child.document.write('<tr><td height="15"><img src="images/spacer.gif" width="1" height="1" border="0"  alt="Visure e Servizi in campo fiscale e contabile per professionisti e imprese - Supermercato.it - SDI"/></td></tr>');								
	child.document.write('</table>');
	child.document.write(oDiv.obj.innerHTML);
	child.document.write('<table width="618" border="0" cellpadding="0" cellspacing="0">');	
	child.document.write('<tr>'); 
	child.document.write('<td class="dirittiautore">&#169; 2005 Zucchetti spa Sd&#236; Supermercato dell\'&#236;nformazione - Tutti i diritti riservati</td>');
	child.document.write('</tr>');
	child.document.write('</table><br><br>');
	child.document.write('</body>');
	child.document.write('</html>');
	child.document.close();
}

/* UiValidate.js */
// =============================================================================
// UIValidate.js
// All client side UI validation code called from UIValidationLib.asp reference 
// functions in this file. 
// The functions below are basic implementations and the user can implement 
// a more complicated business logic if necessary.
// -----------------------------------------------------------------------------
//*  Copyright (C) 2000 Microsoft Corporation.  All rights reserved.
//*
//* THIS CODE AND INFORMATION ARE PROVIDED "AS IS" WITHOUT WARRANTY OF ANY
//* KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
//* IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A
//* PARTICULAR PURPOSE.
// =============================================================================
//	Constants for Max length for form fields
var UIV_MAXLENGTH_NAME = 255
var UIV_MAXLENGTH_ORGANIZATION = 255
var UIV_MAXLENGTH_EMAILADDRESS = 255
var UIV_MAXLENGTH_LISTEDAS = 255
var UIV_MAXLENGTH_ADDRESS = 75
var UIV_MAXLENGTH_CITY = 50
var	UIV_MAXLENGTH_STATE = 255
var UIV_MAXLENGTH_ZIPCODE = 5
var UIV_MAXLENGTH_PROV = 2
var UIV_MAXLENGTH_CARDNUMBER = 19
var UIV_MAXLENGTH_PHONEFAX = 25
var UIV_MAXLENGTH_USERNAME = 255 
var UIV_MAXLENGTH_PASSWORD = 20
var UIV_MAXLENGTH_FULL_NAME = 255
var UIV_MAXLENGTH_RICHIESTA = 255
var UIV_MAXLENGTH_NATURAGIURIDICA = 70
var UIV_MAXLENGTH_DATANASCITA = 10
var UIV_MAXLENGTH_SESSO = 1
var UIV_MAXLENGTH_CODICEFISCALE = 16
var UIV_MAXLENGTH_PARTITAIVA = 11
var UIV_MAXLENGTH_CODICECOMUNE = 4
var UIV_MAXLENGTH_CODICECLIENTE = 9
var UIV_MINLENGTH_PASSWORD = 8


//*********************************************************************
//* Function:	 CheckUserName 
//* Description: Returns true if field value is alphanumeric and 
//*				 can consist of hyphens,underscore,@ and dot only. 
//*				 False otherwise
//*******************************************************************
function CheckUserName(sField)
{
	return (!(IsFieldValueOverFlow(sField, UIV_MAXLENGTH_USERNAME) || (!IsValidUserName(sField))));
}

//*********************************************************************
//* Function:	 CheckName 
//* Description: Returns true if input field value consists of alphabetical characters (A-Z & a-z) and spaces only.
//*			     False if the field value is not alphabets.
//*******************************************************************
function CheckName(sField)
{
	return (!(IsFieldValueOverFlow(sField, UIV_MAXLENGTH_NAME) || (!IsAlpha(sField))));
}

//*********************************************************************
//* Function:	 CheckOrganization 
//* Description: Returns true if input field value consists of alphabetical characters (A-Z & a-z) and spaces only.
//*			     False if the field value is not alphabets.
//*******************************************************************
function CheckOrganization(sField)
{
	//return (!(IsFieldValueOverFlow(sField, UIV_MAXLENGTH_NAME) || (!IsAlpha(sField))));
	var OrganizationPattern = /[^0-9\w\#\,\ \x26\.\-\xE0\xE1\xE8\xE9\xEA\xEC\xED\xEE\xF2\xF3\xF9\xFA ]{1,}/
	var bRetVal = false;
	
	if((!IsNull(sField)) && (!IsFieldValueOverFlow(sField, UIV_MAXLENGTH_ORGANIZATION)))
		bRetVal = (!OrganizationPattern.test(sField)); 

	return bRetVal;	
}


//*********************************************************************
//* Function:	 CheckName 
//* Description: Returns true if input field value consists of alphabetical characters (A-Z & a-z) and spaces only.
//*			     False if the field value is not alphabets.
//*******************************************************************
function CheckFullName(sField)
{
	return (!(IsFieldValueOverFlow(sField, UIV_MAXLENGTH_FULL_NAME) || (!IsAlpha(sField))));
}

//*********************************************************************
//* Function:	 CheckRichiesta
//* Description: Returns true if input field value consists of alphabetical characters (A-Z & a-z) and spaces only.
//*			     False if the field value is not alphabets.
//*******************************************************************
function CheckRichiesta(sField)
{
	var bRetVal = false;
	if (sField != '')
	{
		bRetVal = (!(IsFieldValueOverFlow(sField, UIV_MAXLENGTH_RICHIESTA)));
	}
	return bRetVal;
}


//*********************************************************************
//* Function:	 CheckAddress1 
//* Description: Returns true if input field value is not null and address 
//*				 is a valid address which consist only alphabets,digits,comma,hash
//*				 hyphen,white space and dot.Returns False otherwise.
//*******************************************************************
function CheckAddress1(sField)
{
	//*var AddressPattern = /[^0-9a-zA-Z\#\,\.\-\ ]{1,}/
	var AddressPattern = /[^0-9\w\#\,\.\-\x60\x27\xE0\xE1\xE8\xE9\xEA\xEC\xED\xEE\xF2\xF3\xF9\xFA\x2F ]{1,}/
	var bRetVal = false;
	
	if((!IsNull(sField)) && (!IsFieldValueOverFlow(sField, UIV_MAXLENGTH_ADDRESS)))
		bRetVal = (!AddressPattern.test(sField)); 
 
	return bRetVal;	
}

//*********************************************************************
//* Function:	 CheckAddress1Obbl 
//* Description: Returns true if input field value is not null and address 
//*				 is a valid address which consist only alphabets,digits,comma,hash
//*				 hyphen,white space and dot.Returns False otherwise.
//*******************************************************************
function CheckAddress1Obbl(sField)  
{
	//*var AddressPattern = /[^0-9a-zA-Z\#\,\.\-\ ]{1,}/
	var AddressPattern = /[^0-9\w\#\,\.\-\x60\x27\xE0\xE1\xE8\xE9\xEA\xEC\xED\xEE\xF2\xF3\xF9\xFA\x2F ]{1,}/
	var bRetVal = false;
	
	
	if (sField != '')
	{
		if((!IsNull(sField)) && (!IsFieldValueOverFlow(sField, UIV_MAXLENGTH_ADDRESS)))
			bRetVal = (!AddressPattern.test(sField)); 
	}
	else
	{
		bRetVal = true;
	}

	return bRetVal;	
}

//*********************************************************************
//* Function:	 CheckAddress2 
//* Description: Returns true if input field value is  null as it is not a required field.
//*				 If user inputs any data than it is validated.Address should be a
//*				 valid address which consist only alphabets,digits,comma,hash
//*				 hyphen,white space and dot.Returns False otherwise.
//*******************************************************************
function CheckAddress2(sField)
{
	var AddressPattern = /[^0-9a-zA-Z\#\,\.\-\ ]{1,}/
	var bRetVal = true;
	
	if (!IsNull(sField))
	{
		if(!IsFieldValueOverFlow(sField, UIV_MAXLENGTH_ADDRESS)) 	
			bRetVal = (!AddressPattern.test(sField)); 
		else
			bRetVal = false;		
	}
	
	return bRetVal;
}

//*********************************************************************
//* Function:	 CheckCity 
//* Description: Returns true if input field value is not null and consists of alphabets(a-z,A-Z) and spaces only.
//*				 Returns false otherwise.
//*******************************************************************
function CheckCity(sField)
{
	return (!(IsFieldValueOverFlow(sField, UIV_MAXLENGTH_CITY) || (!IsAlpha(sField))));
}

//*********************************************************************
//* Function:	 CheckState 
//* Description: Returns true if input field value is not null and consists of alphabets(a-z,A-Z) and spaces only.
//*				 Returns false otherwise.
//*******************************************************************
function CheckState(sField)
{
	return (!(IsFieldValueOverFlow(sField, UIV_MAXLENGTH_STATE) || (!IsAlpha(sField))));
}

//*********************************************************************
//* Function:	 CheckZipCode 
//* Description: Returns true if input field value is not null and consists of hyphen,digits and spaces only
//*              False if the field value is null.
//*******************************************************************
function CheckZipCode(sField)
{
	var ZipCodePattern = /[^0-9\-\ ]{1,}/
    var bRetVal = false;
    
    if ((!IsNull(sField)) && (!IsFieldValueOverFlow(sField, UIV_MAXLENGTH_ZIPCODE)) && (!IsFieldValueLessLen(sField, UIV_MAXLENGTH_ZIPCODE)))
		bRetVal = (!ZipCodePattern.test(sField)); 

	return bRetVal;	
}

//*********************************************************************
//* Function:	 CheckPhoneFaxNumber 
//* Description: Returns true if null as not a required field.If user inputs
//*				 any data then it is validated.Phone,Fax number can contain only digits,
//*				 brackets,hyphen,dot and spaces only.
//*******************************************************************
function CheckPhoneFaxNumber(sField)
{
	var bRetVal = true;
	var PhoneFaxPattern = /[^0-9]/
    var Pattern = /[\.\-\(\)\ ]{1,}/ 
 
 	if (!IsNull(sField))
	{
		while(Pattern.test(sField)) 
			sField = sField.replace(Pattern,"");
		if(!IsFieldValueOverFlow(sField, UIV_MAXLENGTH_PHONEFAX)) 	
			bRetVal = (!PhoneFaxPattern.test(sField)); 
		else
			bRetVal = false;		
	}
//*alert ("in function");
	return bRetVal;
	
}

//*********************************************************************
//* Function:	 CheckCodiceCliente
//* Description: Returns true if null as not a required field.If user inputs
//*				 any data then it is validated.Phone,Fax number can contain only digits,
//*				 brackets,hyphen,dot and spaces only.
//*******************************************************************
function CheckCodiceCliente(sField)
{
	var bRetVal = false;
	var PhoneFaxPattern = /[^0-9]/
    var Pattern = /[\.\-\(\)\ ]{1,}/ 
 
 	if (!IsNull(sField))
	{
		while(Pattern.test(sField)) 
			sField = sField.replace(Pattern,"");
		if(!IsFieldValueOverFlow(sField, UIV_MAXLENGTH_CODICECLIENTE)) 	
			bRetVal = (!PhoneFaxPattern.test(sField)); 
		else
			bRetVal = false;		
	}
//*alert ("in function");
	return bRetVal;
	
}

//*********************************************************************
//* Function:	 CheckListedAs 
//* Description: Returns true if input field value is not null and 
//				 is alphanumeric and can contain hyphen,undercore and spaces.
//*				 False otherwise
//*******************************************************************
function CheckListedAs(sField)
{	
	var ListedAsPattern = /[^0-9a-zA-Z\xE0\xE1\xE8\xE9\xEA\xEC\xED\xEE\xF2\xF3\xF9\xFA\-\_\ ]{1,}/
	var bRetVal = true;  
	
	if (IsFieldValueOverFlow(sField, UIV_MAXLENGTH_LISTEDAS) || IsNull(sField))
		bRetVal = false;		   
	else	
	    bRetVal = (!ListedAsPattern.test(sField)); 

	return bRetVal;
}

//*********************************************************************
//* Function:	 CheckCreditCard 
//* Description: Returns true if input field value is not null and contains 
//*				 only digits,hyphen and spaces only.
//*				 False if the field value is null.
//*******************************************************************
function CheckCreditCard(sField)
{
	var CardPattern = /[^0-9\-\ ]{1,}/
	var bRetVal = true;

	if (sField != 'null')
	{
		if ((IsNull(sField)) || (CardPattern.test(sField)) || (IsFieldValueOverFlow(sField, UIV_MAXLENGTH_CARDNUMBER)))
		{
			bRetVal = false;	
		}
	}
	
	return bRetVal;
}

//*********************************************************************
//* Function:	 IsAlpha 
//* Description: Returns true if field value is alphabets. 
//*				 False if the field value is not alphabets.
//*******************************************************************
function IsAlpha(sVar)
{
    var bRetVal = false;
	//*var Pattern = /[^a-zA-Z\ù\ \ ]{1,}/
	var Pattern = /[^a-zA-Z\-\'\xE0\xE1\xE8\xE9\xEA\xEC\xED\xEE\xF2\xF3\xF9\xFA ]{1,}/
	sVar = Trim(sVar);
	
	if (!IsNull(sVar))
		bRetVal = (!Pattern.test(RemoveWhiteSpaces(sVar))); 
	
	return bRetVal;	
}

//*********************************************************************
//* Function:	 IsAlphaNumeric 
//* Description: Returns true if field value is alphanumeric. 
//*				 False otherwise
//*******************************************************************
function IsAlphaNumeric(sVar)
{
	var bRetVal = false;
	var Pattern = /[^0-9a-zA-Z]{1,}/
	
	if (!IsNull(sVar))
		bRetVal = (!Pattern.test(Trim(sVar))); 
		
	return bRetVal;		
}

//*********************************************************************
//* Function:	 IsValidUserName 
//* Description: Returns true if field value is alphanumeric and 
//*				 can consist of hyphens,underscore,@ and dot only. 
//*				 False otherwise
//*******************************************************************
function IsValidUserName(sVar)
{
	var UserNamePattern = /[^0-9a-zA-Z\-\_\@\.]{1,}/
	var bRetVal = false;
	
	if (!IsNull(sVar))
		bRetVal = (!UserNamePattern.test(Trim(sVar))); 
		
	return bRetVal;	
}

//*********************************************************************
//* Function:	 Trim 
//* Description: Strips off the  leading & trailing white spaces
//*******************************************************************
function Trim(ssValue)
{
	var sValue = ssValue;
	
	while (sValue.charAt(0) == ' ')
	{
		sValue = sValue.substring(1, sValue.length);
	}
	while (sValue.charAt(sValue.length - 1) == ' ')
	{
		sValue = sValue.substring(0, sValue.length - 1);
	}

	return sValue;
}

//*********************************************************************
//* Function:	 IsNull 
//* Description: Returns true if field value is empty or null
//*				 False if the field value is not empty.
//*******************************************************************
function IsNull(sText)
{
	sText = Trim(sText);
	return (!(sText.length));
}

//*********************************************************************
//* Function:	 RemoveWhiteSpaces 
//* Description: removes all occurances of white spaces in the fieldvalue
//*******************************************************************
function RemoveWhiteSpaces(sFieldValue)
{
    var PatternWhiteSpaces = /[ ]{1,}/
    
	while (PatternWhiteSpaces.test(sFieldValue))
	{
		sFieldValue = sFieldValue.replace(PatternWhiteSpaces,"");
	}

	return sFieldValue;
} 

//*********************************************************************
//* Function:	 CheckPassword 
//* Description: Returns true if input field value is not null
//*				 False if the field value is null.
//*******************************************************************
function CheckPassword(sField)
{
	return (!(IsFieldValueOverFlow(sField, UIV_MAXLENGTH_PASSWORD) || (IsNull(sField))));
}

//*********************************************************************
//* Function:	 CheckNewPassword 
//* Description: Returns true if input field value is not null and >8 chars length
//*				 otherwise returns False.
//*******************************************************************
function CheckNewPassword(sField)
{
	return (!(IsFieldValueOverFlow(sField, UIV_MAXLENGTH_PASSWORD) || (IsNull(sField)) || (IsFieldValueLessLen(sField, UIV_MINLENGTH_PASSWORD))));
}

//*********************************************************************
//* Function:	 CheckConfPassword 
//* Description: Returns true if input field value is not null and >8 chars length
//*				 otherwise returns False.
//*******************************************************************
function CheckConfPassword(sField)
{
	return (!(IsFieldValueOverFlow(sField, UIV_MAXLENGTH_PASSWORD) || (IsNull(sField)) || (IsFieldValueLessLen(sField, UIV_MINLENGTH_PASSWORD))));
}

//*********************************************************************
//* Function:	 CheckEmail 
//* Description: Returns true if email id is valid that is conforms to format abc@xyz.com
//*				 False if the email id is invalid.
//*******************************************************************
function CheckEmail(sEmailID)
{
	var bRetVal = true;
	
    bRetVal = (!IsNull(sEmailID));
	sEmailID = Trim(sEmailID);
	
	if (IsFieldValueOverFlow(sEmailID, UIV_MAXLENGTH_EMAILADDRESS))
		bRetVal = false; 
		
	if (sEmailID.indexOf("@") == -1 || sEmailID.indexOf(".") == -1)
	{	
		bRetVal = false;
	}
	else
	{
		var sUser = sEmailID.substring(0, sEmailID.indexOf("@"))
		var sDomain = sEmailID.substring(sEmailID.indexOf("@")+1, sEmailID.length)
		var Pattern = /[^a-zA-Z0-9_().\-\']/
		var Patterndoubledot = /[.]{2,}/

		if( sDomain.indexOf(".") == 0 || sUser.indexOf(".") == 0)
		{
			bRetVal = false;
		}
		if (sDomain.lastIndexOf(".") + 1 == sDomain.length)
		{
			bRetVal = false;
		}
		if (sUser.lastIndexOf(".") + 1 == sUser.length)
		{
			bRetVal = false;
		}
		if (Pattern.test(sUser) || Pattern.test(sDomain) || Patterndoubledot.test(sEmailID))
		{	
			bRetVal = false;
		}
	}
	
	return bRetVal;
}
//*********************************************************************
//* Function:	 CheckProv 
//* Descrizione: True se il campo è diverso da Null e di soli caratteri 
//*              alfabetici. False in caso contrario
//* Autore:  	 MBB.
//*******************************************************************
function CheckProv(sField)
{
	var ZipCodePattern = /[^a-zA-Z]{1,}/
	var bRetVal = false;
    
    if ((!IsNull(sField)) && (!IsFieldValueOverFlow(sField, UIV_MAXLENGTH_PROV)) && (!IsFieldValueLessLen(sField, UIV_MAXLENGTH_PROV)))
    {
		bRetVal = (!ZipCodePattern.test(sField)); 
		
	}
	
	return bRetVal;	
}

//*********************************************************************
//* Function:	 CheckTelefono 
//* Description: True se il campo è diverso da Null e di soli caratteri 
//*              consentiti (numeri/-+ parentesi). False in caso contrario
//* Autore:  	 MBB.
//*******************************************************************
function CheckTelefono(sField)
{
	var bRetVal = false;
	var TelPattern = /[^0-9\.\-\(\)\+\ \\\/]{1,}/;
	
	if (!IsNull(sField))
 	{
		bRetVal = (!TelPattern.test(sField)); 
	}
	return bRetVal;
}

//*********************************************************************
//* Function:	 CheckFax
//* Description: True se il campo è diverso da Null e di soli caratteri 
//*              consentiti (numeri/-+ parentesi). False in caso contrario
//* Autore:  	 MBB.
//*******************************************************************
function CheckFax(sField)
{
	var bRetVal = false;
	var TelPattern = /[^0-9\.\-\(\)\+\ \\\/]{1,}/;
	
	if (!IsNull(sField))
 	{
		bRetVal = (!TelPattern.test(sField)); 
	}
	return bRetVal;
}

//*********************************************************************
//* Function:	 IsFieldValueLessLen 
//* Descrizione: True se la lunghezza del campo non è inferiore alla 
//*				 lunghezza stabilita. False in caso contrario.
//* Autore:  	 MBB.
//*******************************************************************
function IsFieldValueLessLen(sFieldValue, intConstMaxLngth)
{
	sFieldValue = Trim(sFieldValue);
	return (sFieldValue.length < intConstMaxLngth);
}

//*********************************************************************
//* Function:	 IsFieldValueOverFlow 
//* Description: Returns true if the field value over flows the maxlength specified
//*				 False otherwise.
//*******************************************************************
function IsFieldValueOverFlow(sFieldValue, intConstMaxLngth)
{
	sFieldValue = Trim(sFieldValue);
	return (sFieldValue.length > intConstMaxLngth);
}

//*********************************************************************
//* Function:	 CheckFirstName 
//* Description: Returns true if input field value consists of alphabetical characters (A-Z & a-z) and spaces only.
//*			     False if the field value is not alphabets.
//*******************************************************************
function CheckFirstName(sField)
{
	return (!(IsFieldValueOverFlow(sField, UIV_MAXLENGTH_FULL_NAME) || (!IsAlpha(sField))));
}

//*********************************************************************
//* Function:	 CheckNaturaGiuridica
//* Autore:  	 Francesco
//*******************************************************************
function CheckNaturaGiuridica(sField)
{
	return ((!IsNull(sField)) && (!IsFieldValueOverFlow(sField, UIV_MAXLENGTH_NATURAGIURIDICA)) && (!IsFieldValueLessLen(sField, 1)));
}

//*********************************************************************
//* Function:	 CheckDataNascita
//* Autore:  	 Francesco
//*******************************************************************
function CheckDataNascita(sField)
{
	var bRetVal = false;
	var DataPattern = /^[0-9]{2}\/[0-9]{2}\/[0-9]{4}$/;
	
	if (!IsNull(sField))
 	{
		bRetVal = (DataPattern.test(sField)); 
	}
	return bRetVal;		
}

//*********************************************************************
//* Function:	 CheckComuneNascita
//* Autore:  	 Francesco
//*******************************************************************
function CheckComuneNascita(sField)
{
	return ((!IsNull(sField)) && (!(IsFieldValueOverFlow(sField, UIV_MAXLENGTH_CITY))));
}

//*********************************************************************
//* Function:	 CheckSesso
//* Autore:  	 Francesco
//*******************************************************************
function CheckSesso(sField)
{
	bRetVal = false;

	if ((!IsNull(sField)) && (!IsFieldValueOverFlow(sField, UIV_MAXLENGTH_SESSO)) && (!IsFieldValueLessLen(sField, UIV_MAXLENGTH_SESSO)));
    	if((sField == 'M') || (sField == 'F'))
			bRetVal = true;
	
	return bRetVal;
}

//*********************************************************************
//* Function:	 CheckCodiceFiscale
//* Autore:  	 Francesco
//*******************************************************************
function CheckCodiceFiscale(sField)
{	
	var bRetVal = false;
	var DataPatternFisica = /^[A-Za-z]{6}[0-9|L|l|M|m|N|n|P|p|Q|q|R|r|S|s|T|t|U|u|V|v]{2}[A|a|B|b|C|c|D|d|E|e|H|h|L|l|M|m|P|p|R|r|S|s|T|t]{1}[0-9|L|l|M|m|N|n|P|p|Q|q|R|r|S|s|T|t|U|u|V|v]{2}[A-Za-z]{1}[0-9|L|l|M|m|N|n|P|p|Q|q|R|r|S|s|T|t|U|u|V|v]{3}[A-Za-z]{1}$/;
	var DataPatternGiuridica = /^[0-9]{11}$/;
	
	if (!IsNull(sField))
 	{
		bRetVal = (DataPatternFisica.test(sField)) || (DataPatternGiuridica.test(sField)); 
	}
	return bRetVal;	
}

//*********************************************************************
//* Function:	 CheckPartitaIva
//* Autore:  	 Francesco
//*******************************************************************
function CheckPartitaIva(sField)
{
	var bRetVal = false;
	var DataPattern = /^[0-9]+$/;
		
	if (!IsNull(sField))
 	{
		bRetVal = (DataPattern.test(sField)); 
	}
	return bRetVal;	
}

//*********************************************************************
//* Function:	 CheckCodiceComune
//* Autore:  	 Francesco
//*******************************************************************
function CheckCodiceComune(sField)
{
	return ((!IsNull(sField)) && (!IsFieldValueOverFlow(sField, UIV_MAXLENGTH_CODICECOMUNE)) && (!IsFieldValueLessLen(sField, UIV_MAXLENGTH_CODICECOMUNE)));
}

//*********************************************************************
//* Function:	 CheckNaturaGiuridica_Facolt
//* Autore:  	 Francesco
//*******************************************************************
function CheckNaturaGiuridica_Facolt(sField)
{	
	if(!IsNull(sField))
		return ((!IsFieldValueOverFlow(sField, UIV_MAXLENGTH_NATURAGIURIDICA)) && (!IsFieldValueLessLen(sField, 1)));
	else
		return true;
}

//*********************************************************************
//* Function:	 CheckOrganization _Facolt
//* Autore:  	 Francesco
//*******************************************************************
function CheckOrganization_Facolt(sField)
{
	var OrganizationPattern = /[^0-9\w\#\,\ \x26\.\-\xE0\xE1\xE8\xE9\xEA\xEC\xED\xEE\xF2\xF3\xF9\xFA ]{1,}/
	var bRetVal = false;
	
	if(!IsNull(sField))
	{
		if((!IsFieldValueOverFlow(sField, UIV_MAXLENGTH_ORGANIZATION)))
			bRetVal = (!OrganizationPattern.test(sField)); 
	}else
		bRetVal = true;

	return bRetVal;	
}

//*********************************************************************
//* Function:	 CheckName_Facolt
//* Autore:  	 Francesco
//*******************************************************************
function CheckName_Facolt(sField)
{
	if(!IsNull(sField))
		return (!(IsFieldValueOverFlow(sField, UIV_MAXLENGTH_FULL_NAME) || (!IsAlpha(sField))));
	else
		return true;
}

//*********************************************************************
//* Function:	 CheckDataNascita_Facolt
//* Autore:  	 Francesco
//*******************************************************************
function CheckDataNascita_Facolt(sField)
{
	var bRetVal = false;
	var DataPattern = /^[0-9]{2}\/[0-9]{2}\/[0-9]{4}$/;
	
	if(!IsNull(sField))
		bRetVal = (DataPattern.test(sField)); 
	else
		bRetVal = true;
	
	return bRetVal;
}

//*********************************************************************
//* Function:	 CheckComuneNascita_Facolt
//* Autore:  	 Francesco
//*******************************************************************
function CheckComuneNascita_Facolt(sField)
{
	if(!IsNull(sField))
		return (!(IsFieldValueOverFlow(sField, UIV_MAXLENGTH_CITY)));
	else
		return true;
}

//*********************************************************************
//* Function:	 CheckSesso_Facolt
//* Autore:  	 Francesco
//*******************************************************************
function CheckSesso_Facolt(sField)
{
	bRetVal = false;
	
	if(!IsNull(sField))
	{
		if((!IsFieldValueOverFlow(sField, UIV_MAXLENGTH_SESSO)) && (!IsFieldValueLessLen(sField, UIV_MAXLENGTH_SESSO)));
			if((sField == 'M') || (sField == 'F'))
				bRetVal = true;
	}
	else
		bRetVal = true;
	
	return bRetVal;
}

//*********************************************************************
//* Function:	 CheckCodiceComune_Facolt
//* Autore:  	 Francesco
//*******************************************************************
function CheckCodiceComune_Facolt(sField)
{
	if(!IsNull(sField))
		return ((!IsFieldValueOverFlow(sField, UIV_MAXLENGTH_CODICECOMUNE)) && (!IsFieldValueLessLen(sField, UIV_MAXLENGTH_CODICECOMUNE)));
	else
		return true;
}

//*********************************************************************
//* Function:	 CheckFax_Facolt
//* Autore:  	 Francesco
//*******************************************************************
function CheckFax_Facolt(sField)
{
	var bRetVal = true;
	var TelPattern = /[^0-9\.\-\(\)\+\ \\\/]{1,}/;
					
	
	if (!IsNull(sField))
 	{
		bRetVal = (!TelPattern.test(sField)); 
	}
	return bRetVal;
} 

function CheckPrefInt(sField)
{
	var PrefissoPattern = /^((\+)|(0))[0-9]{1,}/;
	var bRetVal = false;
	
	if(!IsNull(sField))
	{
		bRetVal = (PrefissoPattern.test(sField)); 
	}
	return bRetVal;	
	
}

//*********************************************************************
//* Function:	 CheckPartitaIvaObbl
//* Autore:  	 MBB
//*******************************************************************
function CheckPartitaIvaObbl(sField)
{
	var bRetVal = false;
	var DataPattern = /^[0-9]+$/;
	
	if (!IsNull(sField))
 	{
		bRetVal = (DataPattern.test(sField)); 
	} 
	
	return bRetVal;	
}

//*********************************************************************
//* Function:	 CheckMappeCarte
//* Autore:  	 BENALB
//*******************************************************************
function CheckMappeCarte(sField)
{
	var bRetVal = false;
	var DataPattern = /^[a-zA-Z0-9 ]+$/;
	
	if (!IsNull(sField) && sFieldValue.length > 0)
 	{
		if(sFieldValue.Value != "Seleziona Prodotto da Acquistare")
		{
			bRetVal = (DataPattern.test(sField)); 
		}
	} 
	
	return bRetVal;	
}

//*********************************************************************
//* Function:	 CheckCodiceFiscalePartitaIva
//* Autore:  	 BENALB
//*******************************************************************
function CheckCodiceFiscalePartitaIva(sField)
{
	var bRetVal = false;
	var DataPatternCodFis = /^[A-Z]{6}\d{2}[A-Z]\d{2}[A-Z]\d{3}[A-Z]$/;
	var DataPatternPIva = /^[0-9]+$/;
	
	if (!IsNull(sField) && sFieldValue.length > 0)
 	{
		if(sFieldValue.length == 11)
		{
			bRetVal = (DataPatternPIva.test(sField)); 
		}
		if(sFieldValue.length == 16)
		{
			bRetVal = (DataPatternCodFis.test(sField)); 
		}
	} 
	
	return bRetVal;	
}
//*********************************************************************
//* Function:	 CheckFlagObbl
//* Autore:  	  
//*******************************************************************
function CheckFlagObbl(sField)
{
	alert(sField);
	bRetVal = false;

	if ((!IsNull(sField)) && (!IsFieldValueOverFlow(sField, UIV_MAXLENGTH_SESSO)) && (!IsFieldValueLessLen(sField, UIV_MAXLENGTH_SESSO)));
    	if((sField == '1') || (sField == true))
			bRetVal = true;
	
	return bRetVal;
}

//*********************************************************************
//* Function:	 CheckCountry 
//* Description: Returns true if input field value is not null
//*				 False if the field value is null.
//*******************************************************************
function CheckCountry(sField)
{
	return (!(IsFieldValueOverFlow(sField, "2") || (IsNull(sField))));
}
