$(function(){
  $('.filter .group label').each(function() {
    var id = $(this).attr('for');
    var input = $('#' + id);
    if (input.is(':checked')) $(this).addClass('checked');
    $(this).click(function() {
      if ($(this).hasClass('checked')) {
        $(this).removeClass('checked');
      } else {
        $(this).addClass('checked');
      }
    })
  })
})


String.prototype.firstPart = function() {
	var part = this.split('/')[1];
	return '/'+part+'/';
};

var Filter = {
  submit : function()
  {
    //console.info($('#filter form.filter'));
    //console.info($('#filter form.filter').serialize());
    $('form.filter').submit();
    return false;
  },
  show : function(item, fast)
  {
    var filter = $(item).parents('.filter');
    var uri = $(item).parents('form.filter').attr('action');
    $(filter).find('.opcl a').removeClass('collapsed').addClass('expanded').text('скрыть фильтр');
    if (uri) setCookie('collapse', 0, uri.firstPart());
    //$.getJSON(uri,{collapse : 0 }, function(json) {});
    if (jQuery.browser.msie || fast) {
      $(filter).find('.fContent').show();
      $(filter).find('.fHelp').hide();
    } else {
      $(filter).find('.fContent').slideDown();
      $(filter).find('.fHelp').slideUp();
    }
  },
  hide : function(item, fast)
  {
    var filter = $(item).parents('.filter');
    var uri = $(item).parents('form.filter').attr('action');
    $(filter).find('.opcl a').removeClass('expanded').addClass('collapsed').text('открыть фильтр');
    if (uri) setCookie('collapse', 1, uri.firstPart());
    //$.getJSON(uri,{collapse : 1 }, function(json) {});
    if (jQuery.browser.msie || fast) {
      $(filter).find('.fContent').hide();
      $(filter).find('.fHelp').show();
    } else {
      $(filter).find('.fContent').slideUp();
      $(filter).find('.fHelp').slideDown();
    }
  },
  toggle:function(item){
    if($(item).parents('.filter').find('.opcl a').hasClass('collapsed')) Filter.show(item);
    else Filter.hide(item)
  },
  valiDate : function (el, delimiter)
  {
    if (!el) return false;
    var dt = $(el).val();
    if (!delimiter) delimiter = ".";

    var acc = '', sym, tmp, arr = new Array();

    while (dt.length) {
      sym = dt.substr(0, 1);
      tmp = sym * 1;
      if (tmp == sym && sym != ' ') {
        acc+= sym;
      } else {
        if (acc) {
          arr = arr.concat([acc]);
          acc = '';
        }
      }
      dt = dt.substr(1);
    }
    arr = arr.concat([acc]);
    if (arr.length == 1) {
      str = arr[0];
      if (str.length == 6) {
        var d = str.substr(0, 2);
        var m = str.substr(2, 2);
        var y = str.substr(4, 2);
        arr = [d, m, y];
      }
      if (str.length == 8) {
        var d = str.substr(0, 2);
        var m = str.substr(2, 2);
        var y = str.substr(4, 4);
        arr = [d, m, y];
      }
    }
    if (arr.length == 3) {
      var d = arr[0] * 1;
      var m = arr[1] * 1;
      var y = arr[2] * 1;
      if (d > 0 && d < 32 && m > 0 && m < 13) {
        if (d < 10) arr[0] = '0' + d;
        if (m < 10) arr[1] = '0' + m;
        if (y < 1000) arr[2] = y + 2000;
        $(el).val(arr[0] + '.' + arr[1] + '.' + arr[2]);
        return true;
      }
    }
    if ($(el).val()) alert ($(el).val() + ' не очень похоже на дату');
    return false;
  }
};

$.headCSS("/css/ui.datepicker.css");
$.headCSS("/css/style-datepicker.css");

$(function() {
  $.each($('.filter .opcl a'), function(i, item) {
    if ($(item).hasClass('collapsed')) Filter.hide(item, true);
    else Filter.show(item);
  });
  
  $('.filter .opcl a').click(function(){
	  Filter.toggle(this);
  });
  
  var date_str = 'ДД.ММ.ГГГГ';
  
  $('.tenderBudget input[name=state]').change(function(){
	  if($('.tenderBudget input[name=state]').attr('checked')) {
		  $('.tenderBudget input[name=commercial]').removeAttr('checked');
	  }
  });
  
  $('.tenderBudget input[name=commercial]').change(function(){
	  if($('.tenderBudget input[name=commercial]').attr('checked')) {
		  $('.tenderBudget input[name=state]').removeAttr('checked');
	  }
  });
  
  $('.fDate input').each(function(){
	  if($(this).val() == '') $(this).val(date_str);
  });
  $('.fDate input').click(function(){
	  if($(this).val() == date_str) $(this).val('');
  });
  
 
  $('.fDate input').change(function(){
	  if($(this).val() == '') $(this).val(date_str);
  });
  
  $('.filter .fHelp').click(function(){  Filter.show(this); });
  if ($('.filter .fDate input').length) {
    $('.filter .fDate input').attr('readonly', 'readonly');
    $('.filter .fDate input').datepicker({ showButtonPanel:1 });
    $('.filter .fDate input').blur(function(){ Filter.valiDate($(this)); });
  }
});


