
KEY_BSPACE = 8;
KEY_F5 = 116;

function isFromEdit(e) 
{
	if (window.event) e = window.event;
	var target = e.target ? e.target : e.srcElement;
	return ((target.tagName == "INPUT" && (target.type == "text" || target.type == "password")) || target.tagName == "TEXTAREA");
}

function blocBadTouche(e) 
{
	if (window.event) e = window.event;
	var touche = window.event ? e.keyCode : e.which;
	var target = e.target ? e.target : e.srcElement;
	
	if ((touche == KEY_BSPACE && !isFromEdit(e))/* || touche == KEY_F5*/ ) 
	{
		if (e.keyCode) e.keyCode=0;
		return false;
	}
	return true;
}

// MENU functions


var menuDelay = 400;
var yOffset = -22;
var xSubOffset = 281;
var ySubOffset = 197;
var activeMenu = null;
var activeSubMenu = null;
var timeout = null;
var subTimeout = null;

//alert(audiofanzine.browser.version);

if(audiofanzine.browser.msie && audiofanzine.browser.version == '6.0')
{
	ySubOffset = 228;
}


function hideMenu()
{
    if(activeMenu != null)
    {
        hideSubMenu();
        activeMenu.style.visibility = 'hidden';
        activeMenu.style.display = 'none';
        activeMenu = null;
    }
}

function hideSubMenu()
{
    if(activeSubMenu != null)
    {
        activeSubMenu.style.visibility = 'hidden';
        activeSubMenu.style.display = 'none';
        activeSubMenu = null;
    }
}

function displayMenu(item)
{
	var coord = $("#menu").offset();
    var iMenuPlaceX = coord.left;

    hideMenu();
    activeMenu = item;
    var xSpecialOffset = 0;
    
    if(item.parentNode.id == 'menu1First')
    {
        /*xSpecialOffset = 21;*/
    }
    
    var coordTop = $("#menu-container").offset();
	var coord = $(item.parentNode).offset();
	
	var item2 = document.layers ? item : item.style;
	
	item2.left = (coord.left - iMenuPlaceX - xSpecialOffset) + 'px';
	item2.top = (coord.top - coordTop.top - yOffset) + 'px';
	item2.visibility = 'visible';
	item2.display = 'block';
}

function displaySubMenu(item)
{
    hideSubMenu();
    activeSubMenu = item;
    
    //temp = item.parentNode;
    var coordTop = $("menu-container").offset();
    
    var coord = $(item.parentNode).offset();
    //console.log(temp.nodeName + '.' + temp.className, coord);
   
    var item2 = document.layers ? item : item.style;
    item2.visibility = 'visible';
    item2.display = 'block';
    item2.top = (coord.top - coordTop.top - ySubOffset) + 'px';
}

function hideWithDelay()
{
    timeout = setTimeout('hideMenu()', menuDelay);
}

function cancelHide()
{
    if(timeout != null)
    {
        clearTimeout(timeout);
    }
}

function getPos(element)
{
    for(var lx=0,ly=0; element!=null; lx+=element.offsetLeft,ly+=element.offsetTop,element=element.offsetParent)
        ;
    return {x:lx,y:ly};
}

/*
 * Startup functions
 */
$(document).ready(function()
{
	$('li.menu1').each(function()
	{
		$(this).hover(function()
		{
			cancelHide();
			$("ul.menu2", this).each(function() 
			{
				displayMenu(this);
			});
		},
		function()
		{
			hideWithDelay();
		});
	});
	
	$('li.menu2').each(function()
	{
		$(this).hover(function()
		{
			cancelHide();
			$("ul.menu3", this).each(function() 
			{
				displaySubMenu(this);
			});
		},
		function()
		{
			hideSubMenu();
		});
	});
	
	$('li.sub-menu').each(function()
	{
		$(this).hover(function(){
			$(this).removeClass('sub').addClass('sub-active');
		},function(){
			$(this).removeClass('sub-active').addClass('sub');
		});
	});
	
	var containerCoords = $('#lettersContainer').offset(),
		lettersCoords = $('#letters').offset(),
		lettersHeight = $('#letters').height();
	
	$('img.letterOn').each(function()
	{
		$(this).hover(function()
	    {
			var letterCoords = $(this).position(),
				letterWidth = $(this).width(),
				letterArrowWidth = $('#letterArrow').width(),
				css = {
					left: (letterCoords.left + (letterWidth/2) - (letterArrowWidth/2)), 
					top: (lettersCoords.top + lettersHeight + 2),
					visibility: 'visible'
				};
			
			$('#letterArrow').css({visibility: 'visible', top: (lettersCoords.top + lettersHeight + 2)}).dequeue().animate(css, 500, 'swing');
		});
	});
	
	var configLightbox = {
		overlayOpacity: 0.6,
	    imageLoading: staticUrl + '/images/jquery/lightbox/lightbox-ico-loading.gif',
	    imageBtnClose: staticUrl + '/images/jquery/lightbox/lightbox-btn-close.gif',
	    imageBtnPrev: staticUrl + '/images/jquery/lightbox/lightbox-btn-prev.gif',
	    imageBtnNext: staticUrl + '/images/jquery/lightbox/lightbox-btn-next.gif',
	    fixedNavigation:true
	};
	$('a.lightbox').lightBox(configLightbox);

	setTimeout("hideMessage()",1000);
});


function hideMessage()
{
	$("#messagesBox").fadeOut("slow");
}
 
function showOption()
{
	$("#topbarOption").slideDown();
	return false;
}

function hideOption()
{
	$("#topbarOption").slideUp();
	return false;
}

function displayOption()
{
	$("#topbarOption").slideToggle("slow");
	return false;
}

function setSearch(elm)
{
	var value = elm.id;
	
	if(value == 'searchAll')
	{
		$('#headerSearchForm').attr('action', searchIndexUrl);
	}
	else if(value == 'searchForums')
	{
		$('#headerSearchForm').attr('action', searchForumUrl);
	}
	setTimeout("hideOption()", 300);
	return false;
}

function checkFormSearch(id)
{
	var q = $('#' + id);
	
	if(q.value == '')
	{
		q.focus();
		return false;
	}
	
	return true;
}

function insertSmiley(src)
{
	tinyMCE.activeEditor.selection.setContent('<img class="smiley" src="' + src + '" alt="" />');
	tinyMCE.activeEditor.focus();
}

/**
 * Converts a string to a seo friendly string
 * @param string str
 * @return string
 */
function convertSeoName(str)
{
	return str.replace( /[^a-zA-Z0-9\-_éèêëàâäùûüîï§]/g, "-").replace( /(\-)+/g, "-").toLowerCase().replace(/^\-+/g, '').replace(/\-+$/g, '');
}