jQuery(function () {
  var $ = jQuery;
  /*
  Current.hash.routes.push
  ( { pattern: /^\/achat$/
    , callback: function ()
      {
        $('input[type=radio][name=s_prd_Type][value=1]').attr('checked', true);
        $('.search.head .section').removeClass('on').filter('.type-buy').addClass('on');
        if ($('.portal-content').size() > 0)
          $('.menu .menu-item.portal-search').removeClass('on').filter('.type-buy').addClass('on');
      }
    }
  , { pattern: /^\/location$/
    , callback: function ()
      {
        $('input[type=radio][name=s_prd_Type][value=2]').attr('checked', true);
        $('.search.head .section').removeClass('on').filter('.type-rent').addClass('on');
        if ($('.portal-content').size() > 0)
          $('.menu .menu-item.portal-search').removeClass('on').filter('.type-rent').addClass('on');        
      }
    }
  );
  */

  // uniquement si search exists
  $('.zaf .search').first().each(function () {
    // autocompletion pour le champs de localisation 
    var search = $(this);
    var text = ['Vous devez selectionner votre champs de recherche', '(achat ou location)'];
    search.find('form').submit(function (e) {
      var $this = $(this);
      if (search.find('input[name=s_prd_Type]:checked').size() < 1) {
        alert(text.join('\n'));
        Axessia.release.form($this);
        return e.preventDefault();
      }
      if (Axessia.get('url.rewrite') == 'enabled') ;
    });
  });
  
  // label for checkbox inside
  $('.zaf .label-in-checkbox input[type=checkbox]').change(function () {
    var $this = $(this);
    setTimeout(function () {
      if ($this.filter(':checked').size() > 0)
        $this.parent().addClass('checked');
      else
        $this.parent().removeClass('checked');
    }, 1);
  });
  
  /** 
   * links with open-box class are not followed and
   * the corresponding box has display toggled
   */
  var btsh_ie_fix = function () {
    if ($.browser.msie && ($.browser.version + '').match(/7\.0/)) {
      arguments.callee.top = arguments.callee.top ? 0 : 1;
      $('.teaser .widget').css('top', arguments.callee.top);
    }
  };
  $('.zaf .search.button-sh').click(function (e) {
    if ($(this).hasClass('extended')) {
      $(this).removeClass('extended');
      $('.zaf .search.submit').animate({ 'margin-top': '-=50' }, 800, btsh_ie_fix);
    } else {
      $(this).addClass('extended');
      $('.zaf .search.submit').animate({ 'margin-top': '+=50' }, 800, btsh_ie_fix);
    }
    e.preventDefault();
  });

  /*LJN
  $('.zaf .search.head .section.type-buy').click(function () {
  window.location.hash = '/achat';
  });
 
  $('.zaf .search.head .section.type-rent').click(function () {
  window.location.hash = '/location';
  });
  */
 
 
  $('.zaf .area .unity').each(function () {
    $(this).html('<span class="no-screen"> M˛</span>&shy;');
  }); 
  /*
  $('#msearch').each(function () {
  var $this = $(this);
  var a = 'séparés par des virgules...';
  var nr = 'Pas de résultat';
  var list = Axessia.get('search.location.elements.item', []);
  var $hidden = $this.parent().find('input[type=hidden][name=s_prd_Ville]');
  var domlist = $this.parent().find('ul.autocomplete');
  var selected = [];
  var previous = '';
  var sto;
  var get_match = function (match) {
  var l = [];
  item: for (var i = 0; i < list.length; i++)
  if (~(('' + list[i].text).toLowerCase().indexOf(match))) {
  for (var ii = 0; ii < selected.length; ii++)
  if (selected[ii] == list[i])
  continue item;
  l.push(list[i]);
  }
  return l;
  };
  var update_field = function () {
  previous = '';
  for (var i = 0; i < selected.length; i++)
  previous += selected[i].text + ', ';
  $this.val(previous);
  };
  var add_result = function (item) {
  close_result();
  selected.push(item);
  update_field();
  };
  var close_result = function () { $(domlist).hide(); }
  var open_result = function (list) {
  var $domlist = $(domlist).empty().show();
  if (!list || list.length < 1) {
  $domlist.append($('<li>'+nr+'</li>'));
  return ;
  }
  for (var i = 0; i < list.length; i++) 
  (function (item) {
  $domlist.append
  ( $('<li>').text(list[i].text)
  .click(function () { add_result(item); })
  .mouseover(function () { $(this).addClass('active'); })
  .mouseout(function () { $(this).removeClass('active'); })
  );
  })(list[i]);
  }
  $this.val(a)
  .blur(function () { if ($this.val() == '') $this.val(a); })
  .focus(function () { if ($this.val() == a) $this.val(''); })
  .keydown(function (e) { if (e.which == 10 || e.which == 13) e.preventDefault(); })
  .keyup(function () {
  if (sto) clearTimeout(sto);
  sto = setTimeout(function () {
  var val = ( previous.length > 0
  ? $this.val().toLowerCase().split(previous.toLowerCase())[0]
  : $this.val().toLowerCase()
  ) || '';
  if (val.length > 1) {
  open_result(get_match(val));
  } else {
  close_result();
  }
  }, 100)
  })
  //     .result(function () { console.log($(this).val()); })
  ;
  });
  */
  (function () {
    var size = Axessia.get('product.list.paginate.size');
    if (size) {
      var cookie = getCookie('product.list.paginate.size');
      if (size != cookie) {
        setCookie('product.list.paginate.size', size, 24);
      }
    }
  })();

  // Autofille recruitment form with job label
  Current.hash.routes.push
  ({ pattern: /form-recruitment,key:([a-z0-9]+)$/i
   , callback: function (s, key)
     {
       var data = Axessia.get('candidature.' + key + '.reference');
       $('input[name=_sujet]').val(data);
     }
   });

  $('.zaf .search .product-type input:checked').each(function () {
    switch ($(this).val()) {
      case '1': return $('.section.type-buy').addClass('on');
      case '2': return $('.section.type-rent').addClass('on');
    }
  });   
  
  $('.zaf .search .part-2 input:checked, .zaf .search .part-2 input[name=s_prd_Reference][value!=]')
    .first().each(function () {
      $('.search.button-sh').addClass('extended');
      $('.search.submit').css({ 'margin-top': '70px' });
    });

  $('.zaf .product-detail .navigate').first().each(function () {
    var $this = $(this).css({ 'overflow': 'hidden', 'margin-bottom': '10px' });
    $this.prepend(
      $('<div />').css({ 'float': 'right', width: '270px' })
        .append($this.find('.button-previous').css({ 'float': 'left', 'margin-right': '20px' }))
        .append($this.find('.button-next').css('float', 'left'))
    );
  });
  
  
  $('.zaf .lightbox form').each(function () {
    var $this = $(this);
    var $inputs = $this.find('input:checked[name=_demande_type]:not([type=hidden])');
    if ($inputs.size() > 0) {
      var $input = $('<input type="hidden" name="_demande_type" />');
      $this.data('onrelease').push(function () { $inputs.attr('disabled', false); });
      $this.prepend($input).submit(function () {
        var data = [];
        $inputs.each(function () { data.push($(this).val().trim()); }).attr('disabled', true);
        $input.val(data.join(';'));
      });
    }
  });
  
  // patch: add partner max / min
  /*
  $('.zaf form').each(function () {
    $('input[name$=_max]').not(function () {
      return $('input[name=' + $(this).attr('name').replace(/max$/, 'min') + ']').size() > 0;
    }).each(function () {
      //console.log(this);
      var $this = $(this);
      $this.after($('<input type="hidden" />').attr('name', $this.attr('name').replace(/max$/, 'min')));
    });
    $('input[name$=_min]').not(function () {
      return $('input[name=' + $(this).attr('name').replace(/min$/, 'max') + ']').size() > 0;
    }).each(function () {
      //console.log(this);
      var $this = $(this);
      $this.after($('<input type="hidden" />').attr('name', $this.attr('name').replace(/min$/, 'max')));
    });
  });
  */
  $('.form-share .message').each(function () {
    var texts =
      [ $('.page-title').text()
      , '\n\n'
      , $('.product-description.short').text()
      , '\n\n'
      , window.location.href.split('#').shift()
      ];
    $(this).find('textarea').val(texts.join(''));
  });

  $('.form-recruitment form').submit(function () {
    $('[name=champ_langues]');
  
  });
  
  $('.button.print').click(function (e) {
    e.preventDefault();
    window.open($(this).find('a').attr('href'), 'window_print', 'width=1000,scrollbars=1');
  });
  
  $('.product-item .autoetc').each(function () {
    var $this = $(this);
    if ($this.height() > 55)
      $this.after( $('<span class="etc">[...]</span>') );
  });
  
  $('.portal-content .autoetc').each(function () {
    var $this = $(this);
    if ($this.height() > 35)
      $this.after( $('<span class="etc">[...]</span>') );
  })
   
});

$(function () {
  if ($('.center-1000.page-vocation').size() > 0) $('.menu .menu-item.company-vocation').addClass('on');
  else if ($('.center-1000.agency-list').size() > 0) $('.menu .menu-item.agency-list').addClass('on');
  else if ($('.center-1000.company-introduction').size() > 0) $('.menu .menu-item.company-introduction').addClass('on');
  //$('.menu .menu-item a').hover(function (e) { e.stopPropagation(); });
  $('.lightbox').addClass('ajax-content');
});
 

 
