$(document).ready(function () {
    $(".top_menu_a").mouseover(function () {
        /*para remover na cearte*/
        $("#page_menu").css('visibility', 'hidden');
        $("#menu_auth").hide();
        if ($(this).next('div').children('ul').children('li').length !== 0) {
            $(".top_menu_a").removeClass('navigating');
            $(this).addClass('navigating');
            gen_page_menu($(this).next('div').html());
        }
    });

    /*para apagar n tarda nada */
    $("#navigation_bar").find("a[href^=#]").mouseover(function () {
        gen_page_menu($("#top_menu").find("a[href="+$(this).attr("href")+"]").next("div").html());
    });

    /***************************/

    $("a[href=#gen_login]").click(function () {
        var mauth = $("#menu_auth");

        if (mauth.length > 0) {
            mauth.show("fast", function () {
            	$(this).find(":input[name=username]").focus();
            });
        } else {
            mauth = $('<div id="menu_auth" style="padding:5px;">');
            mauth.appendTo("#header").mouseout(function (e) {
                if (e.relatedTarget == this) {
                    $(this).hide();
                }
            });
            $("#loginForm").appendTo(mauth).show("fast", function () {
                $(this).find("*").show();
            	$(this).find(":input[name=username]").focus();
            }).find("*").hide();
            $("#boxToSubmit").prepend($('<input style="float:right" type="submit" value="Entrar" />')).attr("align", "right").find("div").css({"float" : "right", "marginTop" : "10px"});
            mauth.find("input[type=submit]").button();
        }
        return false;
    });
    
    bindNewsletter();
});

function bindNewsletter() {
    $("[href$=register_newsletter]").unbind('click.cearte').bind('click.cearte', function (e) {
    	e.preventDefault();
    	var div = $("<div/>");
    	div.dialog({
            width : 320,
            modal : false,
            resizable : false,
            title : 'Registo na Newsletter',
            zIndex : 900,
            close : function () {
    			div.find("form").validationEngine("hide");
                div.dialog("destroy")
                   .remove();
                
            },
            buttons : {
            	'subscrever' : function () {
            		div.find("form").submit();
            	}
            }
    	})
    	.html(humanportal.regional.loading.animated.big)
    	.load(humanportal.sysvar.humandns + "newsletterregistries/subscribe_form.ajaxx", function () {
    		div.dialog("option", "width", 570)
    			.dialog("option", "position", {})
				.find("form").submit(function () {
					var form = $(this);
					if (form.validationEngine("validate")) {
						div.dialog("option", {width: 320, buttons : {}})
							.dialog("option", "position", {});
						form.hide();
						form.after(humanportal.regional.loading.animated.big);
	    				$.ajax({
	    					url : form.attr("action"),
	    					data : form.serialize(),
	    					dataType : 'json',
	    					type : form.attr("method"),
	    					success : function (json) {
	    						if (json.ok) {
		    						div.html(json.msg)
										.dialog("option", {buttons : { 'Fechar' : function () { div.dialog("close"); }}})
										.dialog("option", "position", {});
	    						} else {
		    						form.next('p').remove();
		    						form.after('<p>'+humanportal.regional.tags.ioerror+'</p>')
	    							div.dialog("option", {
	    								buttons : { 'Tentar novamente' : function () {
			    							form.next('p').remove();
	    									form.show();
	    									div.dialog("option", {
			    								width: 570,
	    										buttons : { 'subscrever' : function () {div.find("form").submit(); }}
	    									}).dialog("option", "position", {});
										}}
									}).dialog("option", "position", {});
	    						}
	    					},
	    					error : function () {
	    						form.next('p').remove();
	    						form.after('<p>'+humanportal.regional.tags.ioerror+'</p>')
    							div.dialog("option", {
    								buttons : { 'Tentar novamente' : function () {
		    							form.next('p').remove();
    									form.show();
    									div.dialog("option", {
		    								width: 570,
    										buttons : { 'subscrever' : function () {div.find("form").submit(); }}
    									}).dialog("option", "position", {});
									}}
								}).dialog("option", "position", {});
	    					} 
	    				});
					}
    				return false;
    			})
    			.validationEngine({
    				promptPosition : 'topLeft'
    			});
    	});
    	return false;
    });
}

function confMailNews() {
	if ($("#nemail").val() != $("#ncemail").val()) {
		return '* Os campos Email e Conf. Email são diferentes.'
	}
}

function gen_page_menu ($html) {
    $("#page_menu").css('visibility', 'visible');
    $("#page_menu").html($html);
    $("#page_menu").children().hide();
    $("#page_menu").children().fadeIn();
    $("#page_menu>h1>a[href=#]").each(function () {
        $(this).css("cursor", "default");
        $(this).css("background-image", "none");
    });

    /***************************/
    $("#page_menu>ul>li>a").click(function () {
        if ($(this).next('div').children('ul').children('li').length !== 0 && !$(this).hasClass('nav_back')) {
            gen_page_menu($(this).next('div').html());
        }
    });
    $("#page_menu>h1>a").click(function () {
        $pl = $(this).attr('href').toString();
        gen_page_menu($($pl).html());
    });
    bindNewsletter();
}
