var jkoutlinemenu={

effectduration: 300, //duration of animation, in milliseconds
outlinemenulabels: [],
outlinemenus: [], //array to contain each block menu instances
zIndexVal: 1000, //starting z-index value for drop down menu
$shimobj: null,

addshim:function(){
	$(document.body).append('<IFRAME id="outlineiframeshim" src="'+(location.protocol=="https:"? 'blank.htm' : 'about:blank')+'" style="display:none; left:0; top:0; z-index:999; position:absolute; filter:progid:DXImageTransform.Microsoft.Alpha(style=0,opacity=0)" frameBorder="0" scrolling="no"></IFRAME>')
	this.$shimobj=$("#outlineiframeshim")
	//alert(this.$shimobj.attr("src"))
},

alignmenu:function(e, outlinemenu_pos){
	var outlinemenu=this.outlinemenus[outlinemenu_pos]
	var $anchor=outlinemenu.$anchorobj
	var $menu=outlinemenu.$menuobj
	var menuleft=($(window).width()-(outlinemenu.offsetx-$(document).scrollLeft())>outlinemenu.actualwidth)? outlinemenu.offsetx : outlinemenu.offsetx-outlinemenu.actualwidth+outlinemenu.anchorwidth //get x coord of menu
	var menutop=($(window).height()-(outlinemenu.offsety-$(document).scrollTop()+outlinemenu.anchorheight)>outlinemenu.actualheight)? outlinemenu.offsety+outlinemenu.anchorheight : outlinemenu.offsety-outlinemenu.actualheight //get y coord of menu
	$menu.css({left:menuleft+"px", top:menutop+"px"})
	this.$shimobj.css({width:outlinemenu.actualwidth+"px", height:outlinemenu.actualheight+"px", left:menuleft+"px", top:menutop+"px", display:"block"})
},

showmenu:function(e, outlinemenu_pos){
	var outlinemenu=this.outlinemenus[outlinemenu_pos]
	var $menu=outlinemenu.$menuobj
	var $menuinner=outlinemenu.$menuinner
	if ($menu.css("display")=="none"){
		this.alignmenu(e, outlinemenu_pos)
		$menu.css("z-index", ++this.zIndexVal)
		$menu.show(this.effectduration, function(){
			$menuinner.css('visibility', 'visible')
		})
	}
	else if ($menu.css("display")=="block" && e.type=="click"){ //if menu is hidden and this is a "click" event (versus "mouseout")
		this.hidemenu(e, outlinemenu_pos)
	}
	return false
},

hidemenu:function(e, outlinemenu_pos){
	var outlinemenu=this.outlinemenus[outlinemenu_pos]
	var $menu=outlinemenu.$menuobj
	var $menuinner=outlinemenu.$menuinner
	$menuinner.css('visibility', 'hidden')
	this.$shimobj.css({display:"none", left:0, top:0})
	$menu.hide(this.effectduration)
},

definemenu:function(anchorid, menuid, revealtype, optwidth, optheight){
	//var $=jQuery
	this.outlinemenulabels.push([anchorid, menuid, revealtype, optwidth, optheight])
},

render:function($){
	for (var i=0, labels=this.outlinemenulabels[i]; i<this.outlinemenulabels.length; i++, labels=this.outlinemenulabels[i]){
		this.outlinemenus.push({$anchorobj:$("#"+labels[0]), $menuobj:$("#"+labels[1]), $menuinner:$("#"+labels[1]).children('ul:first-child'), revealtype:labels[2]})
		var outlinemenu=this.outlinemenus[i]
		outlinemenu.$anchorobj.add(outlinemenu.$menuobj).attr("_outlinemenupos", i+"pos")
		outlinemenu.$menuobj.css(parseInt(labels[3])>10? {width:parseInt(labels[3])+"px"} : {})
		outlinemenu.$menuobj.css(parseInt(labels[4])<outlinemenu.$menuobj.height()? {height:parseInt(labels[4])+"px", overflow:"scroll", overflowX:"hidden"} : {})
		outlinemenu.actualwidth=outlinemenu.$menuobj.outerWidth()
		outlinemenu.actualheight=outlinemenu.$menuobj.outerHeight()
		outlinemenu.offsetx=outlinemenu.$anchorobj.offset().left
		outlinemenu.offsety=outlinemenu.$anchorobj.offset().top
		outlinemenu.anchorwidth=outlinemenu.$anchorobj.outerWidth()
		outlinemenu.anchorheight=outlinemenu.$anchorobj.outerHeight()
		outlinemenu.$menuobj.css("z-index", ++this.zIndexVal).hide()
		outlinemenu.$menuinner.css("visibility", "hidden")
		outlinemenu.$anchorobj.bind(outlinemenu.revealtype=="click"? "click" : "mouseenter", function(e){
				return jkoutlinemenu.showmenu(e, parseInt(this.getAttribute("_outlinemenupos")))
		})
		outlinemenu.$anchorobj.bind("mouseleave", function(e){
				var $menu=jkoutlinemenu.outlinemenus[parseInt(this.getAttribute("_outlinemenupos"))].$menuobj
				if (e.relatedTarget!=$menu.get(0) && $(e.relatedTarget).parents("#"+$menu.get(0).id).length==0){ //check that mouse hasn't moved into menu object
					jkoutlinemenu.hidemenu(e, parseInt(this.getAttribute("_outlinemenupos")))
				}
		})
		outlinemenu.$menuobj.bind("click mouseleave", function(e){
			jkoutlinemenu.hidemenu(e, parseInt(this.getAttribute("_outlinemenupos")))
		})
	} //end for loop
	$(document).bind("click", function(e){
		for (var i=0; i<jkoutlinemenu.outlinemenus.length; i++){
			jkoutlinemenu.hidemenu(e, i)
		}
	}) //end document.click
	$(window).bind("resize", function(){
		for (var i=0; i<jkoutlinemenu.outlinemenus.length; i++){
			var outlinemenu=jkoutlinemenu.outlinemenus[i]
			outlinemenu.offsetx=outlinemenu.$anchorobj.offset().left
			outlinemenu.offsety=outlinemenu.$anchorobj.offset().top
		}
	})
	jkoutlinemenu.addshim()
}

}

/*jQuery(document).ready(function($){
	jkoutlinemenu.render($)
})*/







function StatusBar(sel, options) {
  var _I=this;
  var _sb=null;
  // options
  this.elementId="_showstatus";
  this.prependMultiline=true;
  this.showCloseButton=false;
  this.afterTimeoutText=null;
  this.cssClass="statusbar";
  this.highlightClass="statusbarhighlight";
  this.errorClass="statuserror";
  this.closeButtonClass="statusbarclose";
  this.additive=false;
  $.extend(this, options);
  if(sel) _sb=$(sel);
  // create statusbar object manually
  if(!_sb)
  {
    _sb=$("<div id='_statusbar' class='"+_I.cssClass+"'>"+"<div class='"+_I.closeButtonClass+"'>"+(_I.showCloseButton ? " X </div></div>" : "") ).appendTo(document.body).show();
  }
  //if (_I.showCloseButton) $("."+_I.cssClass).click(function(e) { $(_sb).hide(); });
  if (_I.showCloseButton) $("."+_I.closeButtonClass).click(function(e) { $(_sb).hide(); $.cookie('barre_bas', '0', { expires:30 }); });
  this.show=function(message, timeout, isError)
  {
    if(_I.additive)
    {
      var html="<div style='margin-bottom: 2px;'>"+message+"</div>";
      if(_I.prependMultiline) _sb.prepend(html);
      else _sb.append(html);
    }
    else
    {
      if(!_I.showCloseButton) _sb.text(message);
      else
      {
        var t=_sb.find("div.statusbarclose");
        _sb.text(message).prepend(t);
      }
    }
    _sb.show();
    if(timeout)
    {
      if(isError) _sb.addClass(_I.errorClass);
      else _sb.addClass(_I.highlightClass);
      setTimeout(function() { _sb.removeClass(_I.highlightClass); if(_I.afterTimeoutText) _I.show(_I.afterTimeoutText); }, timeout);
    }
  }
  this.release=function() {
    if(_statusbar) $(_statusbar).remove();
  }
}

var _statusbar=null;
function showStatus(message, timeout, additive, isError) {
  if(!_statusbar) _statusbar=new StatusBar();
  _statusbar.show(message, timeout, additive, isError);
}

function show_barre_bas() {
  _statusbar=new StatusBar(null, { timeout:2000, showCloseButton:true, additive:true, afterTimeoutText:status });
  _statusbar.show('<a href="'+url_website+'nouveautes-v2.php">Voir les nouvelles fonctionnalités du site</a> - <a href="'+url_website+'newsletter.php">Inscription à la newsletter</a>');
}







//var url_website="http://localhost/histoire-erotique.org/www/";
var url_website="http://www.histoire-erotique.org/";

function AddFav() {
	if(navigator.appName!='Microsoft Internet Explorer') { window.sidebar.addPanel(document.title, location.href, ""); }
	else { window.external.AddFavorite(document.title, location.href); }
}

function patienter(div) {
	$("#"+div).html('<center><img src="'+url_website+'images/ajax-loader.gif" class="loader" /><br />Chargement en cours</center>');
}

function pub() {
	var wd=$("#main").width()*0.99;
  if(wd<=700) { var tablo=new Array(5, 500, 80, 80); }
  else if(wd<900) { var tablo=new Array(5, wd, 120, 132); }
  else { var tablo=new Array(5, wd, 140, 160); }
  $("#pub").css({ "width":tablo[1], "height":tablo[2] });
  $("#beerich").css({ "width":tablo[1], "height":tablo[2] });
  var src="http://xml.bee-rich.com/vod_fr/tools/thumb_creator_v2.php?limit="+tablo[0]+"&ida=266&thumb_sizes="+tablo[3]+"&text_size=10&text_police=Verdana&color_bg=%23ffffff&color_link=%23FFA600&color_txt=%23FFA600&thumb_border=0&target=_blank&display_link=1&cols="+tablo[0]+"&desc_pos=b&bold_link=1&cat=0&random=1&md_tracker=histoire-top&integration=iframe";
  if(!la_pub) { var la_pub=0; }
  if(la_pub!=0)
  {
    if(la_pub==2)
    {
      src=src.replace("cat=0", "cat=6");
      src=src.replace("histoire-top&", "histoire-top-gay&");
    }
    else if(la_pub==3) { src=src.replace("cat=0", "cat=120"); }
    else if(la_pub==4) { src=src.replace("cat=0", "cat=5"); }
    else if(la_pub==5) { src=src.replace("cat=0", "cat=43"); }
    else if(la_pub==6) { src=src.replace("cat=0", "cat=18"); }
    else if(la_pub==7) { src=src.replace("cat=0", "cat=47"); }
    else if(la_pub==14) { src=src.replace("cat=0", "cat=14"); }
  }
  if(src!=$("#beerich").attr("src")) { $("#beerich").attr("src", src); }
}

function ajax(div, fichier, args, effet) {
	if(!effet) { effet=100; }
  $.get(url_website+fichier+".php?"+args, function(data) {
  	if(effet!=0) {
  		$("#"+div).fadeOut(effet);
      patienter(div);
      setTimeout(function() { $("#"+div).html(data); }, effet);
      //$("#"+div).html(data);
      $("#"+div).fadeIn(effet);
  	}
  	else { $("#"+div).html(data); }
  });
}

function compteur(id) {
	$.get(url_website+"ajax.php?type=out&id="+id);
 //alert(id);
}

function hide_search() {
	$("#recherche").fadeOut(1000);
}

function click() {
	if(!$.cookie("dejapopup")) {
		popunder(url_website+"top.php");
		$.cookie('dejapopup', '1', { expires:1 });
	}
}

function disclaimer() {
	if(!$.cookie("disclaimerok")) {
		$("#disclaimer-fond").css('height', $(document).height());
		ajax("disclaimer-cadre", "disclaimer", "");
		$("#disclaimer").show();
	}
}

function disclaimerok() {
	var la_duree=24*3600*30000;
	$.cookie('disclaimerok', '1', { expires:30 });
	$("#disclaimer").hide();
}

function bookmarks() {
	$("#b").html('<a href="javascript:;" onclick="hide_bookmarks();" class="bf" title="Masquer la barre d\'outils, attention, cela masquera aussi les outils des histoires !" style="top:95px;"><img src="'+url_website+'images/fermer.png" /></a><a href="http://feeds.feedburner.com/Histoiresrotiques" target="_blank" class="bf" title="Abonnez-vous au flux RSS des histoires &eacute;rotiques" style="top:113px;"><div class="rss">RSS</div></a><a href="javascript:;" onclick="AddFav();" class="bf" title="Ajoutez cette page &agrave; vos favoris" style="top:161px;"><div class="favoris">Favoris</div></a><a href="http://twitter.com/HistoireEro" title="Histoire &eacute;rotique sur Twitter" target="_blank" class="bf" style="top:209px;"><div class="twitter">Twitter</div></a><!--<a href="http://www.facebook.com/" title="Les histoires &eacute;rotiques sur Facebook" target="_blank" class="bf" style="top:257px;"><div class="facebook">Facebook</div></a>-->');
	if((!$.cookie('bookmarks'))||($.cookie('bookmarks')!='0')) { show_bookmarks(); }
	else { hide_bookmarks(); }
}

function hide_bookmarks() {
	$("#b").fadeOut(2000);
  $("#c").html('<a href="javascript:;" onclick="show_bookmarks();" class="bf" title="Afficher les outils" style="top:95px;"><img src="'+url_website+'images/ouvrir.png" /></a>');
  $("#c").fadeIn(2000);
  $.cookie('bookmarks', '0', { expires:30 });
}

function show_bookmarks() {
	$("#b").fadeIn(2000);
  $("#c").fadeOut(2000);
  $.cookie('bookmarks', '1', { expires:30 });
}

function masquer_aide_note() {
	$("#aide_note").fadeOut(1000);
	$.cookie('aide_note', '0', { expires:30 });
}

function outils_histoire(id) {
	var contenu=$("#b").html();
	$("#b").html(contenu+'<a href="mailto:?subject=Histoire &eacute;rotique &agrave; lire&body=Voici une histoire &eacute;rotique que j\'ai bien aim&eacute; : http://www.histoire-erotique.org/histoire-erotique-'+id+'.html" class="bf" title="Envoyer cette histoire erotique par email" style="top:340px;"><div class="email">Email</div></a><a href="histoire-erotique-'+id+'.txt" class="bf" title="T&eacute;l&eacute;charger cette histoire au format TXT" style="top:388px;"><div class="txt">TXT</div></a><a href="histoire-erotique-'+id+'.pdf" class="bf" title="T&eacute;l&eacute;charger cette histoire au format PDF" style="top:436px;"><div class="pdf">PDF</div></a><a href="javascript:;" onclick="window.print();" title="Imprimer ce r&eacute;cit" class="bf" style="top:484px;"><div class="imprimer">Imprimer</div></a>');
}

function populate_search(type) {
	$.get(url_website+"ajax.php?type=filtre&filtre="+type, function(data) { $("#r").html(data); });
}

function popunder(url) {
	if((navigator.userAgent.indexOf("Firefox")!=-1)||(navigator.userAgent.indexOf("MSIE 8")!=-1))
	{
		exit_win=window.open(url, '_blank', 'width='+screen.width+', height='+screen.height+' , toolbar=1, location=1, directories=1, status=1, scrollbars=1, resizable=1, copyhistory=1, menuBar=1');
		if(exit_win!=null) exit_win.blur();
	}
	else
	{
		window.open(url, '_blank', 'width='+screen.width+', height='+screen.height+' , toolbar=1, location=1, directories=1, status=1, scrollbars=1, resizable=1, copyhistory=1, menuBar=1');
		self.focus();
	}
}

function video(id) {
	window.open("http://refer.ccbill.com/cgi-bin/clicks.cgi?CA=927141-0000&PA=1583191&html=http://www.femjoy.com/video_details.php/"+id+"&PA=1583191");
}

function commentaires(id, nb, page, type) {
	ajax("commentaires", "ajax", "type=comment&page="+page+"&nb="+nb+"&id="+id+"&type2="+type, 1000);
}

function comment_form(id, type) {
	$.ajax({
		url: "commentaire.php?type="+type+"&id="+id,
		success: function(data) {
			$("#commentaire").html(data);
			if(type==1)
			{
        $caption=$("<span/>");
        $("#note").children().not(":input").hide();
        $("#note").stars({ cancelShow:false, captionEl:$caption });
        $caption.appendTo("#note");
        $("#form_comment").validate({
        	rules: { email: { email:true }, site: { url:true } },
        	messages: { email: "Renseignez votre adresse email valide.", site: "Renseignez un site internet valide." }
        });
			}
			else
			{
				$("#form_comment").validate({
					rules: { commentaire: { required:true }, email: { email:true }, site: { url:true } },
					messages: { email: "Renseignez votre adresse email valide.", site: "Renseignez un site internet valide.", commentaire: "Entrez un commentaire." }
				});
			}
			$("#form_comment").ajaxForm({
				target: "#commentaire",
				success: function() { $("#commentaire").fadeIn("slow"); },
				beforeSubmit: function() { return $("#form_comment").validate().form(); }
			});
		},
		error: function(data) { $("#commentaire").html("Une erreur s'est produite et le formulaire n'a pas pu &ecirc;tre charg&eacute;, merci de <a href=\"contact.php\">contacter le webmaster</a> si le disfonctionnement persiste."); }
	});
}

function signaler(id, type) {
	ajax("comment"+id, "ajax", "type=signaler&id="+id+"&type2="+type, 500);
	$("#comment"+id).addClass("erreur");
	$("#comment"+id).css({ "width":"470px", "padding-left":"50px" });
}

function go_top() {
	var delay=Math.round($(document).height()/2);
	$(document).scrollTo(0, 0, {duration:delay});
}

function backtotop() {
	if($(document).height()>($(window).height()*2.7)) {
		$("#top").html("Retour en haut");
		$("#top").addClass("right clear");
		$("#top").click(function() { go_top(); });
	}
}

function valid_filtres() {
	$(location).attr("href", url_website+"1-"+$("#filtres .lieu").val()+"-"+$("#filtres .theme").val()+"-"+$("#filtres .persos").val()+"-"+$("#filtres .type").val()+"-1.html");
	return false;
}

function menu_auteur() {
	$.get(url_website+"ajax.php?type=menu", function(data) {
		$("#menu_auteur").html(data);
		$("#menu_auteur a.ajax").fancybox({"type":"ajax" });
	});
}

$(window).resize(function() { pub(); });

$(document).ready(function() {
	jkoutlinemenu.render($);
	disclaimer(); menu_auteur(); bookmarks(); backtotop();
  pub();
	$("a.acount").click(function() { compteur($(this).attr("rel")); });
	$("span.o").click(function() { var data=$(this).attr("id"); populate_search(data); });
	$("a.ra").attr("href", url_website+"ajax.php?type=filtres"); $("a.ra").fancybox({});
	$("a.contact").attr("href", "contact.php?mode=ajax"); $("a.contact").fancybox();
  $("a.details_note").attr("title", "Détail des notes");
  $("a.details_note").attr("href", function() { return url_website+"ajax.php?type=note&id="+$(this).attr("rel"); });
  $("a.details_note img").css({ width:'16px', height:'16px', border:'0', display:'inline', clear:'none' });
  $("a.details_note").fancybox({});
	//if((!$.cookie('barre_bas'))||($.cookie('barre_bas')!='0')) { show_barre_bas(); }
});