/*! * Dialogs Manager v4.9.3 * https://github.com/kobizz/dialogs-manager * * Copyright Kobi Zaltzberg * Released under the MIT license * https://github.com/kobizz/dialogs-manager/blob/master/LICENSE.txt */ (function($, global) { 'use strict'; /* * Dialog Manager */ var DialogsManager = { widgetsTypes: {}, createWidgetType: function(typeName, properties, Parent) { if (!Parent) { Parent = this.Widget; } var WidgetType = function() { Parent.apply(this, arguments); }; var prototype = WidgetType.prototype = new Parent(typeName); prototype.types = prototype.types.concat([typeName]); $.extend(prototype, properties); prototype.constructor = WidgetType; WidgetType.extend = function(typeName, properties) { return DialogsManager.createWidgetType(typeName, properties, WidgetType); }; return WidgetType; }, addWidgetType: function(typeName, properties, Parent) { if (properties && properties.prototype instanceof this.Widget) { return this.widgetsTypes[typeName] = properties; } return this.widgetsTypes[typeName] = this.createWidgetType(typeName, properties, Parent); }, getWidgetType: function(widgetType) { return this.widgetsTypes[widgetType]; } }; /* * Dialog Manager instances constructor */ DialogsManager.Instance = function() { var self = this, elements = {}, settings = {}; var initElements = function() { elements.body = $('body'); }; var initSettings = function(options) { var defaultSettings = { classPrefix: 'dialog', effects: { show: 'fadeIn', hide: 'fadeOut' } }; $.extend(settings, defaultSettings, options); }; this.createWidget = function(widgetType, properties) { var WidgetTypeConstructor = DialogsManager.getWidgetType(widgetType), widget = new WidgetTypeConstructor(widgetType); properties = properties || {}; widget.init(self, properties); return widget; }; this.getSettings = function(property) { if (property) { return settings[property]; } return Object.create(settings); }; this.init = function(settings) { initSettings(settings); initElements(); return self; }; self.init(); }; /* * Widget types constructor */ DialogsManager.Widget = function(widgetName) { var self = this, settings = {}, events = {}, elements = {}, hideTimeOut = 0, baseClosureMethods = ['refreshPosition']; var bindEvents = function() { var windows = [elements.window]; if (elements.iframe) { windows.push(jQuery(elements.iframe[0].contentWindow)); } windows.forEach(function(window) { if (settings.hide.onEscKeyPress) { window.on('keyup', onWindowKeyUp); } if (settings.hide.onOutsideClick) { window[0].addEventListener('click', hideOnOutsideClick, true); } if (settings.hide.onOutsideContextMenu) { window[0].addEventListener('contextmenu', hideOnOutsideClick, true); } if (settings.position.autoRefresh) { window.on('resize', self.refreshPosition); } }); if (settings.hide.onClick || settings.hide.onBackgroundClick) { elements.widget.on('click', hideOnClick); } }; var callEffect = function(intent, params) { var effect = settings.effects[intent], $widget = elements.widget; if ('function' === typeof effect) { effect.apply($widget, params); } else { if ($widget[effect]) { $widget[effect].apply($widget, params); } else { throw 'Reference Error: The effect ' + effect + ' not found'; } } }; var ensureClosureMethods = function() { var closureMethodsNames = baseClosureMethods.concat(self.getClosureMethods()); $.each(closureMethodsNames, function() { var methodName = this, oldMethod = self[methodName]; self[methodName] = function() { oldMethod.apply(self, arguments); }; }); }; var fixIframePosition = function(position) { if (! position.my) { return; } var horizontalOffsetRegex = /left|right/, extraOffsetRegex = /([+-]\d+)?$/, iframeOffset = elements.iframe.offset(), iframeWindow = elements.iframe[0].contentWindow, myParts = position.my.split(' '), fixedParts = []; if (myParts.length === 1) { if (horizontalOffsetRegex.test(myParts[0])) { myParts.push('center'); } else { myParts.unshift('center'); } } myParts.forEach(function(part, index) { var fixedPart = part.replace(extraOffsetRegex, function(partOffset) { partOffset = +partOffset || 0; if (! index) { partOffset += iframeOffset.left - iframeWindow.scrollX; } else { partOffset += iframeOffset.top - iframeWindow.scrollY; } if (partOffset >= 0) { partOffset = '+' + partOffset; } return partOffset; }); fixedParts.push(fixedPart); }); position.my = fixedParts.join(' '); }; var hideOnClick = function(event) { if (isContextMenuClickEvent(event)) { return; } if (settings.hide.onClick) { if ($(event.target).closest(settings.selectors.preventClose).length) { return; } } else if (event.target !== this) { return; } self.hide(); }; var isIgnoredTarget = function(event) { if (! settings.hide.ignore) { return false; } return !! $(event.target).closest(settings.hide.ignore).length; }; var hideOnOutsideClick = function(event) { if (isContextMenuClickEvent(event) || $(event.target).closest(elements.widget).length || isIgnoredTarget(event)) { return; } self.hide(); }; var initElements = function() { self.addElement('widget'); self.addElement('header'); self.addElement('message'); self.addElement('window', window); self.addElement('body', document.body); self.addElement('container', settings.container); if (settings.iframe) { self.addElement('iframe', settings.iframe); } if (settings.closeButton) { if ( settings.closeButtonClass ) { // Backwards compatibility settings.closeButtonOptions.iconClass = settings.closeButtonClass; } const $button = $('', settings.closeButtonOptions.attributes), $buttonIcon = $(settings.closeButtonOptions.iconElement).addClass(settings.closeButtonOptions.iconClass); $button.append($buttonIcon); self.addElement('closeButton', $button); } var id = self.getSettings('id'); if (id) { self.setID(id); } var classes = []; $.each(self.types, function() { classes.push(settings.classes.globalPrefix + '-type-' + this); }); classes.push(self.getSettings('className')); elements.widget .addClass(classes.join(' ')) .attr({ 'aria-modal': true, 'role': 'document', 'tabindex': 0, }); }; var initSettings = function(parent, userSettings) { var parentSettings = $.extend(true, {}, parent.getSettings()); settings = { headerMessage: '', message: '', effects: parentSettings.effects, classes: { globalPrefix: parentSettings.classPrefix, prefix: parentSettings.classPrefix + '-' + widgetName, preventScroll: parentSettings.classPrefix + '-prevent-scroll', }, selectors: { preventClose: '.' + parentSettings.classPrefix + '-prevent-close', }, container: 'body', preventScroll: false, iframe: null, closeButton: false, closeButtonOptions: { iconClass: parentSettings.classPrefix + '-close-button-icon', attributes: { role: 'button', 'tabindex': 0, 'aria-label': 'Close', href: '#', }, iconElement: '', }, position: { element: 'widget', my: 'center', at: 'center', enable: true, autoRefresh: false, }, hide: { auto: false, autoDelay: 5000, onClick: false, onOutsideClick: true, onOutsideContextMenu: false, onBackgroundClick: true, onEscKeyPress: true, ignore: '', }, }; $.extend(true, settings, self.getDefaultSettings(), userSettings); initSettingsEvents(); }; var initSettingsEvents = function() { $.each(settings, function(settingKey) { var eventName = settingKey.match(/^on([A-Z].*)/); if (!eventName) { return; } eventName = eventName[1].charAt(0).toLowerCase() + eventName[1].slice(1); self.on(eventName, this); }); }; var isContextMenuClickEvent = function(event) { // Firefox fires `click` event on every `contextmenu` event. return event.type === 'click' && event.button === 2; }; var normalizeClassName = function(name) { return name.replace(/([a-z])([A-Z])/g, function() { return arguments[1] + '-' + arguments[2].toLowerCase(); }); }; var onWindowKeyUp = function(event) { var ESC_KEY = 27, keyCode = event.which; if (ESC_KEY === keyCode) { self.hide(); } }; var unbindEvents = function() { var windows = [elements.window]; if (elements.iframe) { windows.push(jQuery(elements.iframe[0].contentWindow)); } windows.forEach(function(window) { if (settings.hide.onEscKeyPress) { window.off('keyup', onWindowKeyUp); } if (settings.hide.onOutsideClick) { window[0].removeEventListener('click', hideOnOutsideClick, true); } if (settings.hide.onOutsideContextMenu) { window[0].removeEventListener('contextmenu', hideOnOutsideClick, true); } if (settings.position.autoRefresh) { window.off('resize', self.refreshPosition); } }); if (settings.hide.onClick || settings.hide.onBackgroundClick) { elements.widget.off('click', hideOnClick); } }; this.addElement = function(name, element, classes) { var $newElement = elements[name] = $(element || '
'), normalizedName = normalizeClassName(name); classes = classes ? classes + ' ' : ''; classes += settings.classes.globalPrefix + '-' + normalizedName; classes += ' ' + settings.classes.prefix + '-' + normalizedName; $newElement.addClass(classes); return $newElement; }; this.destroy = function() { unbindEvents(); elements.widget.remove(); self.trigger('destroy'); return self; }; this.getElements = function(item) { return item ? elements[item] : elements; }; this.getSettings = function(setting) { var copy = Object.create(settings); if (setting) { return copy[setting]; } return copy; }; this.hide = function() { if (! self.isVisible()) { return; } clearTimeout(hideTimeOut); callEffect('hide', arguments); unbindEvents(); if (settings.preventScroll) { self.getElements('body').removeClass(settings.classes.preventScroll); } self.trigger('hide'); return self; }; this.init = function(parent, properties) { if (!(parent instanceof DialogsManager.Instance)) { throw 'The ' + self.widgetName + ' must to be initialized from an instance of DialogsManager.Instance'; } ensureClosureMethods(); self.trigger('init', properties); initSettings(parent, properties); initElements(); self.buildWidget(); self.attachEvents(); self.trigger('ready'); return self; }; this.isVisible = function() { return elements.widget.is(':visible'); }; this.on = function(eventName, callback) { if ('object' === typeof eventName) { $.each(eventName, function(singleEventName) { self.on(singleEventName, this); }); return self; } var eventNames = eventName.split(' '); eventNames.forEach(function(singleEventName) { if (!events[singleEventName]) { events[singleEventName] = []; } events[singleEventName].push(callback); }); return self; }; this.off = function(eventName, callback) { if (! events[ eventName ]) { return self; } if (! callback) { delete events[eventName]; return self; } var callbackIndex = events[eventName].indexOf(callback); if (-1 !== callbackIndex) { events[eventName].splice(callbackIndex, 1); } return self; }; this.refreshPosition = function() { if (! settings.position.enable) { return; } var position = $.extend({}, settings.position); if (elements[position.of]) { position.of = elements[position.of]; } if (! position.of) { position.of = window; } if (settings.iframe) { fixIframePosition(position); } elements[position.element].position(position); }; this.setID = function(id) { elements.widget.attr('id', id); return self; }; this.setHeaderMessage = function(message) { self.getElements('header').html(message); return self; }; this.setMessage = function(message) { elements.message.html(message); return self; }; this.setSettings = function(key, value) { if (jQuery.isPlainObject(value)) { $.extend(true, settings[key], value); } else { settings[key] = value; } return self; }; this.show = function() { clearTimeout(hideTimeOut); elements.widget.appendTo(elements.container).hide(); callEffect('show', arguments); self.refreshPosition(); if (settings.hide.auto) { hideTimeOut = setTimeout(self.hide, settings.hide.autoDelay); } bindEvents(); if (settings.preventScroll) { self.getElements('body').addClass(settings.classes.preventScroll); } self.trigger('show'); return self; }; this.trigger = function(eventName, params) { var methodName = 'on' + eventName[0].toUpperCase() + eventName.slice(1); if (self[methodName]) { self[methodName](params); } var callbacks = events[eventName]; if (!callbacks) { return; } $.each(callbacks, function(index, callback) { callback.call(self, params); }); return self; }; }; DialogsManager.Widget.prototype.types = []; // Inheritable widget methods DialogsManager.Widget.prototype.buildWidget = function() { var elements = this.getElements(), settings = this.getSettings(); elements.widget.append(elements.header, elements.message); this.setHeaderMessage(settings.headerMessage); this.setMessage(settings.message); if (this.getSettings('closeButton')) { elements.widget.prepend(elements.closeButton); } }; DialogsManager.Widget.prototype.attachEvents = function() { var self = this; if (self.getSettings('closeButton')) { self.getElements('closeButton').on('click', function(event) { event.preventDefault(); self.hide(); }); } }; DialogsManager.Widget.prototype.getDefaultSettings = function() { return {}; }; DialogsManager.Widget.prototype.getClosureMethods = function() { return []; }; DialogsManager.Widget.prototype.onHide = function() { }; DialogsManager.Widget.prototype.onShow = function() { }; DialogsManager.Widget.prototype.onInit = function() { }; DialogsManager.Widget.prototype.onReady = function() { }; DialogsManager.widgetsTypes.simple = DialogsManager.Widget; DialogsManager.addWidgetType('buttons', { activeKeyUp: function(event) { var TAB_KEY = 9; if (event.which === TAB_KEY) { event.preventDefault(); } if (this.hotKeys[event.which]) { this.hotKeys[event.which](this); } }, activeKeyDown: function(event) { if (!this.focusedButton) { return; } var TAB_KEY = 9; if (event.which === TAB_KEY) { event.preventDefault(); var currentButtonIndex = this.focusedButton.index(), nextButtonIndex; if (event.shiftKey) { nextButtonIndex = currentButtonIndex - 1; if (nextButtonIndex < 0) { nextButtonIndex = this.buttons.length - 1; } } else { nextButtonIndex = currentButtonIndex + 1; if (nextButtonIndex >= this.buttons.length) { nextButtonIndex = 0; } } this.focusedButton = this.buttons[nextButtonIndex].trigger('focus'); } }, addButton: function(options) { var self = this, settings = self.getSettings(), buttonSettings = jQuery.extend(settings.button, options); var classes = options.classes ? options.classes + ' ' : ''; classes += settings.classes.globalPrefix + '-button'; var $button = self.addElement(options.name, $('<' + buttonSettings.tag + '>').html(options.text), classes); self.buttons.push($button); var buttonFn = function() { if (settings.hide.onButtonClick) { self.hide(); } if ('function' === typeof options.callback) { options.callback.call(this, self); } }; $button.on('click', buttonFn); if (options.hotKey) { this.hotKeys[options.hotKey] = buttonFn; } this.getElements('buttonsWrapper').append($button); if (options.focus) { this.focusedButton = $button; } return self; }, bindHotKeys: function() { this.getElements('window').on({ keyup: this.activeKeyUp, keydown: this.activeKeyDown }); }, buildWidget: function() { DialogsManager.Widget.prototype.buildWidget.apply(this, arguments); var $buttonsWrapper = this.addElement('buttonsWrapper'); this.getElements('widget').append($buttonsWrapper); }, getClosureMethods: function() { return [ 'activeKeyUp', 'activeKeyDown' ]; }, getDefaultSettings: function() { return { hide: { onButtonClick: true }, button: { tag: 'button' } }; }, onHide: function() { this.unbindHotKeys(); }, onInit: function() { this.buttons = []; this.hotKeys = {}; this.focusedButton = null; }, onShow: function() { this.bindHotKeys(); if (!this.focusedButton) { this.focusedButton = this.buttons[0]; } if (this.focusedButton) { this.focusedButton.trigger('focus'); } }, unbindHotKeys: function() { this.getElements('window').off({ keyup: this.activeKeyUp, keydown: this.activeKeyDown }); } }); DialogsManager.addWidgetType('lightbox', DialogsManager.getWidgetType('buttons').extend('lightbox', { getDefaultSettings: function() { var settings = DialogsManager.getWidgetType('buttons').prototype.getDefaultSettings.apply(this, arguments); return $.extend(true, settings, { contentWidth: 'auto', contentHeight: 'auto', position: { element: 'widgetContent', of: 'widget', autoRefresh: true } }); }, buildWidget: function() { DialogsManager.getWidgetType('buttons').prototype.buildWidget.apply(this, arguments); var $widgetContent = this.addElement('widgetContent'), elements = this.getElements(); $widgetContent.append(elements.header, elements.message, elements.buttonsWrapper); elements.widget.html($widgetContent); if (elements.closeButton) { $widgetContent.prepend(elements.closeButton); } }, onReady: function() { var elements = this.getElements(), settings = this.getSettings(); if ('auto' !== settings.contentWidth) { elements.message.width(settings.contentWidth); } if ('auto' !== settings.contentHeight) { elements.message.height(settings.contentHeight); } } })); DialogsManager.addWidgetType('confirm', DialogsManager.getWidgetType('lightbox').extend('confirm', { onReady: function() { DialogsManager.getWidgetType('lightbox').prototype.onReady.apply(this, arguments); var strings = this.getSettings('strings'), isDefaultCancel = this.getSettings('defaultOption') === 'cancel'; this.addButton({ name: 'cancel', text: strings.cancel, callback: function(widget) { widget.trigger('cancel'); }, focus: isDefaultCancel }); this.addButton({ name: 'ok', text: strings.confirm, callback: function(widget) { widget.trigger('confirm'); }, focus: !isDefaultCancel }); }, getDefaultSettings: function() { var settings = DialogsManager.getWidgetType('lightbox').prototype.getDefaultSettings.apply(this, arguments); settings.strings = { confirm: 'OK', cancel: 'Cancel' }; settings.defaultOption = 'cancel'; return settings; } })); DialogsManager.addWidgetType('alert', DialogsManager.getWidgetType('lightbox').extend('alert', { onReady: function() { DialogsManager.getWidgetType('lightbox').prototype.onReady.apply(this, arguments); var strings = this.getSettings('strings'); this.addButton({ name: 'ok', text: strings.confirm, callback: function(widget) { widget.trigger('confirm'); } }); }, getDefaultSettings: function() { var settings = DialogsManager.getWidgetType('lightbox').prototype.getDefaultSettings.apply(this, arguments); settings.strings = { confirm: 'OK' }; return settings; } })); // Exporting the DialogsManager variable to global global.DialogsManager = DialogsManager; })( typeof jQuery !== 'undefined' ? jQuery : typeof require === 'function' && require('jquery'), (typeof module !== 'undefined' && typeof module.exports !== 'undefined') ? module.exports : window ); {"id":2675,"date":"2022-03-01T10:04:12","date_gmt":"2022-03-01T10:04:12","guid":{"rendered":"https:\/\/weeklypostgazette.com\/?p=2675"},"modified":"2023-06-01T12:13:17","modified_gmt":"2023-06-01T12:13:17","slug":"bullseye-glass-molds","status":"publish","type":"post","link":"https:\/\/weeklypostgazette.com\/bullseye-glass-molds\/","title":{"rendered":"Bullseye Glass Molds: Must-Have For Glassblowing"},"content":{"rendered":"

Bullseye Glass Molds are one of the must-have tools for glassblowers who are looking to make multiple, elaborate pieces. They come in an array of sizes and shapes, so you can create your own personal shapes and designs. With Bullseye Glass Molds, you don’t need additional materials like clay or wax to mold the glass in order to get a smooth shape – just pour some molten glass onto the molds and wait until it cools!<\/p>\n

What are Bullseye Glass Molds?<\/h2>\n

Bullseye glass molds<\/strong><\/a> are made from a thick, durable, and heat-resistant material and have been used for multiple centuries. They are an essential tool for crafting complex pieces of glass art and can be used with virtually any type of hot glass. Bullseye Glass Molds are one of the must-have tools for glassblowing. These molds can be used in a variety of ways to make projects that would otherwise be nearly impossible. These glass molds are made with a unique design that eliminates the need for an extra hand.<\/p>\n

Importance of Glass Mold for glassblowing projects<\/h3>\n

The Bullseye Glass Mold can be used in place of a slurry cup and provides a consistent size, shape, and sand texture to your glass work. It also has blunt edges on the inside of the mold making it ideal for safe, quick, clean breaks. A Bullseye Glass Mold makes slumping easier for glass blowers, especially for tricky cases. You can use them to make molds in a variety of shapes, including cups, plates, and trivets. The versatility of the mold makes it an essential tool in any glassblower’s arsenal.<\/p>\n

Where to purchase a Glass Mold<\/h3>\n

Bullseye Glass is an American-based company that has been in the glass business for over 60 years. Their molds are quality-made and guaranteed to last a lifetime. They offer a wide variety of affordable, quality products including molds, torches, and accessories. When you are beginning to learn how to blow glass, it is important to have the right tools so that you can focus on the task at hand. You can purchase them from ArtGlassSupplies.com<\/a>, they\u2019ll provide great deals and discounts, also have many other varieties of slumping tools. This tool serves as a template that allows you to create a perfect piece of glass every time.<\/p>\n

Usage<\/h3>\n

Bullseye Glass Molds are arguably the most useful tool for glassblowers, providing a wide range of shapes to work with. With this in mind, these molds can significantly help your creativity and provide diversity to your glass creations. A Bullseye Glass Mold is a must-have tool for glassblowers and artists who work with blown glass pieces. The molds allow you to create intricate patterns on flat surfaces quickly and easily. These molds are used to create beautiful and unique pieces of art, such as bowls, vases, and candle holders.<\/p>\n

Alternatives to the Bullseye Glass Mold<\/h4>\n

In the past, glassblowing required many different inexpensive tools that created a mess for glass artists. The Bullseye Mold is one of the most useful tools. But there are other ways to create your own mold that doesn’t require such investment or mess. There are two alternatives to the Bullseye Glass Mold. One is the Whirlybird, which is also a favorite among glassblowers. The other is the Blue Moon Molder, which can be found at most glass supply stores.<\/p>\n","protected":false},"excerpt":{"rendered":"

Bullseye Glass Molds are one of the must-have tools for glassblowers who are looking to make multiple, elaborate pieces. They come in an array of sizes and shapes, so you can create your own personal shapes and designs. With Bullseye Glass Molds, you don’t need additional materials like clay or wax to mold the glass […]<\/p>\n","protected":false},"author":1,"featured_media":8862,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[3],"tags":[275,512],"class_list":["post-2675","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-business","tag-artglasssupplies-com","tag-bullseye-glass-molds"],"yoast_head":"\nBullseye Glass Molds: Must-Have For Glassblowing<\/title>\n<meta name=\"description\" content=\"Bullseye Glass Molds are one of the must-have tools for glassblowers who are looking to make multiple, elaborate pieces.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/weeklypostgazette.com\/bullseye-glass-molds\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Bullseye Glass Molds: Must-Have For Glassblowing\" \/>\n<meta property=\"og:description\" content=\"Bullseye Glass Molds are one of the must-have tools for glassblowers who are looking to make multiple, elaborate pieces.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/weeklypostgazette.com\/bullseye-glass-molds\/\" \/>\n<meta property=\"og:site_name\" content=\"Weekly Post Gazette\" \/>\n<meta property=\"article:published_time\" content=\"2022-03-01T10:04:12+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2023-06-01T12:13:17+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/weeklypostgazette.com\/wp-content\/uploads\/2022\/03\/Bullseye-Glass-Molds-Must-Have-For-Glassblowing.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"612\" \/>\n\t<meta property=\"og:image:height\" content=\"408\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"admin\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"admin\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"3 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/weeklypostgazette.com\/bullseye-glass-molds\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/weeklypostgazette.com\/bullseye-glass-molds\/\"},\"author\":{\"name\":\"admin\",\"@id\":\"https:\/\/weeklypostgazette.com\/#\/schema\/person\/ec7256dded682538a10ff4fdd9738316\"},\"headline\":\"Bullseye Glass Molds: Must-Have For Glassblowing\",\"datePublished\":\"2022-03-01T10:04:12+00:00\",\"dateModified\":\"2023-06-01T12:13:17+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/weeklypostgazette.com\/bullseye-glass-molds\/\"},\"wordCount\":562,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/weeklypostgazette.com\/#organization\"},\"image\":{\"@id\":\"https:\/\/weeklypostgazette.com\/bullseye-glass-molds\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/weeklypostgazette.com\/wp-content\/uploads\/2022\/03\/Bullseye-Glass-Molds-Must-Have-For-Glassblowing.jpg\",\"keywords\":[\"ArtGlassSupplies.com\",\"Bullseye glass molds\"],\"articleSection\":[\"Business\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/weeklypostgazette.com\/bullseye-glass-molds\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/weeklypostgazette.com\/bullseye-glass-molds\/\",\"url\":\"https:\/\/weeklypostgazette.com\/bullseye-glass-molds\/\",\"name\":\"Bullseye Glass Molds: Must-Have For Glassblowing\",\"isPartOf\":{\"@id\":\"https:\/\/weeklypostgazette.com\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/weeklypostgazette.com\/bullseye-glass-molds\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/weeklypostgazette.com\/bullseye-glass-molds\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/weeklypostgazette.com\/wp-content\/uploads\/2022\/03\/Bullseye-Glass-Molds-Must-Have-For-Glassblowing.jpg\",\"datePublished\":\"2022-03-01T10:04:12+00:00\",\"dateModified\":\"2023-06-01T12:13:17+00:00\",\"description\":\"Bullseye Glass Molds are one of the must-have tools for glassblowers who are looking to make multiple, elaborate pieces.\",\"breadcrumb\":{\"@id\":\"https:\/\/weeklypostgazette.com\/bullseye-glass-molds\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/weeklypostgazette.com\/bullseye-glass-molds\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/weeklypostgazette.com\/bullseye-glass-molds\/#primaryimage\",\"url\":\"https:\/\/weeklypostgazette.com\/wp-content\/uploads\/2022\/03\/Bullseye-Glass-Molds-Must-Have-For-Glassblowing.jpg\",\"contentUrl\":\"https:\/\/weeklypostgazette.com\/wp-content\/uploads\/2022\/03\/Bullseye-Glass-Molds-Must-Have-For-Glassblowing.jpg\",\"width\":612,\"height\":408},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/weeklypostgazette.com\/bullseye-glass-molds\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/weeklypostgazette.com\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Bullseye Glass Molds: Must-Have For Glassblowing\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/weeklypostgazette.com\/#website\",\"url\":\"https:\/\/weeklypostgazette.com\/\",\"name\":\"Weekly Post Gazette\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\/\/weeklypostgazette.com\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/weeklypostgazette.com\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/weeklypostgazette.com\/#organization\",\"name\":\"Weekly Post Gazette\",\"url\":\"https:\/\/weeklypostgazette.com\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/weeklypostgazette.com\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/weeklypostgazette.com\/wp-content\/uploads\/2023\/05\/weekly-post-gazette-logo.png\",\"contentUrl\":\"https:\/\/weeklypostgazette.com\/wp-content\/uploads\/2023\/05\/weekly-post-gazette-logo.png\",\"width\":170,\"height\":45,\"caption\":\"Weekly Post Gazette\"},\"image\":{\"@id\":\"https:\/\/weeklypostgazette.com\/#\/schema\/logo\/image\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\/\/weeklypostgazette.com\/#\/schema\/person\/ec7256dded682538a10ff4fdd9738316\",\"name\":\"admin\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/weeklypostgazette.com\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/02a42c746d0e94d995d0b094754efdf4?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/02a42c746d0e94d995d0b094754efdf4?s=96&d=mm&r=g\",\"caption\":\"admin\"},\"sameAs\":[\"https:\/\/weeklypostgazette.com\"],\"url\":\"https:\/\/weeklypostgazette.com\/author\/admin\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Bullseye Glass Molds: Must-Have For Glassblowing","description":"Bullseye Glass Molds are one of the must-have tools for glassblowers who are looking to make multiple, elaborate pieces.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/weeklypostgazette.com\/bullseye-glass-molds\/","og_locale":"en_US","og_type":"article","og_title":"Bullseye Glass Molds: Must-Have For Glassblowing","og_description":"Bullseye Glass Molds are one of the must-have tools for glassblowers who are looking to make multiple, elaborate pieces.","og_url":"https:\/\/weeklypostgazette.com\/bullseye-glass-molds\/","og_site_name":"Weekly Post Gazette","article_published_time":"2022-03-01T10:04:12+00:00","article_modified_time":"2023-06-01T12:13:17+00:00","og_image":[{"width":612,"height":408,"url":"https:\/\/weeklypostgazette.com\/wp-content\/uploads\/2022\/03\/Bullseye-Glass-Molds-Must-Have-For-Glassblowing.jpg","type":"image\/jpeg"}],"author":"admin","twitter_card":"summary_large_image","twitter_misc":{"Written by":"admin","Est. reading time":"3 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/weeklypostgazette.com\/bullseye-glass-molds\/#article","isPartOf":{"@id":"https:\/\/weeklypostgazette.com\/bullseye-glass-molds\/"},"author":{"name":"admin","@id":"https:\/\/weeklypostgazette.com\/#\/schema\/person\/ec7256dded682538a10ff4fdd9738316"},"headline":"Bullseye Glass Molds: Must-Have For Glassblowing","datePublished":"2022-03-01T10:04:12+00:00","dateModified":"2023-06-01T12:13:17+00:00","mainEntityOfPage":{"@id":"https:\/\/weeklypostgazette.com\/bullseye-glass-molds\/"},"wordCount":562,"commentCount":0,"publisher":{"@id":"https:\/\/weeklypostgazette.com\/#organization"},"image":{"@id":"https:\/\/weeklypostgazette.com\/bullseye-glass-molds\/#primaryimage"},"thumbnailUrl":"https:\/\/weeklypostgazette.com\/wp-content\/uploads\/2022\/03\/Bullseye-Glass-Molds-Must-Have-For-Glassblowing.jpg","keywords":["ArtGlassSupplies.com","Bullseye glass molds"],"articleSection":["Business"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/weeklypostgazette.com\/bullseye-glass-molds\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/weeklypostgazette.com\/bullseye-glass-molds\/","url":"https:\/\/weeklypostgazette.com\/bullseye-glass-molds\/","name":"Bullseye Glass Molds: Must-Have For Glassblowing","isPartOf":{"@id":"https:\/\/weeklypostgazette.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/weeklypostgazette.com\/bullseye-glass-molds\/#primaryimage"},"image":{"@id":"https:\/\/weeklypostgazette.com\/bullseye-glass-molds\/#primaryimage"},"thumbnailUrl":"https:\/\/weeklypostgazette.com\/wp-content\/uploads\/2022\/03\/Bullseye-Glass-Molds-Must-Have-For-Glassblowing.jpg","datePublished":"2022-03-01T10:04:12+00:00","dateModified":"2023-06-01T12:13:17+00:00","description":"Bullseye Glass Molds are one of the must-have tools for glassblowers who are looking to make multiple, elaborate pieces.","breadcrumb":{"@id":"https:\/\/weeklypostgazette.com\/bullseye-glass-molds\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/weeklypostgazette.com\/bullseye-glass-molds\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/weeklypostgazette.com\/bullseye-glass-molds\/#primaryimage","url":"https:\/\/weeklypostgazette.com\/wp-content\/uploads\/2022\/03\/Bullseye-Glass-Molds-Must-Have-For-Glassblowing.jpg","contentUrl":"https:\/\/weeklypostgazette.com\/wp-content\/uploads\/2022\/03\/Bullseye-Glass-Molds-Must-Have-For-Glassblowing.jpg","width":612,"height":408},{"@type":"BreadcrumbList","@id":"https:\/\/weeklypostgazette.com\/bullseye-glass-molds\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/weeklypostgazette.com\/"},{"@type":"ListItem","position":2,"name":"Bullseye Glass Molds: Must-Have For Glassblowing"}]},{"@type":"WebSite","@id":"https:\/\/weeklypostgazette.com\/#website","url":"https:\/\/weeklypostgazette.com\/","name":"Weekly Post Gazette","description":"","publisher":{"@id":"https:\/\/weeklypostgazette.com\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/weeklypostgazette.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/weeklypostgazette.com\/#organization","name":"Weekly Post Gazette","url":"https:\/\/weeklypostgazette.com\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/weeklypostgazette.com\/#\/schema\/logo\/image\/","url":"https:\/\/weeklypostgazette.com\/wp-content\/uploads\/2023\/05\/weekly-post-gazette-logo.png","contentUrl":"https:\/\/weeklypostgazette.com\/wp-content\/uploads\/2023\/05\/weekly-post-gazette-logo.png","width":170,"height":45,"caption":"Weekly Post Gazette"},"image":{"@id":"https:\/\/weeklypostgazette.com\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/weeklypostgazette.com\/#\/schema\/person\/ec7256dded682538a10ff4fdd9738316","name":"admin","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/weeklypostgazette.com\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/02a42c746d0e94d995d0b094754efdf4?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/02a42c746d0e94d995d0b094754efdf4?s=96&d=mm&r=g","caption":"admin"},"sameAs":["https:\/\/weeklypostgazette.com"],"url":"https:\/\/weeklypostgazette.com\/author\/admin\/"}]}},"_links":{"self":[{"href":"https:\/\/weeklypostgazette.com\/wp-json\/wp\/v2\/posts\/2675"}],"collection":[{"href":"https:\/\/weeklypostgazette.com\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/weeklypostgazette.com\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/weeklypostgazette.com\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/weeklypostgazette.com\/wp-json\/wp\/v2\/comments?post=2675"}],"version-history":[{"count":0,"href":"https:\/\/weeklypostgazette.com\/wp-json\/wp\/v2\/posts\/2675\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/weeklypostgazette.com\/wp-json\/wp\/v2\/media\/8862"}],"wp:attachment":[{"href":"https:\/\/weeklypostgazette.com\/wp-json\/wp\/v2\/media?parent=2675"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/weeklypostgazette.com\/wp-json\/wp\/v2\/categories?post=2675"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/weeklypostgazette.com\/wp-json\/wp\/v2\/tags?post=2675"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}