ParisMenu = new function() {

	menu = this;

	this.cc = 1;
	this.level_count = 4;

	this.init = function() {
		// hide html semantic menu
		
		// dynamize menu
		$("#menu").addClass("dynamic");
		$("#menu li").css("cursor", "pointer");

		$("#menu .level1, #menu .level2,#menu .level3,#menu .level4,#menu .level5 ").css("display", "none");

		$("#menu li").click(menu.handleClick);

		// initialize dynamic_menu
		$("#dynamic_menu_wrapper").hover(menu.overMenu, menu.outMenu);

		$("body").click( function() {
			if (menu.menu_survoled == 0 && ($("#dynamic_menu_wrapper").css("display") != "none")) {

				menu.releaseMenu();
			}
		});

		/*
		// bouton retour
		back_a = $(document.createElement('img')).attr("alt", "back").attr("class", "item_content");
		if($.browser.msie && $.browser.version=="6.0"){
			$(back_a).attr("src", common_declination_path+"/img/menu_back.gif")
		}else{
			$(back_a).attr("src", common_declination_path+"/img/menu_back.png")
		}
		*/
	};

	// event handlers
	this.overMenu = function(e) {
		menu.menu_survoled = 1;
	};

	this.outMenu = function(e) {
		menu.menu_survoled = 0;
	};

	this.overItem = function(e) {
		// e.stopPropagation();
		var item = $(e.target);

		if (item.attr("tagName").toUpperCase() != "LI") {
			item = item.parents("li");
		}
		if (menu.survoledItem) {
			menu.survoledItem.removeClass("over")
		}

		menu.survoledItem = item;
		item.addClass("over");
	};

	this.outItem = function(e) {
		// e.stopPropagation();
		var item = $(e.target);

		if (item.attr("tagName").toUpperCase() == "LI") {
			item.removeClass("over");

		}
	};

	// Gestion du clique sur le bonton retour
	this.handleBackClick = function(e) {
		$("#back").hide();
		menu.displaySubmenu($(".clicked"));
		 e.stopPropagation();
	}
	
	this.handleClick = function(e) {
		// Gestion URL en cours :
		var urlFind = false;
		var currentUrl = window.location.href;
		var listA = $("#submenu").find("a");
		listA.each( function(index, elt) {
			if(!urlFind && $(elt).attr( "href")==currentUrl){
				if($(elt).parent().attr("class")=="item_content"){
					$(elt).parent().parent().css('background-image', 'url("'+common_declination_path+'/img/white_square_on.png")');
				}else{
					$(elt).parent().css('background-image', 'url("'+common_declination_path+'/img/white_square_on.png")');
				}
				urlFind = true;
			}
		});	
		// Fin gestion URL en cours
		
		
		var item = $(e.target);

		var parents = item.parents("#menu .clicked");
		var length = item.parents("#menu .clicked").length;

		if (item.hasClass(".clicked") || ((item.parents("#menu .clicked").length) > 0)) {
			menu.releaseMenu();
			return;
		}

		if (item.attr("tagName").toUpperCase() != "LI") {
			item = item.parents("li");
		}

		if (item.find("ul li").length) {
			e.stopPropagation();
			menu.displaySubmenu(item);
		}

	};

	// behaviour
	this.releaseMenu = function() {
		$("#pro").css("background-color","#11ABC5");
		if (!$.support.maxHeight){
			$(".head_info h3").show();
		}
		$("#dynamic_menu_wrapper").hide();
		$(".clicked").removeClass("clicked");
		$(".unselected").addClass("selected").removeClass("unselected");
	};

	this.displaySubmenu = function(item) {
		$("#pro").css("background-color","#BCBCBC");
		if (!$.support.maxHeight){
			$(".head_info h3").hide();
		}
		var submenu = $(document.createElement('ul'));
		var item_level;
		var menu_level;

		for ( var i = 0; i <= menu.level_count; ++i) {
			if (item.hasClass("level" + i)) {
				item_level = i;
				menu_level = i + 1;
			}
		}

		if (item_level == 0) {

			$("#menu li").each( function(index, elt) {
				$(elt).removeClass("clicked");
			});
			item.addClass("clicked");

			var breadcrump = $(document.createElement('ul'));
			$("#menu_breadcrump").replaceWith(breadcrump);
			breadcrump.attr("id", "menu_breadcrump").hide().addClass("clearfix");
			$("#back").hide();

			$("#dynamic_menu_wrapper").removeClass("general_menu");
			$("#dynamic_menu_wrapper").removeClass("pro_menu");

			if (item.parents(".general_menu").length) {
				$("#dynamic_menu_wrapper").addClass("general_menu");

			} else {
				$("#dynamic_menu_wrapper").addClass("pro_menu");

			}

			$(".selected").addClass("unselected").removeClass("selected");

		} else if (item.parents("#menu_breadcrump").length) {

			item.nextAll().remove();
			--item_level;
			--menu_level;
			$("#menu_breadcrump").removeClass("level1 level2 level3 level4");
			$("#menu_breadcrump").addClass("level" + menu_level);

		} else {

			item.removeClass("over level" + item_level);
			item.addClass("level" + menu_level);

			// bouton retour
			/*
			bacl_li = $(document.createElement('li')).append(back_a.clone()).click(menu.handleBackClick);
			$(bacl_li).addClass("level" + menu_level);
			$(bacl_li).css("display", "list-item").css("cursor", "pointer").hover(menu.overItem, menu.outItem);
			if($.browser.msie && ($.browser.version=="6.0"||$.browser.version=="7.0")){
				$(bacl_li).css("padding", "5px,7px,6px,0px");
			}else{
				$(bacl_li).css("padding-left", "3px");
			}
			*/
			
			$("#menu_breadcrump").append($(item)).removeClass("level1 level2 level3 level4").addClass("level" + menu_level).show();
			$("#menu_breadcrump li").first().attr("style","");
			$("#back").bind('click',menu.handleBackClick).show();
			
			// bouton retour
			//item.parent().prepend(bacl_li);
		}

		var items = item.find("li.level" + menu_level);

		items.each( function(index, elt) {
			submenu.append($(elt).clone().css("display", "list-item").hover(menu.overItem, menu.outItem));
		});
				
		submenu.addClass("level" + menu_level).addClass("clearfix");/* Fixme */
		// submenu.css("opacity","0.9"); //Opacity disabled

		$("#submenu").replaceWith(submenu);

		submenu.attr("id", "submenu");

		$("#submenu li").click(menu.handleClick);

		if ($("#dynamic_menu_wrapper").is(":hidden")) {
			$("#dynamic_menu_wrapper").show();
		}

 

	};

};


var divon=0;
var imgon=0;
var imgti;


function seb()
	{

var settings={show:{opacity:'show',bottom:'10px'},showDuration:200,hide:{opacity:'hide'},hideDuration:200};


	var over=$("#over_box");
	$("#quick_access_zone img").hover(function()
		{
		clearTimeout(over.data('timeout'));			
		m=$(this);
		var p=m.position();
		$("#over_box span.titre").text(m.next().text().replace('- ',''));			
		$("#over_box span.text").html(m.attr("alt"));
		over.css('marginLeft',function() {return $("#quick_access_zone").position().left-10;}).css('marginTop',function() {return p.top*2.499-124}).show();
		imgon=1;
		$("#pointe").css('marginLeft',function() {return p.left+12}).css('marginTop',function() {return p.top*1.65-57}).css('background-position',function() {if (p.top<55) return '0 -13px'; else return '0 0';} ).show();	
		},
		function() {
			var t=setTimeout(function() {
			$("#pointe").hide();
			over.hide();
			},2000);
			over.data('timeout',t);
			});



	$("img.credits").hover(
		function()					 
			{
			clearTimeout(imgti);
			i=$(this);
			d=$("#credits");
			p=d.offset(i.offset()).height(i.height()).find('p').width(i.width()).hide();
			d.show();
			imgon=1;
			p.html(i.attr('alt')).animate({height: "show"},settings.showDuration);
			},
		function ()
			{
			imgon=0;creditsoff();
			}
		);
	
	$("#credits").hover(function(){divon=1;}, function() {divon=0;creditsoff()});
	
	function creditsoff()
		{
		imgti=setTimeout(function() {if (divon==0 && imgon==0) $("#credits").find('p').animate({height: "hide"},settings.hideDuration)},500);		
		}
	
	}


var main_context = 'http://www.paris.fr/portail';
var common_declination_path = 'http://www.paris.fr/portail/charters/2/graphical/common';
var declination_path = 'http://www.paris.fr/portail/charters/2/graphical/decl_totem_etroit';

/*
      swfobject.embedSWF(
          "http://www.paris.fr/portail/charters/2/graphical/common/flash/banniere.swf", 
          "paris_zone", 
          "100%", 
          "100%", 
          "9",
          "",
          {requestUrl: "http://www.paris.fr/portail/xml/Portal.lut?page_id=9707"},{wmode:"transparent"}
      );
*/

$(document).ready(function(){	 
  ParisMenu.init();
  seb();
  initFontResize('div .full_article .article_content');
  $.ifixpng('img[@src$=.png]');
  $('a.credits').colorbox();
  $("#q").bind('click keypress',function() {$(this).css("background-image","none");});
});

