﻿/*----------------------History-------------------*/
//Version 1.0 - Original implementation
//Version 1.1 - Display the PDF for dinein menu category
/*---------------------End Here-------------------*/
var LI_ITEM = "<li>";
var UL_ITEM = "<ul>";
var TR_ITEM = "<tr>";
var TD_ITEM = "<td>";
var TABLE_ITEM = "<table>";
var DefaultRestaurantId = "R.001.025.0000";
var restaurantId;
var cachedJSON = new Array();
var inProgressitem = "0";
/*StartChange: Version 1.1*/
var menuTypePDFJSON;
/*EndHere:Version 1.1*/
$(document).ready(function() {

    inProgressitem = "1";
    restaurantId = DefaultRestaurantId;
    if ($(".HDN_J_hdnRestaurantIdHolder") != null) {
        if ($(".HDN_J_hdnRestaurantIdHolder").length > 0) {
            var hdnIdHolder = $(".HDN_J_hdnRestaurantIdHolder")[0];
            if (hdnIdHolder.value != null) {
                if (hdnIdHolder.value != "") {
                    restaurantId = hdnIdHolder.value.toString();
                    restaurantId = "R." + restaurantId;
                }
            }
        }
    }
    $.ajax({
        type: "GET",
        url: "/EN/MenuLibrary/" + restaurantId + "/Navigator.json",
        dataType: "json",
        success: parseNavigation,
        error: notFoundNavigation
    });
});
$(document).ajaxStart(function() {
    if (inProgressitem == "2") {
        $("#loading")[0].innerHTML = "<div class='menuDivProgressHeight'><img src=\"/_layouts/images/maggianos/loading.gif\" /></div>";
        $(".JProgressIndicator").show();
        $(".JOtherThanProgressIndicator").hide();
    }
    else if (inProgressitem == "1") {
        //$("#loadingNav")[0].innerHTML = "<img src=\"/_layouts/images/maggianos/loading.gif\" />";
        $(".JProgressIndicatorNav").show();
        $(".JOtherThanProgressIndicatorNav").hide();
    }
}).ajaxStop(function() {
    if (inProgressitem == "2") {
        $("#loading")[0].innerHTML = "";
        $(".JOtherThanProgressIndicator").show();
        $(".JProgressIndicator").hide();
    }
    else if (inProgressitem == "1") {
        $("#loadingNav")[0].innerHTML = "";
        $(".JOtherThanProgressIndicatorNav").show();
        $(".JProgressIndicatorNav").hide();
    }
}
         );

function getCookie(c_name) {
    if (document.cookie.length > 0) {
        c_start = document.cookie.indexOf(c_name + "=");
        if (c_start != -1) {
            c_start = c_start + c_name.length + 1;
            c_end = document.cookie.indexOf(";", c_start);
            if (c_end == -1) c_end = document.cookie.length;
            return unescape(document.cookie.substring(c_start, c_end));
        }
    }
    return DefaultRestaurantId;
}

function notFoundNavigation(obj) {
    $(".leftNavWidth").attr("style", "height: 200px");
    $(".leftNavContent").attr("style", "height: 200px; background-image:url(/_layouts/images/Maggianos/leftNavBg.jpg)");
    $(".JProgressIndicatorNav").attr("style", "height: 200px");
    $(".JOtherThanProgressIndicatorNav").hide();
    var selectedElements = $("td.padding04");
    selectedElements[0].innerHTML = "Sorry! Menu information is currently unavailable";
    $("#alertPopupClick").click(); return;
}
function parseNavigation(NAV_JSON) {
    if (NAV_JSON != null) {
        if (NAV_JSON.MenuFeed != null) {
            if (NAV_JSON.MenuFeed.Restaurant[0] != null) {
                var Restaurant = NAV_JSON.MenuFeed.Restaurant[0];
                var firstMenuID;
                if (Restaurant.Menu != null) {
                    var Menu;
                    var table = $(TABLE_ITEM);
                    table.attr("id", "DynamicMenuTable");
                    table.attr("width", "100%");
                    table.attr("border", "0");
                    table.attr("cellspacing", "0");
                    table.attr("cellpadding", "0");
                    var rootTD = $("#MainMenuCategory");
                    rootTD.append(table);
                    /*StartChange: Version 1.1*/
                    FetchMenuTypePDF();
                    /*End Here: Version 1.1*/
                    for (i = 0; i < Restaurant.Menu.length; i++) {
                        RenderMenuNavigation(Restaurant.Menu[i]);
                        if (i == 0) {
                            firstMenuID = ReplaceDOT(Restaurant.Menu[i].ID.toString())
                        }
                    }
                    RenderFamilyStyle();
                    RenderPDFMenus();
                }
            }
        }
    }
}
/*StartChange: Version 1.1*/
function FetchMenuTypePDF()
{
    if ($(".HDN_J_hdnMenuPDFHolder") != null) {
        if ($(".HDN_J_hdnMenuPDFHolder").length > 0) {
            var hdnMenuPDFHolder = $(".HDN_J_hdnMenuPDFHolder")[0];
            if (hdnMenuPDFHolder.value != null) {
                if (hdnMenuPDFHolder.value != "") {
                    //var jason = "{\"MenuTypePDF\":{\"PDF\":[{\"ID\":\"M693058\",\"LINK\":\"http://webdev1:6002/EN/MenuLibrary/R.001.025.0047/Lunch%20(Dine-In).pdf\"}]}}";
                    menuTypePDFJSON = eval('(' + hdnMenuPDFHolder.value + ')');
                }
            }
        }
    }
}
/*End Here: Version 1.1*/
function showHideMenu(menu_id) {
    $("#MenuLandingSlideShowTR").hide();
    $(".mg-menuGeneral").removeClass("leftNavContentHtSelected");
    $(".mg-menuGeneral").addClass("leftNavContentHt");

    $("#Menu_" + menu_id).removeClass("leftNavContentHt");
    $("#Menu_" + menu_id).addClass("leftNavContentHtSelected");
    var isVisible = false;
    if ($("#Cat_" + menu_id).is(':hidden')) {
        isVisible = true;
    }
    else {
        isVisible = false;
    }

    $(".mg-catGeneral").hide();
    if (isVisible)
        $("#Cat_" + menu_id).show();

    ShowMenuDetails(menu_id);
    $(".TD_JCLASS_CAT_NAV").removeClass("leftSubNavLinkSelHoverSelected");
    $(".A_JCLASS_CAT_NAV").removeClass("subNavLinkTxtSelected");
    $(".A_JCLASS_CAT_NAV").addClass("subNavLinkTxt");
    $(".TD_firstCategoryInNav").removeClass("leftSubNavLinkMenu");
    $(".TD_firstCategoryInNav").addClass("leftSubNavLinkSelHoverSelected");

    $(".A_firstCategoryInNav").removeClass("subNavLinkTxt");
    $(".A_firstCategoryInNav").addClass("subNavLinkTxtSelected");

    $(".J_NAV_A_Class").attr("style", "color:#000000");
    $("#A_Nav_Menu_" + menu_id).attr("style", "color:#5f2729");
}

function RenderFamilyStyle() {

    var TR_Menu = $(TR_ITEM);
    var TD_Menu = $(TD_ITEM);
    TD_Menu.attr("id", "Menu_00000");
    TD_Menu.addClass("leftNavContentHt mg-menuGeneral");

    TD_Menu.html("<a id=\"A_Nav_Menu_00000\"  class=\"J_NAV_A_Class\" href=\"/EN/LocationSpecificDocuments/FamilyStyleMenu/" + restaurantId + ".pdf\" target=\"blank\">Family Style Menu (Dine-In)</a>");
    TR_Menu.append(TD_Menu);
    var menuTable = $("#DynamicMenuTable");
    menuTable.append(TR_Menu);

    $("#Menu_00000").mouseover(function() {
        $(this).removeClass("leftNavContentHt");
        $(this).addClass("leftNavContentHtOver");
    });

    $("#Menu_00000").mouseout(function() {
        $(this).removeClass("leftNavContentHtOver");
        $(this).addClass("leftNavContentHt");
    });

}

function RenderPDFMenus() {
    var pdfFiles;
    var pdfFilesColl;
    var pdfFileName;
    var pdfFileLink;
    if ($(".HDN_J_hdnRestaurantFolderNameHolder") != null) {
        if ($(".HDN_J_hdnRestaurantFolderNameHolder").length > 0) {
            var hdnIdFolderHolder = $(".HDN_J_hdnRestaurantFolderNameHolder")[0];
            if (hdnIdFolderHolder.value != null) {
                if (hdnIdFolderHolder.value != "") {
                    pdfFiles = hdnIdFolderHolder.value.toString();
                    if (pdfFiles != null) {
                        pdfFilesColl = pdfFiles.split(',');
                    }
                }
            }
        }
    }
    if (pdfFilesColl != null) {
        var idCounter = 1;
        for (index = 0; index < pdfFilesColl.length; index++) {
            var TR_Menu = $(TR_ITEM);
            var TD_Menu = $(TD_ITEM);
            var id = "Menu_0000" + idCounter;
            
            TD_Menu.attr("id", id);
            TD_Menu.addClass("leftNavContentHt mg-menuGeneral");
            
            pdfFileName = pdfFilesColl[index].split('^')[0];
            pdfFileLink = pdfFilesColl[index].split('^')[1];
            TD_Menu.html("<a id=\"A_Nav_\""+ id +"  class=\"J_NAV_A_Class\" href=\"" + pdfFileLink + "\" target=\"blank\">" + pdfFileName + "</a>");
            TR_Menu.append(TD_Menu);
            var menuTable = $("#DynamicMenuTable");
            menuTable.append(TR_Menu);

            $("#" + id).mouseover(function() {
                $(this).removeClass("leftNavContentHt");
                $(this).addClass("leftNavContentHtOver");
            });

            $("#" + id).mouseout(function() {
                $(this).removeClass("leftNavContentHtOver");
                $(this).addClass("leftNavContentHt");
            });
            idCounter++;
        }
    }
}

function RenderMenuNavigation(MENU_JSON) {

    if (MENU_JSON == null) return;

    var Menu_ID = ReplaceDOT(MENU_JSON.ID.toString());
    var Menu_Name = MENU_JSON.Name.toString();

    var TR_Menu = $(TR_ITEM);
    var TD_Menu = $(TD_ITEM);
    TD_Menu.attr("id", "Menu_" + Menu_ID);
    TD_Menu.addClass("leftNavContentHt mg-menuGeneral");

    /*StartChange: Version 1.1*/
    var pdfLink;
    if (menuTypePDFJSON != null) {
        for (index = 0; index < menuTypePDFJSON.MenuTypePDF.PDF.length; index++)
        {
            if (menuTypePDFJSON.MenuTypePDF.PDF[index].ID == Menu_ID) {
                pdfLink = menuTypePDFJSON.MenuTypePDF.PDF[index].LINK;
            }
        }
    }
    if (pdfLink != null) {
        TD_Menu.html("<a id=\"A_Nav_Menu_" + Menu_ID + "\" class=\"J_NAV_A_Class\" href=\"" + pdfLink + "\" target=\"_blank\">" + Menu_Name + "</a>");
        TR_Menu.append(TD_Menu);
        var menuTable = $("#DynamicMenuTable");
        menuTable.append(TR_Menu);
    }
    else {
        TD_Menu.html("<a id=\"A_Nav_Menu_" + Menu_ID + "\" class=\"J_NAV_A_Class\" onclick=\"showHideMenu('" + Menu_ID + "')\" href=\"javascript:void(0);\">" + Menu_Name + "</a>");
        TR_Menu.append(TD_Menu);

        var TR_Categories = $(TR_ITEM);
        TR_Categories.attr("id", "Cat_" + Menu_ID);
        TR_Categories.addClass("hide mg-catGeneral");

        var TD_Categories = $(TD_ITEM);
        TD_Categories.addClass("show");
        TD_Categories.attr("background", "/_layouts/images/maggianos/leftNavBg.jpg");



        var TABLE_InnerCategories = $(TABLE_ITEM);
        TABLE_InnerCategories.attr("width", "100%");
        TABLE_InnerCategories.attr("border", "0");
        TABLE_InnerCategories.attr("cellspacing", "0");
        TABLE_InnerCategories.attr("cellpadding", "0");


        var catCount = MENU_JSON.Category.length;
        if (catCount > 0) {
            for (j = 0; j < catCount; j++) {

                var Category = MENU_JSON.Category[j];
                var catID = ReplaceDOT(Category.ID.toString());
                var catName = Category.Name.toString();

                var a = Menu_Name.toString().replace(/\'/, '');
                a = a.replace(/\"/, '');
                var b = catName.toString().replace(/\'/, '');
                b = b.replace(/\"/, '');
                var innerCATHTML = "<tr>";
                if (j == 0) {
                    innerCATHTML += "<td onmouseover=\"sublinkmouseover('TD_" + Menu_ID + "_" + catID + "')\" onmouseout=\"sublinkmouseout('TD_" + Menu_ID + "_" + catID + "')\" id=\"TD_" + Menu_ID + "_" + catID + "\" class=\"leftSubNavLinkMenu TD_JCLASS_CAT_NAV TD_firstCategoryInNav\" >";
                    innerCATHTML += "<a id=\"A_" + Menu_ID + "_" + catID + "\" href=\"#\" onclick=\"showCategory('" + Menu_ID + "_" + catID + "','" + a + "','" + b + "')\" class=\"subNavLinkTxt A_JCLASS_CAT_NAV A_firstCategoryInNav\">" + catName + "</a>";
                }
                else {
                    innerCATHTML += "<td onmouseover=\"sublinkmouseover('TD_" + Menu_ID + "_" + catID + "')\" onmouseout=\"sublinkmouseout('TD_" + Menu_ID + "_" + catID + "')\" id=\"TD_" + Menu_ID + "_" + catID + "\" class=\"leftSubNavLinkMenu TD_JCLASS_CAT_NAV\" >";
                    innerCATHTML += "<a id=\"A_" + Menu_ID + "_" + catID + "\" href=\"#\" onclick=\"showCategory('" + Menu_ID + "_" + catID + "','" + a + "','" + b + "')\" class=\"subNavLinkTxt A_JCLASS_CAT_NAV\">" + catName + "</a>";
                }
                innerCATHTML += "</td></tr>";
                TABLE_InnerCategories.append(innerCATHTML);
            }

        }
        TD_Categories.append(TABLE_InnerCategories);
        TR_Categories.append(TD_Categories);

        var menuTable = $("#DynamicMenuTable");
        menuTable.append(TR_Menu);
        menuTable.append(TR_Categories);
    }
    /*EndHere:Version 1.1*/
    $("#Menu_" + Menu_ID).mouseover(function() {
        $("#Menu_" + Menu_ID).removeClass("leftNavContentHt");
        $("#Menu_" + Menu_ID).addClass("leftNavContentHtOver");
    });

    $("#Menu_" + Menu_ID).mouseout(function() {
        $("#Menu_" + Menu_ID).removeClass("leftNavContentHtOver");
        $("#Menu_" + Menu_ID).addClass("leftNavContentHt");
    });
}

function sublinkmouseover(id) {
    $("#" + id).removeClass("leftSubNavLinkMenu");
    $("#" + id).addClass("leftSubNavLinkSelHoverMenu");
}
function sublinkmouseout(id) {
    $("#" + id).removeClass("leftSubNavLinkSelHoverMenu");
    $("#" + id).addClass("leftSubNavLinkMenu");
}

function ReplaceDOT(idValue) {
    idValue = idValue.replace(/\./g, "_");
    return idValue;
}
function AddDOT(idValue) {
    idValue = idValue.replace(/\_/g, ".");
    return idValue;
}

function showCategory(val, menuName, catName) {
    $(".pageheadertext").hide();
    $(".centerNavHolder04").hide();
    $(".centerNavHolderimage").hide();
    $(".centerNavHoldertext01").hide();
    $(".centerNavHoldertext02").hide();

    if ($(".CAT_" + val).length <= 0) {

        $("#MenuLandingSlideShowTR").attr("style", "display:block");
        $(".pageheadertext").show();
        $(".centerNavHolder04").show();
        $(".centerNavHolderimage").show();
        var selectedElements = $("td.padding04");
        selectedElements[0].innerHTML = "Sorry! Menu information not available for '" + catName + "' in '" + menuName + "'";
        $("#alertPopupClick").click(); return;

    }
    $(".CAT_" + val).show();

    $(".TD_JCLASS_CAT_NAV").removeClass("leftSubNavLinkSelHoverSelected");
    $(".A_JCLASS_CAT_NAV").removeClass("subNavLinkTxtSelected");

    $(".TD_JCLASS_CAT_NAV").addClass("leftSubNavLinkMenu");
    $(".A_JCLASS_CAT_NAV").addClass("subNavLinkTxt");

    $("#TD_" + val).removeClass("leftSubNavLinkMenu");
    $("#A_" + val).removeClass("subNavLinkTxt");

    $("#TD_" + val).addClass("leftSubNavLinkSelHoverSelected");
    $("#A_" + val).addClass("subNavLinkTxtSelected");

    try {

        GAnalyticsForMenu(menuName, catName)
    }
    catch (err) { }

}

function ShowMenuDetails(menu_id) {
    if (cachedJSON[menu_id] == undefined) {
        restaurantId = DefaultRestaurantId;
        if ($(".HDN_J_hdnRestaurantIdHolder") != null) {
            if ($(".HDN_J_hdnRestaurantIdHolder").length > 0) {
                var hdnIdHolder = $(".HDN_J_hdnRestaurantIdHolder")[0];
                if (hdnIdHolder.value != null) {
                    if (hdnIdHolder.value != "") {
                        restaurantId = hdnIdHolder.value.toString();
                        restaurantId = "R." + restaurantId;
                    }
                }
            }
        }
        var filename = "/EN/MenuLibrary/" + restaurantId + "/" + AddDOT(menu_id) + ".json";
        inProgressitem = "2";
        $.ajax({
            type: "GET",
            url: filename,
            dataType: "json",
            success: parseMenuDetails,
            error: noMenuDetailsAvailable
        });
    }
    else {
        parseMenuDetails(cachedJSON[menu_id]);
    }

}
function noMenuDetailsAvailable(obj) {
    var CategoryDetailsContainer = $("#CategoryDetailsContainer");
    CategoryDetailsContainer.html("");
    $("#MenuLandingSlideShowTR").attr("style", "display:block");
    $(".pageheadertext").show();
    $(".centerNavHolder04").show();
    $(".centerNavHolderimage").show();
    var selectedElements = $("td.padding04");
    selectedElements[0].innerHTML = "Sorry! This menu information is currently unavailable";
    $("#alertPopupClick").click();

}


function parseMenuDetails(MENU_DETAILS_JSON) {
    if (MENU_DETAILS_JSON != null) {
        {

            if (MENU_DETAILS_JSON.Menu != null) {
                var MENU = MENU_DETAILS_JSON.Menu;
                var Menu_ID = ReplaceDOT(MENU.ID.toString());
                var Menu_Name = MENU.Name.toString();
                if (Menu_ID != null) {
                    if (cachedJSON[Menu_ID] == undefined) {
                        cachedJSON[Menu_ID] = MENU_DETAILS_JSON; //caching the JSON
                    }
                }
                if (MENU.Category != null) {
                    var CATEGORY = MENU.Category;
                    var CategoryDetailsContainer = $("#CategoryDetailsContainer");
                    CategoryDetailsContainer.html("");
                    for (i = 0; i < CATEGORY.length; i++) {
                        var catName = CATEGORY[i].Name;
                        var catID = ReplaceDOT(CATEGORY[i].ID);
                        var catDescription = CATEGORY[i].Description;

                        var newCatID = "DETAILS_" + Menu_ID + "_" + catID;
                        var classNameForDisplay = "CAT_" + Menu_ID + "_" + catID;
                        var TABLE_CategoryHeader = $(TABLE_ITEM);
                        TABLE_CategoryHeader.attr("width", "100%");
                        TABLE_CategoryHeader.attr("border", "0");
                        TABLE_CategoryHeader.attr("cellspacing", "0");
                        TABLE_CategoryHeader.attr("cellpadding", "0");
                        TABLE_CategoryHeader.addClass("pageheadertext");
                        TABLE_CategoryHeader.addClass(classNameForDisplay);
                        if (i == 0) TABLE_CategoryHeader.addClass("firstCategoryInMenu");
                        TABLE_CategoryHeader.html("<tr><td>" + catName + "</td></tr>"); //to add

                        var TABLE_CategoryHeaderSeperator = $(TABLE_ITEM);
                        TABLE_CategoryHeaderSeperator.attr("width", "100%");
                        TABLE_CategoryHeaderSeperator.attr("border", "0");
                        TABLE_CategoryHeaderSeperator.attr("cellspacing", "0");
                        TABLE_CategoryHeaderSeperator.attr("cellpadding", "0");
                        TABLE_CategoryHeaderSeperator.addClass("centerNavHolder04");
                        TABLE_CategoryHeaderSeperator.addClass(classNameForDisplay);
                        if (i == 0) TABLE_CategoryHeaderSeperator.addClass("firstCategoryInMenu");
                        TABLE_CategoryHeaderSeperator.html("<tr><td align=\"left\" valign=\"top\">&nbsp;</td></tr>");
                        //to add

                        var TABLE_CategoryImage = $(TABLE_ITEM);
                        TABLE_CategoryImage.attr("width", "100%");
                        TABLE_CategoryImage.attr("border", "0");
                        TABLE_CategoryImage.attr("cellspacing", "0");
                        TABLE_CategoryImage.attr("cellpadding", "0");
                        TABLE_CategoryImage.addClass("centerNavHolderimage");
                        TABLE_CategoryImage.addClass(classNameForDisplay);
                        if (i == 0) TABLE_CategoryImage.addClass("firstCategoryInMenu");
                        var catImageHTML = "<tr><td align=\"left\" valign=\"top\">";
                        //catImageHTML += "<img src=\"/EN/MenuImages/Category/menu_certer_image.jpg\" alt=\"Maggiano's - Little Italy\" title=\"Maggiano's - Little Italy\" width=\"453\" height=\"173\" />";
                        //                              uncomment the below section and comment the top section for real images. Need to edit path too!

                        var imageUrl = "/EN/MenuImages/Category/menu_certer_image.jpg";

                        if (CATEGORY[i].Image != undefined) {
                            if (CATEGORY[i].Image.length > 0) {
                                if (CATEGORY[i].Image[0].value != undefined) {
                                    imageUrl = "/_layouts/images/maggianos" + FormatImageUrl(CATEGORY[i].Image[0].value);
                                }
                            }
                        }
                        catImageHTML += "<img onerror=\"javascript:loadDefaultMenuImage(this);\" src=\"" + imageUrl + "\" alt=\"Maggiano's - Little Italy\" title=\"Maggiano's - Little Italy\" width=\"453\" height=\"173\" />";
                        catImageHTML += "</td></tr>";
                        
                        if((catDescription != "") && (catDescription != null ))
                        {
                            catImageHTML += "<tr>";
                            catImageHTML += "<td colspan=\"2\" class=\"menuContentTxt\">";
                            catImageHTML += catDescription;
                            catImageHTML += "</td>";
                            catImageHTML += "</tr>";
                        }
                        
                        TABLE_CategoryImage.html(catImageHTML);
                        //to add

                        CategoryDetailsContainer.append(TABLE_CategoryHeader);
                        CategoryDetailsContainer.append(TABLE_CategoryHeaderSeperator);
                        CategoryDetailsContainer.append(TABLE_CategoryImage);


                        if (CATEGORY[i].MenuItem != null) {
                            var MENU_ITEMS = CATEGORY[i].MenuItem;
                            for (k = 0; k < MENU_ITEMS.length; k++) {
                                var MENU_ITEM = MENU_ITEMS[k];
                                var TABLE_MenuItem = AddMenuItemToCategory(MENU_ITEM, classNameForDisplay);
                                CategoryDetailsContainer.append(TABLE_MenuItem);
                            }
                        }
                        var TABLE_PLUModifier = AddPLUModifiers(CATEGORY[i], classNameForDisplay);
                        if (TABLE_PLUModifier != null) {
                            CategoryDetailsContainer.append(TABLE_PLUModifier)
                        }
                    }
                }
            }
            $(".pageheadertext").hide();
            $(".centerNavHolder04").hide();
            $(".centerNavHolderimage").hide();
            $(".centerNavHoldertext01").hide();
            $(".centerNavHoldertext02").hide();
            $(".firstCategoryInMenu").show();

        }
    }
}
function loadDefaultMenuImage(Id) {
    Id.src = "/EN/MenuImages/Category/menu_certer_image.jpg";
    Id.onerror = "";
    return true;
}

function FormatImageUrl(url) {
    url = url.replace(/\\/gi, "/");
    return url;
}

function AddPLUModifiers(CATEGORY, classNameForDisplay) {
    //START PLU MODIFIER
    var TABLE_PLUModifier = $(TABLE_ITEM);
    TABLE_PLUModifier.attr("width", "100%");
    TABLE_PLUModifier.attr("border", "0");
    TABLE_PLUModifier.attr("cellspacing", "0");
    TABLE_PLUModifier.attr("cellpadding", "0");
    TABLE_PLUModifier.addClass("centerNavHoldertext02");
    TABLE_PLUModifier.addClass(classNameForDisplay);
    if (i == 0) TABLE_PLUModifier.addClass("firstCategoryInMenu");

    var hasPLUModifiers = false;
    if (CATEGORY.ContainsNutsText != undefined) {
        if (CATEGORY.ContainsNutsText.toString() != "") {
            var TR_NUTS = $(TR_ITEM);
            var Nuts = "<td colspan=\"2\" class=\"\">";
            Nuts += CATEGORY.ContainsNutsText.toString();
            Nuts += "</td>";
            TR_NUTS.html(Nuts);
            hasPLUModifiers = true;
            TABLE_PLUModifier.append(TR_NUTS);
        }
    }
    if (CATEGORY.CookedToOrderText != undefined) {
        if (CATEGORY.CookedToOrderText.toString() != "") {
            var TR_CTO = $(TR_ITEM);
            var CTO = "<td colspan=\"2\" class=\"\">";
            CTO += CATEGORY.CookedToOrderText.toString();
            CTO += "</td>";
            TR_CTO.html(CTO);
            hasPLUModifiers = true;
            TABLE_PLUModifier.append(TR_CTO);
        }
    }
    if (CATEGORY.ChefChoiceText != undefined) {
        if (CATEGORY.ChefChoiceText.toString() != "") {
            var TR_CC = $(TR_ITEM);
            var CC = "<td colspan=\"2\" class=\"\">";
            CC += "<img src=\"/_layouts/IMAGES/Maggianos/ChefsChoice_icon.png\" width=\"15\" height=\"15\" border=\"0\" /> ";
            CC += CATEGORY.ChefChoiceText.toString();
            CC += "</td>";
            TR_CC.html(CC);
            hasPLUModifiers = true;
            TABLE_PLUModifier.append(TR_CC);
        }
    }
    if (hasPLUModifiers) {
        return TABLE_PLUModifier;
    }
    else
    { return null; }
    //END PLU MODIFIER 
}

function AddMenuItemToCategory(MENU_ITEM, classNameForDisplay) {
    var menuItemName = MENU_ITEM.Name.toString();
    var menuItemDescription = MENU_ITEM.Description.toString();

    var TABLE_MenuItem = $(TABLE_ITEM);
    TABLE_MenuItem.attr("width", "100%");
    TABLE_MenuItem.attr("border", "0");
    TABLE_MenuItem.attr("cellspacing", "0");
    TABLE_MenuItem.attr("cellpadding", "0");
    TABLE_MenuItem.addClass("centerNavHoldertext01");
    TABLE_MenuItem.addClass(classNameForDisplay);
    if (i == 0) TABLE_MenuItem.addClass("firstCategoryInMenu");

    var menuHTML = "<tr>";

    var PLUModifiers = "";
    PLUModifiers = GetPLUModifierIndicators(MENU_ITEM);

    var displayName = menuItemName + PLUModifiers;
    menuHTML += "<td class=\"menuContentheading\">" + displayName + "</td>";

    if (restaurantId == "R.001.025.0000") //avoid price details in Generic Menu
    {
        menuHTML += "<td colspan='2'>&nbsp;</td>";
    }
    else {
        if (MENU_ITEM.SubItem == undefined) {
            var price = GetMenuItemPrice(MENU_ITEM);
            if (price != "") {
                menuHTML += "<td align=\"right\" class=\"menuContentheadingright\"><span>$" + price + "</span></td>";
            }
            else {
                menuHTML += "<td colspan='2'>&nbsp;</td>";
            }
        }
        else 
        {
            var priceList = GetMenuItemPriceList(MENU_ITEM);
            menuHTML += "<td align=\"right\" class=\"menuContentheadingright\">" + priceList + "</td>";
        }
    }

    menuHTML += "</tr>";
    menuHTML += "<tr>";
    menuHTML += "<td colspan=\"2\" class=\"menuContentTxt\">";
    menuHTML += menuItemDescription;
    menuHTML += "</td>";
    menuHTML += "</tr>";

    TABLE_MenuItem.html(menuHTML);

    return TABLE_MenuItem;
}

function GetPLUModifierIndicators(MENU_ITEM) {
    var modifires = "";
    if (MENU_ITEM.ContainsNuts != undefined) {
        if (MENU_ITEM.ContainsNuts.toString() != "") {
            if (MENU_ITEM.ContainsNuts.toString() == "Y") {
                modifires += " + "
            }
        }
    }
    if (MENU_ITEM.CookedToOrder != undefined) {
        if (MENU_ITEM.CookedToOrder.toString() != "") {
            if (MENU_ITEM.CookedToOrder.toString() == "Y") {
                modifires += " ** "
            }
        }
    }
    if (MENU_ITEM.ChefsChoice != undefined) {
        if (MENU_ITEM.ChefsChoice.toString() != "") {
            if (MENU_ITEM.ChefsChoice.toString() == "Y") {
                modifires += " <img src=\"/_layouts/IMAGES/Maggianos/ChefsChoice_icon.png\" width=\"15\" height=\"15\" border=\"0\" /> "
            }
        }
    }
    return modifires;
}

function GetMenuItemPrice(MENU_ITEM) {
    var price = "";
    if (MENU_ITEM.Price != undefined) {
        price = MENU_ITEM.Price.toString();
    }
    return price;
}

function GetMenuItemHalfPrice(MENU_ITEM) {
    var halfPrice = "-";

    for (s = 0; s < MENU_ITEM.SubItem.length; s++) {
        if (MENU_ITEM.SubItem[s].Name == "Half") {
            halfPrice = MENU_ITEM.SubItem[s].Price;
            continue;
        }
    }
    return halfPrice;
}

function GetMenuItemFullPrice(MENU_ITEM) {
    var fullPrice = "-";
    for (s = 0; s < MENU_ITEM.SubItem.length; s++) {
        if (MENU_ITEM.SubItem[s].Name == "Full") {
            fullPrice = MENU_ITEM.SubItem[s].Price;
            continue;
        }
    }
    return fullPrice;
}
        
        
function GetMenuItemPriceList(MENU_ITEM)
{
     var priceList="";
     var price;
     for (s = 0; s < MENU_ITEM.SubItem.length; s++) 
     {
        price=MENU_ITEM.SubItem[s].Price;
        if (s != MENU_ITEM.SubItem.length-1)
            priceList +=MENU_ITEM.SubItem[s].Name + " <span>$" + price + " </span>| ";
        else
            priceList +=MENU_ITEM.SubItem[s].Name + " <span>$" + price + " </span>";
     }
      return priceList;
}
