﻿function _labelHandlerCtor() {
    var self = this;
    var serviceUrl = "/Admin/Moduler/OLA/Services/Resources.asmx";
    var classKey = "";

    this.setBaseUrl = function (newBaseUrl) {
        alert("NotImplemented: labelHandler.setBaseUrl");
    };

    var resourceUrl = "";
    this.getResourceUrl = function () {
        return resourceUrl;
    }

    this.initialize = function (classKey) {
        if (self[classKey] != undefined)
            return;

        self.classKey = classKey;
        self[classKey] = new Object();

        resourceUrl = serviceUrl + "/GetStrings?classKey=" + encodeURIComponent("\"" + classKey + "\"");

        $.ajax({
            async: false,
            type: "GET",
            contentType: "application/json",
            url: resourceUrl,
            success: parseResult,
            error: showError
        });
    };

    function parseResult(data) {
        var selfKey = self.classKey.replace(/\./g, "_");
        $.each(data.d, function (idx, el) {
            self[selfKey][idx] = el;
        });
    }

    function showError(data, textStatus, oXMLHttpRequest) {
        alert("The globalization script failed with status='" + textStatus + "' for classKey='" + self.classKey + "'");
    }
};

var LabelHandler = new _labelHandlerCtor();
