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

Simple Daily Eats

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

Simple Daily Eats

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

Amish Hamburger Steak Bake

Jump to Recipe·Print Recipe

If you’re looking for a warm, comforting meal that feels like a hug on a plate, the Amish Hamburger Steak Bake is exactly what you need. This hearty dish is perfect for busy weeknights or family gatherings, bringing together succulent hamburger steaks baked in a creamy gravy that just screams comfort food. It’s a favorite in many households across the US and UK, offering a taste of nostalgia with every bite.

Amish Hamburger Steak Bake image 2

What makes this dish truly special is its simplicity. With just a handful of wholesome ingredients, you can create a deliciously satisfying dinner that will leave everyone asking for seconds. It’s not just a meal; it’s an experience that brings people together around the table.

Amish Hamburger Steak Bake image 3
Amish Hamburger Steak Bake image 4

Why You’ll Love This Recipe

  • Quick and Easy: Whip this up in no time with simple steps and minimal prep.
  • Family-Friendly: Everyone loves juicy hamburger steaks smothered in rich gravy; it’s sure to please picky eaters!
  • Comforting Flavors: The combination of savory beef and creamy sauce creates an irresistible taste that warms your soul.
  • Perfect for Meal Prep: Make it ahead of time! This dish stores well and tastes even better the next day.
  • Versatile Pairings: Serve it with mashed potatoes, rice, or crusty bread to soak up all that delicious gravy.

Ingredients You’ll Need

This recipe calls for straightforward, wholesome ingredients that you likely already have in your pantry. Together, they create layers of flavor and richness that make this dish irresistible.

For the Hamburger Steaks

  • 2 lbs Ground beef (80/20 blend for best flavor)
  • 1/2 cup Breadcrumbs (Plain or seasoned)
  • 1 Egg (Beaten)
  • 1 Onion (Finely diced)
  • 2 tsp Salt
  • 1 tsp Black pepper

For the Gravy

  • 3 tbsp Butter (Salted or unsalted)
  • 3 tbsp All-purpose flour (For thickening gravy)
  • 2 cups Beef broth (Low sodium preferred)
  • 1 cup Heavy cream
  • 1 Onion (Sliced)
  • 1 tsp Garlic powder

Variations

One of the best things about the Amish Hamburger Steak Bake is its flexibility! Feel free to get creative with these variations to suit your taste preferences.

  • Swap the protein: Instead of ground beef, try using ground turkey or chicken for a lighter option.
  • Make it vegetarian: Use plant-based ground meat alternatives and vegetable broth to create a delicious vegetarian version.
  • Add some greens: Toss in some spinach or kale into the gravy for added nutrition without sacrificing flavor.
  • Spice it up: Incorporate some chili flakes or hot honey into the gravy for a delightful kick!

How to Make Amish Hamburger Steak Bake

Step 1: Prepare the Patties

In a large bowl, gently mix together your ground beef, breadcrumbs, beaten egg, diced onion, salt, and pepper. Be careful not to overmix; we want tender patties! Form them into 6–8 oval shapes. Letting them rest while you prepare the gravy helps them hold their shape during cooking.

Step 2: Brown the Patties

Heat an oven-safe skillet over medium-high heat. Brown each patty for about 3–4 minutes per side until they’re golden brown. This step adds depth of flavor through browning; plus, it creates a lovely crust on each patty that’ll be delightful once baked.

Step 3: Sauté Onions and Make Gravy

In the same skillet where you browned the patties, sauté sliced onions in butter until they’re soft and fragrant. Stir in flour and cook for about 2 minutes before whisking in low-sodium beef broth and heavy cream. This forms your luscious gravy base—so comforting!

Step 4: Bake It All Together

Nestle those beautiful patties back into the skillet with the gravy. Cover tightly with foil and bake at 350°F for 45 minutes. Then uncover and bake for an additional 15 minutes to allow everything to meld beautifully together.

Step 5: Serve and Enjoy!

Once it’s out of the oven, let it rest for about 10 minutes—this helps lock in all those amazing flavors. Serve alongside mashed potatoes or your favorite sides, and watch as everyone digs into this comforting Amish Hamburger Steak Bake!

Pro Tips for Making Amish Hamburger Steak Bake

Cooking this comforting dish can be a breeze with a few helpful tips to ensure perfect results every time!

  • Choose the Right Beef: Using an 80/20 blend of ground beef ensures a juicy and flavorful hamburger steak that won’t dry out during baking.

  • Let Patties Rest: Allowing the formed patties to rest before cooking helps them hold their shape better and promotes even cooking throughout.

  • Don’t Rush the Gravy: Sauté the onions slowly in butter to enhance their sweetness; this adds depth to your creamy gravy and elevates the overall flavor.

  • Adjust Consistency: If your gravy is too thick after baking, whisk in a little extra beef broth or cream until you reach your desired consistency before serving.

How to Serve Amish Hamburger Steak Bake

Presenting your Amish Hamburger Steak Bake can make your meal even more inviting. Here are some creative serving ideas to consider:

Garnishes

  • Fresh parsley: A sprinkle of chopped fresh parsley adds a pop of color and freshness that brightens up the rich flavors.
  • Chopped green onions: Adding sliced green onions provides a slight crunch and a burst of flavor that complements the dish well.

Side Dishes

  • Mashed potatoes: Creamy mashed potatoes are a classic pairing, perfect for soaking up the delicious gravy.
  • Steamed green beans: Their crisp texture adds contrast and balance, making for a well-rounded plate.
  • Roasted carrots: Sweet, caramelized roasted carrots provide a lovely sweetness that pairs beautifully with the savory hamburger steaks.
  • Coleslaw: A refreshing coleslaw can add a crunchy, tangy element, balancing out the richness of the dish.

Make Ahead and Storage

This Amish Hamburger Steak Bake is a fantastic choice for meal prep, allowing you to enjoy a hearty, comforting dinner with minimal fuss throughout the week.

Storing Leftovers

  • Store any leftover Amish Hamburger Steak Bake in an airtight container in the refrigerator.
  • It will keep well for up to 3-4 days.
  • To prevent the gravy from becoming too thick, consider adding a splash of broth or cream before storing.

Freezing

  • Allow the dish to cool completely before freezing.
  • Portion into freezer-safe containers or bags for easy reheating later.
  • Label with the date and freeze for up to 2-3 months for best quality.

Reheating

  • Thaw overnight in the refrigerator if frozen.
  • Reheat in the oven at 350°F until warmed through, about 20-30 minutes.
  • Alternatively, use a microwave, heating on medium power in short intervals until hot.

FAQs

Here are some common questions about this comforting dish:

Can I use lean ground beef for Amish Hamburger Steak Bake?

While you can use lean ground beef, using an 80/20 blend is recommended for optimal flavor and juiciness. Leaner cuts may result in a drier texture.

How do I serve Amish Hamburger Steak Bake?

Amish Hamburger Steak Bake pairs beautifully with creamy mashed potatoes or rice. Simply spoon the rich gravy over your side dishes for a complete meal.

Can I make Amish Hamburger Steak Bake ahead of time?

Absolutely! This recipe is perfect for meal prep. You can prepare it in advance and store it in the fridge or freezer until you’re ready to bake and serve.

What should I do if the gravy is too thick?

If your gravy turns out too thick, simply whisk in a little extra broth or cream while reheating to reach your desired consistency.

Final Thoughts

This Amish Hamburger Steak Bake is not just a meal; it’s a warm embrace on a plate! With its savory flavors and creamy gravy, it’s sure to become a family favorite. I hope you enjoy making this delicious dish as much as I do—it’s perfect for gathering around the table with loved ones. Happy cooking!

Print

Amish Hamburger Steak Bake

Print Recipe

5 Stars 4 Stars 3 Stars 2 Stars 1 Star

No reviews

Amish Hamburger Steak Bake is the ultimate comfort food that warms your heart and satisfies your cravings. This delightful dish features juicy hamburger steaks smothered in a rich, creamy gravy, making it perfect for cozy family dinners or busy weeknights. With its simple preparation and wholesome ingredients, it’s a meal everyone will love. Pair it with mashed potatoes or your favorite bread to soak up the delicious gravy, and you have a hearty dinner that feels like a warm hug on a plate.

  • Author: Sarah Mitchell
  • Prep Time: 20 minutes
  • Cook Time: 60 minutes
  • Total Time: 1 hour 20 minutes
  • Yield: Serves approximately 6
  • Category: Main
  • Method: Baking
  • Cuisine: American

Ingredients


Scale

  • 2 lbs ground beef (80/20 blend)
  • 1/2 cup breadcrumbs
  • 1 egg (beaten)
  • 2 onions (one diced, one sliced)
  • 3 tbsp butter
  • 3 tbsp all-purpose flour
  • 2 cups beef broth (low-sodium)
  • 1 cup heavy cream
  • Salt
  • Black pepper

Instructions

  1. In a large bowl, combine ground beef, breadcrumbs, beaten egg, diced onion, salt, and pepper. Form into 6–8 oval patties.
  2. Heat an oven-safe skillet over medium-high heat and brown patties for 3–4 minutes per side until golden brown.
  3. Sauté sliced onions in the same skillet with butter until soft. Stir in flour and cook for 2 minutes.
  4. Gradually whisk in beef broth and heavy cream to create the gravy.
  5. Nestle patties back into the skillet with gravy, cover with foil, and bake at 350°F for 45 minutes; uncover and bake for an additional 15 minutes.

Nutrition

  • Serving Size: 1 serving
  • Calories: 480
  • Sugar: 2g
  • Sodium: 680mg
  • Fat: 30g
  • Saturated Fat: 15g
  • Unsaturated Fat: 12g
  • Trans Fat: 0g
  • Carbohydrates: 19g
  • Fiber: <1g
  • Protein: 34g
  • Cholesterol: 120mg

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.simpledailyeats.com\/wp-admin\/admin-ajax.php”,”ratingNonce”:”0fb74771f0″,”postId”:3170};
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 );
});

« Previous Post
Mint Chocolate Tart (Paleo, Vegan, No Bake)
Next Post »
Steak Burrito Bowl

If you enjoyed this…

Frozen Banana Snacks

Frozen Banana Snacks

Chocolate Tiramisu Cupcakes

Chocolate Tiramisu Cupcakes

Soft Strawberry Cheesecake Cookies - Sweet & Creamy Bites

Soft Strawberry Cheesecake Cookies – Sweet & Creamy Bites

Primary Sidebar

Browse by Diet

HealthyBudgetKetoQuickVeganCheat Meal
Chili-Lime Quinoa Black Bean Salad with Corn

Chili-Lime Quinoa Black Bean Salad with Corn

Garlic Butter Beef Bites with Potatoes

Garlic Butter Beef Bites with Potatoes

Mediterranean Bean Salad

Mediterranean Bean Salad

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

© 2026 Simple Daily Eats · All Rights Reserved · Created with heart by Sarah Mitchell · About · Privacy Policy · Terms & Conditions · Disclaimer · Affiliate Disclosure · Contact