var reg = new RegExp("^(http|https)://([^/]+).*$","g");
var tab_reg = reg.exec(window.document.location.href);
var SERVER_NAME = tab_reg[2];
var DOMAIN_NAME = SERVER_NAME.replace('localhost.', '');
var DOMAIN_NAME = DOMAIN_NAME.replace('beta.', '');
var LANGUAGE = $('meta[http-equiv=content-language]').attr('content');

if(LANGUAGE != 'jp'){
	Cufon.replace('h1, h2, h3');
	Cufon.replace('.cufon');
	Cufon.replace('#news_widget_left p');
}
$(document).ready(function() {
	
	$('.indisponible').click(function(){
		//alert("Cette fonctionnalité ou ce lien n'est pas encore disponible");
		return false;
	});
	
	if($.url.param("goto") != ''){
		$('body').scrollTo($('a[name=' + $.url.param("goto") + ']'), 800);
	}

    // now make all the previews fit
    $('.rooms_list_block_resume').each(function(){
        // build a bench-mark to gauge it from
        var roomWidth = $(this).innerWidth();
        var roomHeight = 75;
		//console.log(roomWidth + ' / ' + roomHeight + ' / ' + $(this));

        // now, get the width and play with it until it fits (if it doesn't)
        var txt = $(this).text();
		var txtLength = txt.length;
		//console.log(txt.length);

        if (txtLength > roomHeight){ // bigger than we have to work with
            var newsStr = txt.substring(0,Math.round(roomHeight*2.5));
            $(this).text(newsStr).append($('<span>').text('...'));
        }
    });

	
	/*=========================================================================
	BEGIN :: MAIN MENU ANIMATION
	=========================================================================*/
	var obj_menuHeight = new Object();
	obj_menuHeight.main_menu_block_01 = 143;
	obj_menuHeight.main_menu_block_02 = 164;
	obj_menuHeight.main_menu_block_03 = 164;
	obj_menuHeight.main_menu_block_04 = 143;
	
	function mainMenuAnimate(action,target,currentClass,hoverClass,obj_menuHeight)
	{
		var currentMenuDivID = target.attr('id');
		var menuNumber = currentMenuDivID.substring((currentMenuDivID.length - 2),currentMenuDivID.length);
		var currentSubMenuDivID = 'main_submenu_' + menuNumber;
		//var currentClass = $('#'+currentMenuDivID).attr('class');
		//var currentHeight = $('#'+currentMenuDivID).height();
		var decalage = 30;
			if(action == 'over'){
				$('#'+currentMenuDivID).removeClass(currentClass);
				$('#'+currentMenuDivID).addClass(hoverClass);
				$("#" + currentMenuDivID).animate({height: obj_menuHeight[currentMenuDivID] + decalage},500);
				$("#" + currentSubMenuDivID).fadeIn(1000);
			}
			if(action == 'out'){
				$("#" + currentSubMenuDivID).fadeOut(50);
				$('#'+currentMenuDivID).removeClass(hoverClass);
				$('#'+currentMenuDivID).addClass(currentClass);
				$("#" + currentMenuDivID).animate({height: obj_menuHeight[currentMenuDivID]}, 500 );
			}
	}	
	
	$('#main_menu_block_01, #main_menu_block_04').hover(function(){
		mainMenuAnimate('over',$(this),'black_bg_25','pink_bg_85',obj_menuHeight);
	},function(){
		mainMenuAnimate('out',$(this),'black_bg_25','pink_bg_85',obj_menuHeight);
	});
	$('#main_menu_block_02, #main_menu_block_03').hover(function(){
		mainMenuAnimate('over',$(this),'black_bg_50','pink_bg_85',obj_menuHeight);
	},function(){
		mainMenuAnimate('out',$(this),'black_bg_50','pink_bg_85',obj_menuHeight);
	});
	/*=========================================================================
	END :: MAIN MENU ANIMATION
	=========================================================================*/
	/*=========================================================================
	BEGIN :: NEWSLETTER
	=========================================================================*/
	// SIDEBAR
	$('#sidebar_tools_newsletter_submit_btn').click(function() {
		var email_original_value = $('#sidebar_tools_newsletter_email_input_value').val();
		var email = $('#sidebar_tools_newsletter_email_input').val();
		if (email && email != email_original_value) {
			var newsletterUrl = 'http://'+SERVER_NAME+'/'+LANGUAGE+'/newsletter/subscribe.html?email='+email;
			//alert(newsletterUrl);
			$(this).attr('href', newsletterUrl);
			//return false;
		}
		else {
			return false;
		}
	});
	
	// FOOTER
	$('#footer_bottom_content_newsletter_submit_btn').click(function() {
		var email_original_value = $('#footer_bottom_content_newsletter_email_input_value').val();
		var email = $('#footer_bottom_content_newsletter_email_input').val();
		if (email && email != email_original_value) {
			var newsletterUrl = 'http://'+SERVER_NAME+'/'+LANGUAGE+'/newsletter/subscribe.html?email='+email;
			//alert(newsletterUrl);
			$(this).attr('href', newsletterUrl);
			//return false;
		}
		else {
			return false;
		}
	});
	/*=========================================================================
	END :: NEWSLETTER
	=========================================================================*/
	/*=========================================================================
	BEGIN :: SLIDESHOW
	=========================================================================*/
	// RESIZE
	$(window).bind('resize', function() {
		slidemeResize();
		//console.log($('#slideshow_mask').width() + ' / ' + $('#slideshow_mask').height());
	});

	slidemeResize();

	if ($('.slideme').length > 1) {
		var slideshow = new SlideShow({
			timer: 5000,
			mask: $('#slideshow_mask'),
			btNext: $('#hud_slideshow_next')
		});

		$('#hud_slideshow_next').click(function() {
			slideshow.next(false, 'button');
		});
		$('#hud_slideshow_prev').click(function() {
			slideshow.prev();
		});
	}
	else {
		$('.slideme').css('display', 'block');
	}
	/*=========================================================================
	END :: SLIDESHOW
	=========================================================================*/
	/*=========================================================================
	BEGIN :: WIDGET NEWS FADE
	=========================================================================*/
	var arr_widgetNewsItems = new Array();
	$('.news_widget_item').each(function(key, item){
		arr_widgetNewsItems.push(item.id);
	});
	var widgetNewsCurrentIndex = 0;
	
	// Display:none pour les éléments > 0
	$.each(arr_widgetNewsItems, function(indice, id){
		if(indice > 0){
			$('#'+arr_widgetNewsItems[indice]).hide();
		}
	});
	
	function widgetNewsGotoNext(delay)
	{
		var previous = widgetNewsCurrentIndex;
		if ((widgetNewsCurrentIndex+1) < arr_widgetNewsItems.length) {
			widgetNewsCurrentIndex++;
		}
		else {
		widgetNewsCurrentIndex = 0;
		}
		$('#'+arr_widgetNewsItems[previous]).fadeOut(delay,function(){
			$('#'+arr_widgetNewsItems[widgetNewsCurrentIndex]).fadeIn(delay);
		});
		//$('#widgetNewsFrame').scrollTo($('#'+arr_widgetNewsItems[widgetNewsCurrentIndex]), 500);
		$('#news_widget_right_nav_label').html(sprintf('%02d', (widgetNewsCurrentIndex+1))+'/'+sprintf('%02d', arr_widgetNewsItems.length));
	}

	function widgetNewsGotoPrev(delay)
	{
		var previous = widgetNewsCurrentIndex;
		if ((widgetNewsCurrentIndex-1) >= 0) {
			widgetNewsCurrentIndex--;
		}
		else { widgetNewsCurrentIndex = (arr_widgetNewsItems.length-1); }
		$('#'+arr_widgetNewsItems[previous]).fadeOut(delay,function(){
			$('#'+arr_widgetNewsItems[widgetNewsCurrentIndex]).fadeIn(delay);
		});
		//$('#widgetNewsFrame').scrollTo($('#'+arr_widgetNewsItems[widgetNewsCurrentIndex]), 500);
		$('#news_widget_right_nav_label').html(sprintf('%02d', (widgetNewsCurrentIndex+1))+'/'+sprintf('%02d', arr_widgetNewsItems.length));
	}
	
	function widgetNewsPlay(triggerDuration, repeatDuration)
	{
		$(document).stopTime('widgetNewsTimerTrigger');

		if (repeatDuration) {
			triggerDuration = triggerDuration - repeatDuration;
		}
		else {
			repeatDuration = triggerDuration;
			triggerDuration = 0;
		}
		$(document).oneTime(triggerDuration, 'widgetNewsTimerTrigger', function() {
			$(document).everyTime(repeatDuration, 'widgetNewsTimer', function(i) {
				widgetNewsGotoNext(500);
			});
		});
	}

	if (arr_widgetNewsItems.length > 1) {
		widgetNewsPlay(5000);

		$('#news_widget_right_nav_arrow_right').click(function() {
			$(document).stopTime('widgetNewsTimer');
			widgetNewsGotoNext(500);
			widgetNewsPlay(10000, 5000);
		});
		$('#news_widget_right_nav_arrow_left').click(function() {
			$(document).stopTime('widgetNewsTimer');
			widgetNewsGotoPrev(500);
			widgetNewsPlay(10000, 5000);
		});
	}
	/*=========================================================================
	END :: WIDGET NEWS FADE
	=========================================================================*/
	/*=========================================================================
	BEGIN :: WIDGET NEWS SLIDE
	=========================================================================*/
	/* 
	var arr_widgetNewsItems = new Array();
	$('.news_widget_item').each(function(key, item){
		arr_widgetNewsItems.push(item.id);
	});

	var containerWidth = arr_widgetNewsItems.length * 683;
	$('#widgetNewsContainer').css('width', containerWidth+'px');

	var widgetNewsCurrentIndex = 0;

	function widgetNewsGotoNext()
	{
		if ((widgetNewsCurrentIndex+1) < arr_widgetNewsItems.length) {
			widgetNewsCurrentIndex++;
		}
		else { widgetNewsCurrentIndex = 0; }
		$('#widgetNewsFrame').scrollTo($('#'+arr_widgetNewsItems[widgetNewsCurrentIndex]), 500);
		$('#news_widget_right_nav_label').html(sprintf('%02d', (widgetNewsCurrentIndex+1))+'/'+sprintf('%02d', arr_widgetNewsItems.length));
	}

	function widgetNewsGotoPrev()
	{
		if ((widgetNewsCurrentIndex-1) >= 0) {
			widgetNewsCurrentIndex--;
		}
		else { widgetNewsCurrentIndex = (arr_widgetNewsItems.length-1); }
		$('#widgetNewsFrame').scrollTo($('#'+arr_widgetNewsItems[widgetNewsCurrentIndex]), 500);
		$('#news_widget_right_nav_label').html(sprintf('%02d', (widgetNewsCurrentIndex+1))+'/'+sprintf('%02d', arr_widgetNewsItems.length));
	}
	
	function widgetNewsPlay(triggerDuration, repeatDuration)
	{
		$(document).stopTime('widgetNewsTimerTrigger');

		if (repeatDuration) {
			triggerDuration = triggerDuration - repeatDuration;
		}
		else {
			repeatDuration = triggerDuration;
			triggerDuration = 0;
		}
		$(document).oneTime(triggerDuration, 'widgetNewsTimerTrigger', function() {
			$(document).everyTime(repeatDuration, 'widgetNewsTimer', function(i) {
				widgetNewsGotoNext();
			});
		});
	}

	if (arr_widgetNewsItems.length > 1) {
		widgetNewsPlay(5000);

		$('#news_widget_right_nav_arrow_right').click(function() {
			$(document).stopTime('widgetNewsTimer');
			widgetNewsGotoNext();
			widgetNewsPlay(10000, 5000);
		});
		$('#news_widget_right_nav_arrow_left').click(function() {
			$(document).stopTime('widgetNewsTimer');
			widgetNewsGotoPrev();
			widgetNewsPlay(10000, 5000);
		});
	}
	 */
	/*=========================================================================
	END :: WIDGET NEWS SLIDE
	=========================================================================*/
	/*=========================================================================
	BEGIN :: ANCHOR SCROLL
	=========================================================================*/
	$('a.anchor_scroll').click(function() {
		var href = $(this).attr('href');
		if (href.substr(0, 1) == '#' && href.length > 1) {
			$('body').scrollTo($('a[name='+href.substr(1)+']'), 800);
		}

	});
	/*=========================================================================
	END :: ANCHOR SCROLL
	=========================================================================*/
	/*=========================================================================
	BEGIN :: CALENDAR
	=========================================================================*/
	var arr_month = new Array();
	arr_month['fr'] = new Array('Janvier','Février','Mars','Avril','Mai','Juin','Juillet','Août','Septembre','Octobre','Novembre','Décembre');
	arr_month['en'] = new Array('January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December');
	arr_month['es'] = new Array("enero", "febrero", "marzo", "abril", "mayo", "junio", "julio", "agosto", "septiembre", "octubre", "noviembre", "diciembre");
	arr_month['jp'] = new Array("1月", "2月", "3月", "4月", "5月", "6月", "7月", "8月", "9月", "10月", "11月", "12月");
	var monthNamesShort = new Array();
	monthNamesShort['fr'] = new Array('Jan','Fev','Mar','Avr','Mai','Juin','Juil','Aout','Sep','Oct','Nov','Dec');
	monthNamesShort['en'] = new Array('Jan','Feb','Mar','Avp','May','Jun','Jul','Aug','Sep','Oct','Nov','Dec');
	monthNamesShort['es'] = new Array("ene", "feb", "mar", "abr", "may", "jun", "jul", "ago", "sep", "oct", "nov", "dic");
	monthNamesShort['jp'] = new Array("1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12");
	var dayNamesShort = new Array();
	dayNamesShort['fr'] = new Array('Dim', 'Lun', 'Mar', 'Mer', 'Jeu', 'Ven', 'Sam');
	dayNamesShort['en'] = new Array('Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sam');
	dayNamesShort['es'] = new Array("dom", "lun", "mar", "mié", "jue", "vie", "sáb");
	dayNamesShort['jp'] = new Array("日", "月", "火", "水", "木", "金", "土");
	var dayNamesMin = new Array();
	dayNamesMin['fr'] = new Array('Di', 'Lu', 'Ma', 'Me', 'Je', 'Ve', 'Sa');
	dayNamesMin['en'] = new Array('Su', 'Mo', 'Tu', 'We', 'Th', 'Fr', 'Sa');
	dayNamesMin['es'] = new Array("do", "lu", "ma", "mi", "ju", "vi", "sá");
	dayNamesMin['jp'] = new Array("日", "月", "火", "水", "木", "金", "土");
	switch (LANGUAGE) {
		case 'fr':
			var dateFormat = 'dd/mm/yy';
			break;
		case 'en':
			var dateFormat = 'yy-mm-dd';
			break;
		case 'es':
			var dateFormat = 'dd/mm/yy';
			break;
		case 'jp':
			var dateFormat = 'yy-mm-dd';
			break;
	}
	var arr_calFields = new Array('header_qs_arrival_input', 'footer_qs_arrival_input');
	$.each(arr_calFields, function(key, calField){
		$("#"+calField).datepicker({
			numberOfMonths: 2,
			showButtonPanel: false,
			minDate: -0,
			monthNames: arr_month[LANGUAGE],
			monthNamesShort: monthNamesShort[LANGUAGE],
			dayNamesShort: dayNamesShort[LANGUAGE],
			dayNamesMin: dayNamesMin[LANGUAGE],
			dateFormat: dateFormat
		});
	});
	/*=========================================================================
	END :: CALENDAR
	=========================================================================*/
	/*=========================================================================
	BEGIN :: QUICKSEARCH
	=========================================================================*/
	$('.custom_select').each(function(element) {
		var id = $(this).attr('id');
		$(this).click(function() {
			$('#'+id+'_values').css('display', 'block');
		});
		$('#'+id+'_values ul li').each(function(key_, option) {
			$(option).click(function(){
				$('#'+id).val($(this).html());
				$('#'+id+'_values').css('display', 'none');
			});
		});
	});

	$('div.select_options').mouseout(function() {
		var selectOption = this;
		$(document).oneTime(200, 'selectOptionTrigger', function() {
			$(selectOption).css('display', 'none');
		});
	});

	$('div.select_options li').mouseover(function() {
		$(document).stopTime('selectOptionTrigger');
	});
	
	$('.qsSubmit').click(function() {
		var bookingUrl = 'http://hotel.reservit.com/reservit/reserhotel.php?hotelid=3795';
		var formSubmitId = $(this).parents('div').attr('id');
		var formTargetId = formSubmitId.substring(0,(formSubmitId.length - 5)) + 'qsForm';
		//console.log(formSubmitId + ' / ' + formTargetId);
		var qs_arrival_date = $('#'+formTargetId + ' .qs_arrival_input').val();
		//var quickSearch_id = $(quickSearch).attr('id');
		//console.log(qs_arrival_date);
		var arr_date = qs_arrival_date.split('/');
		if (arr_date.length == 3) {
			var nights = $('#' + formTargetId + ' .qs_nights_input').val().substr(0, 2).replace(' ', '');
			var adults = $('#' + formTargetId + ' .qs_adults_input').val().substr(0, 2).replace(' ', '');
			//var children = $('#'+quickSearch_id+' .qs_children').val().substr(0, 2).replace(' ', '');
			nights = parseInt(nights) ? nights : '';
			adults = parseInt(adults) ? adults : '';
			//children = parseInt(children) ? children : '';

			//bookingUrl+= 'action=resa&hotelid=82487&lang='+LANGUAGE;
			bookingUrl+= 'action=resa&lang=FR';
			bookingUrl+= '&fday='+arr_date[0]+'&fmonth='+arr_date[1]+'&fyear='+arr_date[2];
			bookingUrl+= '&nbnights='+nights+'&numadult='+adults;
			//bookingUrl+= '&numChild='+children;
			$(this).attr('href', bookingUrl);
		}
		else {
			bookingUrl+= '&lang=FR';
			$(this).attr('href', bookingUrl);
		}
	});

	/*=========================================================================
	END :: QUICKSEARCH
	=========================================================================*/	
	/*=========================================================================
	BEGIN :: FREECALL
	=========================================================================*/
	var freecall_name_value =  $('#freecall_name_value').val();
	var freecall_phone_value =  $('#freecall_phone_value').val();
	
	$('#sidebar_tools_freecall_submit img').click(function() {
		//console.log('freecall_name=' + $('#freecall_name').val() + ' / freecall_phone=' + $('#freecall_phone').val() + ' / freecall_name_value=' + freecall_name_value + ' / freecall_phone_value=' + freecall_phone_value);
		if (($('#freecall_name').val() != freecall_name_value) && ($('#freecall_phone').val() != freecall_phone_value)) {
			$.ajax({
				type: "POST",
				url: "/freecall.php",
				data: "name="+$('#freecall_name').val()+"&phone="+$('#freecall_phone').val(),
				success: function(msg){
					//console.log(msg);
					switch (msg) {
						case 'success':
							$('#sidebar_tools_freecall_name, #sidebar_tools_freecall_phone, #sidebar_tools_freecall_submit').css('display', 'none');
							$('#freecall_callback').html(getTranslation('votre_demande_a_bien_ete_envoyee', LANGUAGE));
							$('#freecall_callback').css('display', 'block');
						break;
						case 'error':
							$('#sidebar_tools_freecall_name, #sidebar_tools_freecall_phone, #sidebar_tools_freecall_submit').css('display', 'none');
							$('#freecall_callback').html(getTranslation('votre_demande_n_a_pas_ete_envoyee', LANGUAGE));
							$('#freecall_callback').css('display', 'block');
						break;
					}
					
				}
			});
		}
	});
	/*=========================================================================
	END :: FREECALL
	=========================================================================*/
	/*=========================================================================
	BEGIN :: FANCYBOX
	=========================================================================*/
	function formatTitle(title, currentArray, currentIndex, currentOpts) {
		//return '<div id="ipadGallery-title"><span><a href="javascript:;" onclick="$.fancybox.close();"><img src="/images/closelabel.gif" /></a></span>' + (title && title.length ? '<b>' + title + '</b>' : '' ) + '' + (currentIndex + 1) + ' / ' + currentArray.length + '</div>';
		return '<div id="ipadGallery-title">' + (title && title.length ? '<b>' + title + '</b>' : '' ) + '' + (currentIndex + 1) + ' / ' + currentArray.length + '</div>';
	}

	$("a.gallery").fancybox({
		'showCloseButton'	: true,
		'titlePosition' 		: 'inside',
		'titleFormat'		: formatTitle,
		'overlayShow'	:	true,
		'overlayColor'	:	'#000',
		'padding'	:	0,
		'margin'	:	40
	});
	$("a#googleplusone").fancybox({
		'hideOnContentClick': true,
		'width':510,
		'height':50
	});

	/*=========================================================================
	END :: FANCYBOX
	=========================================================================*/
	
	$('.setCorner').corner('2px');
	$('.setCornerLeft').corner('2px left');
	$('.setCornerRight').corner('2px right');
	$('.unsetCorner').uncorner();
	
	$('.inputValToDel').focus(function(){
		var currentID = $(this).attr('id');
		var originalValue = $('#'+currentID+'_value').val();
		var currentValue = $(this).val();
		if(currentValue == originalValue){
			$(this).val('');
		}
	});
	$('.inputValToDel').blur(function(){
		var currentID = $(this).attr('id');
		var originalValue = $('#'+currentID+'_value').val();
		var currentValue = $(this).val();
		if(currentValue == originalValue || currentValue == ''){
			$(this).val(originalValue);
		}
	});

		
	function goUp()
	{
		$('body').scrollTo( {top:'0px', left:'0px'}, 800 );
	}
	
	$('#backtop_ontheright').click(function() {
		goUp();
	});
	$('#backtop_middle').click(function() {
		goUp();
	});
	$('#backtop_ontheleft').click(function() {
		goUp();
	});
	$('#logo_menu_arrow').click(function() {
		//console.log('scroll to 2');
		//$('body').scrollTo($('a[name=main_content]'), 800);
		$('body').scrollTo( {top:$('body').height()+'px', left:'0px'}, 800 );
	});
	$('#logo_menu_arrow_seo').click(function() {
		if(LANGUAGE == 'fr'){
			window.location.href = 'http://' + SERVER_NAME + '/fr/accueil.html?goto=presentation';
		}
		if(LANGUAGE == 'en'){
			window.location.href = 'http://' + SERVER_NAME + '/en/home.html?goto=presentation';
		}
	});
	$('#copyright_ontheright').click(function() {
		window.location.href = 'http://www.diadao.fr';
	});
	

	
	
});
