• Skip to primary navigation
  • Skip to main content
  • Skip to primary sidebar

Quick Daily Dish

  • Home
  • Recipe Index
  • Budget
  • Cheat Meal
  • Healthy
  • Keto
  • Quick
  • Vegan
  • About
  • Contact

Quick Daily Dish

  • Home
  • Recipe Index
  • Budget
  • Cheat Meal
  • Healthy
  • Keto
  • Quick
  • Vegan
  • About
  • Contact

Spanish Churro-Inspired Pancakes: A Breakfast Delight!

Jump to Recipe·Print Recipe

If you’re looking for a breakfast treat that brings a smile to your face and a sweet start to your day, then you absolutely must try these Spanish Churro-Inspired Pancakes: A Breakfast Delight! They perfectly combine the crispy edges and fluffy inside of pancakes with that delightful sweet and spicy churro flavor. This recipe is not only easy but also makes for a fantastic weekend brunch or a special weekday breakfast when you want to indulge just a little.

Spanish Churro-Inspired Pancakes: A Breakfast Delight! image 2

These pancakes are family-friendly and sure to be a hit with both kids and adults alike. Imagine gathering around the table, sharing laughter, and enjoying these delicious treats together—what could be better?

Spanish Churro-Inspired Pancakes: A Breakfast Delight! image 3
Spanish Churro-Inspired Pancakes: A Breakfast Delight! image 4

Why You’ll Love This Recipe

  • Quick to prepare: You can whip these up in just 30 minutes, making them perfect for busy mornings!
  • Family favorite: With their delightful flavor, everyone will want seconds (or thirds!).
  • Versatile topping options: From fresh fruit to whipped cream, you can customize each plate to suit everyone’s taste.
  • Make-ahead friendly: Prepare the batter ahead of time and store it in the fridge for an even quicker breakfast option.
  • A fun twist on tradition: It’s pancakes—with a churro flair! Who wouldn’t love that?

Ingredients You’ll Need

These Spanish Churro-Inspired Pancakes use simple, wholesome ingredients that you likely have on hand. Let’s gather everything you need for this delicious treat!

  • 1 cup all-purpose flour
  • 2 tablespoons sugar
  • 1 tablespoon baking powder
  • 1/2 teaspoon salt
  • 1 cup milk
  • 1 large egg
  • 2 tablespoons melted butter
  • 1 teaspoon vanilla extract
  • 1/2 cup cinnamon sugar (for topping)

Variations

This pancake recipe is wonderfully flexible, allowing you to make it your own! Here are some fun variations you can try:

  • Add chocolate chips: Fold in some chocolate chips into the batter for an extra indulgent twist.
  • Go gluten-free: Substitute all-purpose flour with a gluten-free flour blend for a similar fluffy texture.
  • Make it vegan: Use almond milk instead of cow’s milk, flax eggs in place of the egg, and coconut oil instead of melted butter.
  • Infuse with fruit: Add mashed bananas or blueberries into the batter for an added burst of flavor.

How to Make Spanish Churro-Inspired Pancakes: A Breakfast Delight!

Step 1: Mix the Dry Ingredients

In a large bowl, whisk together the flour, sugar, baking powder, and salt. This step ensures that all the dry ingredients are evenly distributed, which is key for achieving those light and fluffy pancakes.

Step 2: Combine Wet Ingredients

In another bowl, mix together the milk, egg, melted butter, and vanilla extract. These ingredients add moisture and flavor to your pancakes, making them irresistibly delicious.

Step 3: Combine Wet and Dry Mixtures

Pour the wet ingredients into the bowl with the dry mixture. Stir until just combined—don’t worry if there are a few lumps! Overmixing can lead to dense pancakes, and we want them fluffy.

Step 4: Heat Your Skillet

Preheat a non-stick skillet over medium heat and lightly grease it. This will create a nice golden-brown crust on your pancakes while keeping them from sticking.

Step 5: Cook the Pancakes

For each pancake, pour about 1/4 cup of batter onto the skillet. Cook until bubbles form on the surface; this typically takes about 2-3 minutes. Flipping them at just the right time is crucial for that perfect fluffiness!

Step 6: Add Cinnamon Sugar

Once flipped, cook until they turn golden brown on both sides. Remove from skillet and immediately sprinkle generous amounts of cinnamon sugar on top—this gives them that signature churro sweetness!

Step 7: Serve Warm

Repeat with the remaining batter until all pancakes are cooked. Serve warm with your favorite toppings like fresh fruit or whipped cream—and enjoy this delicious spin on breakfast!

Pro Tips for Making Spanish Churro-Inspired Pancakes: A Breakfast Delight!

To ensure your pancakes turn out perfect every time, keep these helpful tips in mind!

  • Use fresh ingredients: Fresh baking powder and milk will give your pancakes a better rise and texture, making them fluffier and more delightful.

  • Don’t overmix the batter: Mixing just until combined helps keep the pancakes light and airy. Overmixing can lead to dense pancakes, which aren’t as enjoyable.

  • Preheat your skillet: A properly heated skillet ensures even cooking. Test the heat by sprinkling a few drops of water—if they sizzle, you’re good to go!

  • Adjust cooking temperature as needed: If your pancakes are browning too quickly, lower the heat slightly. You want them golden brown on the outside while remaining fluffy on the inside.

  • Serve immediately for best results: These pancakes are best enjoyed warm. Keep them in a low oven (around 200°F) if you need to make multiple batches, but serve them right away for that fresh-out-of-the-pan experience!

How to Serve Spanish Churro-Inspired Pancakes: A Breakfast Delight!

Presenting your Spanish Churro-Inspired Pancakes beautifully can enhance the breakfast experience. Here are some delightful serving ideas!

Garnishes

  • Fresh fruit: Sliced strawberries or bananas add color and freshness that balances the sweetness of the pancakes.
  • Whipped cream: A dollop of dairy-free whipped cream adds a creamy texture that complements the cinnamon sugar perfectly.

Side Dishes

  • Yogurt parfait: Layer dairy-free yogurt with granola and fruit for a healthy side that provides a nice crunch alongside your pancakes.
  • Scrambled eggs: Fluffy scrambled eggs offer protein and a savory contrast to the sweet pancakes, making for a well-rounded meal.
  • Sautéed spinach: Lightly sautéed spinach adds a nutritious element to your breakfast plate while providing a pop of color.
  • Maple syrup: While not traditional for churros, a drizzle of maple syrup can add an extra layer of sweetness if desired!

Make Ahead and Storage

These Spanish Churro-Inspired Pancakes are perfect for meal prep, allowing you to enjoy a delightful breakfast even on busy mornings.

Storing Leftovers

  • Store any leftover pancakes in an airtight container in the refrigerator.
  • They will keep well for up to 3 days.
  • For best taste, reheat them before serving.

Freezing

  • Allow pancakes to cool completely before freezing.
  • Place parchment paper between layers of pancakes to prevent sticking.
  • Store in a freezer-safe bag or container for up to 2 months.

Reheating

  • To reheat, place pancakes in a toaster or toaster oven until warm.
  • Alternatively, microwave them for 20-30 seconds until heated through.
  • Serve with fresh cinnamon sugar for that just-made flavor!

FAQs

Can I make Spanish Churro-Inspired Pancakes ahead of time?

Absolutely! These pancakes are great for meal prep. You can cook them ahead and store them in the fridge or freezer for a quick breakfast option later.

How do I serve Spanish Churro-Inspired Pancakes?

Serve your Spanish Churro-Inspired Pancakes warm, sprinkled with cinnamon sugar. Pair them with your favorite syrup or fresh fruit for added sweetness!

What can I use instead of eggs in this recipe?

If you’re looking for an egg substitute, you can use flaxseed meal mixed with water (1 tablespoon flaxseed meal + 2.5 tablespoons water = 1 egg) or a commercial egg replacer.

Final Thoughts

I hope you enjoy making these delicious Spanish Churro-Inspired Pancakes as much as I do! They’re a unique twist on traditional pancakes that will surely brighten your breakfast table. Don’t forget to share your creations with family and friends; they’ll love it too!

Print

clock clock iconcutlery cutlery iconflag flag iconfolder folder iconinstagram instagram iconpinterest pinterest iconfacebook facebook iconprint print iconsquares squares iconheart heart iconheart solid heart solid icon

Spanish Churro-Inspired Pancakes: A Breakfast Delight!

5 Stars 4 Stars 3 Stars 2 Stars 1 Star

No reviews

Print Recipe

Indulge in a delightful start to your day with these Spanish Churro-Inspired Pancakes! Combining the crispy edges and fluffy center of traditional pancakes with the sweet and spicy flavor reminiscent of churros, this recipe is perfect for a weekend brunch or a special weekday treat. In just 30 minutes, you can whip up a batch that will have your family and friends gathering around the table with smiles on their faces. Customize each pancake with your favorite toppings, from fresh fruit to creamy delights, making breakfast not just a meal but an experience. These pancakes are sure to be a hit with both kids and adults alike!

  • Total Time:

    30 minutes
  • Yield:

    Makes approximately 8 pancakes 1x

Ingredients


Scale
  • 1 cup all-purpose flour
  • 2 tablespoons sugar
  • 1 tablespoon baking powder
  • 1/2 teaspoon salt
  • 1 cup milk
  • 1 large egg
  • 2 tablespoons melted butter
  • 1 teaspoon vanilla extract
  • 1/2 cup cinnamon sugar (for topping)


Instructions

  1. In a large bowl, whisk together flour, sugar, baking powder, and salt until well combined.
  2. In another bowl, mix milk, egg, melted butter, and vanilla extract.
  3. Pour the wet mixture into the dry ingredients and stir gently until just combined—lumps are okay!
  4. Preheat a non-stick skillet over medium heat and lightly grease it.
  5. Pour about 1/4 cup of batter onto the skillet for each pancake. Cook until bubbles form on the surface (about 2-3 minutes), then flip and cook until golden brown on both sides.
  6. Remove from heat and sprinkle generously with cinnamon sugar while warm.
  7. Serve immediately with preferred toppings like fresh fruit or whipped cream.
  • Author: Nova
  • Prep Time: 10 minutes
  • Cook Time: 20 minutes
  • Category: Breakfast
  • Method: Grilling
  • Cuisine: Spanish

Nutrition

  • Serving Size: 1 pancake (50g)
  • Calories: 150
  • Sugar: 8g
  • Sodium: 280mg
  • Fat: 5g
  • Saturated Fat: 3g
  • Unsaturated Fat: 2g
  • Trans Fat: 0g
  • Carbohydrates: 22g
  • Fiber: 1g
  • Protein: 4g
  • Cholesterol: 35mg

Did you make this recipe?

Share a photo and tag us — we can’t wait to see what you’ve made!

window.trCommon={“minRating”:6,”ajaxurl”:”https:\/\/www.quickdailydish.com\/wp-admin\/admin-ajax.php”,”ratingNonce”:”008f82506c”,”postId”:1932};
window.TastyRecipes = window.TastyRecipes || {};

window.TastyRecipes.smoothScroll = {
init() {
document.addEventListener( ‘click’, ( e ) => {
let anchor = e.target;
if ( anchor.tagName !== ‘A’ ) {
anchor = anchor.closest( ‘a.tasty-recipes-scrollto’ );
}

if ( ! anchor || ! anchor.classList.contains( ‘tasty-recipes-scrollto’ ) ) {
return;
}

const elementHref = anchor.getAttribute( ‘href’ );
if ( ! elementHref ) {
return;
}

e.preventDefault();
this.goToSelector( elementHref );
});
},
goToSelector( selector ) {
const element = document.querySelector( selector );
if ( ! element ) {
return;
}
element.scrollIntoView( { behavior: ‘smooth’ } );
}
};

document.addEventListener(
‘DOMContentLoaded’,
() => window.TastyRecipes.smoothScroll.init()
);

(function(){

var bothEquals = function( d1, d2, D ) {
var ret = 0;
if (d1<=D) {
ret++;
}
if (d2<=D) {
ret++;
}
return ret === 2;
};

var frac =function frac(x,D,mixed){var n1=Math.floor(x),d1=1;var n2=n1+1,d2=1;if(x!==n1){while(bothEquals(d1,d2,D)){var m=(n1+n2)/(d1+d2);if(x===m){if(d1+d2d2){d2=D+1;}else {d1=D+1;}break}else if(xD){d1=d2;n1=n2}if(!mixed){return[0,n1,d1];}var q=Math.floor(n1/d1);return[q,n1-q*d1,d1]};frac.cont=function cont(x,D,mixed){var sgn=x<0?-1:1;var B=x*sgn;var P_2=0,P_1=1,P=0;var Q_2=1,Q_1=0,Q=0;var A=Math.floor(B);while(Q_1<D){A=Math.floor(B);P=A*P_1+P_2;Q=A*Q_1+Q_2;if(B-AD){if(Q_1>D){Q=Q_2;P=P_2}else{Q=Q_1;P=P_1}}if(!mixed){return[0,sgn*P,Q];}var q=Math.floor(sgn*P/Q);return[q,sgn*P-q*Q,Q]};

window.tastyRecipesVulgarFractions = JSON.parse(decodeURIComponent(“%7B%22%C2%BC%22%3A%221%2F4%22%2C%22%C2%BD%22%3A%221%2F2%22%2C%22%C2%BE%22%3A%223%2F4%22%2C%22%E2%85%93%22%3A%221%2F3%22%2C%22%E2%85%94%22%3A%222%2F3%22%2C%22%E2%85%95%22%3A%221%2F5%22%2C%22%E2%85%96%22%3A%222%2F5%22%2C%22%E2%85%97%22%3A%223%2F5%22%2C%22%E2%85%98%22%3A%224%2F5%22%2C%22%E2%85%99%22%3A%221%2F6%22%2C%22%E2%85%9A%22%3A%225%2F6%22%2C%22%E2%85%9B%22%3A%221%2F8%22%2C%22%E2%85%9C%22%3A%223%2F8%22%2C%22%E2%85%9D%22%3A%225%2F8%22%2C%22%E2%85%9E%22%3A%227%2F8%22%7D”));

window.tastyRecipesFormatAmount = function(amount, el) {
if ( parseFloat( amount ) === parseInt( amount ) ) {
return amount;
}
var roundType = ‘frac’;
if (typeof el.dataset.amountShouldRound !== ‘undefined’) {
if (‘false’ !== el.dataset.amountShouldRound) {
if ( ‘number’ === el.dataset.amountShouldRound ) {
roundType = ‘number’;
} else if (‘frac’ === el.dataset.amountShouldRound) {
roundType = ‘frac’;
} else if (‘vulgar’ === el.dataset.amountShouldRound) {
roundType = ‘vulgar’;
} else {
roundType = ‘integer’;
}
}
}
if (‘number’ === roundType) {
amount = Number.parseFloat(amount).toPrecision(2);
} else if (‘integer’ === roundType) {
amount = Math.round(amount);
} else if (‘frac’ === roundType || ‘vulgar’ === roundType) {
var denom = 8;
if (typeof el.dataset.unit !== ‘undefined’) {
var unit = el.dataset.unit;
if ([‘cups’,’cup’,’c’].includes(unit)) {
denom = 4;
if (0.125 === amount) {
denom = 8;
}
if (“0.1667″ === Number.parseFloat( amount ).toPrecision(4)) {
denom = 6;
}
}
if ([‘tablespoons’,’tablespoon’,’tbsp’].includes(unit)) {
denom = 2;
}
if ([‘teaspoons’,’teaspoon’,’tsp’].includes(unit)) {
denom = 8;
}
}
var amountArray = frac.cont( amount, denom, true );
var newAmount = ”;
if ( amountArray[1] !== 0 ) {
newAmount = amountArray[1] + ‘/’ + amountArray[2];
if (‘vulgar’ === roundType) {
Object.keys(window.tastyRecipesVulgarFractions).forEach(function(vulgar) {
if (newAmount === window.tastyRecipesVulgarFractions[vulgar]) {
newAmount = vulgar;
}
});
}
}
if ( newAmount ) {
newAmount = ‘ ‘ + newAmount;
}
if ( amountArray[0] ) {
newAmount = amountArray[0] + newAmount;
}
amount = newAmount;
}
return amount;
};

window.tastyRecipesUpdatePrintLink = () => {

const printButton = document.querySelector( ‘.tasty-recipes-print-button’ );

if ( ! printButton ) {
return;
}

const printURL = new URL( printButton.href );
const searchParams = new URLSearchParams( printURL.search );

const unitButton = document.querySelector( ‘.tasty-recipes-convert-button-active’ );
const scaleButton = document.querySelector( ‘.tasty-recipes-scale-button-active’ );

let unit = ”;
let scale = ”;

if ( unitButton ) {
unit = unitButton.dataset.unitType;
searchParams.delete(‘unit’);
searchParams.set( ‘unit’, unit );
}

if ( scaleButton ) {
scale = scaleButton.dataset.amount;
searchParams.set( ‘scale’, scale );
}

const paramString = searchParams.toString();
const newURL = ” === paramString ? printURL.href : printURL.origin + printURL.pathname + ‘?’ + paramString;
const printLinks = document.querySelectorAll( ‘.tasty-recipes-print-link’ );

printLinks.forEach( ( el ) => {
el.href = newURL;
});

const printButtons = document.querySelectorAll( ‘.tasty-recipes-print-button’ );
printButtons.forEach( ( el ) => {
el.href = newURL;
});
};

document.addEventListener( ‘DOMContentLoaded’, () => {

if ( ! window.location.href.includes( ‘/print/’ ) ) {
return;
}

const searchParams = new URLSearchParams( window.location.search );

const unit = searchParams.get( ‘unit’ );
const scale = searchParams.get( ‘scale’ );

if ( unit && ( ‘metric’ === unit || ‘usc’ === unit ) ) {
document.querySelector( ‘.tasty-recipes-convert-button[data-unit-type=”‘ + unit + ‘”]’ ).click();
}

if ( scale && Number(scale) > 0 ) {
document.querySelector( ‘.tasty-recipes-scale-button[data-amount=”‘ + Number(scale) + ‘”]’ ).click();
}
});
}());

(function(){
var buttonClass = ‘tasty-recipes-scale-button’,
buttonActiveClass = ‘tasty-recipes-scale-button-active’,
buttons = document.querySelectorAll(‘.tasty-recipes-scale-button’);
if ( ! buttons ) {
return;
}

buttons.forEach(function(button){
button.addEventListener(‘click’, function(event){
event.preventDefault();
var recipe = event.target.closest(‘.tasty-recipes’);
if ( ! recipe ) {
return;
}
var otherButtons = recipe.querySelectorAll(‘.’ + buttonClass);
otherButtons.forEach(function(bt){
bt.classList.remove(buttonActiveClass);
});
button.classList.add(buttonActiveClass);

var scalables = recipe.querySelectorAll(‘span[data-amount]’);
var buttonAmount = parseFloat( button.dataset.amount );
scalables.forEach(function(scalable){
if (typeof scalable.dataset.amountOriginalType === ‘undefined’
&& typeof scalable.dataset.nfOriginal === ‘undefined’) {
if (-1 !== scalable.innerText.indexOf(‘/’)) {
scalable.dataset.amountOriginalType = ‘frac’;
}
if (-1 !== scalable.innerText.indexOf(‘.’)) {
scalable.dataset.amountOriginalType = ‘number’;
}
Object.keys(window.tastyRecipesVulgarFractions).forEach(function(vulgar) {
if (-1 !== scalable.innerText.indexOf(vulgar)) {
scalable.dataset.amountOriginalType = ‘vulgar’;
}
});
if (typeof scalable.dataset.amountOriginalType !== ‘undefined’) {
scalable.dataset.amountShouldRound = scalable.dataset.amountOriginalType;
}
}
var amount = parseFloat( scalable.dataset.amount ) * buttonAmount;
amount = window.tastyRecipesFormatAmount(amount, scalable);
if ( typeof scalable.dataset.unit !== ‘undefined’ ) {
if ( ! scalable.classList.contains(‘nutrifox-quantity’) ) {
if ( ! scalable.classList.contains(‘nutrifox-second-quantity’) ) {
amount += ‘ ‘ + scalable.dataset.unit;
}
}
}
scalable.innerText = amount;
});

var nonNumerics = recipe.querySelectorAll(‘[data-has-non-numeric-amount]’);
nonNumerics.forEach(function(nonNumeric){
var indicator = nonNumeric.querySelector(‘span[data-non-numeric-label]’);
if ( indicator ) {
nonNumeric.removeChild(indicator);
}
if ( 1 !== buttonAmount ) {
indicator = document.createElement(‘span’);
indicator.setAttribute(‘data-non-numeric-label’, true);
var text = document.createTextNode(‘ (x’ + buttonAmount + ‘)’);
indicator.appendChild(text);
nonNumeric.appendChild(indicator);
}
});

window.tastyRecipesUpdatePrintLink();
});
});
}());

window.TastyRecipes = window.TastyRecipes || {};
window.TastyRecipes.cookMode = {
wakeLockApi: false,
wakeLock: false,
cookModeSelector: ‘.tasty-recipes-cook-mode’,
init() {
if (“wakeLock” in navigator && “request” in navigator.wakeLock) {
this.wakeLockApi = navigator.wakeLock;
}

const cookModes = document.querySelectorAll(this.cookModeSelector);

if (cookModes.length > 0) {
for (const cookMode of cookModes) {
if (this.wakeLockApi) {
cookMode.querySelector(‘input[type=”checkbox”]’).addEventListener(“change”, event => {
this.checkboxChange(event.target);
}, false);
} else {
cookMode.style.display = “none”;
}
}
}
},
checkboxChange(checkbox) {
if (checkbox.checked) {
this.lock();
} else {
this.unlock();
}
},
setCheckboxesState(state) {
const checkboxes = document.querySelectorAll(this.cookModeSelector + ‘ input[type=”checkbox”]’);
for (const checkbox of checkboxes) {
checkbox.checked = state;
}
},
async lock() {
try {
this.wakeLock = await this.wakeLockApi.request(“screen”);
this.wakeLock.addEventListener(“release”, () => {
this.wakeLock = false;
this.setCheckboxesState(false);
});
this.setCheckboxesState(true);
} catch (error) {
this.setCheckboxesState(false);
}
},
unlock() {
if (this.wakeLock) {
this.wakeLock.release();
this.wakeLock = false;
}
this.setCheckboxesState(false);
}
};

(function(callback) {
if (document.readyState !== “loading”) {
callback();
} else {
document.addEventListener(“DOMContentLoaded”, callback);
}
})(() => {
window.TastyRecipes.cookMode.init();
});

window.TastyRecipes = window.TastyRecipes || {};

window.TastyRecipes.staticTooltip = {
element: null,
tooltipElement: null,
deleting: false,
init( element ) {
if ( this.deleting ) {
return;
}
this.element = element;
this.buildElements();
},
destroy() {
if ( ! this.tooltipElement || this.deleting ) {
return;
}

this.deleting = true;
this.tooltipElement.classList.remove( ‘opened’ );

setTimeout( () => {
this.tooltipElement.remove();
this.deleting = false;
}, 500 );
},
buildElements() {
const tooltipElement = document.createElement( ‘div’ );
tooltipElement.classList.add( ‘tasty-recipes-static-tooltip’);
tooltipElement.setAttribute( ‘id’, ‘tasty-recipes-tooltip’ );

const currentTooltipElement = document.getElementById( ‘tasty-recipes-tooltip’ );
if ( currentTooltipElement ) {
document.body.replaceChild( tooltipElement, currentTooltipElement );
} else {
document.body.appendChild( tooltipElement );
}

this.tooltipElement = document.getElementById( ‘tasty-recipes-tooltip’ );
},
show() {
if ( ! this.tooltipElement ) {
return;
}

const tooltipTop = this.element.getBoundingClientRect().top
+ window.scrollY
– 10 // 10px offset.
– this.tooltipElement.getBoundingClientRect().height;
const tooltipLeft = this.element.getBoundingClientRect().left
– ( this.tooltipElement.getBoundingClientRect().width / 2 )
+ ( this.element.getBoundingClientRect().width / 2 ) – 1;
const posLeft = Math.max( 10, tooltipLeft );
this.maybeRemoveTail( posLeft !== tooltipLeft );

this.tooltipElement.setAttribute( ‘style’, ‘top:’ + tooltipTop + ‘px;left:’ + posLeft + ‘px;’ );
this.tooltipElement.classList.add( ‘opened’ );

},
maybeRemoveTail( removeTail ) {
if ( removeTail ) {
this.tooltipElement.classList.add( ‘tr-hide-tail’ );
} else {
this.tooltipElement.classList.remove( ‘tr-hide-tail’ );
}
},
changeMessage( message ) {
if ( ! this.tooltipElement ) {
return;
}
this.tooltipElement.innerHTML = message;
}
};

window.TastyRecipes.ajax = {
sendPostRequest( url, data, success, failure ) {
const xhr = new XMLHttpRequest();
xhr.open( ‘POST’, url, true );
xhr.send( this.preparePostData( data ) );

xhr.onreadystatechange = () => {
if ( 4 !== xhr.readyState ) {
return;
}
if ( xhr.status === 200 ) {
success( JSON.parse( xhr.responseText ) );
return;
}

failure( xhr );
};

xhr.onerror = () => {
failure( xhr );
};
},
preparePostData( data ) {
const formData = new FormData();

for ( const key in data ) {
formData.append( key, data[key] );
}
return formData;
},
};

window.TastyRecipes.ratings = {
defaultRating: 0,
currentRatingPercentage: 100,
savingRating: false,
init( minRating ) {
this.minRating = minRating;

this.formWatchRating();
this.closeTooltipWhenClickOutside();
this.addBodyClassBasedOnSelectedRating();
this.backwardCompFormRatingPosition();
},
formWatchRating() {
const ratings = document.querySelectorAll(‘.tasty-recipes-no-ratings-buttons [data-rating]’);
if ( ratings.length {
event.preventDefault();
this.defaultRating = event.target.closest( ‘.checked’ ).dataset.rating;
this.setCheckedStar( event.target );
this.maybeSendRating( this.defaultRating, event.target );
this.setRatingInForm( this.defaultRating );
} );
}
},
closeTooltipWhenClickOutside() {
window.addEventListener( ‘click’, e => {
// Bailout (don’t remove the tooltip) when the clicked element is a rating star, or it’s the tooltip itself.
if ( e.target.closest( ‘.tasty-recipes-rating’ ) || e.target.classList.contains( ‘tasty-recipes-static-tooltip’ ) ) {
return;
}

window.TastyRecipes.staticTooltip.destroy();
} );
},
setRatingInForm( rating ) {
const ratingInput = document.querySelector( ‘#respond .tasty-recipes-rating[value=”‘ + rating + ‘”]’ );
if ( ! ratingInput ) {
return;
}
ratingInput.click();
},
addBodyClassBasedOnSelectedRating() {
const ratingInputs = document.querySelectorAll( ‘input.tasty-recipes-rating’ );
if ( ! ratingInputs ) {
return;
}
for ( const ratingInput of ratingInputs ) {
ratingInput.addEventListener( ‘click’, currentEvent => {
const selectedRating = currentEvent.target.getAttribute( ‘value’ );
this.handleBodyClassByRating( selectedRating );
this.toggleCommentTextareaRequired( selectedRating );
} );
}
},
handleBodyClassByRating( rating ) {
if ( rating < this.minRating ) {
document.body.classList.remove( 'tasty-recipes-selected-minimum-rating' );
return;
}
document.body.classList.add( 'tasty-recipes-selected-minimum-rating' );
},
toggleCommentTextareaRequired( rating ) {
const commentTextarea = document.getElementById( 'comment' );
if ( ! commentTextarea ) {
return;
}

if ( rating {
window.TastyRecipes.staticTooltip.changeMessage( response.data.message );
window.TastyRecipes.staticTooltip.show();
this.updateAverageText( response.data, recipeCardElement );
this.maybeFillCommentForm( response.data );

// Hide the tooltip after 5 seconds.
setTimeout( () => {
this.maybeResetTooltip( recipeCardElement, response.data, rating );
}, 5000 );
},
() => {
this.resetTooltip( recipeCardElement );
}
);
},
updateAverageText( data, recipeCardElement ) {
if ( ! data.average ) {
return;
}
this.setRatingPercent( data );

if ( ! data.count ) {
return;
}

const quickLink = document.querySelector( ‘.tasty-recipes-rating-link’ );
if ( quickLink ) {
this.setTextInContainer( quickLink, data );
this.setPartialStar( quickLink );
}

const cardStars = recipeCardElement.querySelector( ‘.tasty-recipes-ratings-buttons’ );
cardStars.dataset.trDefaultRating = data.average;
this.setTextInContainer( recipeCardElement.querySelector( ‘.tasty-recipes-rating’ ), data );
},
setTextInContainer( container, data ) {
if ( ! container ) {
return;
}

if ( data.label ) {
const ratingLabelElement = container.querySelector( ‘.rating-label’ );
if ( ratingLabelElement ) {
ratingLabelElement.innerHTML = data.label;
}
return;
}

const averageElement = container.querySelector( ‘.average’ );
if ( averageElement ) {
averageElement.textContent = data.average;
}

const countElement = container.querySelector( ‘.count’ );
if ( countElement ) {
countElement.textContent = data.count;
}
},
setPartialStar( container ) {
const highestStar = container.querySelector( ‘[data-rating=”‘ + Math.ceil( this.defaultRating ) + ‘”]’ );
if ( highestStar ) {
highestStar.dataset.trClip = this.currentRatingPercentage;
}
},
setRatingPercent( data ) {
this.defaultRating = data.average.toFixed( 1 );
const parts = data.average.toFixed( 2 ).toString().split( ‘.’ );
this.currentRatingPercentage = parts[1] ? parts[1] : 100;
if ( this.currentRatingPercentage === ’00’ ) {
this.currentRatingPercentage = 100;
}
},
setCheckedStar( target ) {
const cardRatingContainer = target.closest( ‘.tasty-recipes-ratings-buttons’ );
const selectedRatingElement = cardRatingContainer.querySelector( ‘[data-tr-checked]’ );
if ( selectedRatingElement ) {
delete selectedRatingElement.dataset.trChecked;
}

const thisStar = target.closest( ‘.tasty-recipes-rating’ );
thisStar.dataset.trChecked = 1;
thisStar.querySelector( ‘[data-tr-clip]’ ).dataset.trClip = 100;
},
maybeFillCommentForm( data ) {
if ( ! data.comment || ! data.comment.content ) {
return;
}

const commentForm = document.querySelector( ‘#commentform’ );
if ( ! commentForm ) {
return;
}

const commentBox = commentForm.querySelector( ‘[name=comment]’ );
if ( ! commentBox || commentBox.value ) {
return;
}

// Add comment details for editing.
commentBox.innerHTML = data.comment.content;
if ( data.comment.name ) {
commentForm.querySelector( ‘[name=author]’ ).value = data.comment.name;
commentForm.querySelector( ‘[name=email]’ ).value = data.comment.email;
}
},
maybeResetTooltip( recipeCardElement, data, rating ) {
if ( this.savingRating === rating ) {
this.resetTooltip( recipeCardElement, data );
}
},
resetTooltip( recipeCardElement, data ) {
window.TastyRecipes.staticTooltip.destroy();
this.savingRating = false;

// Reset the default rating.
const cardRatingContainer = recipeCardElement.querySelector( ‘.tasty-recipes-ratings-buttons’ );
if ( cardRatingContainer ) {
this.defaultRating = ( data && data.average ) ? data.average.toFixed(1) : cardRatingContainer.dataset.trDefaultRating;
cardRatingContainer.dataset.trDefaultRating = this.defaultRating;

this.resetSelectedStar( cardRatingContainer, data );
}
},
resetSelectedStar( cardRatingContainer ) {
const selectedRatingElement = cardRatingContainer.querySelector( ‘[data-rating=”‘ + Math.ceil( this.defaultRating ) + ‘”]’ );
if ( selectedRatingElement ) {
selectedRatingElement.querySelector( ‘[data-tr-clip]’ ).dataset.trClip = this.currentRatingPercentage;
selectedRatingElement.parentNode.dataset.trChecked = 1;
}

const previousSelectedElement= cardRatingContainer.querySelector( ‘[data-tr-checked]’ );
if ( previousSelectedElement ) {
const currentSelectedRating = previousSelectedElement.querySelector(‘[data-rating]’);
if ( currentSelectedRating !== selectedRatingElement ) {
delete previousSelectedElement.dataset.trChecked;
}
}
},
backwardCompFormRatingPosition() {
const ratingsButtons = document.querySelector( ‘#respond .tasty-recipes-ratings-buttons, #tasty-recipes-comment-rating .tasty-recipes-ratings-buttons’ );
if ( ! ratingsButtons ) {
return;
}
const ratingsButtonsStyles = window.getComputedStyle(ratingsButtons);
if ( ! ratingsButtonsStyles.display.includes( ‘flex’ ) ) {
ratingsButtons.style.direction = ‘rtl’;
}

if ( typeof tastyRecipesRating !== ‘undefined’ ) {
// Select the rating that was previously selected in admin.
ratingsButtons.querySelector( ‘.tasty-recipes-rating[value=”‘ + tastyRecipesRating + ‘”]’ ).checked = true;
}

const ratingSpans = ratingsButtons.querySelectorAll( ‘.tasty-recipes-rating’ );
for (const ratingSpan of ratingSpans) {
ratingSpan.addEventListener( ‘click’, event => {
if ( ratingSpan === event.target ) {
return;
}
ratingSpan.previousElementSibling.click();
} );
}
}
};

(function(callback) {
if (document.readyState !== “loading”) {
callback();
} else {
window.addEventListener( ‘load’, callback );
}
})(() => {
window.TastyRecipes.ratings.init( window.trCommon ? window.trCommon.minRating : 4 );
});

REMEMBER

WANT TO SAVE THIS RECIPE? CLICK BELOW AND PIN IT

PIN
« Previous Post
Peach Berry Fruit Salad
Next Post »
Peach Watermelon Salad Without Feta

If you enjoyed this…

Peach Cobbler Cinnamon Rolls with Crumb Topping

Peach Cobbler Cinnamon Rolls with Crumb Topping

Crockpot Mexican Street Corn & Chicken Chowder

Crockpot Mexican Street Corn & Chicken Chowder

Iced Mango Matcha Latte Recipe for a Refreshing Summer Drink

Iced Mango Matcha Latte Recipe for a Refreshing Summer Drink

Primary Sidebar

Browse by Diet

HealthyBudgetKetoQuickVeganCheat Meal
Mediterranean Steak Bowls

Mediterranean Steak Bowls

Iced Oatmeal Cookie Bars Recipe

Iced Oatmeal Cookie Bars Recipe

Steak Cobb Salad with Creamy Avocado Dressing {Whole30, Keto}

Steak Cobb Salad with Creamy Avocado Dressing {Whole30, Keto}

  • Home
  • Recipe Index
  • Budget
  • Cheat Meal
  • Healthy
  • Keto
  • Quick
  • Vegan
  • About
  • Contact

© 2026 Quick Daily Dish · All Rights Reserved · Created by Chef Nova Blake · About · Privacy Policy · Terms & Conditions · Disclaimer · Contact