$(function()
{
  $('#qRicerca').bind('focus',ricercaOnFocus).bind('blur',ricercaOnBlur).bind('keypress',ricercaKeyPress);

  $('div#categorie, form#login, div#logout').corner('10px');
  $('div#categorie div.RC, form#login div.RC, div#logout div.RC').corner('8px');
  $('div#header img, div#header h1').click(function(){document.location='/';});

  $('div#categorie ul li a.anno').click(showCatYear);
  $('form#login a.submit').click(login);

  $('ul#plessi > li').bind('mouseover', DDMOpen).bind('click', DDMOpen);
  $('ul#plessi > li, ul#plessi li ul').bind('mouseout', DDMClose);

  if($('body').hasClass('home'))
  {
    $('div#content div.tipoPlesso').corner('10px');
    $('div#content div.tipoPlesso div.RC').corner('8px');
  }
  else if($('body').hasClass('documenti') || $('body').hasClass('plesso') || $('body').hasClass('ricerca'))
  {
    $('div#content div.param div.imgPlesso').corner('10px tl tr');
    $('div#content div.param div.imgPlesso div.RC').corner('8px tl tr');
  }
  else if($('body').hasClass('documento'))
  {
    $('div#content div.param div.imgPlesso').corner('10px tl tr');
    $('div#content div.param div.imgPlesso div.RC').corner('8px tl tr');

    $('ul.titoliSezioni li').click(function(){$('ul.testiSezioni li').hide();$('#'+$(this).attr('id')+'T').show();$('ul.titoliSezioni li').removeClass('s');$(this).addClass('s');});
    $('ul.titoliSezioni li:first').addClass('s');
    $('ul.testiSezioni li:first').show();

    $('div.foto a.img').fancybox({'overlayOpacity': 0.8, 'overlayColor': '#000000'});
  }
  else if($('body').hasClass('contatti'))
  {
    $('div#content div.param div.imgPlesso').corner('10px tl tr');
    $('div#content div.param div.imgPlesso div.RC').corner('8px tl tr');

    showMap(indirizzo);
    $("#dBody").bind('unload',GUnload);

    $('form#email a.submit').click(inviaEmail);
  }
});

function login()
{
  frm=$('form#login')[0];
  if(frm.username.value=='')
    {alert('Inserire un username');return false;}
  if(frm.password.value=='')
    {alert('Inserire la password');return false;}

  frm.submit();
}

var DDMItem;
var hDDMTimer;

function DDMOpen()
{
  clearTimeout(hDDMTimer);
  DDMCloseTimer();
  DDMItem=$(this).find('ul').css('visibility','visible');
}

function DDMClose()
{
  clearTimeout(hDDMTimer);
  hDDMTimer=setTimeout(DDMCloseTimer,500);
}

function DDMCloseTimer()
{
  if(DDMItem)
    {DDMItem.css('visibility', 'hidden');}
}

function showCatYear()
{
  if($(this).siblings().filter('ul:hidden').size()>0)
  {
    $('div#categorie ul li ul').hide();
    $(this).siblings().filter('ul').show();
  }
}

function ricercaKeyPress(e)
{
  var characterCode;

  if(e && e.which)
    {characterCode=e.which;}
  else
    {characterCode=event.keyCode;}

  if(characterCode == 13)
  {
    ricerca();
    return false;
  }
  else
    {return true;}
}

function ricercaOnFocus(e)
{
  $(e.target).addClass('focused');
  if(e.target.value==e.target.title)
    {e.target.value='';}
}

function ricercaOnBlur(e)
{
  $(e.target).removeClass('focused');
  if(e.target.value=='')
    {e.target.value=e.target.title;}
}

function ricerca()
{
  var qr=document.getElementById('qRicerca').value;
  if(qr!='' && qr!='Ricerca...')
    {document.location='/ricerca/'+escape(qr)+'/1/';}
}

var map;

function showMap(s)
{
  if (GBrowserIsCompatible())
  {
    map = new GMap2(document.getElementById("map"));
    map.setUIToDefault();
    geocoder = new GClientGeocoder();
    geocoder.getLocations(s,addToMap);
  }
}

function addToMap(response)
{
  place = response.Placemark[0];
  point = new GLatLng(place.Point.coordinates[1],place.Point.coordinates[0]);
  map.setCenter(point, 15);
  marker = new GMarker(point);
  map.addOverlay(marker);
}

function inviaEmail()
{
  er=new RegExp('^[a-z0-9_.\-]+@[a-z0-9_.\-]+\.[a-z]{2,4}$',"gi");
  if(!er.test($('#FC_email').val()))
    {alert('Completare il campo email');return false;}
  if($('#FC_nome').val()=='')
    {alert('Completare il campo nome');return false;}
  if($('#FC_messaggio').val()=='')
    {alert('Completare il campo messaggio');return false;}

  $.get("/index.php",{'a': "ajax", 'f': "contatti", 'nome':$('#FC_nome').val(), 'id_plesso': $('#FC_id_plesso').val(), 'email':$('#FC_email').val(), 'messaggio':$('#FC_messaggio').val()}, inviaEmailCallBack);
}

function inviaEmailCallBack(data,textStatus)
{
  if(data=='1')
  {
    alert('Messaggio inviato correttamente.\nGrazie per averci contattato!');
    $('form#email :input').val('');
  }
  else
    {alert('Non è stato possibile invire il messaggio.\nSi prega di ritentare più tardi.');}
}