﻿//=============================================================================
var postCommentFrmValidator = null;
var gTrekID;
//=============================================================================
function commentPopupInit()
{
    postCommentFrmValidator = new Validator("postCommentForm");
    
    postCommentFrmValidator.addValidation("txtBody", "required");
    postCommentFrmValidator.addEvent("txtBody", "onkeypress");    

    $("txtBody").setAttribute('toolTipPlaceHolder', 'toolTipPopup');
    $("txtBody").focus();
}
//=============================================================================
function postTrekComment()
{
    if (!postCommentFrmValidator.formobj.onsubmit())
        return;
        
     var request = new Ajax.Request(Ajax.RequestMethod.Post, "/api/commenthandler.ashx", handlePostCommentResults, true);
     request.AddParam("TrekID", gTrekID);
     request.AddParam("Body",    $("txtBody").value);
     var requests   = new Ajax.PageRequests(request);
     var connection = new Ajax.Connection(requests);
     connection.Open();
}
//=============================================================================     
function handlePostCommentResults(src)
{
    if (src.ReadyState == 4)
    {
        if (src.Status == 200)
        { 
            if (enforceLoginByResponse(src.ResponseText)) 
                return;
              
            if(src.ResponseText == "<Result>Ok</Result>")
            {
                handleCommentResponse(1);
                return;
            }
            
            var xmlXslWriter = new XMLXSLWriter();
            xmlXslWriter.xmlStr = src.ResponseText;
            xmlXslWriter.loadXMLString();
            handleCommentErrorResponse(getErrorDescription(xmlXslWriter));
        }
    }
}
//=============================================================================
function getErrorDescription(xmlXslWriter)
{
    var rv = "";
    try      
    { 
         rv = xmlXslWriter.getTagValue("Description", 0, 0); 
    }
    catch(e){} 
    return rv;
}   
//=============================================================================
function buildCommentPopupHTML(trekID)
{
    gTrekID = trekID;
    
    return  '<form id="postCommentForm" method="post" class="dialog">' +
                '<table border="0" cellspacing="0" cellpadding="4" class="dialog">' +
                    '<tr>' +
                        '<td class="dialog_textarea"><textarea id="txtBody" class="dialog"></textarea></td>' +
                    '</tr>' +
                '</table>' +
                '<br><br>' +
                '<div class="buttons">' +
                    '<button id="btnYes" class="button_narrow" onmouseover="this.className=\'button_narrow_over\'" onmouseout="this.className=\'button_narrow\'" onclick="javascript:postTrekComment();">Send</button>&nbsp;' +
                    '<button id="btnNo" class="button_narrow" onmouseover="this.className=\'button_narrow_over\'" onmouseout="this.className=\'button_narrow\'" onclick="hidePopWin(true, \'Cancel\');">Cancel</button>' +
                '</div>';                
            '</form>';
}
