News

Saturday, October 9, 2021

Victoria Myers

Saturday, October 9, 2021

Good morning lovely knitters!  It was so great to see so many of you last weekend for the yarn crawl!  Thanks so much for coming by...it was the most fun we've had in long time!  In case you missed it, our Noro trunk show is still around this weekend.  It'll go back next week, but if you want to come see some pretty, pretty models that aren't usually in the shop - come by today.  They feature Ito, Tsubame, Sonata and Silk Garden! We also got NEW Noro - at long last - this week!  Wahoo!!!  I'm SO excited about...


GREATER BOSTON YARN CRAWL STARTS THURSDAY!!

Victoria Myers

GREATER BOSTON YARN CRAWL STARTS THURSDAY!!

Hi everyone!  Yup - early post this week because it is yarn crawl week!  First - we have extended hours this week:   Sunday, 10/3 - 11am – 4pm These hours are JUST this week.  Next week we'll be back to Weds - Saturday, 12-5 Now, on to the FUN stuff!   In an effort to spread out visitors – all of our events are good all day each day of the crawl and we have online fun below for those of you who would love to visit, but are too nervous to be out with a lot of people.  Masks are...


Saturday, September 25, 2021

Victoria Myers

Saturday, September 25, 2021

Good morning lovely knitters!  It is OFFICIALLY FALL!!!  Wahoo!  It is my absolute favorite season - time to get your hands on some YARN and some Apple Cider donuts!  Yum! It is also just 5 days until the Greater Boston Yarn Crawl (September 30 - October 3)!  If you aren't into crowds these days, you can still see some of our great new stuff today (though, not quite everything is ready).  We've got LOADS of new hand-dyed Footfoot (in store only) and Mad Balls, and heavily discounted Grab Bags (in store only)!  I'll be posting much more in the week...


Saturday, September 18, 2021

Victoria Myers

Saturday, September 18, 2021

Good morning lovely knitters!  The foggy morning made me have a late start - so I'm going to TRY to be quick this morning.  (Go ahead and laugh - I won't be offended!) The Greater Boston Yarn Crawl is less than 2 weeks away!  If you haven't cast on Wayside Waves yet, better grab a kit quick!  It is a relatively quick knit, but if you don't get it this week, it is unlikely you'll have it done for the crawl - which starts on September 30! For more 15-years fun - Juniper Moon Farm Santa Cruz is Buy 1...


Saturday, September 11, 2021

Victoria Myers

Saturday, September 11, 2021

Good morning lovely yarners!  I hope you are all enjoying this lovely cool morning and settling into fall routines!  In all honestly, I sort of hate to write things on this particular day, but as this is a Saturday tradition, I thought I had better not skip.  And I have some time sensitive stuff to say! FIRST - did you know that it is 105 days until Christmas?  OH MY!  It really like to sneak up on us!  But, this means that our 10Row/100 Day Challenge will be starting in just 5 days!  I can't seem to attach a file...

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(), ); }