/* 
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */


var freccia_destra = base_url + 'application/immagini/freccia_destra.png';
var freccia_basso = base_url + 'application/immagini/freccia_basso.png';
var apri_img = base_url + 'application/immagini/apri.png';
var chiudi_img = base_url + 'application/immagini/chiudi.png';

function changeMenuState() {
   $('.img_menu').mouseover(
        function(event){
            if (this == event.target) {
                $(this).next().slideToggle('slow');
                if ( this.title  == 'close') {
                    this.title = 'open';
                    this.src = freccia_basso;
                }
                else {
                     this.title = 'close';
                    this.src = freccia_destra;
                }
            }
        }
   );
}

function fotoTopOpacity(id) {
	var element = $('#top_center');
   element.fadeTo(3000, 0.4);
}

function date_checkbox(cb) {
   if (isFinite(cb)) cb = this;
   var checked = cb.checked;
   $("input[type=text],select",$(cb).parents("div:first"))
         .attr("disabled",checked)
         .css("background-color", checked ? "silver" : "white");
   return;
}

function date_binder() {
   var cb = $(this);
   var opts = {};
   if (cb.hasClass('optDate')) {
     opts = {optional_date:1};
   }
   cb.date_input(opts);
   cb.attr("readonly",true);
}

function date_binder_start_date(id_start_date_picker,id_end_date_picker) {
   var cb = $(id_start_date_picker);
   date_binder_end_date(id_end_date_picker,cb.val());

   cb.change(function(event) {
      date_binder_end_date(id_end_date_picker,$(id_start_date_picker).val());
    }
   );
}

function date_binder_end_date(id_end_date_picker,date_start_string) {
   var year = date_start_string.substr(0,4);
   var month = date_start_string.substr(5,2);
   var day = date_start_string.substr(8,2);
   var input = $(id_end_date_picker);
   input.unbind();//unbind('click, focus');
   if (input.val() < date_start_string)
    input.val(date_start_string);
   input.date_input({start_for_select: new Date(year,month-1,day)});
}

function set_view_margins() {
  var max = $('.right_standard_single_view');
  var min = max.prev();
  if (min.height() > max.height()) {
    var temp = max;
    max = min;
    min = temp;
  }
  var margin = (max.height() - min.height()) / 2;
  min.css('margin-top',margin);
}

function set_required_mark() {
  $('label.required').prepend('* ');
  return;
}

function div_dettagli() {
  $('a.dettagli').click(function() {
       if ($(this).text() == 'Dettagli') {
         $(this).next().slideDown();
          $(this).text('Chiudi dettagli');
       } else {
         $(this).next().hide();
          $(this).text('Dettagli');
       }
       return false;
     }
  );
}

function div_risposta() {

   $('.img_risposta').mouseover(
        function(event){
            if (this == event.target) {
                $(this).parent().next().slideToggle('slow');
                if ( this.title  == 'close') {
                    this.title = 'open';
                    this.src = freccia_basso;
                }
                else {
                     this.title = 'close';
                    this.src = freccia_destra;
                }
            }
        }
   );
}

function div_commenti() {

   $('.add_commento').mouseover(
        function(event){
            if (this == event.target) {
                $(this).next().slideToggle('slow');
            }
        }
   );

}


function man_date_change() {
  var options = '<option value="">--</option>';

  var parent = $(this).parent();

  var year = $(".manYear",parent);
  var month = $(".manMonth",parent);
  var day = $(".manDay",parent);
  var selected = "";

  var maxDay = 28;
  if (month.val() == 4 || month.val() == 6 || month.val() == 9 || month.val() == 11) {
    maxDay = 30;
  } else if (month.val() != 2) {
    maxDay = 31
  } else if (year.val() % 4 == 0 || year.val() % 100 == 0)
    maxDay = 29;


  for (var i = 1; i <= maxDay; i++) {
    var j = i;
    if (i < 10)
      j = '0' + i;
    if (day.val() == j)
      selected = ' selected="selected" ';
    options += '<option value="' + j + '"' + selected + '>' + j + '</option>';
    selected = '';
  }

  var ex_day = day.val();
  day.empty();
  day.append(options);
  if (ex_day <= maxDay)
    day.val(ex_day);

  var finalDate = $("input[type=hidden]",parent);
  if (year.val() == '' || month.val() == '' || day.val() == '') {
    finalDate.val('');
  } else {
    finalDate.val(year.val() + '-' + month.val() + '-' + day.val());
  }
  return;
}

function man_date_init(obj,year_start,year_end) {
  var context = obj;
  if (!context)
    context = this;


  var options_init = '<option value="">--</option>';
  var options = "";

  var dateValue = $("input[type=hidden]",$(context)).val();
  var yearValue = '';
  var monthValue = '';
  var dayValue = '';
  if (dateValue != '') {
    yearValue = dateValue.substring(0, 4);
    monthValue = dateValue.substring(5, 7);
    dayValue = dateValue.substring(8, 10);
  }

  var selected = '';


  var year = $(".manYear",$(context));
  var month = $(".manMonth",$(context));
  var day = $(".manDay",$(context));

  for (var i = 1; i < 32; i++) {
    var j = i;
    if (i < 10) j = '0' + i;
    if (dayValue == j) {
      selected = ' selected="selected" ';
    }
    options += '<option value="' + j + '"' + selected + '>' + j + '</option>';
    selected ='';
  }
  day.empty();
  day.append(options_init + options);

  selected = '';
  options = "";
  var man_mesi = ["Gennaio","Febbraio","Marzo","Aprile","Maggio","Giugno","Luglio","Agosto","Settembre","Ottobre","Novembre","Dicembre"];
  for (i = 1; i < 13; i++) {
    j = i;
    if (i < 10) j = '0' + i;
    if (monthValue == j) {
      selected = ' selected="selected" ';
    }
    options += '<option value="' + j + '"' + selected + '>' + man_mesi[i-1] + '</option>';
    selected ='';
  }
  month.empty();
  month.append(options_init + options);

  options = "";
  selected = '';
  var year_1 = year_start;
  var year_2 = year_end;
  if (!year_1 || isNaN(year_1))
    year_1 = 1930;
  if (isNaN(year_2))
    year_2 = 2001;

  for (i = year_1; i < year_2; i++) {
    if (yearValue == i)
      selected = ' selected="selected" ';
    options += '<option value="' + i + '"' + selected + '>' + i + '</option>';
    selected = '';
  }
  year.empty();
  year.append(options_init + options);


  $('input',$(context)).each(man_date_change);
  $('select',$(context)).change(man_date_change);
  return;
}

function add_commento(blog_id,home) {
  var descrizione = $('#descrizione_' + blog_id);
  var blog = $('#blog_' + blog_id);
  if (descrizione.val() == '') {
    alert('Devi inserire un commento!');
    return false;
  }
      $.ajax({
        type: "POST",
        timeout: 20000,
        dataType: "html",
        url: index_url + "/commento/ajaxCommentIns",
        data: "text=" + descrizione.val() + "&blog=" + blog_id + "&home=" + home,
        success: function(data,textStatus){
          blog.empty();
          blog.append(data);
          div_risposta();
        },
        error: function(XMLHttpRequest, textStatus, errorThrown){
            alert(textStatus);
        },
        complete: function(){
        }
    });

}

function edit_commento(blog_id,commento_id,home) {
  var descrizione = $('#descrizione_commento_' + commento_id);
  var blog = $('#blog_' + blog_id);
  if (descrizione.val() == '') {
    alert('Devi inserire un commento!');
    return false;
  }
      $.ajax({
        type: "POST",
        timeout: 20000,
        dataType: "html",
        url: index_url + "/commento/ajaxCommentMod",
        data: "text=" + descrizione.val() + "&commento=" + commento_id + "&home=" + home,
        success: function(data,textStatus){
          blog.empty();
          blog.append(data);
          div_risposta();
        },
        error: function(XMLHttpRequest, textStatus, errorThrown){
            alert(textStatus);
        },
        complete: function(){
        }
    });
    return false;

}

function delete_commento(blog_id,commento_id,home) {
  var descrizione = $('#descrizione_' + commento_id);
  var blog = $('#blog_' + blog_id);
      $.ajax({
        type: "POST",
        timeout: 20000,
        dataType: "html",
        url: index_url + "/commento/ajaxCommentDel",
        data: "commento=" + commento_id + "&home=" + home,
        success: function(data,textStatus){
          blog.empty();
          blog.append(data);
          div_risposta();
        },
        error: function(XMLHttpRequest, textStatus, errorThrown){
            alert(textStatus);
        },
        complete: function(){
        }
    });

}


function ajaxSuggest() {

	$(".comune_suggest").autocomplete(index_url + '/comune/ajaxComune', {
      minChars: 3
   });
	$(".comune_suggest_id").autocomplete(index_url + '/comune/ajaxComune/1', {
      minChars: 3
   });
	$(".comune_provincia_suggest").autocomplete(index_url + '/comune/ajaxComune', {
      minChars: 3,
      cacheLength: 0,
      extraArg: 'provincia_id'
   });
	$(".via_suggest").autocomplete(index_url + '/via/ajaxVia', {
      minChars: 3,
      cacheLength: 0,
      extraArg: 'comune_id'
   });
	$(".via_tipo_suggest").autocomplete(index_url + '/via/ajaxViaTipo', {
      minChars: 1
   });
}


function ajax_comune_change(comune_id,provincia_id,cap) {
 $('#' + provincia_id).change(function(){
    var add_cap = '';
    if (cap == 1)
       add_cap = '/1';
    $.popdropdown([{value:$('#' + provincia_id).val(),
        target: '#' + comune_id,
        url: index_url + "/comune/ajaxComuniProvincia" + add_cap}],
        {
         after: function(op) {
           $('#' + comune_id).change();
         },
         blockUI: 'Sto caricando i comuni della provincia selezionata...'
        }
    );

  });

}

