﻿/* Wine Picks UI functions */
var WinePicksUI = {
    shoppingAjaxURL: "/winepicks/shoppinglist_ajax.aspx",
    AddToShoppingList: function(wid) { $.getJSON(WinePicksUI.shoppingAjaxURL + "?adding=set&wid=" + escape(wid), function(data) { if (data.added != null) { $("#wslistadd").hide(); $("#wslistrmv").fadeOut().fadeIn(); } }); },
    RemoveFromShoppingList: function(wid) { $.getJSON(WinePicksUI.shoppingAjaxURL + "?removing=set&wid=" + escape(wid), function(data) { if (data.removed != null) { $("#wslistrmv").hide(); $("#wslistadd").fadeOut().fadeIn(); } }); },
    AddWToShoppingList: function(wid) { $.getJSON(WinePicksUI.shoppingAjaxURL + "?adding=set&wid=" + escape(wid), function(data) { if (data.subscribe != null) { location.href = "/winepicks/subscription/"; return; } if (data.added != null) { $("#wslistadd_" + wid).hide(); $("#wslistrmv_" + wid).fadeOut().fadeIn(); } }); },
    RemoveWFromShoppingList: function(wid) { $.getJSON(WinePicksUI.shoppingAjaxURL + "?removing=set&wid=" + escape(wid), function(data) { if (data.removed != null) { $("#wslistrmv_" + wid).hide(); $("#wslistadd_" + wid).fadeOut().fadeIn(); } }); },
    ShoppingListRemove: function(wid) { $.getJSON(WinePicksUI.shoppingAjaxURL + "?removing=set&wid=" + escape(wid), function(data) { if (data.removed != null) { $("#wp_" + wid).fadeOut() } }); },
    ShoppingListReset: function() { $.getJSON(WinePicksUI.shoppingAjaxURL + "?resetall=set", function(data) { if (data.removed != null) { $(".printwp").fadeOut(); } }); },
    wishListAjaxURL: "/winepicks/wishlist_ajax.aspx",
    AddToWishList: function(wid) { $.getJSON(WinePicksUI.wishListAjaxURL + "?adding=set&wid=" + escape(wid), function(data) { if (data.added != null) { $("#wwlistadd").hide(); $("#wwlistrmv").fadeOut().fadeIn(); } }); },
    RemoveFromWishList: function(wid) { $.getJSON(WinePicksUI.wishListAjaxURL + "?removing=set&wid=" + escape(wid), function(data) { if (data.removed != null) { $("#wwlistrmv").hide(); $("#wwlistadd").fadeOut().fadeIn(); } }); },
    AddWToWishList: function(wid) { $.getJSON(WinePicksUI.wishListAjaxURL + "?adding=set&wid=" + escape(wid), function(data) { if (data.subscribe != null) { location.href = "/winepicks/subscription/"; return; } if (data.added != null) { $("#wwlistadd_" + wid).hide(); $("#wwlistrmv_" + wid).fadeOut().fadeIn(); } }); },
    RemoveWFromWishList: function(wid) { $.getJSON(WinePicksUI.wishListAjaxURL + "?removing=set&wid=" + escape(wid), function(data) { if (data.removed != null) { $("#wwlistrmv_" + wid).hide(); $("#wwlistadd_" + wid).fadeOut().fadeIn(); } }); },
    WishListRemove: function(wid) { $.getJSON(WinePicksUI.wishListAjaxURL + "?removing=set&wid=" + escape(wid), function(data) { if (data.removed != null) { $("#wp_" + wid).fadeOut() } }); },
    WishListReset: function() { $.getJSON(WinePicksUI.wishListAjaxURL + "?resetall=set", function(data) { if (data.removed != null) { $(".printwp").fadeOut(); } }); },
    searchAJAXURL: "/winepicks/search_ajax.aspx",
    searchPageNumber: 0, searchSortBy: "", searchResults: "", searchTotals: "", releaseDateDropdown: "#reviewdates",
    WineTypeSelected: function() { $.getJSON(WinePicksUI.searchAJAXURL + "?mode=getwines&wtype=" + $("#wrwt").val(), function(data) { if (data.wines != null) { var options = '<option value="">Please Choose</option>'; $.each(data.wines, function(i, item) { options += '<option value="' + item + '">' + item + '</option>'; }); $("#wrgrape").html('').html(options).fadeOut().fadeIn(); } }); },
    FoodMatchSelected: function() { fm = "" + $("#wrfood").val(); if ("_" != fm.substring(0, 1)) { $.getJSON(WinePicksUI.searchAJAXURL + "?mode=getfoods&ftype=" + $("#wrfood").val(), function(data) { if (data.foods != null) { var options = '<option value="">Please Choose</option>' + data.foods; $("#wrfood").html('').html(options).fadeOut("slow").fadeIn("slow").val(fm); } }); } },
    ReviewDateSelected: function() { rd = "" + $("#reviewdates").val(); if (rd.length == 0) { $("#wrrdm").val(""); $("#wrrdd").val(""); $("#wrrdy").val(""); } else { if (rd == "AllDates") { $("#reviewdates").hide(); WinePicksUI.releaseDateDropdown = "#reviewdatesall"; $("#reviewdatesall").show().fadeOut().fadeIn(); } else if (rd.length == 10) { rdparts = rd.split("-"); rdm = parseInt(rdparts[0], 10); if (!isNaN(rdm)) { $("#wrrdm").val(rdm); } rdd = parseInt(rdparts[1], 10); if (!isNaN(rdd)) { $("#wrrdd").val(rdd); } rdy = parseInt(rdparts[2], 10); if (!isNaN(rdy)) { $("#wrrdy").val(rdy); } } } },
    ReviewDateSelectedFromAll: function() { rd = "" + $("#reviewdatesall").val(); if (rd.length == 0) { $("#wrrdm").val(""); $("#wrrdd").val(""); $("#wrrdy").val(""); } else if (rd.length == 10) { rdparts = rd.split("-"); rdm = parseInt(rdparts[0], 10); if (!isNaN(rdm)) { $("#wrrdm").val(rdm); } rdd = parseInt(rdparts[1], 10); if (!isNaN(rdd)) { $("#wrrdd").val(rdd); } rdy = parseInt(rdparts[2], 10); if (!isNaN(rdy)) { $("#wrrdy").val(rdy); } } },
    SelectLatestRelease: function() { $("#wrrdm").val(parseInt(wrpldM, 10)); $("#wrrdd").val(parseInt(wrpldD, 10)); $("#wrrdy").val(wrpldY); $(WinePicksUI.releaseDateDropdown).val("" + wrpldM + "-" + wrpldD + "-" + wrpldY); },
    SelectLastRelease: function() { $("#wrrdm").val(parseInt(wrplldM, 10)); $("#wrrdd").val(parseInt(wrplldD, 10)); $("#wrrdy").val(wrplldY); $(WinePicksUI.releaseDateDropdown).val("" + wrplldM + "-" + wrplldD + "-" + wrplldY); },
    PrintReview: function() { var sd = "" + $(WinePicksUI.releaseDateDropdown).val(); if (sd.length > 0) { ndpopup("/winepicks/winepicks_bydate.aspx?wdate=" + sd, 800, 600); } else { $(WinePicksUI.releaseDateDropdown).fadeOut().fadeIn(); } },
    TopRatedPicked: function() { /*var tp = "" + $("#wrtp").val();if(tp.length > 0){var p = "reviewdates wrpd wrwt wrgrape wrrg wrsc wrrdm wrrdd wrrdy wrwn wrfood";var params = p.split(" ");$.each(params,function(i,item){$("#"+item).val("");});}*/ },
    PrintTopRated: function() { var tp = "" + $("#wrtp").val(); if (tp.length > 0) { tpurl = "/winepicks/winepicks_toppicks.aspx?tp=" + tp + "&"; var p = "wrpd wrwt wrgrape wrrg wrsc wrrdm wrrdd wrrdy wrwn wrtp wrfood wrpricea wrpriceb wrvintagea wrvintageb"; var params = p.split(" "); $.each(params, function(i, item) { var pv = "" + $("#" + item).val(); if (pv.length > 0) { tpurl += item + "=" + $("#" + item).val() + "&"; } }); ndpopup(tpurl, 800, 600); } else { $("#wrtp").fadeOut().fadeIn(); } },
    WPSearchParameters: function() { var url = ""; var p = "wrpd wrwt wrgrape wrrg wrgs wrsc wrrdm wrrdd wrrdy wrwn wrtp wrfood wrpricea wrpriceb wrvintagea wrvintageb wagent"; var params = p.split(" "); $.each(params, function(i, item) { var vv = "" + $("#" + item).val(); if (vv.length > 0) { url += item + "=" + vv + "&"; } }); if (wpreset == 1) { url += "&wpreset=set"; } return url; },
    DoSearch: function(extravar) { var fm = "" + $("#wrfood").val(); if (fm.length > 1) { if (fm.substring(0, 1) != "_") { $("#wrfood").val(""); } } WinePicksUI.searchResults = ""; $("#searchWaitImage").show(); var params = WinePicksUI.WPSearchParameters(); var pagenum = "&pnum=" + WinePicksUI.searchPageNumber; var orderby = "&psort=" + WinePicksUI.searchSortBy; $.getJSON(WinePicksUI.searchAJAXURL + "?" + params + pagenum + orderby + extravar, function(data) { if (data.wpsubscribeplz != null) { location.href = "/winepicks/subscription/"; return; } $("#searchWaitImage").hide(); if (data.content != null) { $("#wpresults").slideUp(); WinePicksUI.searchResults = data.content; WinePicksUI.searchTotals = data.currentlyshowing; setTimeout("WinePicksUI.ViewUpdate()", 800); } }); return false; },
    ViewUpdate: function() { $('#wpresults').html(WinePicksUI.searchResults).slideDown(); $("#wppages").html(WinePicksUI.searchTotals); $("#wppages2").html(WinePicksUI.searchTotals); },
    SearchForWines: function() { WinePicksUI.searchPageNumber = 0; WinePicksUI.DoSearch("&dosearch=set"); return false; },
    PagePrevious: function() { WinePicksUI.searchPageNumber = WinePicksUI.searchPageNumber - 1; if (WinePicksUI.searchPageNumber < 0) { WinePicksUI.searchPageNumber = 0; } WinePicksUI.DoSearch(""); return false; },
    PageNext: function() { WinePicksUI.searchPageNumber = WinePicksUI.searchPageNumber + 1; WinePicksUI.DoSearch(""); return false; },
    SortWinery: function() { WinePicksUI.searchSortBy = "winery"; WinePicksUI.DoSearch("&dosearch=set"); return false; },
    SortWine: function() { WinePicksUI.searchSortBy = "wine"; WinePicksUI.DoSearch("&dosearch=set"); return false; },
    SortReview: function() { WinePicksUI.searchSortBy = "review"; WinePicksUI.DoSearch("&dosearch=set"); return false; },
    StoresClick: function(cntid) { $(".stores").hide(); $("#storesfor_" + cntid).fadeIn(); location.href = "#sdiv_" + cntid; return false; },
    lcboAjaxURL: "/stores/ontario/ajax_userstores.aspx",
    AnonLCBOSearch: function() { pc = $("#lcbo_pcode"); if (pc != null) { pcode = "" + $("#lcbo_pcode").val(); if (pcode.length > 0) { if (pcode.length == 6 || pcode.length == 7) { wid = $("#lcbo_wid").val(); whash = $("#lcbo_whash").val(); $("#lcbo_wait").show(); $("#lcbo_sub").hide(); $.getJSON(WinePicksUI.lcboAjaxURL + "?mode=anon&pcode=" + pcode + "&wid=" + wid + "&whash=" + whash, function(data) { if (data.lcbourl != null) { location.href = data.lcbourl; } else if (data.error != null) { alert(data.error); } else { alert("Unable to look up LCBO stock right now. Please try again later."); } }); } else { alert("Please enter a valid Ontario postal code"); } } else { alert("Please enter a Postal code"); pc.focus(); } } return false; },
    ToggleSection: function(id) { $("#" + id).toggle(); t = "" + $("#href_" + id).text(); if ("Compress" == t) { $("#href_" + id).text("Expand"); } if ("Expand" == t) { $("#href_" + id).text("Compress"); } },
    OpenSort: function() { $("#sortheader").hide(); $("#sortbtns").show(); },
    HandleShoppingList: function(wineid) { $.post($("#whandlerurl").val(), { mode: "shoppinglist", wid: wineid }, function(data) { if (data.error != null) { $("#wmsg_" + wineid).html(""+data.error).fadeIn(); } else if (data.shoppinglistremoved != null){ $("#shplnk_" + wineid).removeClass("wdShopOK").addClass("wdShop").fadeOut().fadeIn(); $("#wmsg_" + wineid).html("Wine removed from your <a href=\"/winepicks/shoppinglist.aspx\">Shopping List</a>").fadeIn(); } else if (data.shoppinglistadded != null) { $("#shplnk_" + wineid).removeClass("wdShop").addClass("wdShopOK").fadeOut().fadeIn(); $("#wmsg_" + wineid).html("Wine added to your <a href=\"/winepicks/shoppinglist.aspx\">Shopping List</a>").fadeIn(); } }, "json"); },
    HandleWishList: function(wineid) { $.post($("#whandlerurl").val(), { mode: "wishlist", wid: wineid }, function(data) { if (data.error != null) { $("#wmsg_" + wineid).html(""+data.error).fadeIn(); } else if (data.wishlistremoved != null) { $("#wshlnk_" + wineid).removeClass("wdWishOK").addClass("wdWish").fadeOut().fadeIn(); $("#wmsg_" + wineid).html("Wine removed from your <a href=\"/winepicks/wishlist.aspx\">Wish List</a>").fadeIn(); } else if (data.wishlistadded != null) { $("#wshlnk_" + wineid).removeClass("wdWish").addClass("wdWishOK").fadeOut().fadeIn(); $("#wmsg_" + wineid).html("Wine added to your <a href=\"/winepicks/wishlist.aspx\">Wish List</a>").fadeIn(); } }, "json"); }
}