(function () { var err = function (s) { if (console && console.error) { console.error('[Rate This Podcast] ' + s); } }; var config = window.RTP_CONFIG; if (typeof config !== 'object') { err('window.RTP_CONFIG must be an object.'); return; } if (typeof config.link !== 'string') { err('window.RTP_CONFIG.link must be a string.'); return; } if (!(config.mode === 'fullscreen' || config.mode === 'button')) { err('window.RTP_CONFIG.mode must be "fullscreen" or "button"'); return; } var linkUrl = 'https://ratethispodcast.com/' + config.link + '?utm_source=Button%20Embed'; var makeFrame = function(fullscreen) { var frm = document.createElement('iframe'), s = frm.style; frm.src = linkUrl; s.position = 'absolute'; s.zIndex = '99999'; s.border = 'none'; s.padding = '0'; s.margin = '0'; if (fullscreen === true) { s.width = '100%'; s.height = '100%'; s.left = 0; s.top = 0; s.right = 0; s.bottom = 0; } else { s.width = '400px'; s.height = '520px'; s.maxWidth = '100vw'; s.maxHeight = '100vh'; s.top = '50%'; s.left = '50%'; s.right = 'auto'; s.bottom = 'auto'; s.marginRight = '-50%'; s.transform = 'translate(-50%, -50%)'; s.boxShadow = '0px 0px 120px rgba(0, 0, 0, 0.25), ' + '0 1px 2px rgba(0,0,0,0.28)'; s.border = 'none'; s.borderRadius = '6px'; s.background = '#f6f6f6'; } return frm; }; var makeFrameModal = function() { var div = document.createElement('div'), s = div.style; s.background = 'rgba(255, 255, 255, 0.8)'; s.position = 'fixed'; s.zIndex = '99998'; s.border = 'none'; s.width = '100%'; s.height = '100%'; s.margin = '0'; s.padding = '0'; s.left = 0; s.top = 0; s.overflow = 'hidden'; try { s['backdrop-filter'] = 'blur(8px)'; } catch (e) {} div.onclick = function(e) { div.parentNode.removeChild(div); }; div.appendChild(makeFrame(false)); return div; }; var makeButtonImg = function() { var src = config.buttonImage; var w = config.buttonWidth, h = config.buttonHeight; if (src === undefined) { src = 'https://storage.googleapis.com/rtp-assets/buttons/standard.png'; w = '198px'; h = '56px'; } var img = document.createElement('img'), s = img.style; img.src = src; s.padding = 0; s.margin = 0; try { s['filter'] = 'drop-shadow(1px 1px 2px rgba(0,0,0,0.12))'; } catch (e) {} if (typeof w !== undefined) s.width = w; if (typeof h !== undefined) s.height = h; return img; }; var makeButton = function() { var a = document.createElement('a'), s = a.style; a.href = linkUrl; s.padding = 0; s.margin = 0; a.onclick = function(e) { e.preventDefault(); document.body.appendChild(makeFrameModal()); } a.appendChild(makeButtonImg()); return a; }; if (config.mode === 'fullscreen') { // The