news

Saturday, November 6, 2021

Victoria Myers

Good morning lovely knitters!  I hope you are all looking forward to the extra hour of knitting time this weekend.  And THAT is kinda the only way to look at it that won't make you sad about the light.  So - don't forget to set your clocks back (especially you guys who are in classes tomorrow) tonight!  And if someone can tell me how to set the cats back so they won't be harassing me for dinner at the wrong time, PLEASE let me know!

The chilly weather is telling you, and now so am I!  It is just 7 weeks until Christmas and so this week, I re-worked the Angel Cupcakes for you. 

These are extremely popular gifts - super easy to make and look like a million bucks!  The Angel Cupcakes come with 4 FREE patterns (as a download code) and with new colors and (sadly discontinuations) there are a whole BUNCH of NEW ones!

We also got a nice restocks of Fourteen - so if you didn't grab your Howl Kits last weekend - you still can!  There are only a handful of Color 4 and 8 left in the world, so don't wait much longer if those two colors make you happy!

And just yesterday - the Mist Sweater pattern got to climb out into the sun!

The Mist sweater combines fantastic Ella Rae Eco-Tweed with Ella Rae Silky Kid to make a heathered, soft and cozy sweater that really makes the cable pop right out of the mist!  You'll love knitting it AND wearing it!  We've put together kits here!

And I think that's it this week?  Look at me being ALMOST succinct.  Almost.  ;)

Hope to see you soon!

Island Yarn 
189 Main Street
Maynard, MA  01754
Hours: Wednesday to Saturday, 12-5

Leave a Comment

Please note, comments must be approved before they are published

const selectVariantByClickingImage = { // Create variant images from productJson object _createVariantImage: function (product) { const variantImageObject = {}; product.variants.forEach((variant) => { if ( typeof variant.featured_image !== 'undefined' && variant.featured_image !== null ) { const variantImage = variant.featured_image.src .split('?')[0] .replace(/http(s)?:/, ''); variantImageObject[variantImage] = variantImageObject[variantImage] || {}; product.options.forEach((option, index) => { const optionValue = variant.options[index]; const optionKey = `option-${index}`; if ( typeof variantImageObject[variantImage][optionKey] === 'undefined' ) { variantImageObject[variantImage][optionKey] = optionValue; } else { const oldValue = variantImageObject[variantImage][optionKey]; if (oldValue !== null && oldValue !== optionValue) { variantImageObject[variantImage][optionKey] = null; } } }); } }); return variantImageObject; }, _updateVariant: function (event, id, product, variantImages) { const arrImage = event.target.src .split('?')[0] .replace(/http(s)?:/, '') .split('.'); const strExtention = arrImage.pop(); const strRemaining = arrImage.pop().replace(/_[a-zA-Z0-9@]+$/, ''); const strNewImage = `${arrImage.join('.')}.${strRemaining}.${strExtention}`; if (typeof variantImages[strNewImage] !== 'undefined') { product.variants.forEach((option, index) => { const optionValue = variantImages[strNewImage][`option-${index}`]; if (optionValue !== null && optionValue !== undefined) { const selects = document.querySelectorAll('#'+ id + ' [class*=single-option-selector]'); const options = selects[index].options; for (let option, n = 0; (option = options[n]); n += 1) { if (option.value === optionValue) { selects[index].selectedIndex = n; selects[index].dispatchEvent(new Event('change')); break; } } } }); } }, _selectVariant: function() { const productJson = document.querySelectorAll('[id^=ProductJson-'); if (productJson.length > 0) { productJson.forEach((product) => { const sectionId = product.id.replace("ProductJson-", "shopify-section-"); const thumbnails = document.querySelectorAll('#'+ sectionId + ' img[src*="/products/"]'); if (thumbnails.length > 1) { const productObject = JSON.parse(product.innerHTML); const variantImages = this._createVariantImage(productObject); // need to check variants > 1 if (productObject.variants.length > 1) { thumbnails.forEach((thumbnail) => { thumbnail.addEventListener('click', (e) => this._updateVariant(e, sectionId, productObject, variantImages), ); }); } } }); } }, }; if (document.readyState !== 'loading') { selectVariantByClickingImage._selectVariant(); } else { document.addEventListener( 'DOMContentLoaded', selectVariantByClickingImage._selectVariant(), ); }