Embark on an enchanting desert safari with Platinum Heritage - Platinum Heritage Desert (2023)

_title_<\/span><\/div>"; html = html.replace('_title_', txt); //html += "

"; // html += "" + $.trim(txt)+ ""; //html += "

"; } return html;}//get_productization_product_domfunction get_productization_product_dom(product, template_obj){ //var product_html = template_obj.html(); var product_dom = template_obj.clone(); product_dom.find('div.productization_product').attr('pid', product.productId);; product_dom.find(".luminary_img").attr("data-src", product.celebImgSrc); product_dom.find("a.luminary_img_box").attr("href", product.celebrityUrl).attr('celebId', product.celebId); product_dom.find(".luminary_name").html(product.displayName).attr('data-celebId', product.celebId); product_dom.find(".charity_name").html(product.charityName).attr('data-charityId', product.charityId); product_dom.find(".bio_row").html(product.celebDescription); product_dom.find(".quote_row").html(product.vendorSalesPitch); if(product.geographicName!=='' || product.locationCity!==''){ //var location_array = []; //if($.trim(product.geographicName)!=''){location_array.push($.trim(product.geographicName));} //if($.trim(product.locationCity)!=''){location_array.push($.trim(product.locationCity));} //var location_str = location_array.join(','); var location_str = ''; if ($.trim(product.geographicName) !== '') { location_str=$.trim(product.geographicName); } else if($.trim(product.locationCity)!==''){ location_str=$.trim(product.locationCity); } if(location_str!==''){ product_dom.find('.location_td span').html(location_str); product_dom.find('.location_td').show(); } } if (! empty(product.peoplePerItemMax)) { var guest_str = 'Up to ' + product.peoplePerItemMax + ' ' + (product.peoplePerItemMax>1?'people':'person'); product_dom.find('.guests_td span').html(guest_str); product_dom.find('.guests_td').show(); } var duration = ''; if (product.durationMinutesMin_display !== '' || product.durationMinutesMax_display !== ''){ var duration_array = []; if($.trim(product.durationMinutesMin_display) !== ''){ duration_array.push($.trim(product.durationMinutesMin_display)); } if ($.trim(product.durationMinutesMax_display) !== '' && $.trim(product.durationMinutesMax_display) !== $.trim(product.durationMinutesMin_display)) { duration_array.push($.trim(product.durationMinutesMax_display)); } duration = duration_array.join(' - '); } else if ($.trim(product.durationMinutes_display) !== '') { duration = $.tirm(product.durationMinutes_display); } if (duration !== ''){ product_dom.find('.duration_td span').html(duration); product_dom.find('.duration_td').show(); } product_dom.find('.price_text').html(product.displayPrice); product_dom.find('.js-productId-to-add').val(product.productId); //update following button: var follow_btn = product_dom.find('.button.follow'); follow_btn.attr('data-id', product.celebId); var following = false; for(var i=0; i"){ options.pppString += $(selector+".js-price-slider.filter-selected").attr("data-value"); } if(mobile && $(selector+".js-filter-disc-item.filter-selected").length === 1){ options.catString += $(selector+".js-filter-disc-item.filter-selected").attr("data-value") + ","; } if(($(selector+".js-filter-partner-category.filter-selected").length === 1 && partnerCategoryId) || ! partnerCategoryId){ options.partnerCategoryFilter = true; if (partnerCategoryId && ! options.shpString) { options.shpString = partnerCategoryId.toString() + ","; } } if($(selector+".js-filter-keyword.filter-selected").length === 1){ options.keyword = $(selector+".js-filter-keyword.filter-selected").attr("data-value"); } /* if($(selector+".js-filter-collection.filter-selected").length == 1){ options.shpString = $(selector+".js-filter-collection.filter-selected").attr("data-value"); } */ $(selector+"ul li.filter-selected").each(function(){ if($(this).hasClass("js-filter-location") && $(this).attr("data-value")){ // children all location or parent without children all location (Canada) or child if not all checked if ($(this).hasClass("js-filter-children-all") || $(this).hasClass("js-filter-no-children") || ($(this).hasClass("js-filter-parent") && ! $(this).find(".js-filter-children-all").length) || ($(this).hasClass("js-filter-children") && ($(this).siblings(".js-filter-children-all").length || (! $(this).siblings(".js-filter-children-all").length && $(this).siblings(".js-filter-children").length !== $(this).siblings(".js-filter-children.filter-selected").length))) ) { if(! hasValueInCommaSeparatedString(options.geoString, $(this).attr("data-value"))){ options.geoString += $(this).attr("data-value") + ","; } } }else if($(this).hasClass("js-filter-contentType") && $(this).attr("data-value")) { if ($(this).hasClass("js-filter-children-all") || $(this).hasClass("js-filter-no-children") || ($(this).hasClass("js-filter-parent") && ! $(this).find(".js-filter-children-all").length) ) { if (! hasValueInCommaSeparatedString(options.contentString, $(this).attr("data-value"))) { options.contentString += $(this).attr("data-value") + ","; } } else if ($(this).hasClass("js-filter-children") && ($(this).siblings(".js-filter-children-all").length || (! $(this).siblings(".js-filter-children-all").length && $(this).siblings(".js-filter-children").length !== $(this).siblings(".js-filter-children.filter-selected").length)) ) { if (! hasValueInCommaSeparatedString(options.programString, $(this).attr("data-value"))) { options.programString += $(this).attr("data-value") + ","; } } }else if($(this).hasClass("js-filter-people")){ if(! hasValueInCommaSeparatedString(options.ppiString, $(this).attr("data-value"))){ options.ppiString += $(this).attr("data-value") + ","; } }else if($(this).hasClass("js-filter-collection")){ if(! hasValueInCommaSeparatedString(options.shpString, $(this).attr("data-value")) && options.partnerCategoryFilter){ options.shpString += $(this).attr("data-value") + ","; } }else if($(this).hasClass("js-filter-cardType")){ if(! hasValueInCommaSeparatedString(options.cardString, $(this).attr("data-value"))){ options.cardString += $(this).attr("data-value") + ","; } }else if($(this).hasClass("js-filter-category")){ if(! hasValueInCommaSeparatedString(options.catString, $(this).attr("data-value"))){ options.catString += $(this).attr("data-value") + ","; } } }); if($(selector+".js-filter-from").attr("selectedTime") === undefined){ options.fromDate = ""; options.toDate = ""; }else{ options.fromDate = $(selector+".js-filter-from").attr("selectedTime").trim(); options.toDate = $(selector+".js-filter-to").attr("selectedTime").trim(); } if($(selector+".js-filter-availability.filter-selected").length === 1){ options.date = $(selector+".js-filter-availability.filter-selected").attr("data-value"); }else{ options.date = ""; } if($(selector+".js-filter-productization-master-pid.filter-selected").length === 1){ options.pdzMasterPid = $(selector+".js-filter-productization-master-pid.filter-selected").attr("data-value"); }else{ options.pdzMasterPid = ""; } //options.notIncludeUnSure = ($(selector+".js-availability-type").prop("checked"))?0:1; options.catString = options.catString.slice(0,-1); //options.pppString = options.pppString.slice(0,-1); options.geoString = options.geoString.slice(0,-1); options.ttpString = options.ttpString.slice(0,-1); options.ppiString = options.ppiString.slice(0,-1); options.lumString = options.lumString.slice(0,-1); options.chaString = options.chaString.slice(0,-1); options.cardString = options.cardString.slice(0,-1); options.contentString = options.contentString.slice(0,-1); options.programString = options.programString.slice(0,-1); return options;}function getFilterDataNameParent(name) { if (name == 'program') { return 'contentType'; } return name;}function getFilterDataNameChild(name) { if (name == 'contentType') { return 'program'; } return name;}//*******************************************function popUpOpen($obj){ $obj.animate({opacity: 'show', height: 'show'}, 150);}//*******************************************function popUpClose($obj){ $obj.animate({opacity: 'hide', height: 'hide'}, 150);}function hasValueInCommaSeparatedString(string, value) { return string.split(",").includes(value);}//*******************************************// * action: (1) check// * (2) remove//*******************************************function actionBtnClickHandling($obj, action){ if(action === undefined){ action = "check"; } if(action === "check"){ if($obj.hasClass("disabled")){ return false; }else{ $obj.addClass("disabled"); if(g_is_mobile){ if($obj.find(".btn-b").length > 0){ $obj.find(".btn-b").addClass("disabled"); } } return true; } } else if (action === "remove"){ $obj.removeClass("disabled"); if(g_is_mobile){ if($obj.find(".btn-b").length > 0){ $obj.find(".btn-b").removeClass("disabled"); } } }}//*******************************************//* Initiate calendar//*******************************************function draw_calendar_general($obj, timeSelectedCallBack, getCalendarCallBack) { var y = $obj.attr("data-y"); var m = $obj.attr("data-m"); var d = $obj.attr('data-d'); // not required. May be undefined. if(d === undefined){ d='';} var cid = ($obj.attr("data-vid") === undefined) ? '0' :$obj.attr("data-vid"); var pid = ($obj.attr("data-master-pid") != undefined && $obj.attr("data-master-pid") != 0) ? $obj.attr("data-master-pid") : ($obj.attr("data-pid") === undefined) ? '0' :$obj.attr("data-pid"); var needFirstAvailableDay = ($obj.attr("data-nfad") === undefined) ? '1' : $obj.attr("data-nfad"); var duration = ($obj.attr("data-dm-x") && $obj.attr("data-dm-x") > 0) ? $obj.attr("data-dm-x") : (($obj.attr("data-dm") === "")? 60: $obj.attr("data-dm")); var bookingLeadTime = ($obj.attr("data-blm") === "")? 0: (parseInt($obj.attr("data-blm"))/1440); var maximumBookingLeadTime = ($obj.attr("data-mbld") === "")? 365: $obj.attr("data-mbld"); var minutesBeforeBuffer = ($obj.attr("data-mbb") === undefined || $obj.attr("data-mbb") === "")? 0: $obj.attr("data-mbb"); var doubleCal = ($obj.attr("data-double-calendar") === undefined || $obj.attr("data-double-calendar") === "") ? 0 : $obj.attr("data-double-calendar"); $obj.attr("data-mbb",minutesBeforeBuffer); var startYear = ($obj.attr("data-start-year") === undefined) ?"":$obj.attr("data-start-year"); var startMonth = ($obj.attr("data-start-month") === undefined) ?"":$obj.attr("data-start-month"); var seriesEvents = ($obj.attr("data-series-events") === undefined) ?0:$obj.attr("data-series-events"); var needAvailOverride = ($obj.attr("data-avail-override") === undefined) ? 0 : $obj.attr("data-avail-override"); var quantity = ($obj.attr("data-quantity") === undefined) ? 0: $obj.attr("data-quantity"); var number = ($obj.attr("data-num") === undefined) ? 0 : $obj.attr("data-num"); var address = $('.js-userAddress').length > 0 ? $('.p-form[data-num=' + number + ']').find('.js-userAddress').val() : ''; if(timeSelectedCallBack === undefined || typeof(timeSelectedCallBack) !== typeof(Function)){ timeSelectedCallBack = function(){ console.log("You can add a callback function :)"); }; } var displayTimezone = 0; if(pid*1>0 && displayTimezone){ $obj.find(".cal_timezone_msg").show(); } else{ $obj.find(".cal_timezone_msg").hide(); } $.ajax({ type: "POST", url: "/common/getCalendar", dataType: 'json', data: {year:y,month:m, day:d, celebId:cid, productId:pid, bookingLeadTime: bookingLeadTime, minutesBeforeBuffer:minutesBeforeBuffer, maximumBookingLeadTime:maximumBookingLeadTime, duration: duration, getFirstAvailableDay: needFirstAvailableDay, doubleCal: doubleCal, startYear:startYear, startMonth:startMonth, seriesEvents:seriesEvents, userId:g_userId, needAvailOverride:needAvailOverride, quantity: quantity, changeRequestOii: g_changeRequestOii, address: address }, success: function(data) { if (data.result < 1) { alertEx(data.msg); return false; } if ($('#calendar-popUp .availability_override_div').attr('data-avail-override') !== undefined){ if($('#calendar-popUp .availability_override_div').attr('data-avail-override') === 1){ $('#calendar-popUp .availability_override_div').show(); } else { $('#calendar-popUp .availability_override_div').hide(); } } if(needFirstAvailableDay === '1'){ $obj.attr("data-nfad","0"); $obj.find(".cal-body").html(data.html); $obj.find(".cal-nav .month").html(monthNames[data.displayMonth-1]); $obj.find(".cal-nav .year").html(""+data.displayYear); $obj.attr("data-y", data.year); $obj.attr("data-year", data.firstAvailableYear); $obj.attr("data-m", data.month); $obj.attr("data-month", data.firstAvailableMonth); if (data.firstAvailableYear < data.year || data.firstAvailableMonth < data.month ){ $obj.find(".cal-nav .left img").css("visibility","visible"); } }else{ if(doubleCal == 1){ $obj.find(".js-cal-one .cal-body").html(data.html1); $obj.find(".js-cal-one .month").html(data.displayMonth1); $obj.find(".js-cal-one .year").html(data.displayYear1); $obj.find(".js-cal-two .cal-body").html(data.html2); $obj.find(".js-cal-two .month").html(data.displayMonth2); $obj.find(".js-cal-two .year").html(data.displayYear2); }else{ $obj.find(".cal-body").html(data.html); } } //VP-14831 if (data.html!=undefined) { var $html = $(data.html); var first_available = $html.find('.cal-day-box.active'); if(first_available.length>0 && first_available.attr('data-month')*1>0){ $obj.find(".cal-nav .month").html(monthNames[first_available.attr('data-month')*1-1]); } } //if(timeSelectedCallBack ) $obj.bind("timeselected", function() { timeSelectedCallBack(); }); // selcted the selected date // if the selected date is in next month or previous month, we need to reload the calendar // and selected that date when new calendar is loaded if($obj.attr("data-click-date") !== undefined && $obj.attr("data-click-date") !== ""){ $obj.find(".cal-body .day[data-date="+$obj.attr("data-click-date")+"]").addClass("selected"); $obj.attr("data-click-date",""); } if (g_duringAddressSave) { populateCalendarPopup(); } setSelectedDay(); $('.cal-day-box.day.active.selected').click(); if(getCalendarCallBack !== undefined && typeof(getCalendarCallBack) === typeof(Function)){ getCalendarCallBack(); } if (data.year != 'undefined') { $obj.attr("data-y", data.year); } if (data.month != 'undefined') { $obj.attr("data-m", data.month); } console.log('get calendar override:') console.log($obj.attr('data-avail-override')); console.log(data.needAvailOverride); } });}function populateCalendarPopup() { var number = $("#address-scheduling-dialog-googlemaps .address-number").val(); var productId = $("#address-scheduling-dialog-googlemaps .address-productId").val(); if (number != '' && productId != '') { var dateTime = $('.p-form[data-num=' + number + '][data-pid=' + productId + ']').find('.js-date-1').val(); if (dateTime) { var split = dateTime.split(' '); if (split[0]) { var date = split[0].replace(/\-/g, ''); $("#calendar-popUp .scheduledDatetimeDisplay_0").attr('data-date', date); } } }}function setSelectedDay() { if($("#calendar-popUp .scheduledDatetimeDisplay_0").length > 0 || $("#calendar-popUp .scheduledDatetimeDisplay_1").length > 0){ var date0 = $("#calendar-popUp .scheduledDatetimeDisplay_0").attr("data-date"); var date1 = $("#calendar-popUp .scheduledDatetimeDisplay_1").attr("data-date"); $("#calendar-popUp .cal-body .day").each(function() { if($(this).attr("data-date") === date0 || $(this).attr("data-date") === date1){ $(this).addClass("selected"); }else{ $(this).removeClass("selected"); } }); }}//*******************************************//* Used in Mobile//*******************************************function lazyLoadCleaning(type, forceClean){ if(forceClean === undefined){ forceClean = false; } if(g_currentListType != type || forceClean){ // starting a lazy load for a new type g_currentListType = type; $("#loadedPCnt").val(0); $("#loadedACnt").val(0); $("#loadedSCnt").val(0); $("#loadedBCnt").val(0); $("#needMoreTiles").val(1); g_category_products_and_collections = []; // re-initiate g_cat_pro_col_index = 0; g_special_offer_products = []; }}//******************************************** Lazy Load Tiles ****************************************************//*******************************************//* Lazy Load Tiles//*******************************************function lazyLoadDataHandling(type, data){ if (type === g_list_type.category){ $("#loadedPCnt").val(parseInt($("#loadedPCnt").val())+parseInt(data.pCnt)); $("#loadedACnt").val(parseInt($("#loadedACnt").val())+parseInt(data.aCnt)); $("#loadedSCnt").val(parseInt($("#loadedSCnt").val())+parseInt(data.sCnt)); $("#loadedBCnt").val(parseInt($("#loadedBCnt").val())+parseInt(data.bCnt)); g_category_products_and_collections = g_category_products_and_collections.concat(data.data); } else { g_category_products_and_collections = g_category_products_and_collections.concat(data); } console.log('g_category_products_and_collections'); console.log(g_category_products_and_collections); // add tiles in to queue}/**************************************************************************** * * Used in mobile for lazy loading the remaining products * (1) Filter Page * ***************************************************************************/function loadMoreTilesForFilter(){ if( !g_downloading_new_tiles ){ var params = getFilterOptionsObj(); params.loadedTitleCnt = g_category_products_and_collections.length; params.totalTileCnt = $("#totalCnt").val(); var url = g_is_mobile ? "/m/services/search/getNextBlocksProducts" : "/services/search/getNextBlocksProducts"; jQuery.ajax({ type: "GET", url: url, dataType: 'json', cache: false, data: params, success: function (data) { if(data.result === 1){ lazyLoadDataHandling(g_list_type.filter, data.data); if(data.data.length < g_block_pCnt * 2){ $("#needMoreTiles").val(0); }else{ $(".js-view-more-box").show(); } populate_product_collection_tiles(0, "", $('.js-tiles-sec'), true); if(typeof(data.specialOfferProducts) !== undefined) { g_special_offer_products = data.specialOfferProducts; renderSpecialOfferProductsHtml(g_special_offer_products); populateSpecialOffersLocalStorage(); } //markWishlistedProducts(wishlistProducts); g_downloading_new_tiles = false; populateLocalStorage(); } }, error: function (XMLHttpRequest, textStatus, errorThrown) { } }); g_downloading_new_tiles = true; }}// data is an array of items which can be used for views: _tile_product, _tile_collection, _tile_ad// this function is used to paint the tile// paint g_block_pCnt tilesfunction populate_product_collection_tiles(catId, getVar, tiles_div, show_celebrity, params){ if (show_celebrity === undefined) { show_celebrity = true; } if (show_celebrity) { show_celebrity = '1'; } // url parameters appending // pass parrameter to PDP page/Productization PDP to narrow down the result sets var url = window.location.pathname; var indexPos = url.indexOf("/options"); var urlAppended = ""; var lastChar = url.substr(-1); // Selects the last character if (lastChar !== '/') { // If the last character is not a slash url = url + '/'; // Append a slash to it. } if(indexPos !== -1){ //urlAppended = "/options/"; var url = url.substring(indexPos); var re = new RegExp("perPersonPrice"+"\/([^\/]*)\/", 'i'); var m = url.match(re); if(m !== null){ urlAppended += m[0]; } re = new RegExp("peoplePerItem"+"\/([^\/]*)\/", 'i'); m = url.match(re); if(m !== null){ urlAppended += m[0]; } re = new RegExp("sortBy"+"\/([^\/]*)\/", 'i'); m = url.match(re); if(m !== null){ urlAppended += m[0]; } re = new RegExp("category"+"\/([^\/]*)\/", 'i'); m = url.match(re); if(m !== null){ urlAppended += m[0]; } re = new RegExp("location"+"\/([^\/]*)\/", 'i'); m = url.match(re); if(m !== null){ urlAppended += m[0]; } re = new RegExp("cardType"+"\/([^\/]*)\/", 'i'); m = url.match(re); if(m !== null){ urlAppended += m[0]; } re = new RegExp("contentType"+"\/([^\/]*)\/", 'i'); m = url.match(re); if(m !== null){ urlAppended += m[0]; } re = new RegExp("program"+"\/([^\/]*)\/", 'i'); m = url.match(re); if(m !== null){ urlAppended += m[0]; } re = new RegExp("date"+"\/([^\/]*)\/", 'i'); m = url.match(re); if(m !== null){ urlAppended += m[0]; } re = new RegExp("partnerCategoryFilter"+"\/([^\/]*)\/", 'i'); m = url.match(re); if(m !== null){ urlAppended += m[0]; } if(urlAppended !== ""){ urlAppended = "/options/" + urlAppended; } } // ajax to load more tiles // loadTilesFromAjax is defined in // (1) category standalone // (2) filter if($("#needMoreTiles").val() == 1 && g_category_products_and_collections.length < ( parseInt(g_cat_pro_col_index) + parseInt(g_block_pCnt)*2 ) ){ if(g_currentListType === g_list_type.category){ loadTilesForCat(catId, getVar); }else if(g_category_products_and_collections.length < $("#totalCnt").val()){ loadMoreTilesForFilter(); } } var startTimeTest = new Date().getTime(); var appendHtml = ""; var forNumber = (params !== undefined && params.renderNumber !== undefined)? params.renderNumber:g_block_pCnt; for(var i=0; i= g_category_products_and_collections.length) { updateAuctionTile(); // This function is defined in _auction_product_js } // mark wishlist prosucts 4 seconds later setTimeout(function(){ markWishlistedProducts(wishlistProducts); }, 5000); } var startTimeTestEnd = new Date().getTime(); console.log("client render "+g_block_pCnt+ " titiles "+ (startTimeTestEnd - startTimeTest)/1000 +" seconds");}function updateAuctionTile() { var auctionPids = []; var auctionObject; $(".js-tiles-sec .tile_product, .js-block .tile_product, .layout_tiles_container .tile_product").each(function(index) { if($(this).find('.buy_type').hasClass('auction')) { auctionPids.push($(this).attr('pid')); } }); if (! auctionPids.length) { return; } $.ajax({ type: "POST", url: "/common/updateAuctionText", dataType: 'json', data: {pids: auctionPids}, success: function(data) { if (data.result !== 1) { return; } auctionObject = data.value; $.each(auctionObject, function(key, value) { // Banner var ao = auctionObject[key]; var $a = $('a[pid="' + key + '"]'); $a.find('.buy_type').css('display', 'flex'); $a.find('.buy_type_text span').html(ao.auctionBannerText); $a.find('.buy_type_text').css('background-color', ao.auctionBannerColor); $a.find('.buy_type svg polygon').css('fill', ao.auctionBannerColor); // for the slanted part of banner if (ao.displayPrice) { $a.find('.product_price').html(ao.displayPrice); } if (ao.hyattPoints) { $a.find('.hyatt_points').html("("+ao.hyatt_points+")"); } // Auction countdown $a.find('.auction_type').css('display', 'flex'); $a.find('.auction_text span').html(ao.auctionText); $a.find('.auction_text').css('background-color', ao.css); // Auction bottom banner, should always use auction_type $a.find('.bottom_banner').css('display', 'none'); }); } });}//*******************************************// *// * Used in mobile for lazy loading the remaining tiles// * (1) Home Page// * (2) Category Page// *//*******************************************function loadTilesForCat(catId, getVar, pageId){ lazyLoadCleaning(g_list_type.category); if(pageId === undefined){ pageId = 0; } if( !g_downloading_new_tiles ){ jQuery.ajax({ type: "POST", url: g_url_get_category_products_and_collections, dataType: 'json', data: {'catId': catId, 'get':getVar, 'loadedACnt':$("#loadedACnt").val(), 'loadedPCnt':$("#loadedPCnt").val(), 'loadedSCnt':$("#loadedSCnt").val(), 'loadedBCnt':$("#loadedBCnt").val(), 'pageId' : pageId }, success: function (data) { loadTilesDataHandling(data, catId); }, error: function (XMLHttpRequest, textStatus, errorThrown) { //alert('Unknow Error. Please refresh and try again'); } }); g_downloading_new_tiles = true; }}function loadTilesDataHandling(data, catId, getVar){ g_downloading_new_tiles = false; lazyLoadDataHandling(g_list_type.category, data); if(catId == g_homepage_catId){ $('.collection_tiles').removeClass('loading'); }else{ $('.collection_tiles').closest(".tab").removeClass('loading'); } if(data.data.length < g_block_pCnt * 2){ $("#needMoreTiles").val(0); }else{ $(".view-more-box").show(); } if(data.trackProductList){ setTimeout(function(){ eval(data.trackProductList); }, 2000); } populate_product_collection_tiles(catId, getVar, $('.collection_tiles'), true); //markWishlistedProducts(wishlistProducts); $('.collection_tiles').closest(".tab").attr('data-loaded', '1'); $('.collection_tiles').closest(".tab").attr('data-showing-serach', '0');}function loadingAnimation(show){ if (show === 'show') { $("#page-member-signup-dialog-overlay").show(); $("#page-member-signup-dialog-loading").show(); } else { $("#page-member-signup-dialog-overlay").hide(); $("#page-member-signup-dialog-loading").hide(); }}/******************************************** Lazy Load Tiles ****************************************************/ioReady(function(){ //opens member sign up $("#main").on('mouseover', '.heart_img.wishlist', function(){ if($(this).hasClass('listed')) { if ($(this).hasClass('watchlist')) { $(this).siblings('.wishlist-main-con').find('.wishlist-text').text("REMOVE FROM WATCHLIST"); } else { $(this).siblings('.wishlist-main-con').find('.wishlist-text').text("Remove from wishlist"); } } else { if ($(this).hasClass('watchlist')) { $(this).siblings('.wishlist-main-con').find('.wishlist-text').text("Add to watchlist"); } else { $(this).siblings('.wishlist-main-con').find('.wishlist-text').text("Add to wishlist"); } } $(this).siblings('.wishlist-main-con').show(); }).on('mouseout', '.heart_img.wishlist', function() { $(this).siblings('.wishlist-main-con').hide(); }); $("#main").on('focus', '.heart_img.wishlist', function(){ if($(this).hasClass('listed')) { if ($(this).hasClass('watchlist')) { $(this).siblings('.wishlist-main-con').find('.wishlist-text').text("REMOVE FROM WATCHLIST"); } else { $(this).siblings('.wishlist-main-con').find('.wishlist-text').text("Remove from wishlist"); } } else { if ($(this).hasClass('watchlist')) { $(this).siblings('.wishlist-main-con').find('.wishlist-text').text("Add to watchlist"); } else { $(this).siblings('.wishlist-main-con').find('.wishlist-text').text("Add to wishlist"); } } $(this).siblings('.wishlist-main-con').show(); }).on('focusout', '.heart_img.wishlist', function() { $(this).siblings('.wishlist-main-con').hide(); }); if(!g_is_mobile && !g_is_tablet) { $('#main').on('mouseover', '.product_img_container, .collection_img_container.js-cat-gradient', function() { $(this).find('.gradient-con').show(); }).on('mouseout', '.product_img_container, .collection_img_container.js-cat-gradient', function() { $(this).find('.gradient-con').hide(); }); } $('#sign-bar, #nav, .bag, #top-welcome, #buttons-nav, #member-signup-dialog, #bespokeForm, #modal-container, #vendor-signup-dialog, #mobile-header').on('click', '.js-signUp', function(event){ event.preventDefault(); if (g_forVendorSignUp && !$(this).hasClass('js-ignore-vendor-signup')){ //$("#member-signup-dialog").hide(); hide_ifonly_overlay("#member-signup-dialog"); show_ifonly_overlay('.vendor_signup_overlay'); //displayOverlay('vendor-signup-dialog'); return false; } if ($("#signUp-dialog-called-from").val() !== 'wishlist') { $("#signUp-dialog-called-from").val(""); // clear action } //clearTimeout(autoPopupTimer);console.log("here"); if ($("#login-email").val() !== ""){ $("#User_emailAddress").val($("#login-email").val()); } if ($(this).hasClass('js-shopping-bag')){ if (g_uuidCheckout) { location.href = (g_is_mobile ? '/m' : '') + '/cart'; return false; } else { $("#signUp-dialog-called-from").val('shopping-bag'); } } else if ($(this).hasClass('js-from-login-form') && $("#signUp-dialog-called-from").val() !== 'wishlist') { $("#signUp-dialog-called-from").val('Login form'); } else if ($(this).parent().attr('id') === 'buttons-nav' || $(this).hasClass('member-signup-btn')) { $("#signUp-dialog-called-from").val('Header'); } console.log($(this)); signupDialog(1,1,{'button': $(this)}); return false; }); $('#sign-bar, #signup-dialog, #nav, .modal-container, #bespoke, #top-welcome, #buttons-nav, #vendorSignUp, #marketplace-home, #mobile-header').on('click', '.js-login', function(event){ event.preventDefault(); //clearTimeout(autoPopupTimer); if($(this).hasClass("bespokePage")){ if($.trim($("#bespoke .willingToPay").val()) === ""){ $("#bespoke .budget").show(); return false; } } if ($(this).parent().attr('id') === 'buttons-nav' || $(this).hasClass('login-button')) { $("#signUp-dialog-called-from").val('Header'); } else if ($(this).hasClass('js-from-signup-form') && $("#signUp-dialog-called-from").val() !== 'wishlist') { $("#signUp-dialog-called-from").val('Sign up form'); } signupDialog(1,1,{'button': $(this)}); return false; }); $("body, #nav, #header, #header-nav, #acct-popup-wrapper").on( 'click', ".js-member-access",function(){ displayOverlay('closed-accessCode-dialog'); return false; }); $("body, #closed-accessCode-dialog").on( 'click', ".update-access-code",function(){ var input = $("#closed-accessCode-dialog .access-code"); if (input.val() === "" || input.val() === input.attr('default')) { displayError("#closed-accessCode-dialog .error-general", "Please enter an access code."); return false; } var accessCode = input.val(); if (accessCode !== ""){ accessCodeUpdate(accessCode); } return false; }); $('.imageChild').on('mouseleave',".child-right-sec .add-to-bag",function() { var $button = $(this); if ($button.hasClass('checkout')) { if($button.hasClass("buyNow")){ $button.html("Add to cart"); }else{ $button.html("SELECT"); // sweepstakes } $button.attr('href','#'); $button.removeClass('checkout'); } }); $("#exposeMask").click(function(){ if(g_active_popup !== "" && !g_forceLogin){ $('#exposeMask').css("height", "100%"); $('#container').css({height:"auto", overflow:"auto"}); $('#body').css('overflow','visible'); $('#exposeMask').fadeOut(); $("#"+g_active_popup).fadeOut(); if (g_active_popup === 'accesscode-add-dialog') { $("#accesscode-add-dialog .update-access-code-close .btn-w").html('Join Our Membership Waitlist'); // can be changed at bottom_js } } return false; }); $('.modal-container').on('click', '.close, .js-close', function(){ userAccessHide(); return false; }); // body does not work on checkout, #main does $("body, #main").on("click",".loginWithFacebookButton", function(e){ //if ($('.mc_priceless_check:visible').length > 0 && $('.mc_priceless_check').prop('checked') === false) { // displayError("#streamlineSignup_error", "Priceless Communications opt-in required for sign-up"); // return false; //} e.stopImmediatePropagation(); $.post('/website/logPageView',{pageId:114}, function(){},'json'); if (g_isMobileApp === 1 && g_vendorProfile === ""){ if(g_uaType === 4) { window.webkit.messageHandlers.loginThroughFacebook.postMessage(JSON.stringify({url:window.location.href})); } else { Android.facebookLogin(window.location.href); } return false; } if($(this).hasClass("bespokePage")){ if($.trim($("#bespoke .willingToPay").val()) === ""){ $("#bespoke .budget").show(); return false; } } if(g_chrome_iOS){ var type = $(this).attr('type'); if(type === "login"){ $("#buttonByClickSource").html("Log in with email."); } else { $("#buttonByClickSource").html("SIGN UP WITH EMAIL."); } userAccessHide(); show_ifonly_overlay('.chrome_exempt_overlay'); return false; } var fbLogin = $(this).attr('fbLogin'); if (typeof(FB) === 'undefined' || FB === null) { alertEx("Login and signup with Facebook is not available due to your browser's current security settings."); return false; } $('*').css('cursor','wait'); FB.login(function(response) { if (response.status === 'connected' && response.authResponse) { var accessToken = response.authResponse.accessToken; var signedRequest = response.authResponse.signedRequest; FB.api('/me', 'get', {fields:"significant_other, id, first_name, middle_name, last_name, email, location{location}, hometown{location}, birthday"}, function(response) { response.accessToken = accessToken; response.signedRequest = signedRequest; response.fbLogin = fbLogin; //pass the info that this is a facebook login and not facebook sign up var fbUrl = "/website/LoginWithFacebook"; if (g_vendorSignUp == 1){ fbUrl = "/website/LoginWithFacebook/from/vendorSignUp"; } var postData = {response: response}; if (g_is_pickonePromo) { postData.social_emailOptedIn = $("#social_emailOptedIn").attr('checked') ? 1 : 0; } if ($(".mc_priceless_check").length) { postData.pricelessProgram = $(".mc_priceless_check").prop('checked') ? 1 : 0; } if ($(".mc_master_check").length) { postData.mastercardProgram = $(".mc_master_check").prop('checked') ? 1 : 0; } $.ajax({ type: "POST", url: fbUrl, data: postData, async: true, dataType: 'json' }).done(function ( data ) { if (data.result === 1) { var redirectUrl = $("#redirectURL").val().trim(); //if (redirectUrl === '') { // redirectUrl = window.location.pathname + window.location.search + window.location.hash; //} if ((redirectUrl === '' || redirectUrl === '#') && ! empty(data.redirectUrl)) { redirectUrl = data.redirectUrl; } if (data.newUser === 1) { ga('send', 'event', 'MemberActivity', 'Facebook Signup'); if(g_allowFacebookTracking) { fb_p('track', 'CompleteRegistration'); } g_userId = data.userId; callSignupTrackingCode(); if (addGuestProductToCart()) return false; // if need to add a guest product (main.js) googleAnalyticsImage = new Image(); googleAnalyticsImage.src = 'https://www.googleadservices.com/pagead/conversion/995223985/?value=0&label=VrOnCNe_ogQQsdPH2gM&guid=ON&script=0'; // $("#google-tracking").html('Embark on an enchanting desert safari with Platinum Heritage - Platinum Heritage Desert (1)'); if (g_bespoke === '1'){ slideToNextQuestion(6, 7); submitBespokeForm(); } else { if (redirectUrl !== '' && redirectUrl !== '#') { setTimeout(function() { window.location.href = redirectUrl; }, g_signup_timer); } else { setTimeout(function() { window.location.reload(); }, g_signup_timer); } } } else { ga('send', 'event', 'MemberActivity', 'Facebook Login'); if (addGuestProductToCart()) return false; // if need to add a guest product (main.js) // If from vendor portal sign up and vendor email is verified, redirect to vendor profile page if (data.vendorVerified === 1) { setTimeout(function() { location.href = "/profile/edit"; }, g_login_timer); } else if (g_bespoke === '1'){ slideToNextQuestion(6, 7); if (! empty(data.terms)) { showMemberTermsAndPrivacyDialog('bespoke', data.terms, data.termsTranslatedText); } else { submitBespokeForm(); } } else if (g_vendorProfile !== "") { // in vendor profile page $(".form-row .edit-block .facebook.defaultBox").hide(); $(".form-row .edit-block .facebook.linkedBox").fadeIn(); if($(".page-left-col").length === 1) { if($(".prg-block font").length > 0){ $(".prg-block .prg-bar .complete-bar").css("width", data.percentNumber+"%"); $(".prg-block font").text(data.percentNumber); } $(".page-left-col").find(".menu-social").removeClass("un-complete"); $(".page-left-col").find(".menu-social").addClass("complete"); } } else { if (! empty(data.terms)) { var context = redirectUrl; if (g_page === 'cart.checkout') { context = data.cartItemCount > 0 ? 'gotoCart' : 'checkout'; // goto checkout / stay checkout } console.log('context: ' + context); showMemberTermsAndPrivacyDialog(context, data.terms, data.termsTranslatedText); } else { if (g_page === 'cart.checkout' && data.cartItemCount > 0) { // Items already in cart. Prompt with pop up // $("#checkout-login-cart-items").overlay().load(); show_ifonly_overlay('.checkout_login_cart_items_overlay'); } else { if (redirectUrl !== '' && redirectUrl !== '#') { setTimeout(function() { location.href = redirectUrl; }, g_signup_timer); } else { setTimeout(function() { location.reload(); }, g_login_timer); } } } } } } else if (data.result === 2) { // If facebook account does not have email (i.e. signed up with phone number) $('#member-signup-dialog').css('z-index', '9998'); alertEx(data.msg); } else if (data.result === 3) { var redirectUrl = $("#redirectURL").val().trim(); if ((redirectUrl === '' || redirectUrl === '#') && ! empty(data.redirectUrl)) { redirectUrl = data.redirectUrl; } confirmEx(data.msg, "Warning", function(){ postData.linkAccount = 1; $.ajax({ type: "POST", url: fbUrl, data: postData, async: true, dataType: 'json' }).done(function (data2) { if (data2.result === 1) { if (redirectUrl !== '' && redirectUrl !== '#') { setTimeout(function() { location.href = redirectUrl; }, g_signup_timer); } else { setTimeout(function() { location.reload(); }, g_login_timer); } } else { alertEx(data2.msg); } }); }, function(){ // do nothing for cancel }, "OK", "Cancel" ); } else { alertEx(data.msg); // Sign up dialog will have higher z-index than alertEx. } $('*').css('cursor','default'); }); }); } else { $('*').css('cursor','default'); } }, {scope:'public_profile, email, user_birthday, user_location, user_hometown'}); return false; }); $("body, .custom-form").on("click",".google-signinButton, .googleSigninButton", function(e){ console.log('google signin button clicked'); e.stopImmediatePropagation(); $.post('/website/logPageView',{pageId:115}, function(){},'json'); if(g_chrome_iOS){ var type = $(this).attr('type'); if(type === "login"){ $("#buttonByClickSource").html("Log in with email."); } else { $("#buttonByClickSource").html("SIGN UP WITH EMAIL."); } userAccessHide(); show_ifonly_overlay('.chrome_exempt_overlay'); return false; } if (g_isMobileApp === 1 ) { if(g_uaType === 4) { window.webkit.messageHandlers.loginThroughGoogle.postMessage(JSON.stringify({url:window.location.href})); } else { Android.googleLogin(window.location.href); } return false; } g_call_from = $(this).attr('type'); if ($(this).hasClass("bespokePage")){ if ($.trim($("#bespoke .willingToPay").val()) === ""){ $("#bespoke .budget").show(); return false; } } }); // click event for the question mark (will be moved to popups/viewFile) $("#main").on("click",".phone",function(){ //questionPopUp($(this)); return false; }); //For accesibility var acc = '.tabbable, a, select, .button, .heart_img, .task-name, \ .wishlist, .view-fp, .js-participants, \ .pdp_question_mark, .delete, \ .conversation_item, .conversation_compose_icon_container, .checkBox'; $('body').on('keydown', acc, function(e) { var code = e.which; if (((code === 13) || (code === 32)) && !($(this).hasClass('fc-button'))) { //availablility calendar, no 'double click' //for navbar to peform the 'hover' action if(($(this).hasClass('wishlist') && !$(this).hasClass('heart_img') )|| $(this).hasClass('shop') || $(this).hasClass('myaccount') || $(this).hasClass('shopping')){ e.preventDefault(); $(this).mouseenter(); } else { var $this = $(this); var tagName = $this.prop('tagName'); // for Button, key press of space and enter will trigger click automatically // for link, key press of enter will trigger click automatically // VP-19892 if(tagName=='BUTTON'){ return; } else if(tagName=='A' && code==13){ return; } else{ if(code==g_keycodes.space){ //e.preventDefault(); // VP-20854 if($(this).is(':checkBox') ){ return; // vp-20788 } } $(this).click(); } } } $('.js-filter-hint').attr('tabindex', '0'); //able to tab through active days on calendar $('.cal-day-box.day.active').attr('tabindex', '0'); }); $('body').on('keydown', 'a.close', function(e){ if(e.which == g_keycodes.enter){ $(this).trigger('click'); } }) // $('#complete-signup-submit').click(function() {// var url = $("#redirectURL").val();// input = $("#complete-signup-password");// if(input.val() === '' || input.val() === input.attr('default-value')) {// displayError("#complete-signup-error","Please enter a password");// return false;// } else if(input.val().length < 7){// displayError("#complete-signup-error","Password must be at least 7 characters long");// return false;// }//// $.post( '/m/website/completeSignUp',// $("#complete-signup-form").serialize(),// function (data){// if (data.result === 1) {// ga('send', 'event', 'Member Activity', 'Member Activity - Complete Sign Up for emailAddress Users');// if (url !== '' && url !== '#') {// setTimeout(function() { location.href = url; }, 1000);// } else {// setTimeout(function() { location.reload(); }, 1000);// }// } else {// displayError("#complete-signup-error",data.msg);// }// },'json');//// return false;// }); $('.collapsible-container-header').on('click', function() { // used in pdp and charityAdmin var collapsibleContainerHeader = $(this); var collapseContainer = $(this).parent('.collapsible-container'); var content = collapseContainer.find('.content'); content.slideToggle(function() { if (content.hasClass('active')) { collapsibleContainerHeader.addClass('rotate'); content.removeClass('active'); collapseContainer.find('.icon').html('+'); } else { // Need to run 'add more' link when the reviews are visible if (collapseContainer.hasClass('review-container')){ $(".reviews-section").find('.review_content').each(function(){ ifonly_add_read_more_link($(this)); }); } collapsibleContainerHeader.removeClass('rotate'); content.addClass('active'); collapseContainer.find('.icon').html('-'); } }); });});function showMemberTermsAndPrivacyDialog(context, tandcIds, translatedText) { g_forceLogin = true; $('#member-signup-dialog .border-box.sign-in').hide(); $('#member-signup-dialog .close, #member-signup-dialog .ifonly_pop_close_img').hide(); $('#member-signup-dialog #registrationTerms').hide(); loadingAnimation("hide"); $('#member-signup-dialog .terms-border-box .section-header').html(translatedText.headerText); $('#member-signup-dialog .terms-border-box .section-body').html(translatedText.bodyText); $('#member-signup-dialog .terms-border-box .allowAllUsers .title').html(translatedText.buttonText); if (! parseInt(translatedText.textLeft2Right)) { // VP-16719 if user is rtl but session is still ltr $('#member-signup-dialog .terms-border-box .section-header').css("direction","rtl"); $('#member-signup-dialog .terms-border-box .section-body').css("direction","rtl"); } $('#member-signup-dialog .terms-border-box .email-susi-form').show(); $('#member-signup-dialog .terms-border-box').show(); $('#member-signup-dialog').addClass("forTermsAndConditionsMobile"); $('#member-signup-dialog').addClass("no_overlay_close"); // VP-22552 g_signUpContext = context; // see _login_form g_newUserTerms = tandcIds; if (context === 'gotoCart' || context === 'checkout' || context.indexOf("/cart/checkout") === 0 || context.indexOf("/m/cart/checkout") === 0) { $('#member-signup-dialog #login-container-terms').show(); displayOverlay('member-signup-dialog', 'login'); } return;};function showGeneralErrorMsgs($obj, centerErr, msg, appendedClass) { if(!$obj.hasClass("notForValidation")) { if (centerErr === undefined) { centerErr = false; } if(appendedClass === undefined){ appendedClass = ""; } if(msg === undefined) { if($obj.attr("type") === "hidden"){ msg = "Please select an option"; }else{ var fieldName = $obj.attr("fieldname"); if(fieldName === "address"){ fieldName = "street address"; } if(fieldName) { msg = "Please enter %fieldName%".replace("%fieldName%", fieldName); } else { msg = "Please fill in required field"; } } } if($obj.closest(".js-err-con").length > 0) { if($obj.closest(".js-err-con").children(".js-error-general").length > 0 ){ $obj.closest(".js-err-con").children(".js-error-general").remove(); } if(centerErr) { var errorClass = "js-error-general error-general err-center sg-f-bdy " + appendedClass; $obj.closest(".js-err-con").append("

" + msg + "

"); }else{ var errorClass = "js-error-general error-general sg-f-bdy " + appendedClass; $obj.closest(".js-err-con").append("

" + msg + "

"); } } }}function textCounter($obj) { var attrName = ($obj.hasClass("wordCounter") ? "words" : "chars"); var attrNameTranslation = ($obj.hasClass("wordCounter") ? "words" : "chars"); var inputValue = $obj.is('textarea') || $obj.is('input') ? $obj.val() : $obj.text(); var textLength = ($obj.hasClass("wordCounter") && $.trim(inputValue) !== "" ? inputValue.match(/\S+/g).length : inputValue.length); var className = ($obj.hasClass("wordCounter") ? ".wordsRemaining" : ".charRemaining"); if($obj.siblings().find(className).length === 1){ if($.trim(inputValue) !== "" && (parseInt($obj.siblings().find(className).attr(attrName)) - textLength) <= 0) { if($obj.hasClass("min")) { if($obj.hasClass("max") && inputValue.split(/\s+/).length >= parseInt($obj.attr("maxwords"))) { $obj.siblings().find(".wordsRemaining").text("maximum reached"); } else { $obj.siblings().find(className).html("Embark on an enchanting desert safari with Platinum Heritage - Platinum Heritage Desert (2)"); } } else { $obj.siblings().find(className).text("maximum reached"); } $obj.siblings().find(className).show(); $obj.siblings().find(".counter-text").hide(); } else { var remainingText = parseInt($obj.siblings().find(className).attr(attrName)); if($.trim(inputValue) !== "") { remainingText = parseInt($obj.siblings().find(className).attr(attrName)) - textLength; } $obj.siblings().find(className).text(remainingText); $obj.siblings().find(className).show(); if(remainingText === 1) { $obj.siblings().find(className).siblings("span").html("" + attrNameTranslation.slice(0, -1) + " " + "remaining"); } else { $obj.siblings().find(className).siblings("span").html("" + attrNameTranslation + " " + "remaining"); } $obj.siblings().find(className).siblings("span").show(); } }}function onDeviceReady() { // for geolocation // Check to see if the browser supports the GeoLocation API. if (navigator.geolocation) { console.log('geolocation detected!'); // Get the location navigator.geolocation.getCurrentPosition( function(position) { var lat = position.coords.latitude; var lon = position.coords.longitude; //alert(lat + ' ' + lon); var GEOCODING = 'https://maps.googleapis.com/maps/api/geocode/json?latlng=' + lat + '%2C' + lon + '&key=AIzaSyC0maY5si28S9FM1Wna4eK9xoyHLdJs6ik'; $.getJSON(GEOCODING).done(function(location) { //alert(JSON.stringify(location)); $.ajax({ type: "POST", url: "/website/updateGeoInfo", dataType: 'json', data: {geoInfo: location.results}, success: function(data) { if(data.result === 1) { //alert(1); //window.location.reload(); } } }); }); }, function (error) { if (error.code === error.PERMISSION_DENIED) { console.log("location permission denied"); } } // callback if user denies permission ); } else { // Print out a message to the user. document.write('Your browser does not support GeoLocation :('); } return;}function getCCTypeName(ccNum) { const cards = [["Visa",/^4[0-9]{12}([0-9]{3})?$/],["Mastercard",/^5[1-5][0-9]{14}$/],["Mastercard",/^222[1-9][0-9]{12}$/],["Mastercard",/^22[3-9][0-9]{13}$/],["Mastercard",/^2[3-6][0-9]{14}$/],["Mastercard",/^27[01][0-9]{13}$/],["Mastercard",/^2720[0-9]{12}$/],["American Express",/^3[47][0-9]{13}$/],["Discover",/^6011[0-9]{12}$/],["Discover",/^622[0-9]{13}$/],["Discover",/^6[45][0-9]{14}$/],["Maestro",/^(50|56|57|58)[0-9]{11,16}$/],["Maestro",/^6[0-9]{15,18}$/]]; for (const [name, pattern] of cards) { if (pattern.test(ccNum)) { return name; } } return false;}function getValueWordString(valueStr, wordStr, func, wordOnly) { var str = ''; $.ajax({ type: "POST", url: "/common/getValueWordString", dataType: 'json', async: false, data: {valueStr: valueStr, wordStr: wordStr, func: func, wordOnly: wordOnly}}) .done( function(data){ if(data.str !== undefined) { str = data.str; } }); return str;}function favoriteTracking(type, id, name, event) { }function onScriptGlobal(name, cb) { // Use the global if already set (script loaded). if (window[name] !== undefined) { cb(window[name]); return; } // Listen for each tag to load (capture phase). const listener = () => { if (window[name] !== undefined) { document.removeEventListener('load', listener, true); cb(window[name]); } }; document.addEventListener('load', listener, true);}function adobeSatelliteTracking(name, data) { onScriptGlobal('_satellite', t => { if (g_thisHost !== 'www') { console.log('adobe satellite script loaded, name: '+name); console.log('data: '+JSON.stringify(data)); } if (data === undefined) { t.track(name); } else { t.track(name, data); } });}function facebookTracking(type, name) { if (g_thisHost !== 'www') { console.log('facebook tracking script loaded: type = '+type+', name:'+name); } if (typeof(name) === 'undefined') { fbq(type); } else { fbq(type, name); }}

Embark on an enchanting desert safari with Platinum Heritage - Platinum Heritage Desert (9)

Embark on an enchanting desert safari with Platinum Heritage - Platinum Heritage Desert (10)

'); $('.cat-marquee').hide(); toggleMenuDisplay = $('.toggle-menu').css('display'); } } } else { console.log(data); } $(_this).removeClass('disabled'); }, 'json' ); return false; }); if (tour !== ''){ $("#tour"+tour).attr("slide", slide); $("#tour"+tour).trigger("click"); } $("#tour-overlay .leftArrow").click(function(){ var index = getIndex(); updateUrl(index); }); $("#tour-overlay .rightArrow").click(function(){ var index = getIndex(); updateUrl(index); }); $("#tour-overlay").on("click", ".wishlist .white", function() { if(!g_is_guest){ if(imageTypeId === '34'){ //only change wishlist for current item $(this).hide(); $(this).siblings(".green").fadeIn(); }else{ //product tourUI $("#tour-overlay .wishlist .white").hide(); $("#tour-overlay .wishlist .green").fadeIn(); } } }); $("#tour-overlay").on("click", ".share-box", function(event){ event.stopPropagation(); }); $("#tour-overlay").on("click", ".tour-close", function(){ history.pushState(null, null, originalUrl); $("#tour-overlay").siblings().not("script, style, #filter-overlay, .filterLoading, .filter-icon-box").show(); $('.toggle-menu').css({'display':toggleMenuDisplay}); $("#tour-overlay").hide(); hideShareBox(); $("#footer").show(); }); function initScroller(){ $("#tour-overlay").siblings().not("#header-m, script, style").hide(); $("#footer").hide(); $("#tour-overlay").show(); $("#tour-overlay .scroll").scrollable({ prev: '#tour-overlay .leftArrow', next: '#tour-overlay .rightArrow', speed: 200, circular: true, touch: true, onSeek: function(event, index) { $(".share-box").hide(); updateUrl(index+1); hideOtherTourItems(index); } }); } //Codes to handle rotate jQuery(window).on('orientationchange', function(e) { switch ( window.orientation ) { case 0: case 180: width = Math.min($(window).width(), screen.width); break; case 90: case -90: width = Math.max($(window).width(), screen.width); break; } var index = getIndex() + 1; var contentWidth = width-60; var imgHeight = $(".tourImage", "#tour-overlay .active").height(); var contentHeight = $(".content", "#tour-overlay .active").outerHeight(); var height = contentHeight + imgHeight; var arrowTop = imgHeight/2-30; var left = -1 * index * width; animateArrows(arrowTop); $("#tour-overlay .tourImage").css({"width": width+"px"}); $("#tour-overlay .share-box").css({"width": width+"px"}); $("#tour-overlay .content").css({"width": contentWidth+"px"}); $("#tour-overlay .scroll").css({"width": width +"px", "height": height+"px"}); $("#tour-overlay .pics").css({"left":left}); }); function updateUrl(index){ var url = window.location.href; var slideIndex = url.indexOf("slide"); history.pushState(null, null, url.substring(0, slideIndex)+"slide/"+index); } // Hide other scroll celebrity items to avoid ctrl+F5 issue function hideOtherTourItems(index){ //var nth = index + 2; /* index starts 0, nth-child starts 1, need to add 1 for cloned */ //var $select = $("#tour-overlay .pics > div:nth-child(" + nth + ")"); var $select = $(".tourImage:visible").closest('div').closest('div'); var imgHeight = $(".tourImage", $select).height(); var contentHeight = $(".content", $select).outerHeight(); var height = contentHeight + imgHeight; var arrowTop = imgHeight/2-30; $select.siblings().removeClass("active"); $select.siblings().addClass("inactive"); animateArrows(arrowTop); $select.removeClass("inactive"); $select.addClass("active"); $("#tour-overlay .scroll").css({"width": width, "height": height}); if(windowHeight > height){ $("#tour-overlay").css({"height": windowHeight+20, "background": "none repeat scroll 0 0 #333"}); } } function getIndex(){ var index = parseInt($(".scroll .active .pageNumber").attr("number")) - 1; if(index <= 0) index = size; return index; } function animateArrows(arrowTop){ if (arrowTop < 0) { arrowTop = 320; } $("#tour-overlay .leftArrow").css({"top":arrowTop, "left":-30}); $("#tour-overlay .leftArrow").animate({left: "0", easing: 'easeout'}, 400); $("#tour-overlay .rightArrow").css({"top":arrowTop, "right":-30}); $("#tour-overlay .rightArrow").animate({right: "0", easing: 'easeout'},400); } });

Buy this experience as a gift

Extraordinary experiences are wonderful to share. Gifting a Priceless experience is easy. Here's how:

  • Leave the dates blank so that your gift recipient can provide dates that work for them
  • Add this experience to your shopping cart by clicking on "Buy Now"
  • Click “This order is a gift”
  • You'll be able to enter your gift recipient's email and add a gift message
  • Your gift recipient will receive this experience and be able to schedule it when they're ready
  • The Experience

    Climb into a vintage 1950s Land Rover and embark on an enchanting desert safari in one of Dubai's most fascinating private nature reserves. Invite your special someone to join you on this romantic adventure, where you'll camp under the stars, dine on savoury Emirati dishes, and indulge in aromatic shisha. You'll watch for local wildlife like gazelles and oryx and stay in a luxurious Bedouin camp. A drone will document your trip, allowing you to revisit your adventure whenever you wish. Exclusively for Mastercard cardholders.

    What's priceless

    Journeying back in time with the one you love most nestled amongst the golden desert dunes.

    The highlights

    • Go on a desert safari in a private nature reserve
    • Stay in an upscale Bedouin camp featuring majlis-style décor and traditional fire lamps
    • Partake in cultural highlights like camel rides, henna, Emirati dishes, and shisha
    • Take home a drone-shot video of your adventures

    Details

    • Experience is for a minimum of 2 people and a maximum of 4
    • By clicking "Add to cart", you agree to all our Terms of Use
    • Terms & Conditions

    Fine Print

    • Will be scheduled on a mutually agreeable date and time, based on partner's availability
    • This experience is non-refundable after scheduling is complete
      • Interests

        • Entertainment
        • Arts and Culture
        • Sports
        • Culinary
        • Travel
        • Shopping
      • Card benefits

        • All benefits
        • Travel benefits
        • Hotel benefits
        • Lifestyle benefits
        • Shopping benefits
        • Insurance benefits
      • Interests

        • Entertainment
        • Arts and Culture
        • Sports
        • Culinary
        • Travel
        • Shopping
      • Card benefits

        • All benefits
        • Travel benefits
        • Hotel benefits
        • Lifestyle benefits
        • Shopping benefits
        • Insurance benefits
    ' + response.feed.entry[i].gd$email[0].address + ''); } } loading('100%'); } else { alertEx('No contacts were found.'); } } ); }); } function loading(percent){ $('.progress span').animate({width:percent},500,function(){ $('.progress-percentage').html(percent); if (percent === '100%'){ $('.progress-percentage').html('Loading Complete'); setTimeout(function(){ hide_ifonly_overlay('.sweepstake_email_share_loading_overlay'); loading('0%'); if ( ! stopLoading ) { show_ifonly_overlay('.sweepstake_email_share_list_overlay'); } },1000); } }); } $(".sweepstake_email_share_loading_overlay").on("click", "#sweepstake-email-share-loading-cancel", function(){ stopLoading = true; hide_ifonly_overlay('.sweepstake_email_share_loading_overlay'); }); $(".sweepstake_email_share_list_overlay").on("click", "#sweepstake-email-share-import-button", function(){ var email = ""; var total = $("#sweepstake-email-share-list li.selected").length; $("#sweepstake-email-share-list li.selected").each(function(index){ if(index == total -1 ) { email = email + $(this).children('p').text(); } else { email = email + $(this).children('p').text() + ', '; } }); $("#sweepstake-email-share-dialog2 .sweepstakeShareWith").val(email); hide_ifonly_overlay('.sweepstake_email_share_list_overlay'); grecaptcha.reset(g_sweepstake_email_share_recaptcha_id2); show_ifonly_overlay("#sweepstake-email-share-dialog2"); //$("#sweepstake-email-share-dialog2").overlay().load(); }); $("#sweepstake-email-share-select-all").click(function(){ if ($(this).hasClass('selected')) { $(this).removeClass('selected'); $("#sweepstake-email-share-list li").removeClass('selected'); } else { $(this).addClass('selected'); $("#sweepstake-email-share-list li").addClass('selected'); } }); $("#sweepstake-email-share-list").on('click', 'li',function(){ if ($(this).hasClass('selected')) { $(this).removeClass('selected'); } else { $(this).addClass('selected'); } }); $("#sweepstake-import-gmail").click(function(){ getGmailContacts(); return false; }); $("#sweepstake-share-dialog").appendTo("body"); //$("#sweepstake-email-share-dialog").appendTo("body"); //$("#sweepstake-email-share-dialog2").appendTo("body"); $('body').append($('.focus_placeholder')); if(typeof($("#sweepstake-share-dialog").overlay) === typeof(Function)){ $("#sweepstake-share-dialog").overlay({ top: 'center', fixed: true, closeOnClick: true, mask: { color: '#000000', loadSpeed: 200, closeSpeed:0, opacity: 0.5 }, onLoad: function(){ ga('send', 'event', 'Sweepstake Activity', 'Sweepstake Activity - Share'); ga('send', 'pageview', 'Sweepstake Share Dialog'); $.post('/website/logPageView',{'pageId':this.getOverlay().attr('id')},function(data){},'json'); saveFocusedEle($("#sweepstake-share-dialog")); $("#sweepstake-share-dialog").focus(); }, onClose: function(){ loadFocusedEle($("#sweepstake-share-dialog")); } }); $('body').on('keydown', '#sweepstake-share-dialog', function(e){ if(e.which==g_keycodes.tab){ trap_focus($(this)); } }); /* $("#sweepstake-email-share-dialog").overlay({ top: 'center', fixed: true, closeOnClick: true, mask: { color: '#000000', loadSpeed: 200, closeSpeed:0, opacity: 0.5 }, onLoad: function(){ ga('send', 'event', 'Sweepstake Activity', 'Sweepstake Activity - Email Share'); ga('send', 'pageview', 'Sweepstake Email Share Dialog'); $.post('/website/logPageView',{'pageId':this.getOverlay().attr('id')},function(data){},'json'); } }); */ add_ifonly_overlay_click_handlers('#sweepstake-email-share-dialog', true, { onLoadCallback: function(){ ga('send', 'event', 'Sweepstake Activity', 'Sweepstake Activity - Email Share'); ga('send', 'pageview', 'Sweepstake Email Share Dialog'); $.post('/website/logPageView',{'pageId':'sweepstake-email-share-dialog'},function(data){},'json'); } }); /* $("#sweepstake-email-share-dialog2").overlay({ top: 'center', fixed: true, closeOnClick: true, mask: { color: '#000000', loadSpeed: 200, closeSpeed:0, opacity: 0.5 }, onLoad: function(){ ga('send', 'event', 'Sweepstake Activity', 'Sweepstake Activity - Email Share'); ga('send', 'pageview', 'Sweepstake Email Share Dialog'); $.post('/website/logPageView',{'pageId':this.getOverlay().attr('id')},function(data){},'json'); } }); */ add_ifonly_overlay_click_handlers('#sweepstake-email-share-dialog2', true, { onLoadCallback: function(){ ga('send', 'event', 'Sweepstake Activity', 'Sweepstake Activity - Email Share'); ga('send', 'pageview', 'Sweepstake Email Share Dialog'); $.post('/website/logPageView',{'pageId':'sweepstake-email-share-dialog2'},function(data){},'json'); } }); } function checkEmailAddressList(emailAddressList, form) { $(form + " .errorSummary").hide(); var emails = emailAddressList.split(","); var wrongEmails = []; $.each(emails,function(i, email){ email = $.trim(email); if ( email !== "" && ! validateEmail(email) ) { wrongEmails.push(email); } }); if (wrongEmails.length > 0 ) { var message = "Please check folowing emails and try again." + "

    • " + wrongEmails.join('
    • ') + '

    '; displayError( form + " .errorSummary", message); return false; } var validEmails = []; $.each(emails,function(i, email){ email = $.trim(email); if ( email !== "" ) { validEmails.push(email); } }); if (validEmails.length === 0 ) { displayError( form + " .errorSummary", "Please enter email address."); return false; } return true; } $('#sweepstake-email-share-button, #sweepstake-email-share-button2').click(function(){ $(this).closest('.overlay, .ifonly_overlay').find('.errorSummary').hide(); var shareWith = $(this).closest('.overlay, .ifonly_overlay').find(".sweepstakeShareWith"); var shareText = $(this).closest('.overlay, .ifonly_overlay').find(".sweepstakeShareText"); if (shareWith.val() === "") { displayError(".sweepstake-share-form:visible .errorSummary", "Please enter at least one email address."); return false; } if(grecaptcha.getResponse().length === 0 && $('#g-recaptcha-response-1').val().length === 0) { displayError(".sweepstake-share-form:visible .errorSummary", "Please click checkbox to confirm you are not a robot."); return false; } if (! checkEmailAddressList(shareWith.val(), "#" + $(this).closest('.overlay, .ifonly_overlay').attr('id') + " .sweepstake-share-form")) { return false; } var dataArr = {}; var ajaxUrl = ''; var captcha = ''; captcha = grecaptcha.getResponse(); if (captcha.length === 0) { captcha = $('#g-recaptcha-response-1').val(); } if(typeof share_pId !== 'undefined') { ajaxUrl = '/website/sendShareEmail'; dataArr = { 'productId': share_pId, 'url' : encodeURIComponent(share_pUrl + '/s/8324'), 'email' : shareWith.val(), 'message' : shareText.val(), 'captcha' : captcha }; } else { ajaxUrl = '/website/sendShareWishlistEmail'; //goes in here dataArr = {'email' : shareWith.val(), 'message' : shareText.val(), 'captcha' : captcha }; } if(ajaxUrl !== '') { $.ajax({ type: 'POST', url: ajaxUrl, data: dataArr, dataType: 'json', success: function(data){ if(data.result) { console.log(data.result, 2); alertEx("Share email will be sent to your friend(s) shortly."); shareWith.val(''); shareText.val(''); if (data.productTracking) { adobeSatelliteTracking('Share wishlist', data.productTracking); } } else { console.log(data, 3); alert(data.msg); } }, error: (xhr, status, err) => { console.log(xhr, status, err); alert('Error'); } }); } hide_ifonly_overlay("#sweepstake-email-share-dialog"); return false; }); $('.sweepstake-share-by-facebook').click(function(){ if (g_is_guest) { $("#signUp-dialog-called-from").val(signUpDialogCalledFromValue); signupDialog(1,false); } else { adobeSatelliteTracking('CTA Click', {"productId":"175442","offerName":"Embark on an enchanting desert safari with Platinum Heritage","offerCategory":"Travel","merchantName":"Platinum Heritage Desert","offerType":"13 - Meeting Schedulable Physical","contentCity":"Dubai","contentCountry":"AE","ctaName":"Social Share","ctaLocation":"Link Facebook","offerDate":"0000-00-00 00:00:00"}); facebookShare(share_pId, share_pUrl + '/langId/1' + '/s/8320', share_pName); if($('#sweepstake-share-dialog').length>0){ $('#sweepstake-share-dialog').overlay().close(); }// FB.login(function(response) {// if (response.authResponse) {// facebookShare(share_pId, share_pUrl, share_pName);// $('#sweepstake-share-dialog').overlay().close();// alertEx('Thanks for sharing.');// }// }, {scope:'email, user_birthday, user_photos'}); } return false; }); $('.sweepstake-share-by-twitter').click(function(){ if (g_is_guest) { $("#signUp-dialog-called-from").val(signUpDialogCalledFromValue); signupDialog(1,false); return false; } else { adobeSatelliteTracking('CTA Click', {"productId":"175442","offerName":"Embark on an enchanting desert safari with Platinum Heritage","offerCategory":"Travel","merchantName":"Platinum Heritage Desert","offerType":"13 - Meeting Schedulable Physical","contentCity":"Dubai","contentCountry":"AE","ctaName":"Social Share","ctaLocation":"Link Twitter","offerDate":"0000-00-00 00:00:00"}); twitterShare(175442); } }); $('.sweepstake-share-by-pinterest').click(function(){ if (g_is_guest) { $("#signUp-dialog-called-from").val(signUpDialogCalledFromValue); signupDialog(1,false); return false; } else { adobeSatelliteTracking('CTA Click', {"productId":"175442","offerName":"Embark on an enchanting desert safari with Platinum Heritage","offerCategory":"Travel","merchantName":"Platinum Heritage Desert","offerType":"13 - Meeting Schedulable Physical","contentCity":"Dubai","contentCountry":"AE","ctaName":"Social Share","ctaLocation":"Link Pinterest","offerDate":"0000-00-00 00:00:00"}); pinterestShare(175442); } }); $('.sweepstake-share-by-external-email').click(function(){ if (g_is_guest) { $("#signUp-dialog-called-from").val(signUpDialogCalledFromValue); signupDialog(1,false); return false; } else { adobeSatelliteTracking('CTA Click', {"productId":"175442","offerName":"Embark on an enchanting desert safari with Platinum Heritage","offerCategory":"Travel","merchantName":"Platinum Heritage Desert","offerType":"13 - Meeting Schedulable Physical","contentCity":"Dubai","contentCountry":"AE","ctaName":"Social Share","ctaLocation":"Link Email","offerDate":"0000-00-00 00:00:00"}); emailShare(175442, true); } }); $('.sweepstake-share-by-email, .js-share-wishlist').click(function() { _share_wishlist_clicked.apply(this); return false; }); // $("#sweepstake-import-yahoo").click(function(){ // getYahooContacts(); // return false; // });});function _share_wishlist_clicked(){ if($(this).hasClass('js-share-wishlist') && $('ul#wishlist').find('li').length === 0) { alertEx("There are no products in your wishlist to share."); return false; } if (g_is_guest) { if($(this).hasClass('sweepstake-share-by-email')) { $("#signUp-dialog-called-from").val(signUpDialogCalledFromValue); } signupDialog(1,false); } else { if($("#sweepstake-share-dialog").length > 0) { $("#sweepstake-share-dialog").overlay().close(); } if($(this).hasClass('sweepstake-share-by-email')) { $('#sweepstake-email-share-dialog h5.section-header').text("Share this through Email"); $('#sweepstake-email-share-dialog #sweepstake-email-share-button .title').text("Share"); $('#sweepstake-email-share-dialog2 h5.section-header').text("Share this through Email"); $('#sweepstake-email-share-dialog2 #sweepstake-email-share-button2 .title').text("Share"); } else if($(this).hasClass('js-share-wishlist')) { $('#sweepstake-email-share-dialog h5.section-header').text("Share wishlist"); $('#sweepstake-email-share-dialog #sweepstake-email-share-button .title').text("Share wishlist"); $('#sweepstake-email-share-dialog2 h5.section-header').text("Share wishlist"); $('#sweepstake-email-share-dialog2 #sweepstake-email-share-button2 .title').text("Share wishlist"); } grecaptcha.reset(g_sweepstake_email_share_recaptcha_id1); show_ifonly_overlay("#sweepstake-email-share-dialog"); //$("#sweepstake-email-share-dialog").overlay().load(); } return false;}var g_sweepstake_email_share_recaptcha_id1 = null; var g_sweepstake_email_share_recaptcha_id2 = null; function sweepstake_email_share_recaptcha_ini(){ g_sweepstake_email_share_recaptcha_id1 = grecaptcha.render('sweepstake-email-share-dialog-recaptcha', { 'sitekey' : '6LflSDsUAAAAAGiD5rB13NrifjzXahQTGEyJAB9s', 'hl': 'en', }); g_sweepstake_email_share_recaptcha_id2 = grecaptcha.render('sweepstake-email-share-dialog2-recaptcha', { 'sitekey' : '6LflSDsUAAAAAGiD5rB13NrifjzXahQTGEyJAB9s', 'hl': 'en', });}

    Top Articles
    Latest Posts
    Article information

    Author: Nathanial Hackett

    Last Updated: 01/16/2023

    Views: 5996

    Rating: 4.1 / 5 (72 voted)

    Reviews: 87% of readers found this page helpful

    Author information

    Name: Nathanial Hackett

    Birthday: 1997-10-09

    Address: Apt. 935 264 Abshire Canyon, South Nerissachester, NM 01800

    Phone: +9752624861224

    Job: Forward Technology Assistant

    Hobby: Listening to music, Shopping, Vacation, Baton twirling, Flower arranging, Blacksmithing, Do it yourself

    Introduction: My name is Nathanial Hackett, I am a lovely, curious, smiling, lively, thoughtful, courageous, lively person who loves writing and wants to share my knowledge and understanding with you.