// Copyright (c) 1996-1997 Athenia Associates.
// http://www.webreference.com/js/
// License is granted if and only if this entire
// copyright notice is included. By Tomer Shiran.

function setCookie (name, value, expires, path, domain, secure) {
    var curCookie = name + "=" + escape(value) + (expires ? "; expires=" + expires : "") +
        (path ? "; path=" + path : "") + (domain ? "; domain=" + domain : "") + (secure ? "secure" : "");
    document.cookie = curCookie;
}

function getCookie (name) {
    var prefix = name + '=';
    var c = document.cookie;
    var nullstring = '';
    var cookieStartIndex = c.indexOf(prefix);
    if (cookieStartIndex == -1)
        return nullstring;
    var cookieEndIndex = c.indexOf(";", cookieStartIndex + prefix.length);
    if (cookieEndIndex == -1)
        cookieEndIndex = c.length;
    return unescape(c.substring(cookieStartIndex + prefix.length, cookieEndIndex));
}

function deleteCookie (name, path, domain) {
    if (getCookie(name))
        document.cookie = name + "=" + ((path) ? "; path=" + path : "") +
            ((domain) ? "; domain=" + domain : "") + "; expires=Thu, 01-Jan-70 00:00:01 GMT";
}

function fixDate (date) {
    var base = new Date(0);
    var skew = base.getTime();
    if (skew > 0)
        date.setTime(date.getTime() - skew);
}

function rememberMe (f) {
    var now = new Date();
    fixDate(now);
    now.setTime(now.getTime() + 365 * 24 * 60 * 60 * 1000);
    now = now.toGMTString();
    if (f.author != undefined)
       setCookie('mtcmtauth', f.author.value, now, '/', '', '');
    if (f.email != undefined)
       setCookie('mtcmtmail', f.email.value, now, '/', '', '');
    if (f.url != undefined)
       setCookie('mtcmthome', f.url.value, now, '/', '', '');
}

function forgetMe (f) {
    deleteCookie('mtcmtmail', '/', '');
    deleteCookie('mtcmthome', '/', '');
    deleteCookie('mtcmtauth', '/', '');
    f.email.value = '';
    f.author.value = '';
    f.url.value = '';
}

function hideDocumentElement(id) {
    var el = document.getElementById(id);
    if (el) el.style.display = 'none';
}

function showDocumentElement(id) {
    var el = document.getElementById(id);
    if (el) el.style.display = 'block';
}

var commenter_name;

function individualArchivesOnLoad(commenter_name) {

    hideDocumentElement('trackbacks-info');



    if (document.comments_form) {
        if (!commenter_name && (document.comments_form.email != undefined) &&
            (mtcmtmail = getCookie("mtcmtmail")))
            document.comments_form.email.value = mtcmtmail;
        if (!commenter_name && (document.comments_form.author != undefined) &&
            (mtcmtauth = getCookie("mtcmtauth")))
            document.comments_form.author.value = mtcmtauth;
        if (document.comments_form.url != undefined && 
            (mtcmthome = getCookie("mtcmthome")))
            document.comments_form.url.value = mtcmthome;
        if (document.comments_form["bakecookie"]) {
            if (mtcmtauth || mtcmthome) {
                document.comments_form.bakecookie.checked = true;
            } else {
                document.comments_form.bakecookie.checked = false;
            }
        }
    }
}

function writeTypeKeyGreeting(commenter_name, entry_id) {

}


/*--------------------------------------------------------------------*/
/*----------------------------- AJAX ---------------------------------*/
/*--------------------------------------------------------------------*/
var myRequest = null;
var myDiv = null;

function 
CreateXmlHttpReq2(handler) 
 {
 var xmlhttp = null;
 try 
  {
  xmlhttp = new XMLHttpRequest();
  } 
 catch(e) 
  {
  try 
   {
   xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
   } 
  catch(e) 
   {
   xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
   }
  }
 xmlhttp.onreadystatechange = handler;
 return xmlhttp;
 } // CreateXmlHttpReq2
function 
myHandler2(the_div) 
 {
    if(myRequest.readyState == 4 && myRequest.status == 200) 
  {
        e = document.getElementById(myDiv);
//alert(myRequest.responseText);
        e.innerHTML = myRequest.responseText;
  }
 }
function 
get_cont(url, the_div) 
 {
 myDiv = the_div;
 myRequest = CreateXmlHttpReq2(myHandler2);
 myRequest.open("GET", url);
 myRequest.send(null);
 }
function 
put_cont (mappa, pagina)
 {
//alert(mappa + "----" + pagina);
get_cont(pagina, mappa);
}

/*--------------------------------------------------------------------*/
/*----------------------------- CONTROLLO DATI -----------*/
/*--------------------------------------------------------------------*/

function indirizzoEmailValido(indirizzo) 
	{
	if (window.RegExp) 
		{
		var nonvalido = "(@.*@)|(\\.\\.)|(@\\.)|(\\.@)|(^\\.)";
		var valido = "^.+\\@(\\[?)[a-zA-Z0-9\\-\\.]+\\.([a-zA-Z]{2,4}|[0-9]{1,3})(\\]?)$";
		var regnv = new RegExp(nonvalido);
		var regv = new RegExp(valido);
		if (!regnv.test(indirizzo) && regv.test(indirizzo))
			return true;
		return false;
		}
	else 
		{
		if(indirizzo.indexOf("@") >= 0)
			return true;
	    return false;
  		}
  }

function
checkFormSendToAFriend(modulo)
	{
	if(modulo.from_name.value == "") 
		{
		modulo.from_name.focus();
		alert("Inserisci il tuo nome");
		return false;
		}
	if(!indirizzoEmailValido(modulo.from_email.value)) 
		{
		modulo.from_email.focus();
		alert("Si prega di inserire un indirizzo email valido");
		return false;
		}
	if(!indirizzoEmailValido(modulo.email1.value)) 
		{
		modulo.email1.focus();
		alert("Si prega di inserire un indirizzo email valido per l'amico 1");
		return false;
		}
	if(modulo.email2 && !modulo.email2.value == "" && !indirizzoEmailValido(modulo.email2.value)) 
		{
		modulo.email2.focus();
		alert("Si prega di inserire un indirizzo email valido per l'amico 2");
		return false;
		}
	if(modulo.email3 && !modulo.email3.value == "" && !indirizzoEmailValido(modulo.email3.value)) 
		{
		modulo.email3.focus();
		alert("Si prega di inserire un indirizzo email valido per l'amico 3");
		return false;
		}

	return true;
	}

function 
seleziona_persona(type, div)
	{
	type += "-";
//alert(type + " ____ " + div);
	e = document.getElementsByTagName("span");
	for (var i = 0; i < e.length; i++) 
		{ 
	    if(e[i].id.indexOf(type) != -1)
			{
			if(e[i].id == div)
				{
//alert(e[i].id + " block");
				e[i].style.display = "block";
				}
			else
				{
//alert(e[i].id + " none");
				e[i].style.display = "none";
				}
			}
		}
	}





function contatore(val) {
max=2500
if (val.text.value.length > max) {
val.text.value = val.text.value.substring(0,max)
rest = 0
} 
else {
rest = max - val.text.value.length
}
val.num.value = rest
}





function LunghezzaMax(campo) 
{ 
if (campo.value.length>2500) 
{ 
alert("Si possono inserire un massimo di 2500 caratteri."); 
campo.value=campo.value.substring(0, 2500); 
} 
} 


   // Random encryption key feature by Andrew Moulden, Site Engineering Ltd
// This code is freeware provided these four comment lines remain intact
// A wizard to generate this code is at http://www.jottings.com/obfuscator/

var __MTTBLINK__;
var __MTTBID__;
function obfuscator(coded, key, mode, path, hidden) {
	shift = coded.length;
	link = "";
	
	for(i=0;i<coded.length;i++) {
		if (key.indexOf(coded.charAt(i))==-1) {
			ltr = coded.charAt(i);link+=(ltr);
		} else {
			ltr = (key.indexOf(coded.charAt(i)) - shift + key.length) % key.length;
			link += (key.charAt(ltr));
		}
	}
	if(mode == 'hidden_input') {
		document.write('<input type="hidden" name="CCode" value="' + link + '" />');
	} else if(mode == '__MTTBLINK__') {
		__MTTBLINK__ = path + link;
		if(hidden) return;
		document.write(link);
	} else if(mode == '__MTTBID__') {
		__MTTBID__ = link;
		if(hidden) return;
		document.write(link);
	}
}
