﻿function RetrieveXmlViaId() 
{
    //SetRetrievingImage(1);
    var docName = document.URL.toLowerCase();
    if (docName.indexOf('productdetails') != -1)
    {
        ClearAngel.WebService.RetrieveOffersViaId(ebp, SucceededCallbackWithContext, FailedCallback, "XmlDocument")
    }
}

function RetrieveXml() 
{
    //SetRetrievingImage(1);
    if (sqk != '')
    {
        if (ebp == '' && ft == '')
        {
            var RsltElem = document.getElementById("ResultId");
            RsltElem.innerHTML = "Please enter some text to search for.";
        }
        else
        {
            ClearAngel.WebService.QueryOffers(sqk, ebp, eb, ft, SucceededCallbackWithContext, FailedCallback, "XmlDocument");
        }
    }
}

function RetrieveXmlFreeText() 
{
    //SetRetrievingImage(1);
    var RsltElem = document.getElementById("ResultId");
    var FtElem = document.getElementById("txtWsFreeText");
    if (FtElem.value != "")
    {
        RsltElem.innerHTML = "Retrieving offers for..." + FtElem.value;
        ft = FtElem.value;
        //ClearAngel.WebService.RetrieveOffersViaText(document.getElementById('txtWsFreeText').value, true, eb, SucceededCallbackWithContext, FailedCallback, "XmlDocument")
        RetrieveXml();
    }
}

function SetRetrievingImage(displayOn)
{
    var retrievingElem = document.getElementById("retrievingImage");
    if (displayOn == 1)
        retrievingElem.src = "Images/Misc/Retrieving.gif";
    else
        retrievingElem.src = "Images/Misc/BlankImage.jpg";
}

function SucceededCallbackWithContext(result, userContext, methodName)
{
    var output;
    var readResult;
    var loopData = "";
    //SetRetrievingImage(0);
    if (userContext == "XmlDocument")
    {
        var RsltElem = document.getElementById("ResultId");

        x = result.documentElement.getElementsByTagName("Product");
        loopData = "<h3>Related dealer offers:</h3>";
        if (x.length > 0)
        {
            loopData += "<table border='1' cellpadding='7' style='width:100%;border-color:Gray;border-width:1pt;border-style:Solid;border-collapse:collapse;'>";
            for (i=0;i<x.length;i++)
            { 
                loopData += "<tr>"
                loopData += "<td>" + x[i].attributes.getNamedItem("DealerName").nodeValue.replace("'", "`") + "</td>";
                loopData += "<td><a href='" + x[i].attributes.getNamedItem("Link").nodeValue.replace("'", "`") + "' target='_blank'>";
                loopData += x[i].attributes.getNamedItem("Title").nodeValue.replace("'", "`") + "</a></td>";
                loopData += "<td align='right'>" + x[i].attributes.getNamedItem("Price").nodeValue + "</a></td>";
                loopData += "</tr>"
            }        
            loopData += "</table>";
            RsltElem.innerHTML = loopData;
        }
        else
            RsltElem.innerHTML = loopData + "Unfortunately, we have not been able to find offers that match your criteria.";
    }

}

function SucceededCallback(result, eventArgs)
{
    var RsltElem = document.getElementById("ResultId");
    RsltElem.innerHTML = result;
}

function FailedCallback(error)
{
    // Display the error.    
    /*
    var RsltElem = document.getElementById("ResultId");
    RsltElem.innerHTML = "Service Error: " + error.get_message();
    */
}

if (typeof(Sys) !== "undefined") Sys.Application.notifyScriptLoaded();
