﻿function addFriend_loadControl(id) {
    $.ajax({
        type: "POST",
        contentType: "application/json; charset=utf-8",
        url: "ok365_People.asmx/LoadAddFriendDialog",
        data: "{'friendID':'" + id + "'}",
        dataType: "json",
        success: function(txt, textStatus) {
            $("#addFriend").html(txt);
        },
        error: function(request, status, err) {
            alert("error:  " + request.Message);
        }
    });
}

function addFriend_sendRequest(sender) {
    sender.disabled = true;
    
    var FriendRequest = { };
    FriendRequest.FriendID = $("#friendID").val();
    var msg = $("#message").val();
    
    if (msg != "Write a personalized message here") {
        FriendRequest.Message = msg;
    }
    else {
        FriendRequest.Message = "";
    }
    
    var DTO = { 'fRequest' : FriendRequest };
    
    $.ajax({
        type: "POST",
        contentType: "application/json; charset=utf-8",
        url: "ok365_People.asmx/RequestFriend",
        data: JSON.stringify(DTO),
        dataType: "json",
        success: function(result, textStatus) {
            loadFriendStatus(result.id);
            $("#friendSuggestion" + result.id + " > .info > .utility").html("");
            $(".u" + result.id + " > .add").html("");
            $("#psAddFriend_" + result.id).html("");
            addFriend_close();
        },
        error: function(request, status, err) {
            alert("error:  " + request.Message);
            sender.disabled = false;
        }
    });
}

function addFriend_acceptRequest(id) {
    $.ajax({
        type: "POST",
        contentType: "application/json; charset=utf-8",
        url: "ok365_People.asmx/AcceptRequest",
        data: "{'friendID':'" + id + "'}",
        dataType: "json",
        success: function(result, textStatus) {
            if (result.ok) {
                $("#friendStatus").html(result.friendshipStatusHtml);
                $("#removeFriend").html(result.friendshipRemoverHtml);
                $("#subscriptionStatus").html(result.subscriptionStatusHtml)
            }
        },
        error: function(request, status, err) {
            alert("error:  " + request.Message);
        }
    });
}

function loadFriendStatus(id) {
    $.ajax({
        type: "POST",
        contentType: "application/json; charset=utf-8",
        url: "ok365_People.asmx/LoadFriendshipStatus",
        data: "{'friendID':'" + id + "'}",
        dataType: "json",
        success: function(txt, textStatus) {
            $("#friendStatus").html(txt);
        },
        error: function(request, status, err) {
            alert("error:  " + request.Message);
        }
    });
}

function removeFriend(userid, friendid) {
    if (!confirm("Are you sure?")) {
        return;
    }
    
    $.ajax({
        type: "POST",
        contentType: "application/json; charset=utf-8",
        url: "ok365_People.asmx/RemoveFriend",
        data: "{'userID':'" + userid + "','friendID':'" + friendid + "'}",
        dataType: "json",
        success: function(result, textStatus) {
            if (result.ok) {
                $("#friendStatus").html(result.friendshipStatusHtml);
                $("#removeFriend").html(result.friendshipRemoverHtml);
                $("#subscriptionStatus").html(result.subscriptionStatusHtml)
            }
        },
        error: function(request, status, err) {
            alert("error:  " + request.Message);
        }
    });
}

function declineFriend(userid, friendid) {
    if (!confirm("Are you sure?")) {
        return;
    }
    
    $.ajax({
        type: "POST",
        contentType: "application/json; charset=utf-8",
        url: "ok365_People.asmx/DeclineFriend",
        data: "{'userID':'" + userid + "','friendID':'" + friendid + "'}",
        dataType: "json",
        success: function(result, textStatus) {
            if (result.ok) {
                $("#friendStatus").html(result.friendshipStatusHtml);
                $("#removeFriend").html(result.friendshipRemoverHtml);
                $("#subscriptionStatus").html(result.subscriptionStatusHtml)
            }
        },
        error: function(request, status, err) {
            alert("error:  " + request.Message);
        }
    });
}