$(function() {
	$(".sn").hover(function() {
		$(this).addClass('open');
	}, function(){
		$(this).removeClass('open');
	});
	
	$('.ssn').hover(function() {
		$(this).parent('.sn').addClass('open');
	});
	
	$(".nav > a").hover(function() {
		$(".sub-nav").hide(); $(".empty").hide();
		$("#s" + $(this).attr('id')).show();
	});

});

//function addBookmark()
//{
//
//   $.post('/bookmarks/add', {data[Bookmark]});
//}
function selectall(chbox, chtext)
{
    for ( var i = 0; i < chbox.form.elements.length; i++)
    {
        if (chbox.form.elements[i].name.indexOf(chtext) == 0)
        {
            chbox.form.elements[i].checked = chbox.checked;
        }
    }
}

/**
 * Retrieve the absolute coordinates of an element.
 *
 * @param element
 *            A DOM element.
 * @return A hash containing keys 'x' and 'y'.
 */
function getAbsolutePosition(element)
{
    var r =
    {
        x :element.offsetLeft,
        y :element.offsetTop
    };
    if (element.offsetParent)
    {
        var tmp = getAbsolutePosition(element.offsetParent);
        r.x += tmp.x;
        r.y += tmp.y;
    }
    return r;
}

function getUrlParam(name)
{
    name = name.replace(/[\[]/, "\\\[").replace(/[\]]/, "\\\]");
    var regexS = "[\\?&]" + name + "=([^&#]*)";
    var regex = new RegExp(regexS);
    var results = regex.exec(window.location.href);
    if (results == null)
        return "";
    else
        return results[1];
}


function vote(id, type, obj)
{
    $.get(obj.href, function(data)
    {
        $('#voting').after(data);
        $('#voting').remove();
    });
    return false;
}


/**
 * @param link DOM element
 * @return
 */
function showCommentBox(link)
{
    if($('#form-'+ link.id).length)
    {
        $('#form-'+ link.id).slideToggle('fast');
    }
    else
    {
        $.get(link.href,
            function(data)
            {
                $(link).after(data);
                $('#form-'+ link.id).slideToggle('fast');
            });
    }
    return false;
}



