news

Saturday, October 8, 2022

Victoria Myers

Good morning lovely knitters!  Guess what??!  Today is National "I Love Yarn" Day!  And I didn't even make that up!  I know - for most of us, we're saying, isn't that EVERY DAY?  But today its official!  Lol!  Honestly, I didn't know about this until Thursday, so my main plan, is to REALLY fondle the yarn today.  You?  It is actually just the perfect day to take a ride to the shop - the leaves are stunning, the air is delightfully crisp again, we've got loads of new, amazing yarns that you might not have gotten your paws into yet, AND it is your last chance on a few things - first is sweater club!

Sweater Club is a great class to take if you are starting your very first sweater, or taking on a challenge sweater, or just want to have some moral support along the way!  There are a couple of spots left, but it starts TOMORROW!  Come in today to plot your sweater and sign-up!  (Maybe you want to get a Dragon Scales Sweater going to be snuggly for fall and winter?)

Also, it is your last chance to sign-up for our Shawl Lover's Box for October!  There won't be another box until December, so don't miss out on our next fabulous shawl kit!!

This is also such a fun time of year because post-yarn-crawl-there are prize announcements marching through!  Which reminds me - you have until next Saturday to drop your passport off to be entered for our prize basket!

But the FIRST winner is the winner of our Name Our New Color Contest - Margot B (I sent you an email!) won with the fantastic name Harbor Mist!!  We currently have this color dyed in Solea Light and Singulush if you want to add it to your basket (just leave a note with the color name in the notes - we'll be updating the hand-dyes soon)!

 

And I think that's it?  I dunno!  One of these cats was meowing ALL night and keeping me awake - can you guess which one?

Hope to see you all on this glorious fall day!

Island Yarn 
189 Main Street
Maynard, MA  01754
Hours: Wednesday 12 - 5, Thursday 12 - 6, Friday and 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(), ); }