/* Default comment here */
jQuery(document).ready(function() {
var swiper = new Swiper(".hero-banner", {
autoplay: {
delay: 3000, // Set delay in milliseconds (adjust as needed)
disableOnInteraction: false, // Autoplay will continue after user interaction
},
loop: true,
navigation: {
nextEl: ".swiper-button-next",
prevEl: ".swiper-button-prev",
},
});
jQuery('.toggle-category-button').click(function() {
jQuery('.food-category-con').slideToggle(); // Use slideToggle() for a sliding effect
});
});
jQuery(document).ready(function($) {
$('.food-category-item-box').each(function() {
if ($(this).find('.food-category-sub-items').children().length > 0) {
$(this).find('.category-dropdown-arrow').show();
} else {
$(this).find('.category-dropdown-arrow').hide();
}
});
$('.category-dropdown-arrow').on('click', function() {
var $currentSubItems = $(this).siblings('.food-category-sub-items');
$('.food-category-sub-items').not($currentSubItems).slideUp();
$currentSubItems.slideToggle();
});
});
jQuery(document).ready(function($) {
$('.copy_link_button').on('click', function(event) {
console.log('clicked');
event.preventDefault();
var linkToCopy = $(this).find('a').attr('href');
var jQuerytempInput = $('<input>');
$('body').append(jQuerytempInput);
jQuerytempInput.val(linkToCopy).select();
document.execCommand('copy');
jQuerytempInput.remove();
console.log('Link copied: ' + linkToCopy);
$(this).find('span').text('Copied');
setTimeout(() => {
$(this).find('span').text('Copy Link');
}, 2000);
});
});
jQuery(document).ready(function($) {
function applyBlendMode() {
if ($('.food-menu-products-main.loading').length) {
$('body').css({
'background-color': '#0000005e',
'mix-blend-mode': 'overlay'
});
} else {
$('body').css({
'background-color': '',
'mix-blend-mode': ''
});
}
}
const observer = new MutationObserver(function(mutationsList) {
applyBlendMode();
});
observer.observe(document.body, { attributes: true, childList: true, subtree: true });
applyBlendMode();
});
jQuery(document).ready(function ($) {
// Opening and closing indication JS code start
function isRestaurantOpen(restaurant) {
var timezone = restaurant.data('timezone');
if (!timezone) {
console.error("Invalid timezone: ", timezone);
timezone = 'UTC'; // Fallback to UTC if timezone is invalid
}
var hours = restaurant.data('hours');
var currentDate = new Date();
var options = { timeZone: timezone, hour: '2-digit', minute: '2-digit', hour12: true };
var currentTimeString = new Intl.DateTimeFormat('en-US', options).format(currentDate);
var currentTime = parseTime(currentTimeString);
var currentDayIndex = currentDate.toLocaleDateString('en-US', { timeZone: timezone, weekday: 'long' });
var dayHours = getDayHoursForToday(hours, currentDayIndex);
if (dayHours === "Closed") {
return { open: false, message: "Currently Closed", className: "closed" };
}
var timeRange = dayHours.split("–");
if (timeRange.length < 2) {
console.error(`Invalid time range format: ${dayHours}`);
return { open: false, message: "Invalid Time Format", className: "closed" };
}
var openTime = parseTime(timeRange[0].trim());
var closeTime = parseTime(timeRange[1].trim());
if (isTimeBetween(currentTime, openTime, closeTime)) {
return { open: true, message: "Currently Open", className: "open" };
} else {
return { open: false, message: "Currently Closed", className: "closed" };
}
}
function parseTime(timeString) {
var [hour, minutePart] = timeString.replace(/[^0-9:APM]/gi, '').split(":");
var minute = parseInt(minutePart.match(/\d+/) || "0");
var isPM = timeString.toUpperCase().includes("PM");
hour = parseInt(hour);
if (isPM && hour !== 12) hour += 12;
if (!isPM && hour === 12) hour = 0;
return { hour, minute };
}
function getCurrentTimeInMinutes(time) {
return time.hour * 60 + time.minute;
}
function isTimeBetween(current, open, close) {
var currentMinutes = getCurrentTimeInMinutes(current);
var openMinutes = getCurrentTimeInMinutes(open);
var closeMinutes = getCurrentTimeInMinutes(close);
if (openMinutes > closeMinutes) {
return currentMinutes >= openMinutes || currentMinutes < closeMinutes;
}
return currentMinutes >= openMinutes && currentMinutes < closeMinutes;
}
function getDayHoursForToday(hours, currentDayName) {
var lines = hours.replace(/<br\s*\/?>/g, '\n').split('\n');
for (var line of lines) {
var [day, time] = line.split(": ");
if (day.trim() === currentDayName) {
return time || "Closed";
}
}
return "Closed";
}
// Loop through each restaurant
$('.restaurant-time').each(function () {
var $this = $(this);
var status = isRestaurantOpen($this);
$this.html(status.message);
$this.closest('.restaurant-time').removeClass('open closed').addClass(status.className); // Update the container class
});
function updateRestaurantStatus(container) {
$(container).find('.restaurant-time').each(function () {
var $this = $(this);
var status = isRestaurantOpen($this);
$this.html(status.message);
$this.closest('.restaurant-time').removeClass('open closed').addClass(status.className);
});
}
// Opening and closing indication JS code end
$('#all-restaurants').prop('checked', true).prop('disabled', true);
var previousResponse = '';
var canLoadMore = false; // To track if more posts can be loaded
var paged = 2; // For pagination
var loading = false; // To track if a request is in progress
function getSearchTerm() {
return $('#food-menu-search').val();
}
function getSelectedTaxonomies() {
var selectedTaxonomies = [];
$('.restaurant-filter:checked').each(function () {
selectedTaxonomies.push($(this).data('termid'));
});
return selectedTaxonomies;
}
function filterPosts(searchTerm, selectedTaxonomies, isInitialLoad = false) {
$.ajax({
type: 'POST',
url: '/wp-admin/admin-ajax.php',
data: {
action: 'filter_restaurants',
search_term: searchTerm,
taxonomies: selectedTaxonomies
},
beforeSend: function () {
if (!isInitialLoad) {
$('#food-menu-container').addClass('loading');
}
},
success: function (response) {
if (response.data && response.data.content !== previousResponse) {
$('#food-menu-container').html(response.data.content);
previousResponse = response.data.content;
canLoadMore = response.data.has_more_posts; // Update based on response
updateRestaurantStatus('#food-menu-container');
} else {
canLoadMore = false; // No posts available
}
},
complete: function () {
if (!isInitialLoad) {
$('#food-menu-container').removeClass('loading');
}
loading = false; // Allow new requests
}
});
}
// Initial load with "All Restaurants" selected
filterPosts(getSearchTerm(), getSelectedTaxonomies(), true);
// Handle filter change
$('.restaurant-filter').on('change', function () {
const allRestaurantsCheckbox = $('#all-restaurants');
const selectedCheckbox = $(this);
if (selectedCheckbox.is(allRestaurantsCheckbox)) {
// If "All Restaurants" is checked, uncheck all others and disable them
if (selectedCheckbox.is(':checked')) {
$('.restaurant-filter').not(allRestaurantsCheckbox).prop('checked', false).prop('disabled', true);
} else {
// If unchecked, enable all other filters
$('.restaurant-filter').not(allRestaurantsCheckbox).prop('disabled', false);
}
} else {
// If any other checkbox is checked
if (selectedCheckbox.is(':checked')) {
// Uncheck "All Restaurants" and disable it
allRestaurantsCheckbox.prop('checked', false).prop('disabled', true);
// Uncheck all other checkboxes except the current one
$('.restaurant-filter').not(selectedCheckbox).prop('checked', false);
} else {
// If no other checkboxes are selected, enable "All Restaurants"
if ($('.restaurant-filter:checked').length === 0) {
allRestaurantsCheckbox.prop('checked', true).prop('disabled', true);
}
}
}
paged = 2; // Reset pagination
filterPosts(getSearchTerm(), getSelectedTaxonomies());
});
// Handle search input
$('#food-menu-search').on('input', function () {
paged = 2; // Reset pagination
filterPosts(getSearchTerm(), getSelectedTaxonomies());
});
// Handle "Load More" functionality on scroll
$(window).scroll(function () {
if (canLoadMore && !loading && $(window).scrollTop() + $(window).height() >= $(document).height() - 100) {
loading = true;
const searchTerm = getSearchTerm();
const selectedTaxonomies = getSelectedTaxonomies();
$.ajax({
url: '/wp-admin/admin-ajax.php',
type: 'POST',
data: {
action: 'load_more_restaurants',
paged: paged,
search_term: searchTerm,
taxonomies: selectedTaxonomies,
},
beforeSend: function () {
$('#food-menu-container').append('<div class="loading-text">Loading...</div>');
},
success: function (response) {
if (response.data && response.data.content) {
$('#food-menu-container').append(response.data.content);
paged++;
canLoadMore = response.data.has_more_posts;
updateRestaurantStatus('#food-menu-container');
} else {
canLoadMore = false;
}
},
complete: function () {
$('.loading-text').remove();
loading = false;
},
});
}
});
});
jQuery(document).ready(function($){
var content = $('.rest-list-wrapp .elementor-cta__description');
var maxLength = 150;
content.each(function() {
var fullText = $(this).text();
if(fullText.length > maxLength){
var shortText = fullText.substring(0, maxLength);
$(this).html(
shortText +
'<span class="dots">...</span>' +
'<span class="more-text" style="display:none;">' +
fullText.substring(maxLength) +
'</span>' +
' <a href="#" class="read-more">Read More</a>'
);
}
});
$(document).on('click', '.read-more', function(e){
e.preventDefault();
var parent = $(this).closest('.rest-list-wrapp .elementor-cta__description');
parent.find('.dots, .more-text').toggle();
if($(this).text() === 'Read More'){
$(this).text('Read Less');
} else {
$(this).text('Read More');
}
});
});
jQuery(window).on('load', function() {
if( jQuery('#all-restaurents').length > 0 ) {
jQuery('#all-restaurents').trigger('click');
}
});
jQuery(document).ready(function() {
// Attach a click event handler to the accordion title link
jQuery('.fw-bold.text-decoration-none').on('click', function() {
var accordionID = $(this).attr('href'); // Get the href value of the clicked accordion title
var radioButtons = $(accordionID + ' input[type=radio]'); // Get all radio buttons inside the accordion
if (radioButtons.length === 1) {
radioButtons.prop('checked', true).trigger('click'); // If only one radio button, check it
}
});
});
Since we should all be eating less animal protein, we are grateful Santa Fe provides a cornucopia of vegetarian and vegan dining options.
Annapurna—This 100% vegetarian restaurant serves authentic Ayurvedic food. Situated on St. Michael’s, don’t let the strip center detract you. The food is flavorful, good, and good for you.
Cafecito—Hidden in the arts area of Baca, this light and airy space is always welcoming. Sit on one of two outdoor patios or inside where the space is filled with plants.
Chef Nath’s Inspired Khmer Cuisine—Her small space at CHOMP is quickly gaining the attention it deserves. Chef Nath cooks up Thai specialties that are packed with vegetables. Open Wednesday through Sunday at CHOMP, contact Chef Nath for special dinners or catering inquiries.
Counter Culture—This cash-only spot serves us breakfast and lunch and closes at 3 pm. The menu is diverse and offers plenty of vegetarian and vegan choices.
Jambo—This is a local favorite with plenty of vegetarian options.
Opuntia—Now located in the Railyard, this is a favorite for vegetarians. But don’t expect to linger because there is no free WiFi.
Paper Dosa—A vegetarian’s delight, Paper Dosa is a South Indian restaurant that has so many delicious options to choose from. And their entire menu is naturally gluten-free as well.
Plant-Base Cafe—This newcomer to the restaurant scene is gaining the attention of vegetarians and vegans with their diverse and tasty menu options.
Plantita Vegan Bakery—Chef Thomas makes exquisite vegan pastries, bagels and other related treats you won’t believe are vegan. If you don’t catch one of Thomas’s pop-up sales, you will need to place an order online and pick it up as he does not have a supply ready to go.
Sweetwater Harvest Kitchen—This 100% gluten-free kitchen offers lots of vegetarian and vegan dishes.
The Teahouse—This lovely spot along Canyon Road offers an array of offerings for vegans and vegetarians. And be sure to sample one of their stellar teas to top off a lovely meal.
Tune-Up Cafe—Featured on Diner’s Drive-Ins and Dives, vegetarians will flip for the pupusa plate.
Vinaigrette—Though this restaurant is salad-centric, vegetarians and vegans will fall hard for the many choices and don’t miss the stellar mushroom stew. Order the bowl because you won’t want to share. It’s the heartiest, most savory, delicious soup you’ll ever have.
Join our Newsletter
Be the first to know about local culinary news, events, and more! Stay in the loop with email updates about foodie happenings, restaurant news, and upcoming events. You can unsubscribe anytime. Just enter your email below to sign up.
Become a Patron
Support Santa Fe Foodies and dive into the food scene!
$
19
99 Billed yearly
Full Unlocked Features
Benefits and discounts include-25% off HORNO appetizers, 20% off The Artisan’s Bottega, 10% off Dinner For Two, 10% off Mille crepes, 10% all Fusion Tacos orders, 10% off all Jesushi orders, 10% off all MacSanta Fe orders, and many more!
jQuery(document).ready(function() {
// Show or hide the back-to-top button based on scroll position
jQuery(window).scroll(function() {
if (jQuery(this).scrollTop() > 500) {
jQuery('#backToTop').fadeIn();
} else {
jQuery('#backToTop').fadeOut();
}
});
// Smooth scroll to top when the back-to-top button is clicked
jQuery('#backToTop').click(function(event) {
event.preventDefault();
jQuery('html, body').animate({ scrollTop: 0 }, 300);
});
});
var elementorFrontendConfig = {"environmentMode":{"edit":false,"wpPreview":false,"isScriptDebug":false},"i18n":{"shareOnFacebook":"Share on Facebook","shareOnX":"Share on X","pinIt":"Pin it","download":"Download","downloadImage":"Download image","fullscreen":"Fullscreen","zoom":"Zoom","share":"Share","playVideo":"Play Video","previous":"Previous","next":"Next","close":"Close","a11yCarouselPrevSlideMessage":"Previous slide","a11yCarouselNextSlideMessage":"Next slide","a11yCarouselFirstSlideMessage":"This is the first slide","a11yCarouselLastSlideMessage":"This is the last slide","a11yCarouselPaginationBulletMessage":"Go to slide"},"is_rtl":false,"breakpoints":{"xs":0,"sm":480,"md":768,"lg":1025,"xl":1440,"xxl":1600},"responsive":{"breakpoints":{"mobile":{"label":"Mobile Portrait","value":767,"default_value":767,"direction":"max","is_enabled":true},"mobile_extra":{"label":"Mobile Landscape","value":880,"default_value":880,"direction":"max","is_enabled":true},"tablet":{"label":"Tablet Portrait","value":1024,"default_value":1024,"direction":"max","is_enabled":true},"tablet_extra":{"label":"Tablet Landscape","value":1200,"default_value":1200,"direction":"max","is_enabled":true},"laptop":{"label":"Laptop","value":1366,"default_value":1366,"direction":"max","is_enabled":true},"widescreen":{"label":"Widescreen","value":2400,"default_value":2400,"direction":"min","is_enabled":true}},"hasCustomBreakpoints":true},"version":"4.2.2","is_static":false,"experimentalFeatures":{"e_font_icon_svg":true,"additional_custom_breakpoints":true,"container":true,"e_panel_promotions":true,"theme_builder_v2":true,"landing-pages":true,"nested-elements":true,"e_atomic_elements":true,"atomic_widgets_should_enforce_capabilities":true,"editor_mcp":true,"e_bc_migrations":true,"e_classes":true,"global_classes_should_enforce_capabilities":true,"e_variables":true,"e_variables_manager":true,"e_opt_in_v4_page":true,"e_opt_in_v4":true,"e_components":true,"e_interactions":true,"e_widget_creation":true,"import-export-customization":true,"e_pro_atomic_form":true,"e_pro_collection_loop":true,"mega-menu":true,"e_pro_variables":true,"e_pro_interactions":true},"urls":{"assets":"https:\/\/santafefoodiesnm.com\/wp-content\/plugins\/elementor\/assets\/","ajaxurl":"https:\/\/santafefoodiesnm.com\/wp-admin\/admin-ajax.php","uploadUrl":"https:\/\/santafefoodiesnm.com\/wp-content\/uploads"},"nonces":{"floatingButtonsClickTracking":"6c6332074c","atomicFormsSendForm":"ce20f4d876"},"swiperClass":"swiper","settings":{"page":[],"editorPreferences":[]},"kit":{"active_breakpoints":["viewport_mobile","viewport_mobile_extra","viewport_tablet","viewport_tablet_extra","viewport_laptop","viewport_widescreen"],"global_image_lightbox":"yes","lightbox_enable_counter":"yes","lightbox_enable_fullscreen":"yes","lightbox_enable_zoom":"yes","lightbox_enable_share":"yes","lightbox_title_src":"title","lightbox_description_src":"description"},"post":{"id":13731,"title":"Vegan%2FVegetarian-Where%20The%20Locals%20Go-Free%20-%20Santa%20Fe%20Foodies","excerpt":"","featuredImage":"https:\/\/santafefoodiesnm.com\/wp-content\/uploads\/2022\/02\/Santa-Fe-Foodies-Youtube-title-page-2560x1440-1-1024x576.jpg"}};
//# sourceURL=elementor-frontend-js-before