﻿function System_PageMethod(pagePath,fn, paramArray, successFn, errorFn)  
{  
    var paramList = '';
    var content ='';
    if (paramArray.length > 0)  
    {  
        for (var i=0; i<paramArray.length; i+=2)  
        {  
            if (paramList.length > 0)
                paramList += '&'; 
            content = paramArray[i+1];
            content = String(content).replace(/&/g,"¤%#¤$¤%#¤$");
            content = String(content).replace(/\+/g,"¤%#%¤");
            paramList += paramArray[i] + "=" + content;
        }  
    }  

    $.ajax({  
    type: "POST",  
    url: pagePath + "/" + fn,  
    data: paramList,  
    dataType: "xml", 
    processData: false,
    error: function(XMLHttpRequest, textStatus, errorThrown) { Transaction_AjaxError(XMLHttpRequest,textStatus, errorThrown); },
    success: function(xml) { SendSendOutFinish(xml,successFn); }
    });
}  
function SendSendOutFinish(xml,successFn)
{
    successFn($("string",xml).text());
}
function Transaction_AjaxError(res)
{
    alert("Ajax Error");
    StopLoad();
}






    function System_GetItem(itemId,contentTemplateKey,javaScriptMethodName)
    {

        var params =
        ["userItemId",itemId,
        "contentTemplateKey",contentTemplateKey,
        "IsTestMode",_IsTestMode];
        System_PageMethod(_rootPath + "WebServices/DoUpdate.asmx","GetItem",params, javaScriptMethodName, Transaction_AjaxError); 
    }
    
function System_SendMail(toMail,subject,fromName,body,javaScriptMethodName)
{
        var params =
        ["toMail",toMail,
        "subject",subject,
        "fromName",fromName,
        "body",body,
        "IsTestMode",_IsTestMode];
        System_PageMethod(_rootPath + "WebServices/DoUpdate.asmx","SendMail",params, javaScriptMethodName, Transaction_AjaxError); 
}



function System_UpdateChartItem(itemId,count,makeStockCheck,returnItemId,returnContentTemplateKey,javaScriptMethodName)
{
    var params =
        ["userItemId",itemId,
        "count",count,
        "makeStockCheck",makeStockCheck,
        "returnItemId",returnItemId,
        "returnContentTemplateKey",returnContentTemplateKey,
        "IsTestMode",_IsTestMode];
        System_PageMethod(_rootPath + "WebServices/Shop.asmx","UpdateChartItem",params, javaScriptMethodName, Transaction_AjaxError); 
}

function System_ActivateShopCost(activationCode,returnItemId,returnContentTemplateKey,javaScriptMethodName)
{             

        var params =
        ["activationCode",activationCode,
         "returnItemId",returnItemId,
         "returnContentTemplateKey",returnContentTemplateKey,
         "IsTestMode",_IsTestMode];
         System_PageMethod(_rootPath + "WebServices/Shop.asmx","ActivateShopCost",params, javaScriptMethodName, Transaction_AjaxError); 
 
}


function System_AddInput(inputId,inputKey,inputText1,inputText2,inputText3,inputText4,inputText5,inputNumber1,inputNumber2,returnItemId,returnContentTemplateKey,javaScriptMethodName)
{
        var params =
        ["InputId",inputId,
        "InputKey",inputKey,
        "InputText1",inputText1,
        "InputText2",inputText2,
        "InputText3",inputText3,
        "InputText4",inputText4,
        "InputText5",inputText5,
        "InputNumber1",inputNumber1,
        "InputNumber2",inputNumber2,
        "ReturnItemId",returnItemId,
        "ReturnContentTemplateKey",returnContentTemplateKey,
        "IsTestMode",_IsTestMode];
        System_PageMethod(_rootPath + "WebServices/Input.asmx","AddInput",params, javaScriptMethodName, Transaction_AjaxError); 

}