var ewww_webp_supported=!1;function check_webp_feature(A,e){var w;e=void 0!==e?e:function(){},ewww_webp_supported?e(ewww_webp_supported):((w=new Image).onload=function(){ewww_webp_supported=0<w.width&&0<w.height,e&&e(ewww_webp_supported)},w.onerror=function(){e&&e(!1)},w.src="data:image/webp;base64,"+{alpha:"UklGRkoAAABXRUJQVlA4WAoAAAAQAAAAAAAAAAAAQUxQSAwAAAARBxAR/Q9ERP8DAABWUDggGAAAABQBAJ0BKgEAAQAAAP4AAA3AAP7mtQAAAA=="}[A])}check_webp_feature("alpha");
var Arrive=function(c,w){"use strict";if(c.MutationObserver&&"undefined"!=typeof HTMLElement){var r,a=0,u=(r=HTMLElement.prototype.matches||HTMLElement.prototype.webkitMatchesSelector||HTMLElement.prototype.mozMatchesSelector||HTMLElement.prototype.msMatchesSelector,{matchesSelector:function(e,t){return e instanceof HTMLElement&&r.call(e,t)},addMethod:function(e,t,r){var a=e[t];e[t]=function(){return r.length==arguments.length?r.apply(this,arguments):"function"==typeof a?a.apply(this,arguments):void 0}},callCallbacks:function(e,t){t&&t.options.onceOnly&&1==t.firedElems.length&&(e=[e[0]]);for(var r,a=0;r=e[a];a++)r&&r.callback&&r.callback.call(r.elem,r.elem);t&&t.options.onceOnly&&1==t.firedElems.length&&t.me.unbindEventWithSelectorAndCallback.call(t.target,t.selector,t.callback)},checkChildNodesRecursively:function(e,t,r,a){for(var i,n=0;i=e[n];n++)r(i,t,a)&&a.push({callback:t.callback,elem:i}),0<i.childNodes.length&&u.checkChildNodesRecursively(i.childNodes,t,r,a)},mergeArrays:function(e,t){var r,a={};for(r in e)e.hasOwnProperty(r)&&(a[r]=e[r]);for(r in t)t.hasOwnProperty(r)&&(a[r]=t[r]);return a},toElementsArray:function(e){return e=void 0!==e&&("number"!=typeof e.length||e===c)?[e]:e}}),e=(l.prototype.addEvent=function(e,t,r,a){a={target:e,selector:t,options:r,callback:a,firedElems:[]};return this._beforeAdding&&this._beforeAdding(a),this._eventsBucket.push(a),a},l.prototype.removeEvent=function(e){for(var t,r=this._eventsBucket.length-1;t=this._eventsBucket[r];r--)e(t)&&(this._beforeRemoving&&this._beforeRemoving(t),(t=this._eventsBucket.splice(r,1))&&t.length&&(t[0].callback=null))},l.prototype.beforeAdding=function(e){this._beforeAdding=e},l.prototype.beforeRemoving=function(e){this._beforeRemoving=e},l),t=function(i,n){var o=new e,l=this,s={fireOnAttributesModification:!1};return o.beforeAdding(function(t){var e=t.target;e!==c.document&&e!==c||(e=document.getElementsByTagName("html")[0]);var r=new MutationObserver(function(e){n.call(this,e,t)}),a=i(t.options);r.observe(e,a),t.observer=r,t.me=l}),o.beforeRemoving(function(e){e.observer.disconnect()}),this.bindEvent=function(e,t,r){t=u.mergeArrays(s,t);for(var a=u.toElementsArray(this),i=0;i<a.length;i++)o.addEvent(a[i],e,t,r)},this.unbindEvent=function(){var r=u.toElementsArray(this);o.removeEvent(function(e){for(var t=0;t<r.length;t++)if(this===w||e.target===r[t])return!0;return!1})},this.unbindEventWithSelectorOrCallback=function(r){var a=u.toElementsArray(this),i=r,e="function"==typeof r?function(e){for(var t=0;t<a.length;t++)if((this===w||e.target===a[t])&&e.callback===i)return!0;return!1}:function(e){for(var t=0;t<a.length;t++)if((this===w||e.target===a[t])&&e.selector===r)return!0;return!1};o.removeEvent(e)},this.unbindEventWithSelectorAndCallback=function(r,a){var i=u.toElementsArray(this);o.removeEvent(function(e){for(var t=0;t<i.length;t++)if((this===w||e.target===i[t])&&e.selector===r&&e.callback===a)return!0;return!1})},this},i=new function(){var s={fireOnAttributesModification:!1,onceOnly:!1,existing:!1};function n(e,t,r){return!(!u.matchesSelector(e,t.selector)||(e._id===w&&(e._id=a++),-1!=t.firedElems.indexOf(e._id)))&&(t.firedElems.push(e._id),!0)}var c=(i=new t(function(e){var t={attributes:!1,childList:!0,subtree:!0};return e.fireOnAttributesModification&&(t.attributes=!0),t},function(e,i){e.forEach(function(e){var t=e.addedNodes,r=e.target,a=[];null!==t&&0<t.length?u.checkChildNodesRecursively(t,i,n,a):"attributes"===e.type&&n(r,i)&&a.push({callback:i.callback,elem:r}),u.callCallbacks(a,i)})})).bindEvent;return i.bindEvent=function(e,t,r){t=void 0===r?(r=t,s):u.mergeArrays(s,t);var a=u.toElementsArray(this);if(t.existing){for(var i=[],n=0;n<a.length;n++)for(var o=a[n].querySelectorAll(e),l=0;l<o.length;l++)i.push({callback:r,elem:o[l]});if(t.onceOnly&&i.length)return r.call(i[0].elem,i[0].elem);setTimeout(u.callCallbacks,1,i)}c.call(this,e,t,r)},i},o=new function(){var a={};function i(e,t){return u.matchesSelector(e,t.selector)}var n=(o=new t(function(){return{childList:!0,subtree:!0}},function(e,r){e.forEach(function(e){var t=e.removedNodes,e=[];null!==t&&0<t.length&&u.checkChildNodesRecursively(t,r,i,e),u.callCallbacks(e,r)})})).bindEvent;return o.bindEvent=function(e,t,r){t=void 0===r?(r=t,a):u.mergeArrays(a,t),n.call(this,e,t,r)},o};d(HTMLElement.prototype),d(NodeList.prototype),d(HTMLCollection.prototype),d(HTMLDocument.prototype),d(Window.prototype);var n={};return s(i,n,"unbindAllArrive"),s(o,n,"unbindAllLeave"),n}function l(){this._eventsBucket=[],this._beforeAdding=null,this._beforeRemoving=null}function s(e,t,r){u.addMethod(t,r,e.unbindEvent),u.addMethod(t,r,e.unbindEventWithSelectorOrCallback),u.addMethod(t,r,e.unbindEventWithSelectorAndCallback)}function d(e){e.arrive=i.bindEvent,s(i,e,"unbindArrive"),e.leave=o.bindEvent,s(o,e,"unbindLeave")}}(window,void 0),ewww_webp_supported=!1;function check_webp_feature(e,t){var r;ewww_webp_supported?t(ewww_webp_supported):((r=new Image).onload=function(){ewww_webp_supported=0<r.width&&0<r.height,t(ewww_webp_supported)},r.onerror=function(){t(!1)},r.src="data:image/webp;base64,"+{alpha:"UklGRkoAAABXRUJQVlA4WAoAAAAQAAAAAAAAAAAAQUxQSAwAAAARBxAR/Q9ERP8DAABWUDggGAAAABQBAJ0BKgEAAQAAAP4AAA3AAP7mtQAAAA==",animation:"UklGRlIAAABXRUJQVlA4WAoAAAASAAAAAAAAAAAAQU5JTQYAAAD/////AABBTk1GJgAAAAAAAAAAAAAAAAAAAGQAAABWUDhMDQAAAC8AAAAQBxAREYiI/gcA"}[e])}function ewwwLoadImages(e){if(e){for(var t=document.querySelectorAll(".batch-image img, .image-wrapper a, .ngg-pro-masonry-item a, .ngg-galleria-offscreen-seo-wrapper a"),r=0,a=t.length;r<a;r++)ewwwAttr(t[r],"data-src",t[r].getAttribute("data-webp")),ewwwAttr(t[r],"data-thumbnail",t[r].getAttribute("data-webp-thumbnail"));for(var i=document.querySelectorAll("div.woocommerce-product-gallery__image"),r=0,a=i.length;r<a;r++)ewwwAttr(i[r],"data-thumb",i[r].getAttribute("data-webp-thumb"))}for(var n=document.querySelectorAll("video"),r=0,a=n.length;r<a;r++)ewwwAttr(n[r],"poster",e?n[r].getAttribute("data-poster-webp"):n[r].getAttribute("data-poster-image"));for(var o,l=document.querySelectorAll("img.ewww_webp_lazy_load"),r=0,a=l.length;r<a;r++)e&&(ewwwAttr(l[r],"data-lazy-srcset",l[r].getAttribute("data-lazy-srcset-webp")),ewwwAttr(l[r],"data-srcset",l[r].getAttribute("data-srcset-webp")),ewwwAttr(l[r],"data-lazy-src",l[r].getAttribute("data-lazy-src-webp")),ewwwAttr(l[r],"data-src",l[r].getAttribute("data-src-webp")),ewwwAttr(l[r],"data-orig-file",l[r].getAttribute("data-webp-orig-file")),ewwwAttr(l[r],"data-medium-file",l[r].getAttribute("data-webp-medium-file")),ewwwAttr(l[r],"data-large-file",l[r].getAttribute("data-webp-large-file")),null!=(o=l[r].getAttribute("srcset"))&&!1!==o&&o.includes("R0lGOD")&&ewwwAttr(l[r],"src",l[r].getAttribute("data-lazy-src-webp"))),l[r].className=l[r].className.replace(/\bewww_webp_lazy_load\b/,"");for(var s=document.querySelectorAll(".ewww_webp"),r=0,a=s.length;r<a;r++)e?(ewwwAttr(s[r],"srcset",s[r].getAttribute("data-srcset-webp")),ewwwAttr(s[r],"src",s[r].getAttribute("data-src-webp")),ewwwAttr(s[r],"data-orig-file",s[r].getAttribute("data-webp-orig-file")),ewwwAttr(s[r],"data-medium-file",s[r].getAttribute("data-webp-medium-file")),ewwwAttr(s[r],"data-large-file",s[r].getAttribute("data-webp-large-file")),ewwwAttr(s[r],"data-large_image",s[r].getAttribute("data-webp-large_image")),ewwwAttr(s[r],"data-src",s[r].getAttribute("data-webp-src"))):(ewwwAttr(s[r],"srcset",s[r].getAttribute("data-srcset-img")),ewwwAttr(s[r],"src",s[r].getAttribute("data-src-img"))),s[r].className=s[r].className.replace(/\bewww_webp\b/,"ewww_webp_loaded");window.jQuery&&jQuery.fn.isotope&&jQuery.fn.imagesLoaded&&(jQuery(".fusion-posts-container-infinite").imagesLoaded(function(){jQuery(".fusion-posts-container-infinite").hasClass("isotope")&&jQuery(".fusion-posts-container-infinite").isotope()}),jQuery(".fusion-portfolio:not(.fusion-recent-works) .fusion-portfolio-wrapper").imagesLoaded(function(){jQuery(".fusion-portfolio:not(.fusion-recent-works) .fusion-portfolio-wrapper").isotope()}))}function ewwwWebPInit(e){ewwwLoadImages(e),ewwwNggLoadGalleries(e),document.arrive(".ewww_webp",function(){ewwwLoadImages(e)}),document.arrive(".ewww_webp_lazy_load",function(){ewwwLoadImages(e)}),document.arrive("videos",function(){ewwwLoadImages(e)}),"loading"==document.readyState?document.addEventListener("DOMContentLoaded",ewwwJSONParserInit):("undefined"!=typeof galleries&&ewwwNggParseGalleries(e),ewwwWooParseVariations(e))}function ewwwAttr(e,t,r){null!=r&&!1!==r&&e.setAttribute(t,r)}function ewwwJSONParserInit(){"undefined"!=typeof galleries&&check_webp_feature("alpha",ewwwNggParseGalleries),check_webp_feature("alpha",ewwwWooParseVariations)}function ewwwWooParseVariations(e){if(e)for(var t=document.querySelectorAll("form.variations_form"),r=0,a=t.length;r<a;r++){var i=t[r].getAttribute("data-product_variations"),n=!1;try{for(var o in i=JSON.parse(i))void 0!==i[o]&&void 0!==i[o].image&&(void 0!==i[o].image.src_webp&&(i[o].image.src=i[o].image.src_webp,n=!0),void 0!==i[o].image.srcset_webp&&(i[o].image.srcset=i[o].image.srcset_webp,n=!0),void 0!==i[o].image.full_src_webp&&(i[o].image.full_src=i[o].image.full_src_webp,n=!0),void 0!==i[o].image.gallery_thumbnail_src_webp&&(i[o].image.gallery_thumbnail_src=i[o].image.gallery_thumbnail_src_webp,n=!0),void 0!==i[o].image.thumb_src_webp&&(i[o].image.thumb_src=i[o].image.thumb_src_webp,n=!0));n&&ewwwAttr(t[r],"data-product_variations",JSON.stringify(i))}catch(e){}}}function ewwwNggParseGalleries(e){if(e)for(var t in galleries){var r=galleries[t];galleries[t].images_list=ewwwNggParseImageList(r.images_list)}}function ewwwNggLoadGalleries(e){e&&document.addEventListener("ngg.galleria.themeadded",function(e,t){window.ngg_galleria._create_backup=window.ngg_galleria.create,window.ngg_galleria.create=function(e,t){var r=$(e).data("id");return galleries["gallery_"+r].images_list=ewwwNggParseImageList(galleries["gallery_"+r].images_list),window.ngg_galleria._create_backup(e,t)}})}function ewwwNggParseImageList(e){for(var t in e){var r=e[t];if(void 0!==r["image-webp"]&&(e[t].image=r["image-webp"],delete e[t]["image-webp"]),void 0!==r["thumb-webp"]&&(e[t].thumb=r["thumb-webp"],delete e[t]["thumb-webp"]),void 0!==r.full_image_webp&&(e[t].full_image=r.full_image_webp,delete e[t].full_image_webp),void 0!==r.srcsets)for(var a in r.srcsets)nggSrcset=r.srcsets[a],void 0!==r.srcsets[a+"-webp"]&&(e[t].srcsets[a]=r.srcsets[a+"-webp"],delete e[t].srcsets[a+"-webp"]);if(void 0!==r.full_srcsets)for(var i in r.full_srcsets)nggFSrcset=r.full_srcsets[i],void 0!==r.full_srcsets[i+"-webp"]&&(e[t].full_srcsets[i]=r.full_srcsets[i+"-webp"],delete e[t].full_srcsets[i+"-webp"])}return e}check_webp_feature("alpha",ewwwWebPInit);
var lpData = {"site_url":"https:\/\/fnacompany.gr","user_id":"0","theme":"blocksy-child","lp_rest_url":"https:\/\/fnacompany.gr\/wp-json\/","nonce":"35d4348259","is_course_archive":"","courses_url":"https:\/\/fnacompany.gr\/404-2\/","urlParams":[],"lp_version":"4.4.2","lp_rest_load_ajax":"https:\/\/fnacompany.gr\/wp-json\/lp\/v1\/load_content_via_ajax\/","ajaxUrl":"https:\/\/fnacompany.gr\/wp-admin\/admin-ajax.php","lpAjaxUrl":"https:\/\/fnacompany.gr\/lp-ajax-handle","coverImageRatio":"5.16","toast":{"gravity":"bottom","position":"center","duration":3000,"close":1,"stopOnFocus":1,"classPrefix":"lp-toast"},"i18n":{"yes":"\u039d\u03b1\u03b9","cancel":"\u0391\u03ba\u03cd\u03c1\u03c9\u03c3\u03b7","generate_with_ai":"Generate with AI","confirm_close_ai":"Are you sure you want to close? Generate data will stop."},"enable_open_ai":"","lp_woo_version":"4.2.3"};
var lpSettingCourses = {"lpArchiveLoadAjax":"1","lpArchiveNoLoadAjaxFirst":"0","lpArchivePaginationType":"number","noLoadCoursesJs":"0"};
var _ckyGcm = {"status":true,"default_settings":[{"analytics":"denied","advertisement":"denied","functional":"denied","necessary":"granted","ad_user_data":"denied","ad_personalization":"denied","regions":"All"}],"wait_for_update":2000,"url_passthrough":false,"ads_data_redaction":false}
Το πρόγραμμα απευθύνεται σε: Pastry Chef – Consultant Chef, τεχνικούς εταιρίων, R&D Developers, ιδιοκτήτες επιχειρήσεων, τεχνολόγους τροφίμων ή σε ζαχαροπλάστες που θέλουν να εμβαθύνουν στην τεχνολογία τροφίμων και στους υπολογισμούς της ζαχαροπλαστικής.
Κόστος συμμετοχής:
1500 ευρώ + ΦΠΑ (για ολιγομελές τμήμα – group)
2500 ευρώ + ΦΠΑ (για prive επίπεδο, εντός έδρας)
Εάν επιθυμείτε να πραγματοποιηθεί το σεμινάριο στον δικό σας χώρο επικοινωνήστε μαζί μας για κόστος και διαθεσιμότητα.
Θέλεις να μάθεις περισσότερα;
Βάλε το κινητό σου και θα σε καλέσουμε άμεσα!
Αναλυτική Παρουσίαση Θεματολογίας
Διαθέσιμες Ημερομηνίες Διεξαγωγής
Κατόπιν συνεννόησης σε prive επίπεδο ή σε τμήμα 3-4 ατόμων
Κατά τη διάρκεια του σεμιναρίου θα αναλυθούν σχολαστικά οι παρακάτω ενότητες:
Εισαγωγική περιγραφή τεχνολογίας σοκολάτας, στάδια παραγωγής σοκολάτας και κακάο.
Ανάλυση ποικιλιών κακάο (trinitario, forastero, criollo) και παγκόσμιας συγκομιδής.
Ανάλυση τεχνολογικών παραμέτρων και τεχνικών χαρακτηριστικών για την παραγωγή των spread
Ανάλυση σύγχρονων μεθόδων στρωσίματος σοκολάτας που εφαρμόζονται (MyCryo, Magic Temper)
Παραγωγή των spread στον πετρόμυλο (grinder stone) και με την fast method.
Δημιουργία διατροφικής ετικέτας για τα προϊόντα που θα παραχθούν.
Ανάλυση διατροφικής ετικέτας και νομοθεσίας σχετικά με τη σωστή σήμανση των προϊόντων και των υπολογισμών για την διαθρεπτική αξία ανά 100g προϊόντος.
Στο σεμινάριο αυτό θα ασχοληθούμε ακόμη με:
HANDS ON ΠΑΡΑΣΚΕΥΕΣ:
Δημιουργία spread σοκολάτας (σοκολάτα κουβερτούρα, σοκολάτα γάλακτος, λευκή σοκολάτα, gianduja)
Δημιουργία spread παστών ξηρών καρπών (ανάλυση θεωρητική οξείδωσης – τάγγισης λιπαρών και ελαίων)
Μέσα απο καινοτόμα εργαλεία, το λογισμικό μας FnA Method δημιουργούμε σε πλήρη συμμόρφωση με την νομοθεσία τις διατροφικές ετικέτες για όλες τις παραπάνω παρασκευές μας.
Στο σεμινάριο αυτό θα φτίαξουμε τις παρακάτω συνταγές:
Χειροποίητη πραλίνα Φουντουκιού 50% & 70%
Χειροποίητη πραλίνα Αμυγδάλου 40% & 60%
Spread 50% Φουντούκι (Grinder stone)
Spread 20% Φουντούκι (Grinder stone)
Spread σοκολάτας extra bitter (Fast method)
Spread φουντουκιού με σοκολάτα (Fast method)
Spread σοκολάτας γάλακτος (Fast method)
Spread λευκής καραμελωμένης σοκολάτας ή λευκής (Fast method)
Ποία ειναι τα οφέλη του σεμιναρίου; Γιατί να το παρακολουθήσεις;
Για πρώτη φορά στην Ελλάδα, hands-on εκπαίδευση με ενεργή συμμετοχή όλων των εκπαιδευόμενων – όχι απλό demonstration
Δημιουργία και ανάλυση συνταγών παγωτού από το μηδέν, με πραγματική εφαρμογή formulation
Πλήρης κατανόηση της τεχνολογίας του παγωτού και του τρόπου που επηρεάζει υφή, σταθερότητα και συμπεριφορά στη βιτρίνα
Έτοιμο συνταγολόγιο και γνώση ώστε να μπορείτε να σχεδιάζετε και να προσαρμόζετε μόνοι σας νέες συνταγές.
Ανάπτυξη τεχνολογικής σκέψης και μεθοδολογίας, όχι απλή αντιγραφή συνταγών
Απόκτηση αυτονομίας και ελέγχου κόστους στην παραγωγή
Εκπαίδευση προσαρμοσμένη στην ελληνική αγορά και τις διαθέσιμες πρώτες ύλες, όχι θεωρία σχολών εξωτερικού
Ανεξάρτητη εκπαίδευση, χωρίς προώθηση brands, παστών ή έτοιμων μιγμάτων
Υποστήριξη και καθοδήγηση μετά το σεμινάριο, όποτε τη χρειαστείς
Εκπαίδευση από την FnA Academy, την πρώτη Ακαδημία Παγωτού στην Ελλάδα
Κατά τη διάρκεια του σεμιναρίου θα δοθούν:
Booklet σεμιναρίου
Δωρεάν εξάμηνη πρόσβαση στο λογισμικό FnA Method (δώρο αξίας 375 €). Μετά την λήξη της δωρεάν συνδρομής λαμβάνεται 15% έκπτωση στην αγορά του λογισμικού FnA Method.
Προσφέρεται καφές και μεσημεριανό
Αν το σεμινάριο πραγματοποιείται σε prive επίπεδο, όλα τα εξόδα πρώτων υλών, μετακίνησης, διαμονής και διατροφής επιβαρρύνουν αποκλειστικά την εκάστοτε επιχείρηση.
Φόρμα Επικοινωνίας
Αν χρειάζεστε περισσότερες πληροφορίες συμπληρώστε τα στοιχεία σας και θα σας καλέσουμε το συντομότερο δυνατόν!
Στιγμές από το Σεμινάριο!
FnA Company
Μας Εμπιστεύτηκαν οι Καλύτεροι!
Από boutique gelaterias μέχρι μεγάλα brands
(function(){
var wrap=document.getElementById('dlsw-8997-6a5d93a4424a5');
if(!wrap)return;
var slides=wrap.querySelectorAll('.dl-slide'),dots=wrap.querySelectorAll('.dl-dot'),total=slides.length,current=0,speed=3000,timer=null;
if(!total)return;
function goTo(n){
slides[current].classList.remove('dl-active');
if(dots[current])dots[current].classList.remove('dl-dot-active');
current=(n+total)%total;
slides[current].classList.add('dl-active');
if(dots[current])dots[current].classList.add('dl-dot-active');
}
function startAuto(){stopAuto();timer=setInterval(function(){goTo(current+1);},speed);}
function stopAuto(){if(timer){clearInterval(timer);timer=null;}}
slides[0].classList.add('dl-active');
wrap.querySelector('.dl-arrow-prev').addEventListener('click',function(){goTo(current-1);startAuto();});
wrap.querySelector('.dl-arrow-next').addEventListener('click',function(){goTo(current+1);startAuto();});
dots.forEach(function(dot,idx){dot.addEventListener('click',function(){goTo(idx);startAuto();});});
var tx=null;
wrap.addEventListener('touchstart',function(e){tx=e.touches[0].clientX;},{passive:true});
wrap.addEventListener('touchend',function(e){if(tx===null)return;var d=tx-e.changedTouches[0].clientX;if(Math.abs(d)>40){goTo(current+(d>0?1:-1));startAuto();}tx=null;},{passive:true});
wrap.addEventListener('mouseenter',stopAuto);
wrap.addEventListener('mouseleave',startAuto);
startAuto();
})();
(function () {
var c = document.body.className;
c = c.replace(/woocommerce-no-js/, 'woocommerce-js');
document.body.className = c;
})();
function activateStep(index) {
const steps = document.querySelectorAll('.gs-step-item');
steps.forEach((step, i) => {
if (i === index) {
step.classList.add('active');
} else {
step.classList.remove('active');
}
});
}
//# sourceURL=gspb-js-blocks-js-after
(function () {
'use strict';var syncTimer = null;/* Read the current count from the Blocksy header cart element. */
function getHeaderCartCount() {
var el = document.querySelector('.ct-dynamic-count-cart');
if (!el) { return null; }
var raw = el.getAttribute('data-count') || el.textContent || '0';
var n = parseInt(raw, 10);
return isNaN(n) ? 0 : n;
}/* Push a count value to every footer cart element on the page. */
function applyCount(count) {
var n = Math.max(0, parseInt(count || 0, 10));document.querySelectorAll('[data-dl-footer-cart-count]').forEach(function (el) {
el.textContent = n > 0 ? String(n) : '';
});document.querySelectorAll('.dl-footer-cart').forEach(function (el) {
el.classList.toggle('has-items', n > 0);
});
}function syncFromHeader() {
var count = getHeaderCartCount();
if (count !== null) {
applyCount(count);
}
}/* Debounced wrapper – MutationObserver can fire many times per frame. */
function debouncedSync() {
clearTimeout(syncTimer);
syncTimer = setTimeout(syncFromHeader, 60);
}/*
* Watch the Blocksy header cart container for fragment replacements.
* When wc-cart-fragments replaces .ct-dynamic-count-cart the observer
* fires and we re-read the count from the new element.
*/
function setupObserver() {
var target =
document.querySelector('.ct-header-cart') ||
document.querySelector('.ct-header') ||
document.querySelector('[data-id="header"]') ||
document.querySelector('header');if (!target) { return; }var observer = new MutationObserver(debouncedSync);
observer.observe(target, {
childList : true,
subtree : true,
characterData : true,
attributes : true,
attributeFilter : ['data-count']
});
}/* WC jQuery events and add-to-cart click detection. */
function setupEvents() {
if (window.jQuery) {
jQuery(document.body).on(
'wc_fragments_refreshed wc_fragments_loaded ' +
'added_to_cart removed_from_cart ' +
'updated_cart_totals wc_fragment_refresh',
function () {
/* Two passes: immediately after the event, and after
Blocksy finishes its own DOM update. */
setTimeout(syncFromHeader, 120);
setTimeout(syncFromHeader, 700);
}
);
}/* Catch add-to-cart button clicks (Woo + LearnPress). */
document.addEventListener('click', function (e) {
if (e.target.closest &&
e.target.closest(
'.lp-btn-add-item-to-cart, .add_to_cart_button, ' +
'.single_add_to_cart_button, button[name="add-to-cart"]'
)
) {
setTimeout(syncFromHeader, 500);
setTimeout(syncFromHeader, 1300);
setTimeout(syncFromHeader, 3000);
}
});
}function init() {
syncFromHeader();
setupObserver();
setupEvents();
}if (document.readyState === 'loading') {
document.addEventListener('DOMContentLoaded', init);
} else {
init();
}/* BFCache: re-sync when user navigates back/forward. */
window.addEventListener('pageshow', function (e) {
if (e.persisted) {
/* Page restored from BFCache – force a fresh read. */
setTimeout(syncFromHeader, 100);
} else {
syncFromHeader();
}
});})();