﻿var threadReplyCount = 0;
var unreadCount = 0;
var readCount = 0;

var marked = false;

function asyncMark(threadId, mark)
{
    
    jQuery.get('/Member/Network/Messaging/ajax/markThread.aspx?threadid=' + threadId + '&mark=' + mark, 
        function() {}
    );
}

function setDefaultMarkFunctions()
{

    (function($){$(function() {
    
        $("a#markasunread").attr("style", "display: none");
        $("a#markasread").attr("style", "display: none");
        $("a#markdeleted").attr("style", "display: none");
        
        $("img#imgMarkAsUnreadDisabled").attr("style", "display: block");
        $("img#imgMarkAsReadDisabled").attr("style", "display: block");
        $("img#imgDeleteDisabled").attr("style", "display: block");
        
        //$("span[@id='markasunreadtext']").attr("style", "display: block");
        //$("span[@id='markasreadtext']").attr("style", "display: block");
        //$("span[@id='markdeletedtext']").attr("style", "display: block");
    
    });})(jQuery);
}

function setMarkFunctions()
{

    (function($){$(function() {
    
        if (readCount > 0) {
            $("a#markasunread").toggle();
            $("img#imgMarkAsUnreadDisabled").toggle();
            //$("span[@id='markasunreadtext']").toggle();
        }
        if (unreadCount > 0) {
            $("a#markasread").toggle();
            $("img#imgMarkAsReadDisabled").toggle();
            //$("span[@id='markasreadtext']").toggle();
        }
        if ((readCount > 0) || (unreadCount > 0)) {
            $("a#markdeleted").toggle();
            $("img#imgDeleteDisabled").toggle();
            //$("span[@id='markdeletedtext']").toggle();
        }
    
    });})(jQuery);
}

function itemChecked(item)
{
    
    var threadid = item.id.substring(7);
    var read = document.getElementById("read_" + threadid).value;
    
    setDefaultMarkFunctions();
    
    if (item.checked) {
        
        if (read == 'true') {
            readCount += 1;
        } else {
            unreadCount += 1;
        }
    }
    else {
        if (read == 'true') {
            readCount -= 1;
        } else {
            unreadCount -= 1;
        }
    }
    
   setMarkFunctions() ;
}

function checkItems(criteria)
{
    
    unreadCount = 0;
    readCount = 0;
    setDefaultMarkFunctions();
      
    jQuery("input[type='checkbox']").each(function(i){
    
        var threadid = this.id.substring(7);
        var read = document.getElementById("read_" + threadid).value;
        
        switch (criteria)
        {
            case 'none':    
                this.checked = false; 
                break;
            case 'all':     
                this.checked = true; 
                break;
            case 'read':
                if (read == 'true') {
                  this.checked = true;
                } else {
                  this.checked = false;
                };
                break;
            case 'unread':
                if (read == 'false') {
                  this.checked = true;
                } else {
                  this.checked = false;
                };
                break;
            default:        
                this.checked = false; 
                break;
        }
        
        if (this.checked) {
            if (read == 'true') {
                readCount += 1;
            } else {
                unreadCount +=1;
            }
        };
    }); 
    
    setMarkFunctions();
}

function uncheckItems()
{

    jQuery("input[type='checkbox']").each(function(i){
        this.checked = false;
    });
}

function markItems(mark)
{
    
    (function($){$(function() {
        
        $("input[type='checkbox']").each(function(i){
            
            var threadid = this.id.substring(7);
                        
            if (this.checked)
            {
                switch (mark)
                {
                    
                    case "markasunread" :
                        jQuery.get(
                            '/Member/Network/Messaging/ajax/markThread.aspx?threadid=' + 
                                threadid + '&mark=' + mark, 
                        function() {
                        
                            
                        }
                        );
                        subjectLinkId = $("a[threadid=" + threadid + "]").attr("id");
                        $("a[threadid=" + threadid + "]").attr("style", "font-weight: bold;")
                        document.getElementById("read_" + threadid).value = "false"; 
                        break;
                    
                    case "markasread" :
                        jQuery.get(
                            '/Member/Network/Messaging/ajax/markThread.aspx?threadid=' + 
                                threadid + '&mark=' + mark, 
                        function() {
                        
                        }
                        );
                        subjectLinkId = $("a[threadid=" + threadid + "]").attr("id");
                        $("a[threadid=" + threadid + "]").attr("style", "font-weight: normal;")
                        document.getElementById("read_" + threadid).value = "true"; 
                        break;
                        
                    case "markdeleted" :
                        jQuery.get(
                            '/Member/Network/Messaging/ajax/markThread.aspx?threadid=' + 
                                threadid + '&mark=' + mark, 
                        function() {
                            
                        }
                        );
                        $("div[threadid=" + threadid + "]").toggle();
                        break;
                    
                    default:
                        break;
                };
                
                this.checked = false;
            };
        });
        
        unreadCount = 0;
        readCount = 0;
        document.getElementById("selectitems").selectedIndex = 0;
        setDefaultMarkFunctions();
        
    });})(jQuery);
}

// : thread page: toggle mark read / unread.
function markThreadRead()
{
    
    (function($){$(function() {
    
        var threadId    = $("#txtThreadId").val();
        var mark        = ($("#lnkMarkThread").html() == "Mark as Unread") ? "markasunread" : "markasread";
        
        jQuery.get(
            '/Member/Network/Messaging/ajax/markThread.aspx?threadid=' + 
                threadId + 
                    '&mark=' + mark, 
            function() {
                if (mark == "markasunread") { 
                    $("#lnkMarkThread").html("Mark as Read"); 
                } else { 
                    $("#lnkMarkThread").html("Mark as Unread"); 
                }       
            }
        );
    
    });})(jQuery);
};



// : thread page: post the thread reply.
function postThreadReply()
{
    
    (function($){$(function() {
    
        // reply?
        if ($("#txtReply").val().length == 0) { 
            $("#txtReply").focus();
            return; 
        }
        
        // : create reply container.
        threadReplyCount+=1;
        $("#pnlReplies").append("<div id='pnlThreadReply" + threadReplyCount + "'></div>");
        // : save and display.
        var reply = encodeURIComponent($("#txtReply").val()); $("#txtReply").val("");
        ajaxpage('/Member/Network/Messaging/reply.aspx?id=' + $("#txtThreadId").val() + '&reply=' + reply, 'pnlThreadReply' + threadReplyCount); 
        
    });})(jQuery);
}

// : thread page: show delete modal (pass threadid).            
function showDeleteThreadModal()
{
    
    jQuery.facebox(function() {
    
        jQuery.get("/Member/Network/Messaging/modal/deleteThread.aspx?threadid=" + jQuery("#txtThreadId").val(), 
            function(data) {jQuery.facebox('<div>' + data + '</div>')}
        );
    });
}

// : thread page: delete call (from modal).
function deleteThreadCallFromModal()
{
    
    jQuery.get(
        '/Member/Network/Messaging/ajax/markThread.aspx?threadid=' + + $("#txtThreadId").val() + '&mark=markdeleted', 
        function() { 
            $.facebox.close(); 
            
            var context = ($("#pnlSentMessagesReturn").attr("id") == "pnlSentMessagesReturn") ? "sentmessages" : "inbox";
            ajaxpage("/Member/Network/Messaging/mailList.aspx?context=" + context, "ctl00_main_pnlMailBoxContent");
        }
    );
}