ol(function()
{
	$.browser.ie6 = ($.browser.msie && $.browser.version < 7);
	$(".submenu").each(
	function()
	{
		var $this = $(this);
		if($this.hasClass('processed')) return;
		var parent = $("#"+$this.attr("id").replace("-submenu",""));
		
		if($this.find("ul").length == 1)
		{
			var ul = $this.find("ul");
			var clone = ul.clone().css({display:"block",width:"auto",float:"left",fontWeight:"bold"}).addClass("submenu").appendTo(parent);
			clone.width(2000);
			var width = 0;
			clone.find("li").each(function()
			{
				width += $(this).outerWidth();
			});
			ul.width(width);
			clone.remove();
		}
		
		$this.removeAttr("id").addClass('processed').appendTo(parent.find(".wrapper"));
		
		if($.browser.ie6)
		{
			if($this.hasClass('submenu-last'))
				$this.css({marginRight:parent.width()-1+'px'});
			else
				$this.css({marginLeft:-parent.width()+'px'});
		}
	});
	
	
	$("li.item").hoverIntent({
	over:function()
	{
		$(this).addClass("hover").addClass("open");
	}
	,out:function()
	{
		$(this).removeClass("hover").removeClass("open");
	}
	,sensibility:1
	});
	
	var img = {imageFixSrc:"/assets/js/utils/iefix/blank.gif"};
	$(".ie6-pngfix,img[src$=.png]").pngfix(img).addClass('ie-fixed');
	
	$("input[name=fdate]").bind("change"
	,function()
	{
		var str = $(this).val().split("/");
		$("input[name=fday]").val(/[0-9]/.test(str[0])?str[0]:'');
		$("input[name=fmonth]").val(/[0-9]/.test(str[1])?str[1]:'');
		$("input[name=fyear]").val(/[0-9]/.test(str[2])?str[2]:'');
		
		var date = mktime(0,0,0,str[1],parseInt(str[0])+1,str[2]);
		$("input[name=enddate]").val(phpdate("d/m/Y",date)).change();
	});
	
	$("input[name=enddate]").bind("change"
	,function()
	{
		var str = $(this).val().split("/");
		$("input[name=tday]").val(/[0-9]/.test(str[0])?str[0]:'');
		$("input[name=tmonth]").val(/[0-9]/.test(str[1])?str[1]:'');
		$("input[name=tyear]").val(/[0-9]/.test(str[2])?str[2]:'');
	});
	
	$("input[name=fd]").bind("change",function()
	{
		var str = $(this).val().split("/");
		var date = mktime(0,0,0,str[1],parseInt(str[0])+1,str[2]);
		$("input[name=td]").val(phpdate("d/m/Y",date)).change();
	});
	
/*
	$(".collaps-title").bind("click"
	,function()
	{
		var parent = $(this).closest('.collaps-container');
		if(parent.hasClass('.collaps-open'))
			parent.removeClass('collaps-open');
		else
			parent.addClass('collaps-open');
		return false;
	});
*/

	$(".round-corners").each(function()
	{
		var $this = $(this);
		if($this.find(".corners").length > 0) return;
		var corners = $('<div class="corners"><div class="corner corner-tl" /><div class="corner corner-tr" /><div class="corner corner-bl" /><div class="corner corner-br" /></div>');
		if($this.is(":img"))
		{
			var parent = $('<span class="add-corners"></span>');
		 	$this.attr('align','absmiddle').wrap(parent);
			$this.parent().append(corners);
		}
		else
			$this.addClass('add-corners').append(corners);
			
	});

	$(".re").each(function()
	{
		var html = $(this).html();
		$(this).replaceWith($.base64decode(html));
		
	});
	
	$("#share-btn").bind("click"
	,function()
	{
		$("#share-options").show();
		return false;
	});
	
	$("#share-options").hoverIntent(function(){},function(){$(this).hide();});

});

oc(function()
{
	if(lang('lg') == 'fr')
		$.datepicker.setDefaults($.datepicker.regional['fr']);
	
	$.datepicker.setDefaults({dateFormat: 'dd/mm/yy',duration: 'fast'});
	$(".datepicker").datepicker();

});

//comments slider
var $cs =
{
	 current:1
	,anim: false
	,init:function()
	{
		$cs.slider = $(".comments-slider");
		$cs.items = $(".comment");
		$cs.navs = 
		{
			 prev:$(".navs .nav-left").addClass('disabled').bind("click",$cs.slide)
			,next:$(".navs .nav-right").addClass('disabled').bind("click",$cs.slide)
		};
		
		$cs.arrows();
		return $cs;
	}
	,arrows:function()
	{
		if($cs.items.length < 2) return $cs;
		
		if($cs.current == 1) 
			$cs.navs.prev.addClass('disabled');
		else
			$cs.navs.prev.removeClass('disabled');
		
		if($cs.current == $cs.items.length) 
			$cs.navs.next.addClass('disabled');
		else
			$cs.navs.next.removeClass('disabled');
		
		return $cs;
		
	}
	,slide:function()
	{
		var target = $(this);
		if($cs.anim || target.hasClass('disabled')) return false;
		$cs.anim = true;
		var direction = target.hasClass('nav-left')? 1 : -1;
		$cs.slider.animate({marginLeft:'+='+(direction*240)+'px'},200,'',function(){$cs.current += -direction;$cs.arrows().anim = false;});
		return false;
	}
	
	
};

ol($cs.init);


// gallery
var $ag = 
{
	init: function()
	{
		if($("#gallery").length == 0) return ;
		
		$("a[rel='image-gallery']").bind("mouseover"
		,function()
		{
			$(".image-gallery").removeClass("active-thumb");
			$(this).addClass("active-thumb");
			var new_src = $(this).attr("name");
			$("#change-thumb").attr({src:new_src});
			
		})
		.colorbox()
		.eq(0).trigger("mouseover");
		
		$("#change-thumb").parent("a").bind("click",function(){$("a.active-thumb").trigger("click");return false;});
		
	}
	,change:function(it,mod)
	{
		if(it.value == '') return;
		$.ajax({url:'/application/request/get_gallery',data:'module='+mod+'&gallery_id='+it.value
		,success:function(data)
		{
			$("#gallery").replaceWith(data);
			$ag.init();
		}});
	}
	
};

ol($ag.init);



var $form =
{
	send:function(form)
	{
	   $('.field-error').removeClass('field-error');
		$.ajax({url:'/application/request/form_'+form
	   ,data:$(document[form]).serialize()
	   ,success:function(data)
	   {
		   data = utils.eval(data);
		   
		   if(!data.success)
				$form.errors(data.errors,$(document[form]));
		   else
		   {
				document[form].reset();
				$rq.close();
		   }
			
			$.msg(data.msg,(!data.success?'error':'success'),!data.success);
		   
		   
	   }});
		
	}
	,errors:function(fields,form)
	{
	   if(fields)
	   {
		for(var i in fields)
		{
			form.find("*[name='"+fields[i]+"']").parent().prev('.field-label').addClass('field-error');	
		}
	   }
	}
};


var $subsc =
{
	submit: function()
	{
		$.ajax({url:'/application/request/subscribe',data:$(document.subscribe).serialize(),success:this.onsuccess});
	},
	onsuccess: function(data)
	{
		data = utils.eval(data);
		if(data.success)
		{
			document.subscribe.reset();
			$(document.subscribe).find(":input").trigger('blur');
		}
		
		$.msg(data.msg,(!data.success?'error':'success'),!data.success);
	}
};


var $poll =
{
	init: function()
	{
		$(".poll-answer .text").bind("click",function(){$(this).parent().find(".input-radio :input").trigger("click");});
	}
	,submit:function(form)
	{
		
		var container = !form ? 'poll' : 'container-'+form;
		form = !form ? 'poll' : form;
		if($(document[form]).data('loaded')) return;
		
		$.ajax({url:'/application/request/poll_vote',data:$(document[form]).serialize()
		,success:
		function(data)
		{
			$(document[form]).data('loaded',true);
			data = utils.eval(data);
			$("#"+container).append('<div class="b i" style="padding:10px 0;">'+lang('Total vote:')+data.results.total+'</div>');
			
			for(var i in data.results.ids)
			{
				var pcont = $("#poll-"+data.results.ids[i].id);
				var islist = pcont.hasClass('poll-list');
				var r = $($poll.html(data.results.ids[i])).appendTo(pcont);
					r.find(".bg-black").animate({width:(data.results.ids[i].total/100* (islist?300:200))+'px'},300);
					
				pcont.find(".input-radio").remove();
				if(islist)
				{
					var text = pcont.find('.text').html();
					r.find(".q-text").html(text).css({paddingRight:'20px'});
					pcont.find('.text').remove();
				}
				else
				{
					pcont.find('.text').css({padding:0});
				}
			}
			
		}});
	}
	,html:function(d)
	{
		return '<table cellpadding=0 cellspacing=0><tr><td><div class="q-text b"/></td><td><div class="bg-black" style="margin:2px '+(d.total>0?'5':'0')+'px 0 0;" /></td><td align=right class="b">'+(d.total?d.total:'0')+'%</td></tr></table>';
	}
	,results: function(form)
	{
		form = !form ? 'poll' : form;
		document[form].has_vote.value = 1;
		document[form].submit();
	}
	
};

oc($poll.init);


$.msg = function(txt,type,timeout)
{
	$("#messages").remove();
	var box = $("<div id='messages' class='"+type+"-message' />").html(nl2br(txt)).appendTo("body").css({opacity:0.1});
	var but = $("<a href='' class='close'></a>")
				.bind('click',function(){box.fadeTo(300,0.1,function(){$(this).hide();});return false;}).appendTo(box);
	
	box.css({marginTop:'-'+Math.floor(box.outerHeight()/2)+'px'}).fadeTo(200,1);
	
	if($.browser.ie6)
	{
		box.css({top:($(window).height()/2)+$("html").scrollTop()+'px'});
	}
	
	if(timeout)
	{
		setTimeout(function()
		{
			box.fadeTo(300,0.1,function(){$(this).remove();});
		},3000);
	}
	return;
};



var $rq =
{
	 is_open:false
	,init:function()
	{
		$.ajax({url:'/application/request/load_forms'
	   ,success:function(data)
	   {
		  $rq.forms = utils.eval(data);
		  $login.init();
	   }});
		
	}
	,open:function(type)
	{
		$rq.type=type;
		$rq.scrolltop = $(window).scrollTop();
		$rq.content = $('<div class="box-content" />').append($rq.forms[type]);
		$rq.container = $('<div id="box-request" />');
		$rq.container.append('<div class="box-top" />')
						.append($rq.content)
						.append('<div class="box-bottom" /><a href="javascript:$rq.close();" class="box-close" />')
						.appendTo("body")
						//.css({marginTop:-($rq.container.height()/2)+'px'})
						.hide();
						
		$rq.overlay = $('<div id="black-overlay" />').appendTo("body");
		$rq.container.show("fast");
		$.scrollTo("body",500);
		$rq.is_open = true;
		if($.browser.ie6)
		{
			$rq.overlay.height($(window).height());
		}
		
	}
	,close:function(success)
	{
		if(!$rq.is_open) return;
		$rq.container.hide("fast",function(){$(this).remove();$rq.overlay.hide("fast",function(){$(this).remove();$.scrollTo($rq.scrolltop,500);$rq.is_open=false;});});
	}
};


ol($rq.init);



$ns =
{
	init: function()
	{
		var container = $("#newsticker-container");
		$ns.parent = container.find("#newsticker");
		
		var ul = $ns.parent.find("ul");
		
		var html = '';
		$.get(config('feed_url'),'',
		 function(data)
		 {
			$(data).find('rss channel item')
			.each(function(i)
			{
				if(i>2) return;
				html += '<li><a href="'+$(this).find('link').text()+'">- '+$(this).find('title').text()+'</a></li>';	   
			});
			var append = '';
			for(var i=0;i<10;i++) append += html;
			ul.append(append);
					
			var content = $ns.parent.find("li a");
			
			$ns.container_width = 800;
			$ns.width = 0;
			
			content.each(function(i)
			{
				$ns.width += parseInt($(this,i).outerWidth());
				
			}).parent('li')
			.hover($ns.stop,$ns.restart);
			
			$ns.duration = ($ns.width+$ns.container_width)/0.05;
			$ns.parent.hide().width($ns.width);
			setTimeout($ns.animate,2000);
		});
		
		return $ns;
	},
	animate: function()
	{
		$ns.parent.show().css({left:$ns.container_width+"px"});
		$ns.parent.animate({left: '-='+$ns.width+"px"},$ns.duration,'linear',$ns.animate);
	},
	stop:function()
	{
		$ns.parent.stop();
	},
	restart: function()
	{
		var left = $ns.parent.offset().left + $ns.width + $ns.container_width ;
		var time_left = left/0.05;
		
		$ns.parent.animate({left: '-='+left+"px"},time_left,'linear',$ns.animate);
	}
};

oc($ns.init);



var $login =
{
	 animate:false
	,init:function()
	{
		$login.box = $("#login").width(131);
		$login.cont = $("#login-content").html($rq.forms.login);
		$login.btn = $("#btn-reservation").bind("click",$login.toggle);
		$login.box.find(".box-close").bind("click",function(e){e.preventDefault();$login.close();});
		Cufon.replace('.avenir',{ fontFamily: 'avenir' });

	}
	,toggle: function(e)
	{
		e.preventDefault();
		if($login.animate) return;
		$login.animate = true;
		if($login.box.hasClass('open'))
		{
			$login.close();
		}
		else
		{
			$login.box.width(490);
			$login.overlay = $('<div id="black-overlay" />')
							.css({opacity:0,zIndex:399}).appendTo("body")
							.fadeTo(300,0.9,function(){$login.box.stop().addClass('open').animate({marginTop:'0px'},500);$login.animate= false;});
			
		}
	}
	,close:function()
	{
		$login.box.stop().removeClass('open').animate({marginTop:'-164px'},500,'',function(){$login.box.width(131);$login.overlay.remove();$login.animate = false;});
	}
	
};


$.fn.altrow = function()
{
	$(this).removeClass('odd').filter(function(i){return i%2!=0;}).addClass('odd');
	return this;
};

function nl2br (str, is_xhtml) {
    var breakTag = (is_xhtml || typeof is_xhtml === 'undefined') ? '<br />' : '<br>';

    return (str + '').replace(/([^>\r\n]?)(\r\n|\n\r|\r|\n)/g, '$1'+ breakTag +'$2');
}
function mktime(){var d=new Date(),r=arguments,i=0,e=['Hours','Minutes','Seconds','Month','Date','FullYear'];for(i=0;i<e.length;i++){if(typeof r[i]==='undefined'){r[i]=d['get'+e[i]]();r[i]+=(i===3);}else{r[i]=parseInt(r[i],10);if(isNaN(r[i])){return false;}}}
r[5]+=(r[5]>=0?(r[5]<=69?2e3:(r[5]<=100?1900:0)):0);d.setFullYear(r[5],r[3]-1,r[4]);d.setHours(r[0],r[1],r[2]);return(d.getTime()/1e3>>0)-(d.getTime()<0);}
function phpdate(format,timestamp){var that=this,jsdate,f,formatChr=/\\?([a-z])/gi,formatChrCb,_pad=function(n,c){if((n=n+"").length<c){return new Array((++c)-n.length).join("0")+n;}else{return n;}},txt_words=["Sun","Mon","Tues","Wednes","Thurs","Fri","Satur","January","February","March","April","May","June","July","August","September","October","November","December"],txt_ordin={1:"st",2:"nd",3:"rd",21:"st",22:"nd",23:"rd",31:"st"};formatChrCb=function(t,s){return f[t]?f[t]():s;};f={d:function(){return _pad(f.j(),2);},D:function(){return f.l().slice(0,3);},j:function(){return jsdate.getDate();},l:function(){return txt_words[f.w()]+'day';},N:function(){return f.w()||7;},S:function(){return txt_ordin[f.j()]||'th';},w:function(){return jsdate.getDay();},z:function(){var a=new Date(f.Y(),f.n()-1,f.j()),b=new Date(f.Y(),0,1);return Math.round((a-b)/864e5)+1;},W:function(){var a=new Date(f.Y(),f.n()-1,f.j()-f.N()+3),b=new Date(a.getFullYear(),0,4);return 1+Math.round((a-b)/864e5/7);},F:function(){return txt_words[6+f.n()];},m:function(){return _pad(f.n(),2);},M:function(){return f.F().slice(0,3);},n:function(){return jsdate.getMonth()+1;},t:function(){return(new Date(f.Y(),f.n(),0)).getDate();},L:function(){var y=f.Y(),a=y&3,b=y%4e2,c=y%1e2;return 0+(!a&&(c||!b));},o:function(){var n=f.n(),W=f.W(),Y=f.Y();return Y+(n===12&&W<9?-1:n===1&&W>9);},Y:function(){return jsdate.getFullYear();},y:function(){return(f.Y()+"").slice(-2);},a:function(){return jsdate.getHours()>11?"pm":"am";},A:function(){return f.a().toUpperCase();},B:function(){var H=jsdate.getUTCHours()*36e2,i=jsdate.getUTCMinutes()*60,s=jsdate.getUTCSeconds();return _pad(Math.floor((H+i+s+36e2)/86.4)%1e3,3);},g:function(){return f.G()%12||12;},G:function(){return jsdate.getHours();},h:function(){return _pad(f.g(),2);},H:function(){return _pad(f.G(),2);},i:function(){return _pad(jsdate.getMinutes(),2);},s:function(){return _pad(jsdate.getSeconds(),2);},u:function(){return _pad(jsdate.getMilliseconds()*1000,6);},e:function(){return'UTC';},I:function(){var a=new Date(f.Y(),0),c=Date.UTC(f.Y(),0),b=new Date(f.Y(),6),d=Date.UTC(f.Y(),6);return 0+((a-c)!==(b-d));},O:function(){var a=jsdate.getTimezoneOffset();return(a>0?"-":"+")+_pad(Math.abs(a/60*100),4);},P:function(){var O=f.O();return(O.substr(0,3)+":"+O.substr(3,2));},T:function(){return'UTC';},Z:function(){return-jsdate.getTimezoneOffset()*60;},c:function(){return'Y-m-d\\Th:i:sP'.replace(formatChr,formatChrCb);},r:function(){return'D, d M Y H:i:s O'.replace(formatChr,formatChrCb);},U:function(){return Math.round(jsdate.getTime()/1000);}};this.date=function(format,timestamp){that=this;jsdate=((typeof timestamp==='undefined')?new Date():(timestamp instanceof Date)?new Date(timestamp):new Date(timestamp*1000));return format.replace(formatChr,formatChrCb);};return this.date(format,timestamp);}
