﻿var CallingCardPostId;
var IsPageInited;

function LinkHelperUrl_Click(eventElement) {
		eventElement.target.select();
    }
    
function EventElementToPostId(eventElement)
{
	var targetId = eventElement.target.id;
	var i = targetId.indexOf("-");
	
    return targetId.slice(i + 1);
}

function PostLinkHelperButton_Click(eventElement)
{
    $get(LinkHelperUrlId).value = PostLinkBaseUrl + EventElementToPostId(eventElement);
}

function PostCallingCardHelperButton_Click(eventElement)
{
	CallingCardPostId = EventElementToPostId(eventElement);

    $get("CallingCardProgressMessage").className = "sysHidden";
    $get("CallingCardSuccessMessage").className = "sysHidden";
    $get("CallingCardFailureMessage").className = "sysHidden";
	
	$find("CallingCardBehavior").show();
}
    
function CreatePostLinkHelperPopup(id)
{
	$create(AjaxControlToolkit.PopupControlBehavior, {"PopupControlID":LinkHelperId,"Position":3,"id":"pce_p" + id}, null, null, $get("PostLinkHelperButton-" + id));
}

function CreatePopups()
{
    var i;
    
    for (i = 0; i < PostLinkHelperPostIds.length; i++)
    {
        CreatePostLinkHelperPopup(PostLinkHelperPostIds[i]);
    }
}

function AddPostLinkHelperClickHandler(id)
{
	$addHandler($get("PostLinkHelperButton-" + id), "click", PostLinkHelperButton_Click);
}

function AddClickHandlers()
{
    var i;
    
    for (i = 0; i < PostLinkHelperPostIds.length; i++)
    {
        AddPostLinkHelperClickHandler(PostLinkHelperPostIds[i]);
    }

    for (i = 0; i < PostCallingCardHelperPostIds.length; i++)
    {
    	$addHandler($get("PostCallingCardHelperButton-" + PostCallingCardHelperPostIds[i]), "click", PostCallingCardHelperButton_Click);
    }
}

function HandleCallingCardEmoticonClick(emoticonId)
{
    $get("CallingCardProgressMessage").className = "";
    
    PageMethods.LeaveCallingCard(CallingCardPostId, emoticonId, OnLeaveCallingCardSucceeded, OnLeaveCallingCardFailed);
}

function OnLeaveCallingCardSucceeded(result)
{
    $get("CallingCardProgressMessage").className = "sysHidden";
    $get("CallingCardSuccessMessage").className = "";
	
	$find("CallingCardBehavior").hide();
}

function OnLeaveCallingCardFailed(result)
{
    $get("CallingCardProgressMessage").className = "sysHidden";
    $get("CallingCardFailureMessage").className = "";
}

function pageLoad(sender, args)
{
	$addHandler($get(LinkHelperUrlId), "click", LinkHelperUrl_Click);
	AddClickHandlers();
}

function page_init(sender)
{
    CreatePopups();
	IsPageInited = true;
}

if (typeof(Sys) != "undefined")
{
Sys.Application.add_init(page_init);
}


if (typeof(Sys) !== "undefined") Sys.Application.notifyScriptLoaded();
