﻿// Proxy call to service
function serviceProxy(serviceUrl)
{
    var _I = this;
    this.serviceUrl = serviceUrl;
 
    // *** Call a wrapped object
    this.invoke = function(method, data, debug, callback, error) {
        // *** The service endpoint URL        
        var url = _I.serviceUrl + "?fnc=" + method;

        $.ajax({
            url: url,
            data: data,
            type: "GET",
            cache: false,
            processData: true,
            contentType: "application/json; charset=utf-8",
            timeout: 100000,
            dataType: "text",
            success: function(res) {

                if (!callback) return;

                if (debug == true) {
                    alert(res);
                }

                callback(res);
            },
            error: function(xhr) {

                if (!error) return;
                if (xhr.responseText) {
                    var err = xhr.responseText;
                    if (err)
                        error(err);
                    else
                        error({ Message: "Unknown server error." })
                }
                return;
            }
        });
    }
}

var Proxy = new serviceProxy("/Services/Service.ashx");
