', {\n class: 'meta-lightbox-content'\n });\n var nav = $('
', {\n class: 'meta-lightbox-title-wrap'\n });\n if (ui.$overlay) return ui.$overlay;\n if (ui.isMSIE) overlay.addClass('meta-lightbox-ie');\n wrap.append(content);\n wrap.append(title);\n overlay.append(wrap);\n overlay.append(nav);\n overlay.append(close);\n $Body.append(overlay);\n overlay.on('click', function (e) {\n e.preventDefault();\n ui.hide();\n });\n close.on('click', function (e) {\n e.preventDefault();\n ui.hide();\n });\n ui.$overlay = overlay;\n ui.$content = content;\n ui.$title = title;\n return ui.$overlay;\n }\n }, {\n key: \"setTitle\",\n value: function setTitle(str) {\n var ui = this;\n ui.$title.html(str);\n }\n }, {\n key: \"process\",\n value: function process($content, $link) {\n console.log(\"\".concat(NAME, \": process\"));\n var ui = this;\n var href = $link.attr('href') && $link.attr('href').length ? $link.attr('href') : $link.data('href'); // add custom link specific class\n\n ui.$content.attr('class', 'meta-lightbox-content');\n ui.$content.addClass($link.data('lightbox-class'));\n\n if (!href.length) {\n console.log($link);\n console.error(\"\".concat(NAME, \": href(attr/data) is missing\"));\n }\n\n var $pageSpinner = $('#PageLoading .loading-spinner');\n var loadingContent = $pageSpinner.length ? $pageSpinner.clone() : '';\n ui.$content.append(loadingContent).addClass('meta-lightbox-loading'); // Image\n\n if (href.match(/\\.(jpeg|jpg|gif|png|svg)$/i) || $link.data('force') === 'image') {\n $.ajax({\n url: href,\n success: function success() {\n var img = $('
', {\n src: href\n });\n var wrap = $('
');\n var imgwrapper = $('
');\n imgwrapper.append(img);\n wrap.append(imgwrapper); // Vertically center images\n\n wrap.css({\n 'line-height': \"\".concat($content.height(), \"px\"),\n height: \"\".concat($content.height(), \"px\") // For Firefox\n\n });\n $W.resize(function () {\n wrap.css({\n 'line-height': \"\".concat($content.height(), \"px\"),\n height: \"\".concat($content.height(), \"px\") // For Firefox\n\n });\n });\n\n if (typeof imgwrapper['zoom'] !== 'undefined') {\n imgwrapper.zoom();\n } else {\n imgwrapper.addClass('no-zoom');\n }\n\n ui.$content.html(wrap);\n ui.contentLoaded();\n },\n error: function error(jqXHR, status) {\n var wrap = $(NETWORK_ERROR);\n ui.$content.html(wrap);\n ui.contentLoaded();\n }\n }); // Set the title\n\n var title = $link.data('title') ? $link.data('title') : $link.attr('title');\n ui.setTitle(title); // google analytics\n\n if (typeof ga === 'function') {\n ga('send', 'event', 'meta', 'Image Click', href);\n }\n } // Video (Youtube/Vimeo)\n else if (href.match(/(youtube|youtube-nocookie|youtu|vimeo)\\.(com|be)\\/(watch\\?v=([\\w-]+)|([\\w-]+))/) || $link.data('force') === 'youtube' || $link.data('force') === 'vimeo') {\n var video = href.match(/(youtube|youtube-nocookie|youtu|vimeo)\\.(com|be)\\/(watch\\?v=([\\w-]+)|([\\w-]+))/);\n var classTerm = 'meta-lightbox-video';\n var src;\n\n if (video[1] == 'youtube') {\n src = \"https://www.youtube.com/embed/\".concat(video[4]);\n classTerm = \"\".concat(classTerm, \" meta-lightbox-youtube\");\n }\n\n if (video[1] == 'youtu') {\n src = \"https://www.youtube.com/embed/\".concat(video[3]);\n classTerm = \"\".concat(classTerm, \" meta-lightbox-youtube\");\n }\n\n if (video[1] == 'youtube-nocookie') {\n src = \"https://www.youtube-nocookie.com/embed/\".concat(video[4]);\n classTerm = \"\".concat(classTerm, \" meta-lightbox-youtube\");\n }\n\n if (video[1] == 'vimeo') {\n src = \"https://player.vimeo.com/video/\".concat(video[3]);\n classTerm = \"\".concat(classTerm, \" meta-lightbox-vimeo\");\n }\n\n if (!src) {\n console.warn(\"\".concat(NAME, \": Video loading bad URL\"));\n return false;\n }\n\n var $iframe = ui.loadIframe(src, classTerm);\n\n if (!$iframe) {\n $link.addClass('meta-offline');\n return false;\n }\n\n $link.removeClass('meta-offline'); // Set the title\n\n var _title = $link.data('title') ? $link.data('title') : $link.attr('title');\n\n ui.setTitle(_title); // google analytics\n\n if (typeof ga === 'function') {\n ga('send', 'event', 'meta', 'Video Click', video);\n }\n } // Inline HTML\n else if (href.substring(0, 1) == '#' || $link.data('force') === 'inline') {\n if ($(href).length) {\n wrap = $('
');\n wrap.append($(href).clone().show()); // Vertically center html\n\n if (wrap.outerHeight() < ui.$content.height()) {\n wrap.css({\n position: 'relative',\n top: '50%',\n 'margin-top': \"\".concat(-(wrap.outerHeight() / 2), \"px\")\n });\n }\n\n $W.resize(function () {\n if (wrap.outerHeight() < ui.$content.height()) {\n wrap.css({\n position: 'relative',\n top: '50%',\n 'margin-top': \"\".concat(-(wrap.outerHeight() / 2), \"px\")\n });\n }\n });\n ui.$content.html(wrap);\n ui.contentLoaded();\n } else {\n wrap = $(NETWORK_ERROR);\n ui.$content.html(wrap);\n ui.contentLoaded();\n }\n\n $('.meta-lightbox-title-wrap').html(''); // google analytics\n\n if (typeof ga === 'function') {\n ga('send', 'event', 'meta', 'inline HTML click', href);\n }\n } // AJAX/iFrame (default)\n else {\n if ($link.data('force-iframe') || $link.data('force') === 'iframe') {\n console.log(\"\".concat(NAME, \": IFrame forced\"));\n\n var _$iframe = ui.loadIframe(href, 'meta-lightbox-iframe-content');\n\n if (!_$iframe) {\n $link.addClass('meta-offline');\n return false;\n }\n\n $link.removeClass('meta-offline');\n return true;\n }\n\n console.log(\"\".concat(NAME, \": loading AJAX\"));\n $.ajax({\n sync: false,\n async: true,\n url: href,\n dataType: 'html',\n method: 'GET',\n cache: false,\n statusCode: {\n 404: function _() {\n console.log(\"\".concat(NAME, \": page not found\"));\n W.location.href = url;\n },\n 302: function _() {\n console.log(\"\".concat(NAME, \": redirect 302\"));\n W.location.href = url;\n }\n },\n error: function error(jqXHR, status) {\n console.log(\"\".concat(NAME, \": AJAX request failure.\").concat(jqXHR.statusText));\n var wrap = $(NETWORK_ERROR);\n ui.$content.html(wrap);\n ui.contentLoaded(); // google analytics\n\n if (typeof ga === 'function') {\n ga('send', 'event', 'error', 'AJAX ERROR', jqXHR.statusText);\n }\n },\n success: function success(data, status, jqXHR) {\n console.log(\"\".concat(NAME, \": AJAX success\"));\n\n try {\n var dataJson = $.parseJSON(data);\n\n if (meta_lightbox_typeof(dataJson) === 'object') {\n console.log(\"\".concat(NAME, \": AJAX JSON\")); // Replace regions\n\n if (meta_lightbox_typeof(dataJson['regions']) === 'object' && typeof dataJson['regions']['LayoutAjax'] !== 'undefinded') {\n var wrap = $('
');\n wrap.html(dataJson['regions']['LayoutAjax']);\n ui.$content.html(wrap);\n ui.contentLoaded();\n } // trigger events\n\n /*if (typeof (data['events']) === 'object') {\n for (var eventName in data.events) {\n $(D).trigger(eventName, [data['events'][eventName]]);\n }\n }*/\n\n\n var title = jqXHR.getResponseHeader('X-Title'),\n link = jqXHR.getResponseHeader('X-Link');\n\n if (title && title.length && link && link.length && link !== W.location.href && link.substring(0, link.indexOf('#')) !== W.location.href.replace($('base').attr('href'), '/')) {\n $('.meta-lightbox-ajax').data('curr-title', D.title);\n $('.meta-lightbox-ajax').data('curr-link', W.location.href);\n\n if (typeof W.localStorage !== 'undefined' && link !== '/') {\n W.localStorage.setItem('current-page', link);\n }\n\n if (D.URL !== link && D.URL !== $('base').attr('href') + link && D.URL !== \"\".concat($('base').attr('href'), \"/\").concat(link)) {\n W.history.pushState({\n title: title,\n page: link,\n ajax: 'true'\n }, title, link);\n }\n\n $('.meta-lightbox-title-wrap').html(''); // google analytics\n\n if (typeof ga === 'function') {\n ga('set', {\n page: link.replace($('base').attr('href'), ''),\n title: title\n });\n ga('send', 'pageview');\n }\n }\n }\n } catch (e) {\n console.log(\"\".concat(NAME, \": AJAX HTML\"));\n var $wrap = $('
');\n $wrap.append(data);\n ui.$content.html($wrap);\n ui.contentLoaded();\n } // Vertically center html\n\n /*if (wrap.outerHeight() < ui.$content.height()) {\n wrap.css({\n position: 'relative',\n top: '50%',\n 'margin-top': `${-(wrap.outerHeight() / 2)}px`,\n });\n }\n $W.resize(() => {\n if (wrap.outerHeight() < ui.$content.height()) {\n wrap.css({\n position: 'relative',\n top: '50%',\n 'margin-top': `${-(wrap.outerHeight() / 2)}px`,\n });\n }\n });*/\n\n /*setTimeout(() => {\n $W.resize();\n if (typeof W.imagesLoaded === 'function') {\n W.imagesLoaded().then(() => {\n $W.resize();\n });\n }\n }, 500);*/\n\n\n ui.contentLoaded();\n }\n });\n }\n }\n }, {\n key: \"loadIframe\",\n value: function loadIframe(href, classTerm) {\n var ui = this;\n var $iframe = $('