﻿/// <reference path = "../system/jquery-1.4.4-vsdoc.js"/>
$(document).ready(function () {
    initMessageActions();
    $("div.sendReply").click(function () {
        $("div.messageReplyEditor").slideDown(500);
    });    
});

function initMessageActions() {    
    //find the displayed message and highlight the row
    var currentMsgId = $("input[type=hidden].readMessageId").val();
    var msgRow = $("div.msgId_" + currentMsgId + ":first");
    msgRow.removeClass("messageRow").addClass("messageRowSelected");

    $("div.messageNameMember").live("click", function () { showMemberMessage(this); });
    $("input.btnViewMemberMessage").live("click", function () { showMemberMessage(this); });
    $("div.messageTo").live("click", function () { showMemberMessage(this); });

    $("div.deleteMessage").live("click", function () { deleteMemberMessage(this); });
    $("input[type=button].btnDeleteMemberMessage").click(function () { deleteMemberMessage(this); });
    $("div.sendMessageReply").live("click", function () { sendMessageReply(this); });
}

function showMemberMessage(elem) {
    var $elem = $(elem);
    var id = $elem.attr("class").split("_");
    var msgId = id[id.length - 1];
    var url = "/Message/Read/" + msgId;
    document.location.href = url;
}

function validateMessage(elem) {
    var sendMessage = $("input.btnSendMessage");
    var subject = $("input.messageSubject").val();
    var message = $('#MessageText').tinymce().getContent();

    var rtg = false;
    if (subject.length > 0 && message.length > 0) {
        rtg = true;
    }
    if (!rtg) {
        sendMessage.removeClass("btnSendMessageEnabled").addClass("btnSendMessageDisabled");
        return;
    }
    rtg = false;
    $("div.chkGraphicSmall").each(function (index) {
        if ($(this).next("input[type=hidden]").val().length > 0) {
            rtg = true;
        }
    });

    if (rtg) {
        sendMessage.removeClass("btnSendMessageDisabled").addClass("btnSendMessageEnabled");
        $("div.sendMessage").removeClass("disabled");
    } else {
        sendMessage.removeClass("btnSendMessageEnabled").addClass("btnSendMessageDisabled");
        $("div.sendMessage").addClass("disabled");
    }
}

function deleteMemberMessage(elem) {
    $elem = $(elem);
    var messageType = $elem.attr("fxn");
    var msgId;
    if (messageType == "messageList") {
        msgId = $elem.parent().siblings("#MessageId").val();
    }

    if (messageType == "messageRead") {
        msgId = $elem.siblings("#MessageId").val();
    }

    var msg = "Are you sure you want to delete this message?\nIt cannot be undone.";
    if (confirm(msg)) {
        var url = "/Message/Delete/" + msgId;
        $.post(url,
            null,
            function (json) {
                if (json = "success") {
                    //                    var msgType = $("messageRow div.msgId_" + msgId).parent().attr("class");
                    //                    var msgCount = $("messageRow div.msgId_" + msgId).siblings("div.messageRow") - 1;
                    //                    switch (msgType) {
                    //                        case "newMessages":
                    //                            $("div.msgId_" + msgId).parent().children("div.messageListSubHeader").html("<strong>" + msgCount + "new messages </strong>");
                    //                            break;
                    //                        case "readMessages":
                    //                            $("div.msgId_" + msgId).parent().children("div.messageListSubHeader").html(msgCount + "read messages");
                    //                            break;
                    //                        case "sentMessages":
                    //                            $("div.msgId_" + msgId).parent().children("div.messageListSubHeader").html(msgCount + "sent messages");
                    //                            break;
                    //                    }
                    $("div.msgId_" + msgId).remove();

                    if ($("input[type=hidden].readMessageId").length > 0 && $("input[type=hidden].readMessageId").val() == msgId) {
                        // get the first message in the list to display
                        var firstMsg = $("div.messageRow:first");
                        var mId = firstMsg.attr("class").split("_");
                        var newMsgId = mId[mId.length - 1];
                        document.location.href = "/Message/Read/" + newMsgId;
                    }

                } else {
                    // jquery dialog call or
                    alert(json.errorMessage);
                }
            }, 'json');
    }
}

function sendMessageReply() {
    var reply = $('#MessageReply').tinymce().getContent();
    if (reply.length == 0) {
        $("div.messageReplyError").fadeIn(500);
        return false;
    }

    var url = "/Message/Reply/";
    var messageId = $("input[type=hidden].readMessageId").val();
    var toMemberId = $("input[type=hidden][name=FromMemberId]").val();
    var data = "messageId=" + messageId + "&reply=" + reply + "&toMemberId=" + toMemberId;
    $.post(url,
        data,
        function (json) {
            if (json == "success") {
                //$("div.messageReplyEditor").slideUp(500);
                document.location.href = "/Message/Read/" + messageId;
            } else {
                // jquery dialog call or
                alert(json.errorMessage);
            }
        }, 'json');
}
