!function(){function t(e){return t="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},t(e)}function e(t,e){var a="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(!a){if(Array.isArray(t)||(a=o(t))||e&&t&&"number"==typeof t.length){a&&(t=a);var i=0,n=function(){};return{s:n,n:function(){return i>=t.length?{done:!0}:{done:!1,value:t[i++]}},e:function(t){throw t},f:n}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var r,s=!0,l=!1;return{s:function(){a=a.call(t)},n:function(){var t=a.next();return s=t.done,t},e:function(t){l=!0,r=t},f:function(){try{s||null==a.return||a.return()}finally{if(l)throw r}}}}function a(t,e){for(var a=0;at.length)&&(e=t.length);for(var a=0,i=new Array(e);a0&&void 0!==arguments[0]?arguments[0]:{};return function(e,a){if(function(t){return!!t.path&&-1!==t.path.indexOf("woo-variation-swatches")||!!t.url&&-1!==t.url.indexOf("woo-variation-swatches")}(e)&&Object.keys(t).length>0)for(var o=0,r=Object.entries(t);o',this.$element.addClass("wvs-loaded"),this.init(),this.update(),r(document).trigger("woo_variation_swatches_loaded",this)}var s,l,c;return s=t,(l=[{key:"isAjaxVariation",value:function(){return this.is_ajax_variation}},{key:"init",value:function(){this.prepareLabel(),this.prepareItems(),this.setupItems(),this.setupEvents(),this.setUpStockInfo()}},{key:"prepareLabel",value:function(){var t=this;woo_variation_swatches_options.show_variation_label&&this.$element.find(".variations .label").each((function(e,a){r(a).append(t.selected_item_template)}))}},{key:"prepareItems",value:function(){this.$element.find("ul.variable-items-wrapper").each((function(t,e){r(e).parent().addClass("woo-variation-items-wrapper")}))}},{key:"setupItems",value:function(){var t=this;this.$element.find("ul.variable-items-wrapper").each((function(e,a){var i="",n=r(a).parent().prev().find(".woo-selected-variation-item-name"),o=r(a).parent().find("select.woo-variation-raw-select"),s=o.find("option"),l=o.find("option:disabled"),c=o.find("option.enabled.out-of-stock"),u=o.find("option:selected"),d=o.find("option").eq(1),v=[],f=[],h=[];s.each((function(){""!==r(this).val()&&(v.push(r(this).val()),i=0===u.length?d.val():u.val())})),l.each((function(){""!==r(this).val()&&f.push(r(this).val())})),c.each((function(){""!==r(this).val()&&h.push(r(this).val())}));var p=_.difference(v,f);t.setupItem(a,i,p,h,n)}))}},{key:"setupItem",value:function(t,e,a,i,n){var o=this;r(t).find("li.variable-item").each((function(t,s){var l=r(s).attr("data-value"),c=r(s).attr("data-title");r(s).removeClass("selected disabled no-stock").addClass("disabled"),r(s).attr("aria-checked","false"),r(s).attr("tabindex","-1"),r(s).attr("data-wvstooltip-out-of-stock",""),r(s).find("input.variable-item-radio-input:radio").prop("disabled",!0).prop("checked",!1),e.length<1&&woo_variation_swatches_options.show_variation_label&&n.text(""),o.isAjaxVariation()?(r(s).find("input.variable-item-radio-input:radio").prop("disabled",!1),r(s).removeClass("selected disabled no-stock"),l===e&&(r(s).addClass("selected"),r(s).attr("aria-checked","true"),r(s).attr("tabindex","0"),r(s).find("input.variable-item-radio-input:radio").prop("disabled",!1).prop("checked",!0),woo_variation_swatches_options.show_variation_label&&n.text("".concat(woo_variation_swatches_options.variation_label_separator," ").concat(c)),r(s).trigger("wvs-item-updated",[e,l]))):(_.includes(a,l)&&(r(s).removeClass("selected disabled"),r(s).removeAttr("aria-hidden"),r(s).attr("tabindex","0"),r(s).find("input.variable-item-radio-input:radio").prop("disabled",!1),l===e&&(r(s).addClass("selected"),r(s).attr("aria-checked","true"),r(s).find("input.variable-item-radio-input:radio").prop("checked",!0),woo_variation_swatches_options.show_variation_label&&n.text("".concat(woo_variation_swatches_options.variation_label_separator," ").concat(c)),r(s).trigger("wvs-item-updated",[e,l]))),_.includes(i,l)&&woo_variation_swatches_options.clickable_out_of_stock&&(r(s).removeClass("disabled").addClass("no-stock"),r(s).attr("data-wvstooltip-out-of-stock",woo_variation_swatches_options.out_of_stock_tooltip_text)))}))}},{key:"setupEvents",value:function(){var t=this;this.$element.find("ul.variable-items-wrapper").each((function(e,a){var i=r(a).parent().find("select.woo-variation-raw-select");woo_variation_swatches_options.clear_on_reselect?(r(a).on("click.wvs","li.variable-item:not(.selected):not(.radio-variable-item)",(function(e){e.preventDefault(),e.stopPropagation();var a=r(this).data("value");i.val(a).trigger("change"),i.trigger("click"),woo_variation_swatches_options.is_mobile,r(this).trigger("wvs-selected-item",[a,i,t.$element])})),r(a).on("click.wvs","li.variable-item.selected:not(.radio-variable-item)",(function(e){e.preventDefault(),e.stopPropagation();var a=r(this).val();i.val("").trigger("change"),i.trigger("click"),woo_variation_swatches_options.is_mobile,r(this).trigger("wvs-unselected-item",[a,i,t.$element])})),r(a).on("click.wvs","input.variable-item-radio-input:radio",(function(t){t.stopPropagation(),r(this).trigger("change.wvs",{radioChange:!0})})),r(a).on("change.wvs","input.variable-item-radio-input:radio",(function(e,a){if(e.preventDefault(),e.stopPropagation(),a&&a.radioChange){var n=r(this).val();r(this).parent("li.radio-variable-item").hasClass("selected")?(i.val("").trigger("change"),r(this).parent("li.radio-variable-item").trigger("wvs-unselected-item",[n,i,t.$element])):(i.val(n).trigger("change"),r(this).parent("li.radio-variable-item").trigger("wvs-selected-item",[n,i,t.$element])),i.trigger("click"),woo_variation_swatches_options.is_mobile}}))):(r(a).on("click.wvs","li.variable-item:not(.radio-variable-item)",(function(e){e.preventDefault(),e.stopPropagation();var a=r(this).data("value");i.val(a).trigger("change"),i.trigger("click"),woo_variation_swatches_options.is_mobile,r(this).trigger("wvs-selected-item",[a,i,t.$element])})),r(a).on("change.wvs","input.variable-item-radio-input:radio",(function(e){e.preventDefault(),e.stopPropagation();var a=r(this).val();i.val(a).trigger("change"),i.trigger("click"),woo_variation_swatches_options.is_mobile,r(this).parent("li.radio-variable-item").removeClass("selected disabled no-stock").addClass("selected"),r(this).parent("li.radio-variable-item").trigger("wvs-selected-item",[a,i,t.$element])}))),r(a).on("keydown.wvs","li.variable-item:not(.disabled)",(function(t){(t.keyCode&&32===t.keyCode||t.key&&" "===t.key||t.keyCode&&13===t.keyCode||t.key&&"enter"===t.key.toLowerCase())&&(t.preventDefault(),r(this).trigger("click"))}))})),this.$element.on("click.wvs",".woo-variation-swatches-variable-item-more",(function(t){t.preventDefault(),r(this).parent().removeClass("enabled-display-limit-mode enabled-catalog-display-limit-mode"),r(this).remove()})),this.$element.find("[data-wvstooltip]").each((function(t,e){r(e).on("mouseenter",(function(t){var a=e.getBoundingClientRect(),i=o.getComputedStyle(e,":before"),n=o.getComputedStyle(e,":after"),r=parseInt(n.getPropertyValue("border-top-width"),10),s=parseInt(i.getPropertyValue("height"),10),l=parseInt(i.getPropertyValue("width"),10),c=s+r+2;e.classList.toggle("wvs-tooltip-position-bottom",a.topd,h=u+d,p=document.body.clientWidth1&&i.count===i.chosenCount&&t.resetStockInfo(),i.count>1&&i.count===i.mayChosenCount&&n.forEach((function(a){var i='[data-attribute_name="'.concat(a.attribute_name,'"] > [data-value="').concat(a.attribute_value,'"]');a.variation.is_in_stock&&a.variation.max_qty&&a.variation.variation_stock_left&&a.variation.max_qty<=e?(t.$element.find("".concat(i," .wvs-stock-left-info")).attr("data-wvs-stock-info",a.variation.variation_stock_left),t.$element.find(i).addClass("wvs-show-stock-left-info")):(t.$element.find(i).removeClass("wvs-show-stock-left-info"),t.$element.find("".concat(i," .wvs-stock-left-info")).attr("data-wvs-stock-info",""))}))})),this.$element.on("hide_variation.wvs",(function(){t.resetStockInfo()}))}}},{key:"resetStockInfo",value:function(){this.$element.find(".variable-item").removeClass("wvs-show-stock-left-info"),this.$element.find(".wvs-stock-left-info").attr("data-wvs-stock-info","")}},{key:"getChosenAttributes",value:function(){var t={},e=0,a=0;return this.attributeFields.each((function(){var i=r(this).data("attribute_name")||r(this).attr("name"),n=r(this).val()||"";n.length>0&&a++,e++,t[i]=n})),{count:e,chosenCount:a,mayChosenCount:a+1,data:t}}},{key:"findStockVariations",value:function(t,a){for(var o=[],r=0,s=Object.entries(a.data);r0){var p=h.shift(),m={};m.attribute_name=c,m.attribute_value=v,m.variation=p,o.push(m)}}}catch(t){d.e(t)}finally{d.f()}}}return o}},{key:"findMatchingVariations",value:function(t,e){for(var a=[],i=0;i1?r-1:0),l=1;l1?n-1:0),r=1;rbudgeting – Eduardo Menezes
https://eduardomenezes.com
Desenvolvedor Web e Gestão de Rede SocialWed, 23 Sep 2026 17:45:11 +0000pt-PT
hourly
1 https://eduardomenezes.com/wp-content/uploads/2022/09/cropped-LOGOTIPO_PNG_TONS-DE-CINZA-1024x327-1-32x32.pngbudgeting – Eduardo Menezes
https://eduardomenezes.com
3232Set a Fixed Spending Cap
https://eduardomenezes.com/2026/09/22/mystake-2087/
https://eduardomenezes.com/2026/09/22/mystake-2087/#respondTue, 22 Sep 2026 22:07:09 +0000https://eduardomenezes.com/?p=36547Start by deciding exactly how much you can afford to spend on entertainment over the weekend. For example, if your disposable income is £120, earmark £40 for streaming, gaming, and other online activities. Write this number on a sticky note and keep it in your phone’s notes app so you’re reminded each time you consider a purchase.
Prioritise the Experiences You’ll Actually Enjoy
List the services you use most often—Netflix, Spotify, Xbox Game Pass, Steam, or mobile app subscriptions. Assign a priority rank: 1 for “must‑have,” 2 for “nice to have,” 3 for “optional.” If you only have two hours of free time, pick the top‑ranked items first. This way you avoid splurging on a service that will sit idle.
Track Every Transaction in Real Time
Open a budgeting app that allows you to link credit cards or bank accounts. When you buy a game or subscribe to a streaming service, the app will automatically record the expense. If you notice a pattern—say you’re buying the same game title twice a month—stop and reassess. A quick glance at the app’s “Spending by Category” chart can reveal hidden leaks.
Use Time‑Based Limits to Avoid Over‑Spending
Many streaming platforms let you set daily viewing limits. Turn on the “Parental Controls” feature on your TV or set a timer on your phone that alerts you after 90 minutes of continuous play. This helps you stay within your budgeted hours and prevents late‑night impulse purchases.
Plan a “Free” Entertainment Day
Choose one day of the weekend for zero‑cost activities. Browse public libraries for e‑books, use free trial periods for new streaming services, or download open‑source games. If you’re looking for a quick bite after a long gaming session, check out the mystake for a budget‑friendly meal that won’t dent your entertainment budget.
Review and Adjust at the End of the Weekend
At Sunday night, pull up your budgeting app and compare actual spend against your £40 target. If you overspent, identify the cause—was it a last‑minute game sale or an unexpected subscription renewal? Adjust next week’s cap or priorities accordingly. This habit turns budgeting from a one‑off task into a continuous improvement cycle.
Keep the Momentum Going
Once you’ve mastered the weekend routine, extend the same principles to weekdays. Allocate a small daily amount—say £5—for spontaneous gaming or a new episode of a series. Over time, you’ll build a habit of conscious spending that keeps your entertainment enjoyable without breaking the bank.