{"id":9925,"date":"2020-07-14T12:11:51","date_gmt":"2020-07-14T10:11:51","guid":{"rendered":"https:\/\/www.bjarefagel.se\/recept\/pollo-alla-cacciatora\/"},"modified":"2026-06-04T14:12:39","modified_gmt":"2026-06-04T12:12:39","slug":"pollo-alla-cacciatora","status":"publish","type":"recept","link":"https:\/\/www.bjarefagel.se\/en\/recept\/pollo-alla-cacciatora\/","title":{"rendered":"Pollo alla Cacciatora"},"content":{"rendered":"<svg aria-hidden=\"true\" style=\"position: absolute;width: 0;height: 0;overflow: hidden\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n<defs>\n<symbol viewbox=\"9 9 46 42\" id=\"wpt-star-full\">\n\t<path d=\"m46.3 52-14.4-9.5-14.4 9.4L22 35.3 8.7 24.5l17.1-.9 6.2-16 6 16 17.2 1-13.4 10.7z\" \/>\n<\/symbol>\n<\/defs>\n<\/svg>\n<a class=\"button tasty-recipes-print-button tasty-recipes-no-print tasty-recipes-print-above-card\" href=\"https:\/\/www.bjarefagel.se\/en\/recept\/pollo-alla-cacciatora\/print\/5400\/\">Print<\/a><span class=\"tasty-recipes-jump-target\" id=\"tasty-recipes-5400-jump-target\" style=\"display:block;padding-top:2px;margin-top:-2px;\"><\/span><div id=\"tasty-recipes-5400\" data-tr-id=\"5400\" class=\"tasty-recipes tasty-recipes-5400 tasty-recipes-display tasty-recipes-has-image\" data-tasty-recipes-customization=\"primary-color.background-color secondary-color.border-color\">\n\n\n<h2 class=\"tasty-recipes-title\" style=\"text-transform: uppercase !important;\" data-tasty-recipes-customization=\"h2-color.color h2-transform.text-transform\">Pollo alla Cacciatora<\/h2>\n<div class=\"tasty-recipes-image-button-container\">\n\t\t\t<div class=\"tasty-recipes-image\">\n\t\t\t<img decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/www.bjarefagel.se\/wp-content\/uploads\/2020\/07\/Pollo-alla-Cacciatora-\u2013-Toscanajagarens-kyckling_web-e1747045425499-150x150.jpg\" class=\"attachment-thumbnail size-thumbnail\" alt=\"pollo alla cacciatora upplagt i en djup tallrik, serveras med ett glas r\u00f6dvin.\" data-pin-nopin=\"true\" \/>\t\t<\/div>\n\t\t<div class=\"tasty-recipes-buttons\">\n\t\t\t\t<div class=\"tasty-recipes-button-wrap\">\n\t\t\t\n<a class=\"button tasty-recipes-print-button tasty-recipes-no-print\" href=\"https:\/\/www.bjarefagel.se\/en\/recept\/pollo-alla-cacciatora\/print\/5400\/\" target=\"_blank\" data-tasty-recipes-customization=\"\">\n\t\t\t<svg viewBox=\"0 0 24 24\" class=\"svg-print\" aria-hidden=\"true\"><use xlink:href=\"#tasty-recipes-icon-print\"><\/use><\/svg>\n\t\tPrint Recipe<\/a>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n<\/div>\n\t<div class=\"tasty-recipes-rating\" data-tasty-recipes-customization=\"body-color.color\">\n\t\t\t\t\t<p><svg aria-hidden=\"true\" style=\"position: absolute;width: 0;height: 0;overflow: hidden\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n<defs>\n<symbol viewbox=\"9 9 46 42\" id=\"wpt-star-full\">\n\t<path d=\"m46.3 52-14.4-9.5-14.4 9.4L22 35.3 8.7 24.5l17.1-.9 6.2-16 6 16 17.2 1-13.4 10.7z\" \/>\n<\/symbol>\n<\/defs>\n<\/svg>\n<span class=\"tasty-recipes-ratings-buttons tasty-recipes-no-ratings-buttons\"\tdata-tr-default-rating=\"0\"\t>\t\t<span class=\"tasty-recipes-rating\" >\t\t<i class=\"checked\" data-rating=\"5\">\t\t\t<span class=\"tasty-recipes-rating-solid\" data-tr-clip=\"0\">\t\t\t\t<svg class=\"tasty-recipes-svg\" width=\"18\" height=\"17\"><use href=\"#wpt-star-full\" \/><\/svg>\t\t\t<\/span>\t\t\t<span class=\"tasty-recipes-screen-reader\">\t\t\t\t5 Stars\t\t\t<\/span>\t\t<\/i>\t<\/span>\t\t<span class=\"tasty-recipes-rating\" >\t\t<i class=\"checked\" data-rating=\"4\">\t\t\t<span class=\"tasty-recipes-rating-solid\" data-tr-clip=\"0\">\t\t\t\t<svg class=\"tasty-recipes-svg\" width=\"18\" height=\"17\"><use href=\"#wpt-star-full\" \/><\/svg>\t\t\t<\/span>\t\t\t<span class=\"tasty-recipes-screen-reader\">\t\t\t\t4 Stars\t\t\t<\/span>\t\t<\/i>\t<\/span>\t\t<span class=\"tasty-recipes-rating\" >\t\t<i class=\"checked\" data-rating=\"3\">\t\t\t<span class=\"tasty-recipes-rating-solid\" data-tr-clip=\"0\">\t\t\t\t<svg class=\"tasty-recipes-svg\" width=\"18\" height=\"17\"><use href=\"#wpt-star-full\" \/><\/svg>\t\t\t<\/span>\t\t\t<span class=\"tasty-recipes-screen-reader\">\t\t\t\t3 Stars\t\t\t<\/span>\t\t<\/i>\t<\/span>\t\t<span class=\"tasty-recipes-rating\" >\t\t<i class=\"checked\" data-rating=\"2\">\t\t\t<span class=\"tasty-recipes-rating-solid\" data-tr-clip=\"0\">\t\t\t\t<svg class=\"tasty-recipes-svg\" width=\"18\" height=\"17\"><use href=\"#wpt-star-full\" \/><\/svg>\t\t\t<\/span>\t\t\t<span class=\"tasty-recipes-screen-reader\">\t\t\t\t2 Stars\t\t\t<\/span>\t\t<\/i>\t<\/span>\t\t<span class=\"tasty-recipes-rating\" >\t\t<i class=\"checked\" data-rating=\"1\">\t\t\t<span class=\"tasty-recipes-rating-solid\" data-tr-clip=\"0\">\t\t\t\t<svg class=\"tasty-recipes-svg\" width=\"18\" height=\"17\"><use href=\"#wpt-star-full\" \/><\/svg>\t\t\t<\/span>\t\t\t<span class=\"tasty-recipes-screen-reader\">\t\t\t\t1 Star\t\t\t<\/span>\t\t<\/i>\t<\/span><\/span><\/p>\n\t\t\t\t\t\t\t<p><span data-tasty-recipes-customization=\"detail-label-color.color\" class=\"rating-label\">No reviews<\/span><\/p>\n\t\t\t<\/div>\n\n\n\t<div class=\"tasty-recipes-description\" data-tasty-recipes-customization=\"body-color.color\">\n\t\t<p>F\u00f6rslag vin: 2015 Barolo Albe, G.D. Vajra, nr 2398, 750 ml, 249 kr, 91 LGP<\/p>\n<p class=\"MsoNormal\" style=\"margin-bottom: .0001pt;line-height: normal\"><span style=\"font-size: 12.0pt;font-family: &apos;Times New Roman&apos;,serif\">Vinets m\u00f6te med anr\u00e4ttningens krydda och s\u00e4lta gifter sig omedelbart, samtidigt som Barolon f\u00e5ngar upp olivernas instick p\u00e5 ett fint vis. Tanninerna tar ett steg tillbaka i m\u00f6tet, till f\u00f6rm\u00e5n f\u00f6r mineralitet, fruktighet och fr\u00e4sch\u00f6r samtidigt som tomaten f\u00e5r fram en s\u00f6tma i vinet. Detta summeras enkelt till en matchning som g\u00f6r en glad och lycklig, ett skott mitt i krysset och ett superlyckat m\u00f6te mellan Toscana och Piemonte!<\/span><\/p>\n\t<\/div>\n\n\t<div class=\"tasty-recipes-details\" data-tasty-recipes-customization=\"body-color.color\">\n\t\t<ul>\n\t\t\t\t\t\t\t<li class=\"author\"><strong data-tasty-recipes-customization=\"detail-label-color.color\" class=\"tasty-recipes-label\">Author:<\/strong> <span data-tasty-recipes-customization=\"detail-value-color.color\" class=\"tasty-recipes-author-name\">Livets Goda magasin<\/span><\/li>\n\t\t\t\t\t\t\t<li class=\"category\"><strong data-tasty-recipes-customization=\"detail-label-color.color\" class=\"tasty-recipes-label\">Category:<\/strong> <span data-tasty-recipes-customization=\"detail-value-color.color\" class=\"tasty-recipes-category\">Kycklingl\u00e5rfil\u00e9<\/span><\/li>\n\t\t\t\t\t\t\t<li class=\"cuisine\"><strong data-tasty-recipes-customization=\"detail-label-color.color\" class=\"tasty-recipes-label\">Cuisine:<\/strong> <span data-tasty-recipes-customization=\"detail-value-color.color\" class=\"tasty-recipes-cuisine\">Huvudr\u00e4tt<\/span><\/li>\n\t\t\t\t\t<\/ul>\n\t<\/div>\n\n\t<div class=\"tasty-recipes-ingredients\">\n\t\t<div class=\"tasty-recipes-ingredients-header\">\n\t\t\t<div class=\"tasty-recipes-ingredients-clipboard-container\">\n\t\t\t\t<h3 style=\"text-transform: uppercase !important;\" data-tasty-recipes-customization=\"h3-color.color h3-transform.text-transform\">Ingredients<\/h3>\n\t\t\t\t\t\t\t<\/div>\n\t\t\t<div class=\"tasty-recipes-units-scale-container\">\n\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t<div class=\"tasty-recipes-ingredients-body\" data-tasty-recipes-customization=\"body-color.color\">\n\t\t\t<p data-tr-ingredient-checkbox=\"\" class=\"MsoNoSpacing\"><span class=\"tr-ingredient-checkbox-container\"><input type=\"checkbox\" name=\"ingredient_checkbox_6accee01c8199\" id=\"ingredient_checkbox_6accee01c8199\" aria-label=\"Fyra personer:\"><label for=\"ingredient_checkbox_6accee01c8199\"><\/label><\/span><span style=\"font-size: 12.0pt;font-family: 'Times New Roman',serif\">Fyra personer: <\/span><\/p>\n<p><span data-tr-ingredient-checkbox=\"\"><span class=\"tr-ingredient-checkbox-container\"><input type=\"checkbox\" name=\"ingredient_checkbox_6accee01c81a7\" id=\"ingredient_checkbox_6accee01c81a7\" aria-label=\"\u25cf ca 1 kg kycklingl\u00e5rfil\u00e9 med ben fr\u00e5n Bj\u00e4ref\u00e5gel\"><label for=\"ingredient_checkbox_6accee01c81a7\"><\/label><\/span><\/p>\n<p class=\"MsoNoSpacing\"><span style=\"font-size: 12.0pt;font-family: 'Times New Roman',serif\">\u25cf ca 1 kg kycklingl\u00e5rfil\u00e9 med ben fr\u00e5n Bj\u00e4ref\u00e5gel<\/span><br \/>\n<span data-tr-ingredient-checkbox=\"\"><span class=\"tr-ingredient-checkbox-container\"><input type=\"checkbox\" name=\"ingredient_checkbox_6accee01c81ad\" id=\"ingredient_checkbox_6accee01c81ad\" aria-label=\"\u25cf 1 kruka f\u00e4rsk rosmarin\"><label for=\"ingredient_checkbox_6accee01c81ad\"><\/label><\/span><\/span><span style=\"font-family: 'Times New Roman', serif;font-size: 12pt\">\u25cf 1 kruka f\u00e4rsk rosmarin<\/span><br \/>\n<span data-tr-ingredient-checkbox=\"\"><span class=\"tr-ingredient-checkbox-container\"><input type=\"checkbox\" name=\"ingredient_checkbox_6accee01c81b1\" id=\"ingredient_checkbox_6accee01c81b1\" aria-label=\"\u25cf 2 vitl\u00f6ksklyftor\"><label for=\"ingredient_checkbox_6accee01c81b1\"><\/label><\/span><\/span><span style=\"font-family: 'Times New Roman', serif;font-size: 12pt\">\u25cf 2 vitl\u00f6ksklyftor<\/span><br \/>\n<span data-tr-ingredient-checkbox=\"\"><span class=\"tr-ingredient-checkbox-container\"><input type=\"checkbox\" name=\"ingredient_checkbox_6accee01c81b5\" id=\"ingredient_checkbox_6accee01c81b5\" aria-label=\"\u25cf 1 citron\"><label for=\"ingredient_checkbox_6accee01c81b5\"><\/label><\/span><\/span><span style=\"font-family: 'Times New Roman', serif;font-size: 12pt\">\u25cf 1 citron<\/span><br \/>\n<span data-tr-ingredient-checkbox=\"\"><span class=\"tr-ingredient-checkbox-container\"><input type=\"checkbox\" name=\"ingredient_checkbox_6accee01c81b9\" id=\"ingredient_checkbox_6accee01c81b9\" aria-label=\"\u25cf 2 msk tomatpur\u00e9\"><label for=\"ingredient_checkbox_6accee01c81b9\"><\/label><\/span><\/span><span style=\"font-family: 'Times New Roman', serif;font-size: 12pt\">\u25cf 2 msk tomatpur\u00e9<\/span><br \/>\n<span data-tr-ingredient-checkbox=\"\"><span class=\"tr-ingredient-checkbox-container\"><input type=\"checkbox\" name=\"ingredient_checkbox_6accee01c81bd\" id=\"ingredient_checkbox_6accee01c81bd\" aria-label=\"\u25cf 1,5 dl vitt torrt vin\"><label for=\"ingredient_checkbox_6accee01c81bd\"><\/label><\/span><\/span><span style=\"font-family: 'Times New Roman', serif;font-size: 12pt\">\u25cf 1,5 dl vitt torrt vin<\/span><br \/>\n<span data-tr-ingredient-checkbox=\"\"><span class=\"tr-ingredient-checkbox-container\"><input type=\"checkbox\" name=\"ingredient_checkbox_6accee01c81c2\" id=\"ingredient_checkbox_6accee01c81c2\" aria-label=\"\u25cf 1 r\u00e5gad matsked\u00a0sardellcr\u00e8me\"><label for=\"ingredient_checkbox_6accee01c81c2\"><\/label><\/span><\/span><span style=\"font-family: 'Times New Roman', serif;font-size: 12pt\">\u25cf 1 r\u00e5gad matsked\u00a0<\/span><span style=\"font-family: 'Times New Roman', serif\">sardellcr\u00e8me<\/span><span style=\"font-family: 'Times New Roman', serif;font-size: 12pt\"><\/span><br \/>\n<span data-tr-ingredient-checkbox=\"\"><span class=\"tr-ingredient-checkbox-container\"><input type=\"checkbox\" name=\"ingredient_checkbox_6accee01c81c7\" id=\"ingredient_checkbox_6accee01c81c7\" aria-label=\"\u25cf\u00a01 dl svarta oliver\"><label for=\"ingredient_checkbox_6accee01c81c7\"><\/label><\/span><\/span><span style=\"font-family: 'Times New Roman', serif;font-size: 12pt\">\u25cf\u00a0<\/span><span style=\"font-family: 'Times New Roman', serif\">1 dl <\/span><span style=\"font-family: 'Times New Roman', serif;font-size: 12pt\">svarta oliver<\/span><br \/>\n<span data-tr-ingredient-checkbox=\"\"><span class=\"tr-ingredient-checkbox-container\"><input type=\"checkbox\" name=\"ingredient_checkbox_6accee01c81cb\" id=\"ingredient_checkbox_6accee01c81cb\" aria-label=\"\u25cf 2 msk kapris\"><label for=\"ingredient_checkbox_6accee01c81cb\"><\/label><\/span><\/span><span style=\"font-family: 'Times New Roman', serif;font-size: 12pt\">\u25cf 2 msk kapris<\/span><br \/>\n<span data-tr-ingredient-checkbox=\"\"><span class=\"tr-ingredient-checkbox-container\"><input type=\"checkbox\" name=\"ingredient_checkbox_6accee01c81d0\" id=\"ingredient_checkbox_6accee01c81d0\" aria-label=\"\u25cf\u00a0en mindre knippa bladpersilja\"><label for=\"ingredient_checkbox_6accee01c81d0\"><\/label><\/span><\/span><span style=\"font-family: 'Times New Roman', serif;font-size: 12pt\">\u25cf\u00a0<\/span><span style=\"font-family: 'Times New Roman', serif\">en mindre knippa <\/span><span style=\"font-family: 'Times New Roman', serif;font-size: 12pt\">bladpersilja<\/span><br \/>\n<span data-tr-ingredient-checkbox=\"\"><span class=\"tr-ingredient-checkbox-container\"><input type=\"checkbox\" name=\"ingredient_checkbox_6accee01c81d4\" id=\"ingredient_checkbox_6accee01c81d4\" aria-label=\"\u25cf olivolja\"><label for=\"ingredient_checkbox_6accee01c81d4\"><\/label><\/span><\/span><span style=\"font-family: 'Times New Roman', serif;font-size: 12pt\">\u25cf olivolja<\/span><br \/>\n<span data-tr-ingredient-checkbox=\"\"><span class=\"tr-ingredient-checkbox-container\"><input type=\"checkbox\" name=\"ingredient_checkbox_6accee01c81d8\" id=\"ingredient_checkbox_6accee01c81d8\" aria-label=\"\u25cf salt\"><label for=\"ingredient_checkbox_6accee01c81d8\"><\/label><\/span><\/span><span style=\"font-family: 'Times New Roman', serif;font-size: 12pt\">\u25cf salt<\/span><br \/>\n<span data-tr-ingredient-checkbox=\"\"><span class=\"tr-ingredient-checkbox-container\"><input type=\"checkbox\" name=\"ingredient_checkbox_6accee01c81db\" id=\"ingredient_checkbox_6accee01c81db\" aria-label=\"\u25cf peppar\"><label for=\"ingredient_checkbox_6accee01c81db\"><\/label><\/span><\/span><span style=\"font-family: 'Times New Roman', serif;font-size: 12pt\">\u25cf peppar<\/span><br \/>\n<span data-tr-ingredient-checkbox=\"\"><span class=\"tr-ingredient-checkbox-container\"><input type=\"checkbox\" name=\"ingredient_checkbox_6accee01c81df\" id=\"ingredient_checkbox_6accee01c81df\" aria-label=\"\u25cf 1 tsk harissa\"><label for=\"ingredient_checkbox_6accee01c81df\"><\/label><\/span><\/span><span style=\"font-family: 'Times New Roman', serif;font-size: 12pt\">\u25cf 1 tsk harissa<\/span><\/p>\n<p><\/span><\/p>\n<p class=\"MsoNoSpacing\"><span style=\"font-size: 12.0pt;font-family: 'Times New Roman',serif\">\u00a0<\/span><b><span style=\"font-size: 12.0pt;font-family: 'Times New Roman',serif\">Servera till:<br \/>\n<span data-tr-ingredient-checkbox=\"\"><span class=\"tr-ingredient-checkbox-container\"><input type=\"checkbox\" name=\"ingredient_checkbox_6accee01c81f7\" id=\"ingredient_checkbox_6accee01c81f7\" aria-label=\"\u25cf bandpasta av valfri sort\"><label for=\"ingredient_checkbox_6accee01c81f7\"><\/label><\/span><\/span><\/b><span style=\"font-family: 'Times New Roman', serif;font-size: 12pt\">\u25cf bandpasta av valfri sort<\/span><br \/>\n<span data-tr-ingredient-checkbox=\"\"><span class=\"tr-ingredient-checkbox-container\"><input type=\"checkbox\" name=\"ingredient_checkbox_6accee01c81ff\" id=\"ingredient_checkbox_6accee01c81ff\" aria-label=\"\u25cf parmesan\"><label for=\"ingredient_checkbox_6accee01c81ff\"><\/label><\/span><\/span><span style=\"font-family: 'Times New Roman', serif;font-size: 12pt\">\u25cf parmesan<\/span><br \/>\n<span data-tr-ingredient-checkbox=\"\"><span class=\"tr-ingredient-checkbox-container\"><input type=\"checkbox\" name=\"ingredient_checkbox_6accee01c8203\" id=\"ingredient_checkbox_6accee01c8203\" aria-label=\"\u25cf br\u00f6d\"><label for=\"ingredient_checkbox_6accee01c8203\"><\/label><\/span><\/span><span style=\"font-family: 'Times New Roman', serif;font-size: 12pt\">\u25cf br\u00f6d<\/span><\/p>\n<p><\/span><\/p>\n<!--INSIDE_INGREDIENTS-->\t\t<\/div>\n\t\t<div class=\"tasty-recipes-cook-mode\">\n\t<div class=\"tasty-recipes-cook-mode__container\">\n\t\t<label class=\"tasty-recipes-cook-mode__switch\">\n\t\t\t<input type=\"checkbox\" id=\"tasty_recipes_6accee01ca7e8_cookmode\">\n\t\t\t<span class=\"tasty-recipes-cook-mode__switch-slider tasty-recipes-cook-mode__switch-round\"\n\t\t\t\tdata-tasty-recipes-customization=\"button-color.background button-text-color.color\"><\/span>\n\t\t<\/label>\n\t\t<label for=\"tasty_recipes_6accee01ca7e8_cookmode\">\n\t\t\t<span class=\"tasty-recipes-cook-mode__label\">Cook Mode<\/span>\n\t\t\t<span class=\"tasty-recipes-cook-mode__helper\">\n\t\t\t\tF\u00f6rhindra att sk\u00e4rmen sl\u00e4cks\t\t\t<\/span>\n\t\t<\/label>\n\t<\/div>\n<\/div>\n\t<\/div>\n\n\t<div class=\"tasty-recipe-instructions\">\n\t\t<div class=\"tasty-recipes-instructions-header\">\n\t\t\t<h3 style=\"text-transform: uppercase !important;\" data-tasty-recipes-customization=\"h3-color.color h3-transform.text-transform\">Instructions<\/h3>\n\t\t\t\t\t<\/div>\n\t\t<div class=\"tasty-recipes-instructions-body\" data-tasty-recipes-customization=\"body-color.color\">\n\t\t\t<p id=\"instruction-step-1\">1. Ta tv\u00e5-tre rej\u00e4la kvistar av din rosmarin och st\u00f6t tillsammans med vitl\u00f6ken och svartpepparkorn. H\u00e4ll olivolja i massan, riv i lite citronskal och salta.<br \/>\n2. Gnid in kycklingl\u00e5ren i massan och l\u00e5t vila i rumstemperatur dryga halvtimmen.<br \/>\n3. Hetta upp gener\u00f6st med olivolja i pannan och stek kycklingen s\u00e5 att skinnet blir sk\u00f6nt knaprigt.<br \/>\n4. Under tiden s\u00e5 r\u00f6r du samman ett par matskedar citronsaft med tomatpur\u00e9n, harissan och vinet. H\u00e4ll mixen \u00f6ver kycklingarna och l\u00e5t sjuda runt 15 minuter.<br \/>\n5. D\u00e4refter l\u00e4gger du i sardellcr\u00e8men, kaprisen och oliverna och l\u00e5ter det hela sjuda ytterligare fem minuter. N\u00e4r f\u00e4rdigt s\u00e5 r\u00f6r du ner en gener\u00f6s m\u00e4ngd finhackad bladpersilja och saltar och pepprar efter behag.<br \/>\n6. Gott till \u00e4r en bredare bandpasta som f\u00e5ngar upp den fina s\u00e5sen fr\u00e5n kycklingen n\u00e4r du l\u00e4gger upp. Riven parmesan full\u00e4ndar och s\u00e5 gl\u00f6m inte br\u00f6det som f\u00e5ngar upp all god s\u00e5s.<\/p>\n<p>&nbsp;<\/p>\n\t\t<\/div>\n\t<\/div>\n\n\n\n\n\n\n\n\n\n\n\n\n<script>\nwindow.trCommon={\"minRating\":6,\"ajaxurl\":\"https:\\\/\\\/www.bjarefagel.se\\\/wp-admin\\\/admin-ajax.php\",\"ratingNonce\":\"\",\"postId\":9925};\nwindow.TastyRecipes = window.TastyRecipes || {};\n\nwindow.TastyRecipes.smoothScroll = {\ninit() {\ndocument.addEventListener( 'click', ( e ) => {\nlet anchor = e.target;\nif ( anchor.tagName !== 'A' ) {\nanchor = anchor.closest( 'a.tasty-recipes-scrollto' );\n}\n\nif ( ! anchor || ! anchor.classList.contains( 'tasty-recipes-scrollto' ) ) {\nreturn;\n}\n\nconst elementHref = anchor.getAttribute( 'href' );\nif ( ! elementHref ) {\nreturn;\n}\n\ne.preventDefault();\nthis.goToSelector( elementHref );\n});\n},\ngoToSelector( selector ) {\nconst element = document.querySelector( selector );\nif ( ! element ) {\nreturn;\n}\nelement.scrollIntoView( { behavior: 'smooth' } );\n}\n};\n\ndocument.addEventListener(\n'DOMContentLoaded',\n() => window.TastyRecipes.smoothScroll.init()\n);\n\n(function(){\ndocument.querySelectorAll('[data-tr-ingredient-checkbox]').forEach(function(el) {\nvar input = el.querySelector('.tr-ingredient-checkbox-container input[type=\"checkbox\"]');\nif ( ! input ) {\nreturn;\n}\nif (input.checked) {\nel.dataset.trIngredientCheckbox = 'checked';\n}\nel.addEventListener('click', function(event) {\nif ( 'A' === event.target.nodeName\n|| 'INPUT' === event.target.nodeName\n|| 'LABEL' === event.target.nodeName ) {\nreturn;\n}\ninput.click();\n});\ninput.addEventListener('change', function() {\nel.dataset.trIngredientCheckbox = input.checked ? 'checked' : '';\n});\n});\n}());\n\nwindow.TastyRecipes = window.TastyRecipes || {};\nwindow.TastyRecipes.cookMode = {\nwakeLockApi: false,\nwakeLock: false,\ncookModeSelector: '.tasty-recipes-cook-mode',\ninit() {\nif (\"wakeLock\" in navigator && \"request\" in navigator.wakeLock) {\nthis.wakeLockApi = navigator.wakeLock;\n}\n\nconst cookModes = document.querySelectorAll(this.cookModeSelector);\n\nif (cookModes.length > 0) {\nfor (const cookMode of cookModes) {\nif (this.wakeLockApi) {\ncookMode.querySelector('input[type=\"checkbox\"]').addEventListener(\"change\", event => {\nthis.checkboxChange(event.target);\n}, false);\n} else {\ncookMode.style.display = \"none\";\n}\n}\n}\n},\ncheckboxChange(checkbox) {\nif (checkbox.checked) {\nthis.lock();\n} else {\nthis.unlock();\n}\n},\nsetCheckboxesState(state) {\nconst checkboxes = document.querySelectorAll(this.cookModeSelector + ' input[type=\"checkbox\"]');\nfor (const checkbox of checkboxes) {\ncheckbox.checked = state;\n}\n},\nasync lock() {\ntry {\nthis.wakeLock = await this.wakeLockApi.request(\"screen\");\nthis.wakeLock.addEventListener(\"release\", () => {\nthis.wakeLock = false;\nthis.setCheckboxesState(false);\n});\nthis.setCheckboxesState(true);\n} catch (error) {\nthis.setCheckboxesState(false);\n}\n},\nunlock() {\nif (this.wakeLock) {\nthis.wakeLock.release();\nthis.wakeLock = false;\n}\nthis.setCheckboxesState(false);\n}\n};\n\n(function(callback) {\nif (document.readyState !== \"loading\") {\ncallback();\n} else {\ndocument.addEventListener(\"DOMContentLoaded\", callback);\n}\n})(() => {\nwindow.TastyRecipes.cookMode.init();\n});\n\n\n\nwindow.TastyRecipes = window.TastyRecipes || {};\n\nwindow.TastyRecipes.staticTooltip = {\nelement: null,\ntooltipElement: null,\ndeleting: false,\ninit( element ) {\nif ( this.deleting ) {\nreturn;\n}\nthis.element = element;\nthis.buildElements();\n},\ndestroy() {\nif ( ! this.tooltipElement || this.deleting ) {\nreturn;\n}\n\nthis.deleting = true;\nthis.tooltipElement.classList.remove( 'opened' );\n\nsetTimeout( () => {\nthis.tooltipElement.remove();\nthis.deleting = false;\n}, 500 );\n},\nbuildElements() {\nconst tooltipElement = document.createElement( 'div' );\ntooltipElement.classList.add( 'tasty-recipes-static-tooltip');\ntooltipElement.setAttribute( 'id', 'tasty-recipes-tooltip' );\n\nconst currentTooltipElement = document.getElementById( 'tasty-recipes-tooltip' );\nif ( currentTooltipElement ) {\ndocument.body.replaceChild( tooltipElement, currentTooltipElement );\n} else {\ndocument.body.appendChild( tooltipElement );\n}\n\nthis.tooltipElement = document.getElementById( 'tasty-recipes-tooltip' );\n},\nshow() {\nif ( ! this.tooltipElement ) {\nreturn;\n}\n\nconst tooltipTop = this.element.getBoundingClientRect().top\n+ window.scrollY\n- 10 \/\/ 10px offset.\n- this.tooltipElement.getBoundingClientRect().height;\nconst tooltipLeft = this.element.getBoundingClientRect().left\n- ( this.tooltipElement.getBoundingClientRect().width \/ 2 )\n+ ( this.element.getBoundingClientRect().width \/ 2 ) - 1;\nconst posLeft = Math.max( 10, tooltipLeft );\nthis.maybeRemoveTail( posLeft !== tooltipLeft );\n\nthis.tooltipElement.setAttribute( 'style', 'top:' + tooltipTop + 'px;left:' + posLeft + 'px;' );\nthis.tooltipElement.classList.add( 'opened' );\n\n},\nmaybeRemoveTail( removeTail ) {\nif ( removeTail ) {\nthis.tooltipElement.classList.add( 'tr-hide-tail' );\n} else {\nthis.tooltipElement.classList.remove( 'tr-hide-tail' );\n}\n},\nchangeMessage( message ) {\nif ( ! this.tooltipElement ) {\nreturn;\n}\nthis.tooltipElement.innerHTML = message;\n}\n};\n\nwindow.TastyRecipes.ajax = {\nsendPostRequest( url, data, success, failure ) {\nconst xhr = new XMLHttpRequest();\nxhr.open( 'POST', url, true );\nxhr.send( this.preparePostData( data ) );\n\nxhr.onreadystatechange = () => {\nif ( 4 !== xhr.readyState ) {\nreturn;\n}\nif ( xhr.status === 200 ) {\nsuccess( JSON.parse( xhr.responseText ) );\nreturn;\n}\n\nfailure( xhr );\n};\n\nxhr.onerror = () => {\nfailure( xhr );\n};\n},\npreparePostData( data ) {\nconst formData = new FormData();\n\nfor ( const key in data ) {\nformData.append( key, data[key] );\n}\nreturn formData;\n},\n};\n\nwindow.TastyRecipes.ratings = {\ndefaultRating: 0,\ncurrentRatingPercentage: 100,\nsavingRating: false,\ninit( minRating ) {\nthis.minRating = minRating;\n\nthis.formWatchRating();\nthis.closeTooltipWhenClickOutside();\nthis.addBodyClassBasedOnSelectedRating();\nthis.backwardCompFormRatingPosition();\n},\nformWatchRating() {\nconst ratings = document.querySelectorAll('.tasty-recipes-no-ratings-buttons [data-rating]');\nif ( ratings.length <= 0 ) {\nreturn;\n}\nfor ( const rating of ratings ) {\nrating.addEventListener( 'click', event => {\nevent.preventDefault();\nthis.defaultRating = event.target.closest( '.checked' ).dataset.rating;\nthis.setCheckedStar( event.target );\nthis.maybeSendRating( this.defaultRating, event.target );\nthis.setRatingInForm( this.defaultRating );\n} );\n}\n},\ncloseTooltipWhenClickOutside() {\nwindow.addEventListener( 'click', e => {\n\/\/ Bailout (don't remove the tooltip) when the clicked element is a rating star, or it's the tooltip itself.\nif ( e.target.closest( '.tasty-recipes-rating' ) || e.target.classList.contains( 'tasty-recipes-static-tooltip' ) ) {\nreturn;\n}\n\nwindow.TastyRecipes.staticTooltip.destroy();\n} );\n},\n setRatingInForm( rating ) {\nconst ratingInput = document.querySelector( '#respond .tasty-recipes-rating[value=\"' + rating + '\"]' );\nif ( ! ratingInput ) {\nreturn;\n}\nratingInput.click();\n},\naddBodyClassBasedOnSelectedRating() {\nconst ratingInputs = document.querySelectorAll( 'input.tasty-recipes-rating' );\nif ( ! ratingInputs ) {\nreturn;\n}\nfor ( const ratingInput of ratingInputs ) {\nratingInput.addEventListener( 'click', currentEvent => {\nconst selectedRating = currentEvent.target.getAttribute( 'value' );\nthis.handleBodyClassByRating( selectedRating );\nthis.toggleCommentTextareaRequired( selectedRating );\n} );\n}\n},\nhandleBodyClassByRating( rating ) {\nif ( rating < this.minRating ) {\ndocument.body.classList.remove( 'tasty-recipes-selected-minimum-rating' );\nreturn;\n}\ndocument.body.classList.add( 'tasty-recipes-selected-minimum-rating' );\n},\ntoggleCommentTextareaRequired( rating ) {\nconst commentTextarea = document.getElementById( 'comment' );\nif ( ! commentTextarea ) {\nreturn;\n}\n\nif ( rating < this.minRating ) {\ncommentTextarea.setAttribute( 'required', '' );\nreturn;\n}\n\ncommentTextarea.removeAttribute( 'required' );\n},\nmaybeSendRating( rating, element ) {\nif ( this.savingRating === rating ) {\nreturn;\n}\n\nthis.savingRating = rating;\nwindow.TastyRecipes.staticTooltip.init( element );\n\nconst recipeCardElement = element.closest( '.tasty-recipes' );\nif ( ! recipeCardElement ) {\nwindow.TastyRecipes.staticTooltip.destroy();\nreturn;\n}\n\nwindow.TastyRecipes.ajax.sendPostRequest(\nwindow.trCommon.ajaxurl,\n{\naction: 'tasty_recipes_save_rating',\nrating,\nnonce: window.trCommon.ratingNonce,\npost_id: window.trCommon.postId,\nrecipe_id: recipeCardElement.dataset.trId,\n},\n( response ) => {\nwindow.TastyRecipes.staticTooltip.changeMessage( response.data.message );\nwindow.TastyRecipes.staticTooltip.show();\nthis.updateAverageText( response.data, recipeCardElement );\nthis.maybeFillCommentForm( response.data );\n\n\/\/ Hide the tooltip after 5 seconds.\nsetTimeout( () => {\nthis.maybeResetTooltip( recipeCardElement, response.data, rating );\n}, 5000 );\n},\n() => {\nthis.resetTooltip( recipeCardElement );\n}\n);\n},\nupdateAverageText( data, recipeCardElement ) {\nif ( ! data.average ) {\nreturn;\n}\nthis.setRatingPercent( data );\n\nif ( ! data.count ) {\nreturn;\n}\n\nconst quickLink = document.querySelector( '.tasty-recipes-rating-link' );\nif ( quickLink ) {\nthis.setTextInContainer( quickLink, data );\nthis.setPartialStar( quickLink );\n}\n\nconst cardStars = recipeCardElement.querySelector( '.tasty-recipes-ratings-buttons' );\ncardStars.dataset.trDefaultRating = data.average;\nthis.setTextInContainer( recipeCardElement.querySelector( '.tasty-recipes-rating' ), data );\n},\nsetTextInContainer( container, data ) {\nif ( ! container ) {\nreturn;\n}\n\nif ( data.label ) {\nconst ratingLabelElement = container.querySelector( '.rating-label' );\nif ( ratingLabelElement ) {\nratingLabelElement.innerHTML = data.label;\n}\nreturn;\n}\n\nconst averageElement = container.querySelector( '.average' );\nif ( averageElement ) {\naverageElement.textContent = data.average;\n}\n\nconst countElement = container.querySelector( '.count' );\nif ( countElement ) {\ncountElement.textContent = data.count;\n}\n},\nsetPartialStar( container ) {\nconst highestStar = container.querySelector( '[data-rating=\"' + Math.ceil( this.defaultRating ) + '\"]' );\nif ( highestStar ) {\nhighestStar.dataset.trClip = this.currentRatingPercentage;\n}\n},\nsetRatingPercent( data ) {\nthis.defaultRating = data.average.toFixed( 1 );\nconst parts = data.average.toFixed( 2 ).toString().split( '.' );\nthis.currentRatingPercentage = parts[1] ? parts[1] : 100;\nif ( this.currentRatingPercentage === '00' ) {\nthis.currentRatingPercentage = 100;\n}\n},\nsetCheckedStar( target ) {\nconst cardRatingContainer = target.closest( '.tasty-recipes-ratings-buttons' );\nconst selectedRatingElement = cardRatingContainer.querySelector( '[data-tr-checked]' );\nif ( selectedRatingElement ) {\ndelete selectedRatingElement.dataset.trChecked;\n}\n\nconst thisStar = target.closest( '.tasty-recipes-rating' );\nthisStar.dataset.trChecked = 1;\nthisStar.querySelector( '[data-tr-clip]' ).dataset.trClip = 100;\n},\nmaybeFillCommentForm( data ) {\nif ( ! data.comment || ! data.comment.content ) {\nreturn;\n}\n\nconst commentForm = document.querySelector( '#commentform' );\nif ( ! commentForm ) {\nreturn;\n}\n\nconst commentBox = commentForm.querySelector( '[name=comment]' );\nif ( ! commentBox || commentBox.value ) {\nreturn;\n}\n\n\/\/ Add comment details for editing.\ncommentBox.innerHTML = data.comment.content;\nif ( data.comment.name ) {\ncommentForm.querySelector( '[name=author]' ).value = data.comment.name;\ncommentForm.querySelector( '[name=email]' ).value = data.comment.email;\n}\n},\nmaybeResetTooltip( recipeCardElement, data, rating ) {\nif ( this.savingRating === rating ) {\nthis.resetTooltip( recipeCardElement, data );\n}\n},\nresetTooltip( recipeCardElement, data ) {\nwindow.TastyRecipes.staticTooltip.destroy();\nthis.savingRating = false;\n\n\/\/ Reset the default rating.\nconst cardRatingContainer = recipeCardElement.querySelector( '.tasty-recipes-ratings-buttons' );\nif ( cardRatingContainer ) {\nthis.defaultRating = ( data && data.average ) ? data.average.toFixed(1) : cardRatingContainer.dataset.trDefaultRating;\ncardRatingContainer.dataset.trDefaultRating = this.defaultRating;\n\nthis.resetSelectedStar( cardRatingContainer, data );\n}\n},\nresetSelectedStar( cardRatingContainer ) {\nconst selectedRatingElement = cardRatingContainer.querySelector( '[data-rating=\"' + Math.ceil( this.defaultRating ) + '\"]' );\nif ( selectedRatingElement ) {\nselectedRatingElement.querySelector( '[data-tr-clip]' ).dataset.trClip = this.currentRatingPercentage;\nselectedRatingElement.parentNode.dataset.trChecked = 1;\n}\n\nconst previousSelectedElement= cardRatingContainer.querySelector( '[data-tr-checked]' );\nif ( previousSelectedElement ) {\nconst currentSelectedRating = previousSelectedElement.querySelector('[data-rating]');\nif ( currentSelectedRating !== selectedRatingElement ) {\ndelete previousSelectedElement.dataset.trChecked;\n}\n}\n},\nbackwardCompFormRatingPosition() {\nconst ratingsButtons = document.querySelector( '#respond .tasty-recipes-ratings-buttons, #tasty-recipes-comment-rating .tasty-recipes-ratings-buttons' );\nif ( ! ratingsButtons ) {\nreturn;\n}\nconst ratingsButtonsStyles = window.getComputedStyle(ratingsButtons);\nif ( ! ratingsButtonsStyles.display.includes( 'flex' ) ) {\nratingsButtons.style.direction = 'rtl';\n}\n\nif ( typeof tastyRecipesRating !== 'undefined' ) {\n\/\/ Select the rating that was previously selected in admin.\nratingsButtons.querySelector( '.tasty-recipes-rating[value=\"' + tastyRecipesRating + '\"]' ).checked = true;\n}\n\nconst ratingSpans = ratingsButtons.querySelectorAll( '.tasty-recipes-rating' );\nfor (const ratingSpan of ratingSpans) {\nratingSpan.addEventListener( 'click', event => {\nif ( ratingSpan === event.target ) {\nreturn;\n}\nratingSpan.previousElementSibling.click();\n} );\n}\n}\n};\n\n(function(callback) {\nif (document.readyState !== \"loading\") {\ncallback();\n} else {\nwindow.addEventListener( 'load', callback );\n}\n})(() => {\nwindow.TastyRecipes.ratings.init( window.trCommon ? window.trCommon.minRating : 4 );\n});\n<\/script><\/div>","protected":false},"excerpt":{"rendered":"","protected":false},"featured_media":5398,"comment_status":"open","ping_status":"open","template":"","categories":[],"receptkategori":[32],"class_list":["post-9925","recept","type-recept","status-publish","has-post-thumbnail","hentry","receptkategori-kycklinglarfile"],"acf":[],"_links":{"self":[{"href":"https:\/\/www.bjarefagel.se\/en\/wp-json\/wp\/v2\/recept\/9925","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.bjarefagel.se\/en\/wp-json\/wp\/v2\/recept"}],"about":[{"href":"https:\/\/www.bjarefagel.se\/en\/wp-json\/wp\/v2\/types\/recept"}],"replies":[{"embeddable":true,"href":"https:\/\/www.bjarefagel.se\/en\/wp-json\/wp\/v2\/comments?post=9925"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.bjarefagel.se\/en\/wp-json\/wp\/v2\/media\/5398"}],"wp:attachment":[{"href":"https:\/\/www.bjarefagel.se\/en\/wp-json\/wp\/v2\/media?parent=9925"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.bjarefagel.se\/en\/wp-json\/wp\/v2\/categories?post=9925"},{"taxonomy":"receptkategori","embeddable":true,"href":"https:\/\/www.bjarefagel.se\/en\/wp-json\/wp\/v2\/receptkategori?post=9925"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}