$.bind.load(function()
{
	$.browser.ie6 = ($.browser.msie && $.browser.version < 7);
	
	
	main_menu();
	
	$(".droparrow").find(".droparrow-title").bind("click",function(e)
	{
		e.preventDefault();
		var parent = $(this).parent();
		if(parent.hasClass("droparrow-open"))
			parent.removeClass("droparrow-open");
		else
			parent.addClass("droparrow-open");
	}).eq(0).trigger("click");
	
	
	$(".share-size").click(fontSize.click);
	
	$(".share-toolbar").hover(function(){$("#share-options").show();},function(){$("#share-options").hide();});
	
	$("input[name=hasvote]").each(function()
	{
		this.form.submit();
	});
	
});
Cufon.replace(".gotham",{fontFamily:'gotham'});


function main_menu()
{
	var ul = $("#menu-main");	
	
	ul.find("li").each(function()
	{
		var id = $(this).attr("id");
		var sbm = $("#"+id+"-submenu");
		
		if(sbm.length == 0) return;
		
		sbm.removeAttr("id").appendTo($(this).find(".wrapper"));
		
		$(this).addClass("has_submenu")
		.hover(function()
		{
			$(this).addClass("mousehover");	
			$(this).prev("li.item").addClass("has_submenu-prev_hover");
		}
		,function()
		{
			$(this).removeClass("mousehover");	
			$(this).prev("li.item").removeClass("has_submenu-prev_hover");
		});
		
	});
	
}


var fontSize =
{
	 current:12
	,click : function(e)
	{
		e.preventDefault();
		var d = $(this).hasClass('share-sizeup')?1:-1;
		
		fontSize.current += d;
		
		fontSize.current = fontSize.current>20 ?20 : fontSize.current;
		fontSize.current = fontSize.current<12 ?12 : fontSize.current;
		
		$(".right-col-590,.right-col-590 .fs-12").css({fontSize:fontSize.current+'px'});
		
	}
}


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


var poll = 
{
	submit:function(name)
	{
		var $form = $(document['form_'+name]);
		
		if($form.find("input:checked").length==0 && $form.find('input[name=hasvote]').length==0)
		{
			alert("Vous devez choisir une réponse avant de soumettre!");
			return;
		}	

		$.ajax({url:'/application/request/poll'
		,data:$form.serialize()
		,success:function(data)
		{
			data = eval("("+data+")");
			
			for(var i in data.ids)
			{
				var tr1 = $("#answer-"+data.ids[i].id);
				var tr2 = $("#result-"+data.ids[i].id);
				
				tr1.find(".answer-radio").remove();
				tr1.find(".answer-name").attr({colspan:2});
				
				tr2.show();
				var anim = $('<div />');
				tr2.find(".result-percent").html(data.ids[i].total+"%");//.width(tr2.find(".result-percent").width());
				tr2.find(".result-bar").append(anim);
				//tr2.width(tr
				if($.browser.msie)
				{
					tr2.find(".result-bar").width(tr2.width()-tr2.find(".result-percent").width());
				}
				
				anim.animate({width:data.ids[i].total+"%"});
			}
			
			if($.browser.msie)
			$("#footer").hide().show();
			
		}});


	}
	
};



$ns =
{
	init: function()
	{
		var container = $("#newsticker-container");
		$ns.parent = container.find("#newsticker");
		
		var ul = $('<ul />').appendTo($ns.parent);
		
		var html = [];
		$.get("/_fil-de-nouvelles",'',
		 function(data)
		 {
			$(data).find('rss channel item')
			.each(function(i)
			{
				if(i>4) return;
				html.push('<li><a href="'+$(this).find('link').text()+'">'+$(this).find('title').text()+'</a></li>');	   
			});

			var append = [];
			for(var i=0;i<5;i++) append.push(html.join('<li class="span">-</li>'));
			ul.append(append.join('<li class="span">-</li>'));
					
			var content = $ns.parent.find("li a");
			
			$ns.container_width = 370;
			$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,1000);
		});
		
		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);
	}
};

$.bind.config($ns.init);



var $request =
{
	 sending:false
	,submit:function(name)
	{
		if($request.sending) return;
		$request.sending = true;
		
		
		var form	= document["form_"+name],
			$form	= $(form),
			$resp	= $("#response-"+name).removeClass('response-success');
			
		$(".field-error").removeClass("field-error");
			
		$.ajax({url:'/application/request/request_'+name
		,data:$form.serialize()
		,success:function(data)
		{
			$resp.hide().empty();
			
			data = $.php.json_decode(data);
					   
		   if(!data.success)
		   {
				$request.errors(data.errors,$form);
				$.msg(data.msg,'error',false,$resp);
		   }
		   else
		   {
			   if(form.onsuccess)
			   {
				  var callback =  eval(form.onsuccess.value);
				  callback(data,$form,$resp);
			   }
			   else
			   {
				    if(!form.noreset)
					form.reset();
					$.msg(data.msg,'success',false,$resp);
					if(typeof $request.callback[name] == 'function')
					{
						$request.callback[name](data,$form,$resp);
					}
			   }
		   }
			
			$request.sending = false;
		}});
	}
	,errors:function(fields,$form)
	{
	   if(fields)
	   {
		for(var i in fields)
		{
			var field = $form.find("label[for='"+fields[i]+"']");
			if(field.length>1)
			field = $form.find("label[for='"+fields[i]+"']").eq(i);
			
			if(field.length==0) continue;
			
			field.addClass('field-error');	
		}
	   }
	}
};

$request.callback =
{
};


$.msg = function(txt,type,timeout,container)
{
	var is_body = container.length==0,
		appendto = is_body?$("body"):container;
	$("#messages").remove();
	var box = $("<div id='messages' class='"+type+"-message' />").html(nl2br(txt)).appendTo(appendto).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);
	
	if(is_body)
	box.css({marginTop:'-'+Math.floor(box.outerHeight()/2)+'px'}).addClass("messages-fly").fadeTo(200,1);
	else
	box.parent().show().end().fadeTo(200,1);
	
	if(timeout)
	{
		setTimeout(function()
		{
			box.fadeTo(300,0.1,function(){$(this).remove();});
		},2000);
	}
	return;

};

$.msg.close = function()
{
	$("#messages").fadeTo(300,0.1,function(){$(this).remove();});
};



