//funzioni per il forum
//richiede che prima venga importato js.js per le funzioni generiche impostate.
var sezione_aperta = "";
var discussione_aperta = "";
var sezione_aperta_id = "";
var discussione_aperta_id = "";
var pannello_aperto = "";
var quote_number = "";
var contenuto_pannello_utility = "";
function forum_show(){
	if(menu_pagina_attivo == 'si'){
		$.post("forum.php?azione=loadforum",{},
			function(risposta)
			{
				$(".titolo_pagina_menu").html('<span class=\"hoverable\" onclick=\"pagechange(\'home\', \'Home\')\">Home-></span>Forum');
				$(".testo_menu").html(risposta);
				toggle_menu();
				$("#forum_accordion").accordion({ autoHeight: false });
				$("#forum_accordion").accordion({change: 
					function(event, ui) {
						scrollaqui("#forum_accordion")
					}
				});
			}
		);
	}
	else{
		$.post("forum.php?azione=loadforum",{},
				function(risposta)
				{
					$(".titolo_pagina_nomenu").html('<span class=\"hoverable\" onclick=\"pagechange(\'home\', \'Home\')\">Home-></span>Forum');
					$(".testo_nomenu").html(risposta);
					$("#forum_accordion").accordion({ autoHeight: false });
					$("#forum_accordion").accordion({change: 
						function(event, ui) {
							scrollaqui("#forum_accordion");
						}
					});
				}
			);
	}
	scrollaqui("top");
	pagina_attuale = 'forum';
	sezione_aperta = "";
	discussione_aperta = "";
	sezione_aperta_id = "";
	discussione_aperta_id = "";
	pannello_aperto = "main";
}
function forum_apri_sezione(id_sezione, nome_sezione){
	$("#forum_sezione_titolo").html("Sezione: <b>"+nome_sezione+"</b>");
	$.post("forum.php?azione=caricasezione",{
		sez_id: id_sezione
	},
		function(risposta) {
			$("#forum_sezione_contenuto").html(risposta);
			scrollaqui("#forum_accordion");
			$("#forum_accordion").accordion("activate", 1);
		}
	);
	sezione_aperta = nome_sezione;
	sezione_aperta_id = id_sezione;
	pannello_aperto = 'sezioni';
	discussione_aperta = "";
	discussione_aperta_id = "";
	forum_discussioni_pannelloreset();
	forum_utility_pannelloreset();
}
function forum_apri_discussione(id_discussione, titolo_discussione){
	$("#forum_discussione_titolo").html("Discussione: <b>"+titolo_discussione+"</b>");
	$.post("forum.php?azione=caricadiscussione",{
		disc_id: id_discussione
	},
		function(risposta) {
			$("#forum_discussione_contenuto").html(risposta);
			scrollaqui("#forum_accordion");
			$("#forum_accordion").accordion("activate", 2);
		}
	);
	discussione_aperta = titolo_discussione;
	discussione_aperta_id = id_discussione;
	pannello_aperto = 'discussioni';
	forum_rispondi_activate();
}
function forum_apri_ultima_discussione(id_discussione, titolo_discussione, id_sezione, nome_sezione){
	$("#forum_sezione_titolo").html("Sezione: <b>"+nome_sezione+"</b>");
	$.post("forum.php?azione=caricasezione",{
		sez_id: id_sezione
	},
		function(risposta) {
			$("#forum_sezione_contenuto").html(risposta);
		}
	);
	$("#forum_discussione_titolo").html("Discussione: <b>"+titolo_discussione+"</b>");
	$.post("forum.php?azione=caricadiscussione",{
		disc_id: id_discussione
	},
		function(risposta) {
			$("#forum_discussione_contenuto").html(risposta);
			scrollaqui("#forum_accordion");
			$("#forum_accordion").accordion("activate", 2);
		}
	);
	sezione_aperta = nome_sezione;
	sezione_aperta_id = id_sezione;
	discussione_aperta = titolo_discussione;
	discussione_aperta_id = id_discussione;
	pannello_aperto = 'discussioni';
	forum_rispondi_activate();
}


function forum_aggiorna_main(){
	$.post("forum.php?azione=caricamain",{},
		function(risposta) {
			$("#forum_main_contenuto").html(risposta);
			scrollaqui("#forum_accordion");
			$("#forum_accordion").accordion("activate", 0);
		}
	);
	pannello_aperto = 'main';
}
function forum_aggiorna_sezione(){
	if(pannello_aperto != 'sezioni'){
		if(sezione_aperta_id != ""){
			$.post("forum.php?azione=caricasezione",{
				sez_id: sezione_aperta_id
			},
				function(risposta) {
					$("#forum_sezione_contenuto").html(risposta);
				}
			);
		}
		pannello_aperto = 'sezioni';
	}
}
function forum_aggiorna_discussione(){
	if(pannello_aperto != 'discussioni'){
		if(discussione_aperta_id != ""){
			$.post("forum.php?azione=caricadiscussione",{
				disc_id: discussione_aperta_id
			},
				function(risposta) {
					$("#forum_discussione_contenuto").html(risposta);
				}
			);
		}
		pannello_aperto = 'discussioni';
		quote_number = "";
	}
}


function forum_utility_activate()
{
	pannello_aperto = 'utility';
}
function forum_disc_precedenti(X)
{
	if(sezione_aperta_id != "")
	{
		$.post("forum.php?azione=caricasezione&lstart="+X,
		{
			sez_id: sezione_aperta_id
		},
			function(risposta) {
				$("#forum_sezione_contenuto").html(risposta);
				scrollaqui("#forum_accordion");
			}
		);
	}
}
function forum_post_precedenti(X){
	if(discussione_aperta_id != ""){
		$.post("forum.php?azione=caricadiscussione&lstart="+X,{
			disc_id: discussione_aperta_id
		},
			function(risposta) {
				$("#forum_discussione_contenuto").html(risposta);
				scrollaqui("#forum_accordion");
			}
		);
	}
}


function forum_rispondi_activate(){
	if(discussione_aperta_id != ""){
		if($("#loggato").html() == 'si')
		{
			$("#forum_utility_titolo").html("Rispondi:&nbsp;<b>"+discussione_aperta+"</b>");
			$("#forum_utility_contenuto").html("<center><span id=\"forum_risposta_errore\" style=\"color:red;\"></span><br>Titolo risposta:&nbsp;<input type=\"text\" id=\"forum_risposta_titolo\"><br>" +
			"Testo risposta:<br><textarea cols=\"70\" rows=\"15\" id=\"forum_risposta_testo\"></textarea><br><br>" +
			"<input type=\"button\" value=\"Invia risposta\" onclick=\"forum_rispondi_send()\">");
		}
		else
		{
			$("#forum_utility_titolo").html("<b>Informazione</b>");
			$("#forum_utility_contenuto").html("<center><br>Non &egrave; possibile rispondere alla discussione selezionata: si prega di eseguire prima il login dall'apposito men&ugrave; laterale.");
		}
		contenuto_pannello_utility = "risposta";
	}
}
function forum_rispondi_activate_panel(){
	if(contenuto_pannello_utility != "risposta")
	{
		forum_rispondi_activate();
	}
	$("#forum_accordion").accordion("activate", 3);
	pannello_aperto = 'utility';
}
function forum_rispondi_send(){
	if($("#forum_risposta_titolo").val() == ""){
		$("#forum_risposta_errore").html("Prego inserire un titolo prima d'inviare la risposta.");
	}
	else if($("#forum_risposta_testo").val() == ""){
		$("#forum_risposta_errore").html("Prego inserire del testo prima d'inviare la risposta.");
	}
	else{
		$.post("forum.php?azione=aggiungirisposta",{
			disc_id: discussione_aperta_id,
			titolo: $("#forum_risposta_titolo").val(),
			testo: $("#forum_risposta_testo").val()
		},
			function(risposta) {
				if(risposta == 'tempo'){
					$("#forum_risposta_errore").html("Controllo antiflood: devi aspettare almeno 1 minuto prima di poter effettuare un'altra azione.");
				}
				else if(risposta == 'privilegi'){
					$("#forum_risposta_errore").html("Errore: privilegi insufficenti per inserire la risposta.");
				}
				else{
					$("#forum_discussione_contenuto").html(risposta);
					$("#forum_accordion").accordion("activate", 2);
					pannello_aperto = 'discussioni';
					forum_rispondi_activate();
					quote_number = "";
				}
			}
		);
	}
}
function forum_quote_activate(id_da_quotare){
	if(contenuto_pannello_utility == "risposta"){
		if(quote_number >= 1)
		{
			$("#info").html("Non puoi citare pi&ugrave; di un messaggio alla volta.").css("visibility","").css("position","").dialog("open");
		}
		else
		{
			testoprecedente = $("#forum_risposta_testo").val();
			$("#forum_risposta_testo").val(testoprecedente + "[QT=" + id_da_quotare + "]");
			$("#forum_accordion").accordion("activate", 3);
			quote_number++;
		}
	}
}
function forum_post_modifica_activate(id_post_da_modificare){
	$("#forum_utility_titolo").html("Modifica messaggio");
	$("#forum_utility_contenuto").html("<center><span id=\"forum_post_modifica_errore\" style=\"color:red;\"></span><br>" +
			"Titolo risposta:&nbsp;<input type=\"text\" id=\"forum_modifica_titolo\" value=\"" + $("#forum_post_titolo_id" + id_post_da_modificare).html()+"\"><br>" +
			"Testo risposta:<br><textarea cols=\"70\" rows=\"15\" id=\"forum_modifica_testo\">" + $("#forum_post_contenuto_originale_id" + id_post_da_modificare).html() + "</textarea><br><br>" +
			"<input type=\"button\" value=\"Modifica messaggio\" onclick=\"forum_post_modifica_send('"+id_post_da_modificare+"')\">");
	contenuto_pannello_utility = "modifica";
	$("#forum_accordion").accordion("activate", 3);
}
function forum_post_modifica_send(id_post_da_modificare){
	if($("#forum_modifica_titolo").val() == ""){
		$("#forum_post_modifica_errore").html("Prego inserire un nuovo titolo.");
	}
	else if($("#forum_modifica_testo").val() == ""){
		$("#forum_post_modifica_errore").html("Prego inserire del testo.");
	}
	else{
		$.post("forum.php?azione=modificapost",{
			post_id: id_post_da_modificare,
			titolo: $("#forum_modifica_titolo").val(),
			testo: $("#forum_modifica_testo").val()
		},
			function(risposta){
				$("#forum_discussione_contenuto").html(risposta);
				$("#forum_accordion").accordion("activate", 2);
				pannello_aperto = 'discussioni';
				forum_rispondi_activate();
				quote_number = "";
			}
		);
	}
}


function forum_post_elimina_activate(id_post_da_eliminare, is_discussione){
	if(is_discussione == 'si'){
		//attenzione!->si elimina una discussione, è il primo post
		$("#forum_utility_titolo").html("Cancella discussione");
		$("#forum_utility_contenuto").html("<center><span id=\"forum_post_elimina_errore\" style=\"color:red;\">Attenzione: eliminando il primo messaggio di una discussione, quest'ultima verr&agrave; eliminata a sua volta.</span><br>" +
				"Proseguire con l'eliminazione?" +
				"<br><br><input type=\"button\" value=\"Conferma eliminazione\" onclick=\"forum_post_elimina_send('"+id_post_da_eliminare+"', 'si')\">&nbsp;<input type=\"button\" value=\"Annulla\" onclick=\"forum_post_elimina_annulla('"+id_post_da_eliminare+"')\">");
		contenuto_pannello_utility = "elimina";
		$("#forum_accordion").accordion("activate", 3);
}
	else{
		//normale, sta solo cancellando un post
		$("#forum_utility_titolo").html("Elimina messaggio");
		$("#forum_utility_contenuto").html("<center><span id=\"forum_post_elimina_errore\" style=\"color:red;\"></span><br>" +
				"Proseguire con l'eliminazione?" +
				"<br><br><input type=\"button\" value=\"Conferma eliminazione\" onclick=\"forum_post_elimina_send('"+id_post_da_eliminare+"', 'no')\">&nbsp;<input type=\"button\" value=\"Annulla\" onclick=\"forum_post_elimina_annulla('"+id_post_da_eliminare+"')\">");
		contenuto_pannello_utility = "elimina";
		$("#forum_accordion").accordion("activate", 3);
	}
}
function forum_post_elimina_send(id_post_da_eliminare, is_discussione){
	if(is_discussione == 'si'){
		$.post("forum.php?azione=eliminapost",{
			post_id: id_post_da_eliminare
		},
			function(risposta){
				$("#forum_sezione_contenuto").html(risposta);
				$("#forum_accordion").accordion("activate", 1);
				pannello_aperto = 'sezioni';
				forum_rispondi_activate();
				quote_number = "";
				forum_discussioni_pannelloreset();
				forum_utility_pannelloreset();
			}
		);
	}
	else{
		$.post("forum.php?azione=eliminapost",{
			post_id: id_post_da_eliminare
		},
			function(risposta){
				$("#forum_discussione_contenuto").html(risposta);
				$("#forum_accordion").accordion("activate", 2);
				pannello_aperto = 'discussioni';
				forum_rispondi_activate();
				quote_number = "";
			}
		);
	}
}
function forum_post_elimina_annulla(id_post){
	$.post("forum.php?azione=eliminannulla",{
		post_id: id_post
	},
		function(risposta){
			$("#forum_discussione_contenuto").html(risposta);
			$("#forum_accordion").accordion("activate", 2);
			pannello_aperto = 'discussioni';
			forum_rispondi_activate();
			quote_number = "";
		}
	);
}
function forum_nuova_discussione_activate()
{
	if(sezione_aperta_id != ""){
		if($("#loggato").html() == 'si')
		{
			$("#forum_utility_titolo").html("Nuova discussione nella sezione:&nbsp;<b>"+sezione_aperta+"</b>");
			$("#forum_utility_contenuto").html("<center><span id=\"forum_disc_errore\" style=\"color:red;\"></span><br>Titolo discussione:&nbsp;<input type=\"text\" id=\"forum_disc_titolo\"><br>" +
					"Testo discussione:<br><textarea cols=\"70\" rows=\"15\" id=\"forum_disc_testo\"></textarea><br><br>" +
					"<input type=\"button\" value=\"Crea discussione\" onclick=\"forum_discussione_send()\">");
		}
		else
		{
			$("#forum_utility_titolo").html("<b>Informazione</b>");
			$("#forum_utility_contenuto").html("<center><br>Non &egrave; possibile la creazione d'una nuova discussione: si prega di eseguire prima il login dall'apposito men&ugrave; laterale.");
		}
		contenuto_pannello_utility = "nuova_discussione";
	}
}
function forum_nuova_disc_activate_panel()
{
	if(contenuto_pannello_utility != "nuova_discussione")
	{
		forum_nuova_discussione_activate();
	}
	$("#forum_accordion").accordion("activate", 3);
	pannello_aperto = 'utility';
}
function forum_discussione_send()
{
	if($("#forum_disc_titolo").val() == "")
	{
		$("#forum_disc_errore").html("Prego inserire un titolo.");
	}
	else if($("#forum_disc_testo").val() == "")
	{
		$("#forum_disc_errore").html("Prego inserire del testo.");
	}
	else
	{
		$.post("forum.php?azione=nuovadiscussione",
		{
			sez_id: sezione_aperta_id,
			titolo: $("#forum_disc_titolo").val(),
			testo: $("#forum_disc_testo").val()
		},
			function(risposta)
			{
				if(risposta == 'tempo')
				{
					$("#forum_disc_errore").html("Controllo antiflood: devi aspettare almeno 1 minuto prima di poter effettuare un'altra azione.");
				}
				else if(risposta == 'privilegi')
				{
					$("#forum_disc_errore").html("Errore: privilegi insufficenti.");
				}
				else
				{
					$("#forum_sezione_contenuto").html(risposta);
					$("#forum_accordion").accordion("activate", 1);
					pannello_aperto = 'sezioni';
					forum_discussioni_pannelloreset();
					forum_utility_pannelloreset();
				}
			}
		);
	}
}


//Da qui parte per la gestione delle (super)sezioni da parte degli admin
function admin_forum_gestione_supersezioni_activate()
{
	$.post("forum.php?azione=gestionesupersezioni",{},
		function(risposta) {
			if(risposta == 'privilegi')
			{
				$("#info").html("Non hai i privilegi necessari!").css("visibility","").css("position","").dialog("open");
			}
			else
			{
				$("#forum_main_contenuto").html(risposta);
				scrollaqui("#forum_accordion");
				$("#forum_accordion").accordion("activate", 0);
			}
		}
	);
	pannello_aperto = 'main';
}

function admin_forum_gestione_supersezioni_rename(id_supersezione_da_rinominare)
{
	$.post("forum.php?azione=gestionesupersezioni_rename",
		{
		id_supersezione: id_supersezione_da_rinominare,
		nuovonome: $("#supersezione_"+id_supersezione_da_rinominare).val()
		},
		function(risposta) {
			if(risposta == 'privilegi')
			{
				$("#info").html("Non hai i privilegi necessari!").css("visibility","").css("position","").dialog("open");
			}
			else
			{
				$("#forum_main_contenuto").html(risposta);
				$("#forum_accordion").accordion("activate", 0);
			}
		}
	);
}
function admin_forum_gestione_supersezioni_moveup(id_supersezione_da_spostare)
{
	$.post("forum.php?azione=gestionesupersezioni_moveup",
		{
		id_supersezione: id_supersezione_da_spostare
		},
		function(risposta) {
			if(risposta == 'privilegi')
			{
				$("#info").html("Non hai i privilegi necessari!").css("visibility","").css("position","").dialog("open");
			}
			else
			{
				$("#forum_main_contenuto").html(risposta);
				$("#forum_accordion").accordion("activate", 0);
			}
		}
	);
}
function admin_forum_gestione_supersezioni_addnew()
{
	$.post("forum.php?azione=gestionesupersezioni_addnew",{},
		function(risposta) {
			if(risposta == 'privilegi')
			{
				$("#info").html("Non hai i privilegi necessari!").css("visibility","").css("position","").dialog("open");
			}
			else
			{
				$("#forum_main_contenuto").html(risposta);
				$("#forum_accordion").accordion("activate", 0);
			}
		}
	);
}
function admin_forum_gestione_supersezioni_delete(id_da_eliminare)
{
	$.post("forum.php?azione=gestionesupersezioni_delete",
			{
				id_supersezione: id_da_eliminare
			},
		function(risposta) {
			if(risposta == 'privilegi')
			{
				$("#info").html("Non hai i privilegi necessari!").css("visibility","").css("position","").dialog("open");
			}
			else
			{
				$("#forum_main_contenuto").html(risposta);
				scrollaqui("#forum_accordion");
				$("#forum_accordion").accordion("activate", 0);
			}
		}
	);
}
function admin_forum_gestione_sezioni_rename(id_sezione_da_rinominare)
{
	$.post("forum.php?azione=gestionesezioni_rename",
		{
		id_sezione: id_sezione_da_rinominare,
		nuovonome: $("#nome_sezione_"+id_sezione_da_rinominare).val()
		},
		function(risposta) {
			if(risposta == 'privilegi')
			{
				$("#info").html("Non hai i privilegi necessari!").css("visibility","").css("position","").dialog("open");
			}
			else
			{
				$("#forum_main_contenuto").html(risposta);
				$("#forum_accordion").accordion("activate", 0);
			}
		}
	);
}
function admin_forum_gestione_sezioni_moveup(id_sezione_da_spostare)
{
	$.post("forum.php?azione=gestionesezioni_moveup",
		{
		id_sezione: id_sezione_da_spostare
		},
		function(risposta) {
			if(risposta == 'privilegi')
			{
				$("#info").html("Non hai i privilegi necessari!").css("visibility","").css("position","").dialog("open");
			}
			else
			{
				$("#forum_main_contenuto").html(risposta);
				$("#forum_accordion").accordion("activate", 0);
			}
		}
	);
}
function admin_forum_gestione_sezioni_addnew(id_supersezione_madre)
{
	$.post("forum.php?azione=gestionesezioni_addnew",{
		id_supersezione: id_supersezione_madre
	},
		function(risposta) {
			if(risposta == 'privilegi')
			{
				$("#info").html("Non hai i privilegi necessari!").css("visibility","").css("position","").dialog("open");
			}
			else
			{
				$("#forum_main_contenuto").html(risposta);
				$("#forum_accordion").accordion("activate", 0);
			}
		}
	);
}
function admin_forum_gestione_sezioni_changesupersezione(id_sezione_da_spostare)
{
	$.post("forum.php?azione=gestionesezioni_changesupersezione",{
		id_sezione: id_sezione_da_spostare,
		nuova_super_sezione: $("#sezione_appartenenza_"+id_sezione_da_spostare).val()
	},
		function(risposta) {
			if(risposta == 'privilegi')
			{
				$("#info").html("Non hai i privilegi necessari!").css("visibility","").css("position","").dialog("open");
			}
			else
			{
				$("#forum_main_contenuto").html(risposta);
				$("#forum_accordion").accordion("activate", 0);
			}
		}
	);
}
function admin_forum_gestione_sezioni_delete(id_da_eliminare)
{
	$.post("forum.php?azione=gestionesezioni_delete",
			{
				id_sezione: id_da_eliminare
			},
		function(risposta) {
			if(risposta == 'privilegi')
			{
				$("#info").html("Non hai i privilegi necessari!").css("visibility","").css("position","").dialog("open");
			}
			else
			{
				$("#forum_main_contenuto").html(risposta);
				scrollaqui("#forum_accordion");
				$("#forum_accordion").accordion("activate", 0);
			}
		}
	);
}
function admin_forum_gestione_discussioni_move(id_disc_da_spostare)
{
	$("#forum_utility_titolo").html("Sposta discussione");
	$("#forum_utility_contenuto").html("<center>" +
			"Prego immettere l'ID della sezione nella quale si desidera spostare questa discussione." +
			"<br><input type=\"text\" value=\"\" id=\"admin_forum_spostasezione\"><br><input type=\"button\" value=\"Sposta la discussione\" onclick=\"admin_forum_gestione_discussioni_move_send('"+id_disc_da_spostare+"')\">&nbsp;");
	contenuto_pannello_utility = "sposta";
	$("#forum_accordion").accordion("activate", 3);
}
function admin_forum_gestione_discussioni_move_send(id_disc_da_spostare)
{
	$.post("forum.php?azione=gestionediscussioni_move",
			{
				id_discussione: id_disc_da_spostare,
				id_sezione_nuova: $("#admin_forum_spostasezione").val()
			},
		function(risposta) {
			if(risposta == 'privilegi')
			{
				$("#info").html("Non hai i privilegi necessari!").css("visibility","").css("position","").dialog("open");
			}
			else
			{
				$("#info").html(risposta).css("visibility","").css("position","").dialog("open");
				forum_show();
			}
		}
	);
}














function forum_discussioni_pannelloreset(){
	discussione_aperta = "";
	discussione_aperta_id = "";
	$("#forum_discussione_titolo").html(" ");
	$("#forum_discussione_contenuto").html("Prego selezionare una Sezione dal pannello <span class=\"links\" onclick=\"$('#forum_accordion').accordion('activate', 0)\">Forum</span>, e quindi una Discussione dall'<span class=\"links\" onclick=\"$('#forum_accordion').accordion('activate', 1)\">apposito pannello</span> al fine di vederla qui visualizzata.<br>");
}
function forum_utility_pannelloreset(){
	quote_number = "";
	$("#forum_utility_titolo").html(" ");
	$("#forum_utility_contenuto").html("Sezione dedita a svariati usi.<br>");
	contenuto_pannello_utility = "";
}

