var ids=new Array('acquista', 'dati', 'codice', 'bottone');


function switchid(id){  
  hideallids();
  showdiv(id);
}

function hideallids(){
  //loop through the array and hide each element by id
  for (var i=0;i<ids.length;i++){
    hidediv(ids[i]);
  }     
}

function hidediv(id) {
  //safe function to hide an element with a specified id
  if (document.getElementById) { // DOM3 = IE5, NS6
    document.getElementById(id).style.display = 'none';
  }
  else {
    if (document.layers) { // Netscape 4
      document.id.display = 'none';
    }
    else { // IE 4
      document.all.id.style.display = 'none';
    }
  }
}

function showdiv(id) {
  //safe function to show an element with a specified id
      
  if (document.getElementById) { // DOM3 = IE5, NS6
    document.getElementById(id).style.display = 'block';
  }
  else {
    if (document.layers) { // Netscape 4
      document.id.display = 'block';
    }
    else { // IE 4
      document.all.id.style.display = 'block';
    }
  }
}


function selected(template, colore)
{
  if(template == "partecipazioni")
  {
    arrayColori = new Array("arancio", "rosa", "blu");
  }
  else if (template == "bouquet" || template == "confetti")
  {
    arrayColori = new Array("rosa", "blu", "viola", "verde", "terra");
  }
  else if (template == "fedi")
  {
    arrayColori = new Array("rosso", "blu", "verde");
  }
  else
  {
    arrayColori = new Array("");
  }
  
  var x = 0;
  options = document.forms['setup'].selcolore.options;
  options.length = 0;
  for (i in arrayColori)
  { 
    option = new Option(arrayColori[i], arrayColori[i]);
    option.style.backgroundImage = "url(images/" + arrayColori[i] + ".gif)";
    options[i] = option;
    if(arrayColori[i] == colore)
    {
      x = i;
    }
  }
  document.forms['setup'].selcolore.selectedIndex = x;
}

function enabled(numsiti)
{
  if(numsiti != 1)
  {
	  document.forms['setup'].nomesposo.disabled = true;
	  document.forms['setup'].nomesposa.disabled = true;
	  document.forms['setup'].datamatrimonio.disabled = true;
	  document.forms['setup'].semail.disabled = true;
	  document.forms['setup'].seltemplate.disabled = true;
	  document.forms['setup'].selcolore.disabled = true;
	}
	else
  {
    document.forms['setup'].nomesposo.disabled = false;
    document.forms['setup'].nomesposa.disabled = false;
    document.forms['setup'].datamatrimonio.disabled =false;
    document.forms['setup'].semail.disabled = false;
    document.forms['setup'].seltemplate.disabled = false;
    document.forms['setup'].selcolore.disabled = false;
  }
 
}
 
/*
Strip whitespace from the beginning and end of a string
Input : a string
*/
function trim(str)
{
  return str.replace(/^\s+|\s+$/g,'');
}

/*
Check if a string is in valid email format. 
Returns true if valid, false otherwise.
*/
function isEmail(str)
{
  var regex = /^[-_.a-z0-9]+@(([-_a-z0-9]+\.)+(ad|ae|aero|af|ag|ai|al|am|an|ao|aq|ar|arpa|as|at|au|aw|az|ba|bb|bd|be|bf|bg|bh|bi|biz|bj|bm|bn|bo|br|bs|bt|bv|bw|by|bz|ca|cc|cd|cf|cg|ch|ci|ck|cl|cm|cn|co|com|coop|cr|cs|cu|cv|cx|cy|cz|de|dj|dk|dm|do|dz|ec|edu|ee|eg|eh|er|es|et|eu|fi|fj|fk|fm|fo|fr|ga|gb|gd|ge|gf|gh|gi|gl|gm|gn|gov|gp|gq|gr|gs|gt|gu|gw|gy|hk|hm|hn|hr|ht|hu|id|ie|il|in|info|int|io|iq|ir|is|it|jm|jo|jp|ke|kg|kh|ki|km|kn|kp|kr|kw|ky|kz|la|lb|lc|li|lk|lr|ls|lt|lu|lv|ly|ma|mc|md|mg|mh|mil|mk|ml|mm|mn|mo|mp|mq|mr|ms|mt|mu|museum|mv|mw|mx|my|mz|na|name|nc|ne|net|nf|ng|ni|nl|no|np|nr|nt|nu|nz|om|org|pa|pe|pf|pg|ph|pk|pl|pm|pn|pr|pro|ps|pt|pw|py|qa|re|ro|ru|rw|sa|sb|sc|sd|se|sg|sh|si|sj|sk|sl|sm|sn|so|sr|st|su|sv|sy|sz|tc|td|tf|tg|th|tj|tk|tm|tn|to|tp|tr|tt|tv|tw|tz|ua|ug|uk|um|us|uy|uz|va|vc|ve|vg|vi|vn|vu|wf|ws|ye|yt|yu|za|zm|zw)|(([0-9][0-9]?|[0-1][0-9][0-9]|[2][0-4][0-9]|[2][5][0-5])\.){3}([0-9][0-9]?|[0-1][0-9][0-9]|[2][0-4][0-9]|[2][5][0-5]))$/i;
  return regex.test(str);
}

function isUrl(str)
{
  var regex = /^[A-Za-z0-9_\-]+$/;
  return regex.test(str);
}

function isPwd(str)
{
  var regex = /^\S{8,}$/;
  return regex.test(str);
}


function checkFormRegistrazione()
{
  var cemail, cusername, cpwd, ccpwd, cnome, ccognome, cindirizzo, ccitta, ccap, cprovincia;
    
    cemail   = document.setup.email;
    cusername = document.setup.username;
    cpwd = document.setup.pwd;
    ccpwd = document.setup.cpwd;
    cnome    = document.setup.nome;
    ccognome    = document.setup.cognome;
    cindirizzo    = document.setup.indirizzo;
    ccitta    = document.setup.citta;
    ccap    = document.setup.cap;
    cprovincia    = document.setup.provincia;
  
  if(trim(cnome.value) == '')
  {
    alert('Inserisci il nome');
    cnome.focus();
    return false;
  }
  else if(trim(ccognome.value) == '')
  {
    alert('Inserisci il cognome');
    ccognome.focus();
    return false;
  }
  else if(trim(cemail.value) == '')
  {
    alert('Inserisci indirizzo email');
    cemail.focus();
    return false;
  }
  else if(!isEmail(trim(cemail.value)))
  {
    alert('Indirizzo email non valido');
    cemail.focus();
    return false;
  }
  else if(trim(cindirizzo.value) == '')
  {
    alert('Inserisci l\'indirizzo');
    cindirizzo.focus();
    return false;
  }
  else if(trim(ccitta.value) == '')
  {
    alert('Inserisci la città');
    ccitta.focus();
    return false;
  }
  else if(trim(ccap.value) == '')
  {
    alert('Inserisci il cap');
    ccap.focus();
    return false;
  }
  else if(trim(cprovincia.value) == '')
  {
    alert('Seleziona la provincia');
    cprovincia.focus();
    return false;
  }
  else if(trim(cusername.value) == '')
  {
    alert('Inserisci lo username');
    cusername.focus();
    return false;
  }
  else if(trim(cpwd.value) == '')
  {
    alert('Inserisci la password');
    cpwd.focus();
    return false;
  }
  else if(!isPwd(trim(cpwd.value)))
  {
    alert('Formato della password non valido. La password deve contenere almeno 8 caratteri alfanumerici e speciali e non deve contenere spazi');
    cpwd.focus();
    return false;
  }
  else if(trim(ccpwd.value) == '')
  {
    alert('Conferma la password');
    ccpwd.focus();
    return false;
  }
  else if(!(trim(cpwd.value) == trim(ccpwd.value)))
  {
    alert('Password di conferma diversa dalla password inserita');
    ccpwd.focus();
    return false;
  }
  else
  {
    cemail.value   = trim(cemail.value);
    cnome.value = trim(cnome.value);
    ccognome.value = trim(ccognome.value);
    cindirizzo.value = trim(cindirizzo.value);
    ccitta.value = trim(ccitta.value);
    ccap.value = trim(ccap.value);
    cprovincia.value = trim(cprovincia.value);
    cusername.value = trim(cusername.value);
    cpwd.value    = trim(cpwd.value);
    ccpwd.value    = trim(ccpwd.value);
    document.setup.action = "index.php?cmd=registrazione";
    document.setup.submit();
    return true;
  }

}

function checkFormAcquista(cmd)
{

  var cnomesposo, cnomesposa, cdata, ctemplate, curl, ccodice, ret;
    
    cnomesposo    = document.setup.nomesposo;
    cnomesposa    = document.setup.nomesposa;
    cdata    = document.setup.datamatrimonio;
    ctemplate    = document.setup.seltemplate;
    curl = document.setup.urlsito;
    ccodice = document.setup.codatt;
    
    if(cmd == 'attiva' && trim(ccodice.value) == '')
	  {
	    alert('Inserisci il codice di attivazione');
	    ccodice.focus();
	    return false;
	  }   
	  else if(trim(cnomesposo.value) == '')
	  {
	    alert('Inserisci il nome dello sposo');
	    cnomesposo.focus();
	    return false;
	  }
	  else if(trim(cnomesposa.value) == '')
	  {
	    alert('Inserisci il nome della sposa');
	    cnomesposa.focus();
	    return false;
	  }
	  else if(trim(cdata.value) == '')
	  {
	    alert('Inserisci la data di nozze');
	    cdata.focus();
	    return false;
	  }
	  else if(!isDate(trim(cdata.value)))
	  {
	    alert('Inserisci una data valida');
      cdata.focus();
	    return false;
	  }
	  else if(!isUrl(trim(curl.value)))
	  {
	    alert('Inserisci un nome per il sito valido. Non deve contenere spazi o caratteri speciali');
	    curl.focus();
	    return false;
	  }
	  else if(trim(ctemplate.value) == '')
	  {
	    alert('Scegli un Modello');
	    ctemplate.focus();
	    return false;
	  }
	  else if(trim(curl.value) == '' || trim(curl.value) == 'es: robertoecristina')
	  {
	    alert('Inserisci un nome per il sito');
	    curl.focus();
	    return false;
	  }
	  else
	  {
	  
	    cnomesposo.value    = trim(cnomesposo.value);
	    cnomesposa.value    = trim(cnomesposa.value);
	    cdata.value    = trim(cdata.value);
	    ctemplate.value = trim(ctemplate.value);
	    curl.value    = trim(curl.value);
	    if(cmd == 'attiva')
	    {
  	    ccodice.value = trim(ccodice.value);
  	    document.setup.action = "admin.php?cmd=attiva";
      }
      else
      {
        document.setup.action = "admin.php?cmd=registra";
      }
      document.setup.submit();
      return true;
	  }
}


function checkFormRecupero()
{

  var cemail, cusername;
    
    cemail   = document.recupera.email;
    cusername = document.recupera.username;
     
  
  if(trim(cemail.value) == '')
  {
    alert('Inserisci indirizzo email');
    cemail.focus();
    return false;
  }
  else if(!isEmail(trim(cemail.value)))
  {
    alert('Indirizzo email non valido');
    cemail.focus();
    return false;
  }
  else if(trim(cusername.value) == '')
  {
    alert('Inserisci lo username');
    cusername.focus();
    return false;
  }
  else
  {
    cemail.value   = trim(cemail.value);
    cusername.value   = trim(cusername.value);
    document.recupera.action = "index.php?cmd=recupera";
    document.recupera.submit();
    return true;
  }

}

function checkFormCambioEmail()
{

  var email, cemail;
    
    email   = document.cambiaemail.email;
    cemail   = document.cambiaemail.cemail;
  
  if(trim(email.value) == '')
  {
    alert('Inserisci indirizzo email');
    email.focus();
    return false;
  }
  else if(!isEmail(trim(email.value)))
  {
    alert('Indirizzo email non valido');
    email.focus();
    return false;
  }
  else if(trim(cemail.value) == '')
  {
    alert('Inserisci indirizzo email di conferma');
    cemail.focus();
    return false;
  }
  else if(!isEmail(trim(cemail.value)))
  {
    alert('Indirizzo email di conferma non valido');
    cemail.focus();
    return false;
  }
  else if(trim(email.value) != trim(cemail.value))
  {
    alert('Indirizzo email di conferma diverso da indirizzo email');
    cemail.focus();
    return false;
  }
  else
  {
    email.value   = trim(email.value);
    document.cambiaemail.action = "admin.php?cmd=cambiaEmail";
    document.cambiaemail.submit();
    return true;
  }

}

function checkFormCambioPwd()
{

  var pwd, npwd, cpwd;
    
    pwd   = document.cambiapwd.pwd;
    npwd   = document.cambiapwd.npwd;
    cpwd   = document.cambiapwd.cpwd;
  
  if(trim(pwd.value) == '')
  {
    alert('Inserisci la vecchia password');
    pwd.focus();
    return false;
  }
  else if(trim(npwd.value) == '')
  {
    alert('Inserisci la nuova password');
    npwd.focus();
    return false;
  }
  else if(!isPwd(trim(npwd.value)))
  {
    alert('Formato della password non valido. La password deve contenere almeno 8 caratteri alfanumerici e speciali e non deve contenere spazi');
    npwd.focus();
    return false;
  }
  else if(trim(cpwd.value) == '')
  {
    alert('Inserisci la password di conferma');
    cpwd.focus();
    return false;
  }
  else if(trim(npwd.value) != trim(cpwd.value))
  {
    alert('Password di conferma diversa dalla nuova password');
    cpwd.focus();
    return false;
  }
  else
  {
    npwd.value   = trim(npwd.value);
    document.cambiapwd.action = "admin.php?cmd=cambiaPwd";
    document.cambiapwd.submit();
    return true;
  }

}


var dtCh= "/";
var minYear=1900;
var maxYear=2100;

function isInteger(s)
{
  var i;
    for (i = 0; i < s.length; i++)
    {   
        // Check that current character is number.
        var c = s.charAt(i);
        if (((c < "0") || (c > "9"))) return false;
    }
    // All characters are numbers.
    return true;
}

function stripCharsInBag(s, bag)
{
  var i;
    var returnString = "";
    // Search through string's characters one by one.
    // If character is not in bag, append to returnString.
    for (i = 0; i < s.length; i++)
    {   
        var c = s.charAt(i);
        if (bag.indexOf(c) == -1) returnString += c;
    }
    return returnString;
}

function daysInFebruary (year)
{
  // February has 29 days in any year evenly divisible by four,
    // EXCEPT for centurial years which are not also divisible by 400.
    return (((year % 4 == 0) && ( (!(year % 100 == 0)) || (year % 400 == 0))) ? 29 : 28 );
}
function DaysArray(n) 
{
  for (var i = 1; i <= n; i++) 
  {
    this[i] = 31
    if (i==4 || i==6 || i==9 || i==11) {this[i] = 30}
    if (i==2) {this[i] = 29}
   } 
   return this;
}

function isDate(dtStr)
{
  var daysInMonth = DaysArray(12)
  var pos1=dtStr.indexOf(dtCh)
  var pos2=dtStr.indexOf(dtCh,pos1+1)
  var strDay=dtStr.substring(0,pos1)
  var strMonth=dtStr.substring(pos1+1,pos2)
  var strYear=dtStr.substring(pos2+1)
  strYr=strYear
  if (strDay.charAt(0)=="0" && strDay.length>1) strDay=strDay.substring(1)
  if (strMonth.charAt(0)=="0" && strMonth.length>1) strMonth=strMonth.substring(1)
  for (var i = 1; i <= 3; i++) 
  {
    if (strYr.charAt(0)=="0" && strYr.length>1) strYr=strYr.substring(1)
  }
  month=parseInt(strMonth)
  day=parseInt(strDay)
  year=parseInt(strYr)
  if (pos1==-1 || pos2==-1)
  {
    alert("Inserisci la data nel formato 'gg/mm/aaaa'")
    return false;
  }
  if (strMonth.length<1 || month<1 || month>12)
  {
    alert("Il Mese inserito non è valido")
    return false;
  }
  if (strDay.length<1 || day<1 || day>31 || (month==2 && day>daysInFebruary(year)) || day > daysInMonth[month])
  {
    alert("Il giorno inserito non è valido")
    return false;
  }
  if (strYear.length != 4 || year==0 || year<minYear || year>maxYear)
  {
    alert("L'anno inserito non è valido")
    return false;
  }
  if (dtStr.indexOf(dtCh,pos2+1)!=-1 || isInteger(stripCharsInBag(dtStr, dtCh))==false)
  {
    alert("Inserisci la data nel formato 'gg/mm/aaaa'")
    return false;
  }
return true;

}

function CreateBookmarkLink() 
{

	 title = "Matrimoniweb.com"; 
	  // Blogger - Replace with <$BlogItemTitle$> 
	  // MovableType - Replace with <$MTEntryTitle$>

	 url = "http://www.matrimoniweb.com";
	  // Blogger - Replace with <$BlogItemPermalinkURL$> 
	  // MovableType - Replace with <$MTEntryPermalink$>
	  // WordPress - <?php bloginfo('url'); ?>

		if (window.sidebar) 
		{ // Mozilla Firefox Bookmark
			window.sidebar.addPanel(title, url,"");
		} 
		else if( window.external ) 
		{ // IE Favorite
			window.external.AddFavorite( url, title); 
		}
		else if(window.opera && window.print) 
		{ // Opera Hotlist
			return true;
		}
}

	 


