function saveEditSujet(btn,idMsg) {
    if(canEdit == false) {
        tempText = $(btn).parent().find('textarea').html();

        $.ajax({
                type: "POST",
                url: CN_FORUM.url+CN_FORUM.dossier+"/services/edit_message.php",
                data: $("#frmMsg"+idMsg).serialize(),
                beforeSend: function() {
                        $(btn).text("Sauvegarde en cours...");
                        $(btn).attr("disabled","true");
                        $(btn).css("color","gray");
                },
                success: function(msg){
                        $("#frmMsg"+idMsg).remove();
                        $("#msg"+idMsg).html(msg);
                        var d=new Date();
                        $("#msg"+idMsg).parent().append("<hr>"+d+" <strong>SUCCÈS!  Msg ID"+idMsg+" édité.</strong>");
                },
                error: function (XMLHttpRequest, textStatus, errorThrown) {
                        $("#msg"+idMsg).parent().append("<strong>ERREUR Ajax! "+textStatus+"<br>"+errorThrown+"(Le message original n'a PAS été édité.)");
                }
        });

        canEdit = true;
    }
}

function cancelEditSujet(btn,idMsg) {
    if(canEdit == false) {
        tempText = $(btn).parent().find('textarea').html();
		tempText = tempText.replace(/\n/gi,"<br>");

		$("#frmMsg"+idMsg).remove();
		$("#msg"+idMsg).html(tempText);

        canEdit = true;
    }
}

function cancelEditTitle() {
    if(canSaveTitle == true) {
		oldTitle = $("#inputTitle").attr("value");
		$("#titre_affiche").text(oldTitle);
		$("#inputTitle").remove();
		$(".title_edit").text("Éditer le titre");
		canSaveTitle = false;
    }
}


function citer(idSuj,idMsg,authorName) {
    window.open('formulaire.php?sujet='+idSuj+'&message='+idMsg+'&nomAuteur='+authorName+'&action=citer', 'popup', 'width=800,height=700,toolbar=no,directories=no,menubar=no,status=no,location=no,scrollbars=no,resizeable=no');
}

function signaler(idMsg) {
    $('#abuseModalContent'+idMsg).modal();
	$('#abuseModalContent'+idMsg).css('z-index','10');
}

/* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -*/
/* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -*/


$(document).ready(function () {
    
    canEdit = true;
    canSaveTitle = false;

    $('.title_edit').click(function (e) {
        if(canSaveTitle==false) {
            tempTitle = $("#titre_affiche").text();
            tempTitle = tempTitle.replace(/'/gi,"&#39;");
            $("#titre_affiche").text("").prepend("<input id='inputTitle' type='text' style='width:350px;' value='"+tempTitle+"' /> <a href='#' onClick='cancelEditTitle(); return false;'>annuler</a>");
            $(this).text("Sauvegarder");
            canSaveTitle=true;
        } else {

            newTitle = $("#inputTitle").attr("value");
            idSuj = $(this).attr('title');

            $.ajax({
                    type: "POST",
                    url: CN_FORUM.url+CN_FORUM.dossier+"/services/edit_message.php",
                    data: "idSuj="+idSuj+"&newTitle="+newTitle,
                    beforeSend: function() {
                            $(".sujet_header_admin").append(" <span id='msg_edit_title'> Édition du titre en cours...</span>");
                    },
                    success: function(msg){
                            $("#titre_affiche").text(newTitle);
                            $("#inputTitle").remove();
                            $("#msg_edit_title").remove();
                            $(".title_edit").text("Éditer");
                            canSaveTitle=false;
                    },
                    error: function (XMLHttpRequest, textStatus, errorThrown) {
                            $("#msg_edit_title").text("ERROR Ajax");
                   }
            });
        }
        return false;
    });

    $('.sujet_lock').click(function (e) {

            idSuj = $(this).attr('title');

            $.ajax({
                    type: "POST",
                    url: CN_FORUM.url+CN_FORUM.dossier+"/services/verrouille_sujet.php",
                    data: "idSuj="+idSuj+"&action=lock",
                    beforeSend: function() {
                            $(".sujet_header_admin").append(" <span id='msg_lock_sujet'> Verrouillage du sujet en cours...</span>");
                    },
                    success: function(msg){
                            if(msg=="OK") {
                                $("#msg_lock_sujet").remove();
                                //$(".sujet_lock").removeClass("sujet_lock").addClass("sujet_unlock").text("Déverouiller");
                            } else {
                                $("#msg_lock_sujet").text(msg);
                            }
                    },
                    error: function (XMLHttpRequest, textStatus, errorThrown) {
                            $("#msg_lock_sujet").text("ERROR Ajax");
                   }
            });
			return false;
    });

    $('.sujet_unlock').click(function (e) {

            idSuj = $(this).attr('title');

            $.ajax({
                    type: "POST",
                    url: CN_FORUM.url+CN_FORUM.dossier+"/services/verrouille_sujet.php",
                    data: "idSuj="+idSuj+"&action=unlock",
                    beforeSend: function() {
                            $(".sujet_header_admin").append(" <span id='msg_unlock_sujet'> Déverrouillage du sujet en cours...</span>");
                    },
                    success: function(msg){
                            if(msg=="OK") {
                                $("#msg_unlock_sujet").remove();
                                //$(".sujet_unlock").removeClass("sujet_unlock").addClass("sujet_lock").text("Verrouiller");
                            } else {
                                $("#msg_unlock_sujet").text(msg);
                            }
                    },
                    error: function (XMLHttpRequest, textStatus, errorThrown) {
                            $("#msg_unlock_sujet").text("ERROR Ajax");
                   }
            });
			return false;
    });

    $('.sujet_move').click(function (e) {
        $("#liste_themes_to_move").toggle();
        return false;
    });

		$("#liste_themes_to_move a").click(function (e) {
			if(confirm("Voulez-vous vraiment déplacer ce sujet dans le thème : "+$(this).text())) {
				arrSplit = $(this).attr('title').split("_");
				idSuj = arrSplit[0];
				idTheme = arrSplit[1];
				$.ajax({
						type: "POST",
						url: CN_FORUM.url+CN_FORUM.dossier+"/services/move_sujet.php",
						data: "idSuj="+idSuj+"&idTheme="+idTheme,
						beforeSend: function() {
								$(".sujet_header_admin").append(" <span id='msg_move_sujet'> Déplacement du sujet en cours...</span>");
						},
						success: function(msg){
								$("#liste_themes_to_move").hide();
								$("#msg_move_sujet").remove();
						},
						error: function (XMLHttpRequest, textStatus, errorThrown) {
								$("#msg_move_sujet").text("<strong>ERREUR Ajax! "+textStatus+"<br>"+errorThrown+"(Le message original n'a PAS été déplacé.)");
						}
				});
			}
			return false;
		});

    $('.sujet_effacer').click(function (e) {
        idSuj = $(this).attr('title');

        if(confirm("Voulez-vous vraiment effacer (cacher) ce sujet?")) {

            $.ajax({
                    type: "POST",
                    url: CN_FORUM.url+CN_FORUM.dossier+"/services/delete_sujet.php",
                    data: "id="+idSuj+"&action=effacer",
                    beforeSend: function() {
                            $(".sujet_header_admin").append(" <span id='msg_efface_sujet'> Effacement en cours...</span>");
                    },
                    success: function(msg){
                            $("#msg_efface_sujet").remove();
                    },
                    error: function (XMLHttpRequest, textStatus, errorThrown) {
                            $("#msg_efface_sujet").text("<strong>ERREUR Ajax! "+textStatus+"<br>"+errorThrown+"(Le sujet original n'a PAS été effacé.)");
                    }
            });

        }
        return false;
    });

    $('.sujet_reactiver').click(function (e) {
        idSuj = $(this).attr('title');

        if(confirm("Voulez-vous vraiment réactiver (ouvrir) ce sujet?")) {

            $.ajax({
                    type: "POST",
                    url: CN_FORUM.url+CN_FORUM.dossier+"/services/reactive_sujet.php",
                    data: "id="+idSuj+"&action=reactiver",
                    beforeSend: function() {
                            $(".sujet_header_admin").append(" <span id='msg_reactive_sujet'> Réactivation en cours...</span>");
                    },
                    success: function(msg){
                            $("#msg_reactive_sujet").remove();
                    },
                    error: function (XMLHttpRequest, textStatus, errorThrown) {
                            $("#msg_reactive_sujet").text("<strong>ERREUR Ajax! "+textStatus+"<br>"+errorThrown+"(Le sujet original n'a PAS été réactivé.)");
                    }
            });

        }
        return false;
    });

    $('.sujet_supprimer').click(function (e) {
        idSuj = $(this).attr('title');

        if(confirm("Voulez-vous vraiment supprimer (retirer les traces de) ce sujet?")) {

            $.ajax({
                    type: "POST",
                    url: CN_FORUM.url+CN_FORUM.dossier+"/services/delete_sujet.php",
                    data: "id="+idSuj+"&action=supprimer",
                    beforeSend: function() {
                            $(".sujet_header_admin").append(" <span id='msg_suppr_sujet'> Suppression en cours...</span>");
                    },
                    success: function(msg){
                            $("#msg_suppr_sujet").text(msg);
                            //$("#msg_suppr_sujet").remove();
                    },
                    error: function (XMLHttpRequest, textStatus, errorThrown) {
                            $("#msg_suppr_sujet").text("<strong>ERREUR Ajax! "+textStatus+"<br>"+errorThrown+"(Le sujet original n'a PAS été supprimé.)");
                    }
            });

        }
        return false;
    });

	// * * * * * * * * * * * * *

    $('.edition').click(function (e) {
        if(canEdit == true) {
			idMsg = $(this).attr('title');

			$.ajax({
				type: "POST",
				url: CN_FORUM.url+CN_FORUM.dossier+"/services/edit_message.php",
				data: "adminEditMsgId="+idMsg,
				beforeSend: function() {
					$('#msg'+idMsg).html("...récupération du message de la base de données...");
				},
				success: function(msg){
					$('#msg'+idMsg).html("<form id='frmMsg"+idMsg+"'><textarea name='msgTxt'>"+msg+"</textarea><input type='hidden' name='msgId' value='"+idMsg+"' /><button type='button' onclick='saveEditSujet(this,"+idMsg+")'>Sauvegarder</button> <button type='button' onclick='cancelEditSujet(this,"+idMsg+")'>Annuler</button></form>");
					lignes = $('#msg'+idMsg).text().split(/\n/g).length - 1;
					$('#msg'+idMsg).find("textarea").css("height",15+lignes*15);
					canEdit = false;
				},
				error: function (XMLHttpRequest, textStatus, errorThrown) {
					$('#msg'+idMsg).html(XMLHttpRequest+" - "+textStatus+" - "+errorThrown);
			   }
            });
            //tempText = $('#msg'+idMsg).html().replace(/<br>/gi,"\r");
            //$('#msg'+idMsg).html("<form id='frmMsg"+idMsg+"'><textarea name='msgTxt'>"+tempText+"</textarea><input type='hidden' name='msgId' value='"+idMsg+"' /><button type='button' onclick='saveEditSujet(this,"+idMsg+")'>Sauvegarder</button></form>");
        }
        return false;
    });

    $('.effacer').click(function (e) {
        idMsg = $(this).attr('title');
        
        if(confirm("Voulez-vous vraiment effacer ce message?")) {

            $.ajax({
                    type: "POST",
                    url: CN_FORUM.url+CN_FORUM.dossier+"/services/delete_message.php",
                    data: "id="+idMsg+"&action=effacer",
                    beforeSend: function() {
                            $("#msg"+idMsg).html("Effacement en cours...");
                    },
                    success: function(msg){
                            $("#msg"+idMsg).html("[Message effacé par un administrateur.]");
                            var d = new Date();
                            $("#msg"+idMsg).parent().append("<hr>"+d+" <strong>SUCCÈS!  Msg ID"+idMsg+" effacé.</strong>");
                    },
                    error: function (XMLHttpRequest, textStatus, errorThrown) {
                            $("#msg"+idMsg).parent().append("<strong>ERREUR Ajax! "+textStatus+"<br>"+errorThrown+"(Le message original n'a PAS été effacé.)");
                    }
            });

        }
        return false;
    });

    $('.supprimer').click(function (e) {
    arrSplitTitle = $(this).attr('title').split("_");
            idMsg = arrSplitTitle[0];
            idSuj = arrSplitTitle[1];

        if(confirm("Voulez-vous vraiment supprimer (retirer les traces de) ce message?")) {

            $.ajax({
                    type: "POST",
                    url: CN_FORUM.url+CN_FORUM.dossier+"/services/delete_message.php",
                    data: "id="+idMsg+"&id_sujet="+idSuj+"&action=supprimer",
                    beforeSend: function() {
                            $("#msg"+idMsg).html("Suppression en cours...");
                    },
                    success: function(msg){
                            $("#msg"+idMsg).html("[SUPPRIMÉ]");
                            var d = new Date();
                            $("#msg"+idMsg).parent().append("<hr>"+d+" <strong>SUCCÈS!  Msg ID"+idMsg+" supprimé.</strong>");
                    },
                    error: function (XMLHttpRequest, textStatus, errorThrown) {
                            $("#msg"+idMsg).parent().append("<strong>ERREUR Ajax! "+textStatus+"<br>"+errorThrown+"(Le message original n'a PAS été supprimé.)");
                    }
            });

        }
        return false;
    });

});
