$(document).ready(function(){

	//Bouton lien fiche client
	$('ul.listSearchResults div.infosCompany a').click(function () {

		var linkEl = $(this);
		var blockObject = linkEl.closest('li');

		var markerName = linkEl.attr('rel');
		var marker = window[markerName];
		var html = '<div class="blockTooltipGoogleMap">'
					+'<b>'+ blockObject.find('span.name').html()+'</b><br/>'
					+blockObject.find('span.address-1').html()+' '+blockObject.find('span.address-2').html()+'<br />'
					+blockObject.find('span.address-3 .zipcode').text()+' '+blockObject.find('span.address-3 .locality').text()+'<br />'
					+blockObject.find('div.contact').html()
					+'</div>';

		smoothScroll($('.blockHeaderMenu').offset().top+80)

		marker.openInfoWindowHtml(html);

		return false;
	});

	if ($('#map').width() == 680) {
		GEvent.addListener(gShopMap,'click', function(overlay,point){
			if(point) {
				document.location.href = '/recherche.html?t=1&search=&lat='+point.lat()+'&lon='+point.lng();
			}
		});
	}

	$('a[href=#zoommap]').live('click',function () {
		var map      = $('#map');
		var blockMap = $('div.blockMap');
		var shopMap  = $('#shopMap');
		var time     = 500;

		var center   = gShopMap.getCenter();
		var size	 = gShopMap.getSize();
		
		blockMap.animate({
			height: 0
		},function () {
			blockMap.height(0);
			blockMap.prependTo('.blockSearchContent');
			shopMap.width(680);
			map.animate({
				height: 300
			},time);
			shopMap.animate({
				height: 300
			},time);
			blockMap.animate({
				height: 323
			},time);
			gShopMap.checkResize();
			gShopMap.setCenter(center);
		});

		/*blockMap.animate({
			height: 0
		});*/

		$('a[href=#zoommap]').attr('href','#reducemap').children('span').html('Reduire la carte');
	
		return false;
	});

	$('a[href=#reducemap]').live('click',function () {
		var map      = $('#map');
		var blockMap = $('div.blockMap');
		var shopMap  = $('#shopMap');
		var time     = 500;

		var center   = gShopMap.getCenter();
		var size	 = gShopMap.getSize();
		
		blockMap.animate({
			height: 0
		},function () {
			blockMap.prependTo('.blockSearchContent .block-2');
			shopMap.width(272);
			gShopMap.checkResize();
			gShopMap.setCenter(center);
			map.animate({
				height: 255
			});
			shopMap.animate({
				height: 255
			});
			blockMap.animate({
				height: 278
			});
		});

		$('a[href=#reducemap]').attr('href','#zoommap').children('span').html('Agrandir la carte');
	
		return false;
	});

	//Bouton select
	$('a[rel=#select]').click( function () {
		var thisLink      = $(this);
		var page          = $(this).attr('href')+'&mode=ajax';
		var parentLi      = $(this).closest('li');
		var idParent	  = parentLi.attr('id');
		var isSelected    = parentLi.hasClass('itemSelected');
		var index         = parentLi.index();
		var popupSelector = '#popupSearch';
		var listSelector  = popupSelector+' .listSelection';
		var limitSelector = popupSelector+' .limitSelection';
		var maxSelector = popupSelector+' .maxSelection';
		var popup         = $(popupSelector);
		var recherche     = window.location.href.match('\/recherche\.html');
		var loaderSelector = 'div.loaderGlobal';
		var loader		  = '<div class="loaderGlobal" style="text-align: center;"><img src="/skins/soluseo/loaderGlobal.gif" alt="" title=""></div>';

		thisLink.hide();
		$(loader).insertAfter(thisLink);

		$.ajax({
			url: page,
			success: function(response) {
				// maj du block column-2
				var blockMiniBasket = $(".column-2 .blockSelection",response).html();
				$(".column-2 .blockSelection").html(blockMiniBasket);
				var list = $(listSelector,response);
				var lastItem = null; 
				
				//pour récupérer le dernier item on compare la liste actuelle + liste ajax
				list.find('li').each(function(){
					var responseLiId = $(this).attr('id');
					if(!$(listSelector).find('#'+responseLiId).size()){
						lastItem = $('#'+responseLiId,response);
					}
				});
				if(lastItem == null){
					lastItem = list.find('li:last').fadeTo(1,0);
				}
				//var lastItem = list.find('li:last').fadeTo(1,0);
				lastItem.fadeTo(1,0)
				var nb = $('.numItemSelected',response).html();
			
				lastItem.hide();

				if (!isSelected && $('#'+idParent,response).size()) {
					$(loader).insertAfter($(listSelector).find('li:last'));
					$(listSelector).append(lastItem);

					popup.show('normal',function(){
						parentLi.toggleClass('itemSelected')

						var href= thisLink.attr('href').replace('addContent','delContent');
						thisLink.attr('href',href);

						window.setTimeout(function(){
							$(loaderSelector).remove();
							lastItem.show();
							lastItem.fadeTo(500,1);
						},250);
					});
				} else if(isSelected) {
					parentLi.toggleClass('itemSelected');
					$(listSelector+' #'+parentLi.attr('id')).remove();
					$(maxSelector).css('display','block');
	
					var href= thisLink.attr('href').replace('delContent','addContent');
					thisLink.attr('href',href);

					if ($(limitSelector).size()) {
						$(limitSelector).remove();
						$(popupSelector+' .btnValidSelection').after($(popupSelector+' .btnModifySelection',response));
						if (recherche) $(popupSelector+' .btnModifySelection').attr('rel','#close');
					}
				} else {
					popup.show();
				}

				$('.numItemSelected').html(nb);

				if ($(limitSelector,response).size()) {
					if (!$(limitSelector).size()) $(listSelector).after($(limitSelector,response).fadeTo(1,0));
					else $(limitSelector).fadeTo(1,0);
					$(popupSelector+' .btnModifySelection').remove();
					$(maxSelector).hide();

					window.setTimeout(function(){$(limitSelector).fadeTo(500,1)},250);
				}

				if (nb > 0) {
					$('.blockInfoProject').show();
					$('.btnValidSelection').show();
					$('.blockMiniBasket').show();
				} else {
					$('.blockInfoProject').hide();
					$('.btnValidSelection').hide();
					$('.blockMiniBasket').hide();
					popup.hide();
				}
				
				plurielText(nb);
				thisLink.next(loaderSelector).remove();
				thisLink.show();
			}
		});
		
		if (!parentLi.hasClass('itemSelected') && index+1 >= 1) smoothScroll($('.blockHeaderMenu').offset().top+80); 

		return false;
	});
	
	constructTooltipSolution();
});

function constructTooltipSolution(){
	$('.listSearchResults ul.listSolutions .picto').each(function(){
		$(this).tooltip({
			track: true,
			delay: 50,
			extraClass: 'advancedTitleTooltip mapToolTip searchSolutionTooltip',
			showURL: false, 
			left: -10,
			top: 23
		});
	});
}

