﻿function loadTemplateFromPath(path, callback) {

    var onloadFunc = null;

    var onLoad = getOnLoadFor(path);
    var onUnLoad = getOnUnLoadFor(path);

    var onloadFunc = null;
    if (onLoad) {
        onloadFunc = Function(onLoad);
    }

    //    if ($("#content").attr("templateOnUnLoad")) {
    //        var strOnUnload = $("#content").attr("templateOnUnLoad");
    //        var onUnloadFunc = Function(strOnUnload);
    //        onUnloadFunc();
    //        $("#content").attr("templateOnUnLoad", null);
    //    }

    if (onUnLoad) {
        $("#content").attr("templateOnUnLoad", onUnLoad);
    }


    $("#content").hide();
    $.address.value(path);
    byClick = false;
    globServices["TemplateService"].GetTemplateFromTitlePath(path,
        function(result) {
            loadTemplateFromPathCallback(result);
            if (onloadFunc) {
                onloadFunc();
            }
            if (callback) {
                callback();
            }
        },
        loadTemplateFromPathError);

}

function loadTemplateFromPathCallback(result) {
    $("#content").html(result);
    spvDraw($("#solutionsPhotos"));
    $("#content").fadeIn("slow", function() {
        $("#tdMiddle2").toggleClass("");
    });
}

function loadTemplateFromPathError(result) {
    alert("Error Loading Template From Path.");
}

function goTo(path) {
    clearMenuSelection();
    setMenuSelection(path);
    loadTemplateFromPath(path);
    loadSideMenuFromPath(path);
}

function getOnLoadFor(path) {

    var onLoad = null;
    var arrMenuItem = $("td[path=" + path + "]");
    if ((arrMenuItem) && (arrMenuItem.length > 0)) {
        var str = arrMenuItem.attr("templateOnLoad");
        if ((str) && (str != "")) {
            onLoad = str;
        }
    }

    return onLoad;

}

function getOnUnLoadFor(path) {

    var onUnLoad = null;
    var arrMenuItem = $("td[path=" + path + "]");
    if ((arrMenuItem) && (arrMenuItem.length > 0)) {
        var str = arrMenuItem.attr("templateOnUnLoad");
        if ((str) && (str != "")) {
            onUnLoad = str;
        }
    }

    return onUnLoad;

}
