function number_format(number, decimals, dec_point, thousands_sep)
{
    number = (number+'').replace(',', '').replace(' ', '');
    var n = !isFinite(+number) ? 0 : +number, 
        prec = !isFinite(+decimals) ? 0 : Math.abs(decimals),
        sep = (typeof thousands_sep === 'undefined') ? ',' : thousands_sep,
        dec = (typeof dec_point === 'undefined') ? '.' : dec_point,
        s = '',
        toFixedFix = function (n, prec) {
            var k = Math.pow(10, prec);
            return '' + Math.round(n * k) / k;
        };
    // Fix for IE parseFloat(0.55).toFixed(0) = 0;
    s = (prec ? toFixedFix(n, prec) : '' + Math.round(n)).split('.');
    if (s[0].length > 3) {
        s[0] = s[0].replace(/\B(?=(?:\d{3})+(?!\d))/g, sep);
    }
    if ((s[1] || '').length < prec) {
        s[1] = s[1] || '';
        s[1] += new Array(prec - s[1].length + 1).join('0');
    }
    return s.join(dec);
}

/* COMMON */
function InitializeFlash(saison)
{
	var flashvars = {
		xmlPath : "./images_slideshow/settings.php"
	};
	var params = {
	  quality: "high",
	  scale: "noscale",
	  wmode: "transparent",
	  allowFullScreen: "false",
	  bgcolor: "#ffffff"
	};
	var attributes = {
		xiRedirectUrl:"./"
	};

	swfobject.embedSWF("./flash/anim_"+saison+"/anim_"+saison+".swf", "flash", "650px", "350px", "9", "expressInstall.swf", flashvars, params, attributes);
}

function InitializeCorner()
{
	var roundedCorner = { tl: { radius: 10 }, tr: { radius: 10 }, bl: { radius: 10 }, br: { radius: 10 }, antiAlias: true, autoPad: true };
	var roundedSmlCorner = { tl: { radius: 5 }, tr: { radius: 5 }, bl: { radius: 5 }, br: { radius: 5 }, antiAlias: true, autoPad: true };
	
	var roundedTop= { tl: { radius: 8 }, tr: { radius: 8 }, bl: { radius: 0 }, br: { radius: 0 }, antiAlias: true, autoPad: true };
	var roundedBottom= { tl: { radius: 0 }, tr: { radius: 0 }, bl: { radius: 8 }, br: { radius: 8 }, antiAlias: true, autoPad: true };

	$('.rounded').corner(roundedCorner);
	$('.rounded_sml').corner(roundedSmlCorner);
	$('.rounded_top').corner(roundedTop);
	$('.rounded_bottom').corner(roundedBottom);
}

/* CUFON */
function InitializeCufon()
{	
	if (Cufon != "undefined") {
		Cufon.set('forceHitArea',true);
		
		Cufon.replace($('.Cufon'), { fontFamily: 'ArialBold' });
				
		Cufon.replace($('.headerReservationTitle'), { fontFamily: 'ArialBold', fontSize : '17', textShadow: '0px 1px #000000' });
		Cufon.replace($('.headerReservationSubTitle'), { fontFamily: 'ArialBold', fontSize : '12', textShadow: '0px 1px #000000' });
		
		Cufon.replace($('span.contentTitle'), { fontFamily: 'ArialBold', fontSize : '14', textShadow: '0px 1px #07153A' });
		Cufon.replace($('span.contentSubTitle'), { fontFamily: 'ArialBold', fontSize : '10', textShadow: '0px 1px #07153A' });
		
		Cufon.replace($('span.ActuTitle'), { fontFamily: 'ArialBold', fontSize : '12', textShadow: '0px 1px #ffffff' });
		Cufon.replace($('span.ActuDate'), { fontFamily: 'ArialBold', fontSize : '9', textShadow: '0px 1px #ffffff' });
		
		Cufon.replace($('span.RightTitle'), { fontFamily: 'ArialBold', fontSize : '12', textShadow: '0px 1px #ffffff' });
		Cufon.replace($('span.RightSubTitle'), { fontFamily: 'ArialBold', fontSize : '9', textShadow: '0px 1px #ffffff' });
		
		Cufon.replace($('.nouveaute .titre, .nouveaute .marque, .nouveaute .modele, .nouveaute .sexe'), { fontFamily: 'ArialBold' });
	}
}

function getUrlVars()
{
    var vars = [], hash;
    
    var hashes = window.location.href.slice(window.location.href.indexOf('?') + 1).split('&');
    
	var QString = $.address.queryString();
	var hashes = QString.split('&');
	
 
    for(var i = 0; i < hashes.length; i++)
    {
        hash = hashes[i].split('=');
        vars.push(hash[0]);
        vars[hash[0]] = hash[1];
    }
 
    return vars;
}
// Changement de la langue
function ChangeLangue( langue )
{
	// Formatage les données    
	var dataString = '&action=ChangeLangue&langue=' + langue;
			
	// Execution du formulaire
	$.ajax({
	  type: "POST",
	  url: "./",
	  data: dataString,
	  dataType : 'html',
	  cache: false,
	  async: true,
	  success: function(data) { location.href=location.href; return(false); },
	  error: function() { Boxy.alert('Une erreur est survenue. Veuillez réessayer à nouveau.<br>Si le problème persiste veuillez contacter l\'administrateur du système.', null, {title: 'Information'}); }
	 });
}

// Changement de la saison
function ChangeSaison( saison )
{
	// Formatage les données    
	var dataString = '&action=ChangeSaison&saison=' + saison;
			
	// Execution du formulaire
	$.ajax({
	  type: "POST",
	  url: "./",
	  data: dataString,
	  dataType : 'html',
	  cache: false,
	  async: true,
	  success: function(data) { location.href=location.href; return(false); },
	  error: function() { Boxy.alert('Une erreur est survenue. Veuillez réessayer à nouveau.<br>Si le problème persiste veuillez contacter l\'administrateur du système.', null, {title: 'Information'}); }
	});
}


function EnvoiLocation()
{

	$msg_erreurs = [];
	// Sélection du magasin de location
	if( $('#FormLocationMagasin').val() == '' )
		$msg_erreurs.push("Veuillez sélectionner un magasin.");
	// Sélection des dates du séjour
	if( $('#DateDebutReservation').val() == '' || $('#DateFinReservation').val() == '' )
		$msg_erreurs.push("Veuillez sélectionner les dates de votre séjour.");
	
	if( $msg_erreurs.length == 0 )
	{
		$DateDebutReservation = $('#DateDebutReservation').val().split('/');
		$DateFinReservation = $('#DateFinReservation').val().split('/');
		window.open('http://www.intersport-rent.fr/FrontOffice/rent/page/pack.aspx?m='+$('#FormLocationMagasin').val()+'&dd='+$DateDebutReservation[2]+''+$DateDebutReservation[1]+''+$DateDebutReservation[0]+'&df='+$DateFinReservation[2]+''+$DateFinReservation[1]+''+$DateFinReservation[0]+'');
	}
	else
	{
		$message = '';
		for( $i=0; $i<$msg_erreurs.length;$i++)
		{
			$message += $msg_erreurs[$i]+'<br>';
		}
		$('#FormLocationErreur').html($message);
		$("#FormLocationErreur").dialog({
			modal: true,
			height: 80
		});
	}
	
	return false;
	/*
	// Formatage les données    
	var dataString = '&action=location&'+$('#FormLocation').serialize();
	
	// Execution du formulaire
	$.ajax({
	  type: "POST",
	  url: "./",
	  data: dataString,
	  dataType : 'html',
	  cache: false,
	  async: true,
	  success: function(data) { eval(data); return(false); },
	  error: function() { Boxy.alert('Une erreur est survenue. Veuillez réessayer à nouveau.<br>Si le problème persiste veuillez contacter l\'administrateur du système.', null, {title: 'Information'}); }
	 });*/
}

// Le header
function InitializeHeaderLocation()
{
	// Le header de location (réservation)
	var ToDay = new Date();
	ToDay.setDate(ToDay.getDate()+1);
	
	$('.headerReservationContentInBouton').hover(function(){ $(this).addClass('hover'); },function(){ if( ! $(this).hasClass('selected') ) $(this).removeClass('hover'); });
	$('.headerReservationContentInBouton').click(function(){ $('#FormLocationMagasin').val( $(this).attr('value') ); $('.headerReservationContentInBouton').removeClass('selected').removeClass('hover'); $(this).addClass('selected').addClass('hover'); });
	$('#DateDebutReservation').datepicker({
		minDate : ToDay.getDate()+'/'+(ToDay.getMonth()+1)+'/'+ToDay.getFullYear(),
		onSelect: function(dateText, inst){
			$('#DateFinReservation').datepicker("option",{minDate: dateText});
			return false;
		}
	});
	
	$('#DateFinReservation').datepicker({
		minDate : ToDay.getDate()+'/'+(ToDay.getMonth()+1)+'/'+ToDay.getFullYear(),
		onSelect: function(dateText, inst){
			$('#DateDebutReservation').datepicker("option",{maxDate: dateText});
			return false;
		}
	});
	
	$('#headerReservationTop').mouseover(function() { $(this).css('cursor','pointer'); }).click(function() {
		var theBlock = $('#headerReservation');
		var curTop = theBlock.position().top;
		// Monte
		if (curTop >= 378) {
			theBlock.animate({bottom:'15px'}, {duration: 1500, easing: 'easeOutBack'});
		}
		// Cache
		else {
			theBlock.animate({bottom:'-308px'}, {duration: 1500, easing: 'easeInOutBack'});			
		}
	});
}

// Démarrage
$(function() {
	/* Stuff */	
	$('a.fancy').fancybox();
	InitializeCufon();
	//InitializeCorner();
	InitializeHeaderLocation();
	
	// Le datepicker
	$.datepicker.setDefaults($.datepicker.regional['fr']);
	$.datepicker.setDefaults({dateFormat: 'dd/mm/yy', constrainInput: true});
	
	// logo
	$('#logo').hover(function(){
		$('#logoAccueil').stop().animate({'top': '38px'});
	},function(){
		$('#logoAccueil').stop().animate({'top': '14px'});
	});
	
	// Les menus langues et saisons
	if ($.browser.msie && $.browser.version.substr(0,1)<7) {
		$('#tools-lang').hover(function(){ $(this).addClass('hover'); $('#tools-lang-list').css('display', 'block');  },function(){ $(this).removeClass('hover'); $('#tools-lang-list').css('display', 'none'); })
		$('#tools-saison').hover(function(){ $(this).addClass('hover'); $('#tools-saison-list').css('display', 'block'); },function(){ $(this).removeClass('hover'); $('#tools-saison-list').css('display', 'none'); })
	}
});
