Forum Replies Created

Viewing 15 replies - 61 through 75 (of 1,108 total)
  • Thread Starter Rookie

    (@alriksson)

    Never mind, this setting was first confusing to understand and read but now it’s clear, should be marked as non-recommended for multilingual sites as it’s read obviously now! ??

    Execute menu cache without considering current page?

    Since the current menu item is often highlighted, then the system need to cache the menu output for each page. If the site does not display the active state on menu items then you can check this. This will also save some database resources.

    Thread Starter Rookie

    (@alriksson)

    Yes that is true it does, so some conflict there. On your end or on WP asset clean ups?

    • This reply was modified 1 year, 1 month ago by Rookie.
    Thread Starter Rookie

    (@alriksson)

    A gentle reminder regarding this one.

    How do we delete a user role created. It isn’t possible. The styling issue on the modal is still there.

    And please get back to me regarding the core question in this ticket.

    Thread Starter Rookie

    (@alriksson)

    @daanvandenbergh Yep checked now, as I thought. But haven’t had an inline JavaScript before I delayed loading. But have include the keyword of scripts to delay “analytics” since GA UA so Flying Scripts by WP Speed Matters encode and lazy load it. Didn’t know think the plugin would encode it to be able to lazy load it as it’s inline. But maybe make sense yeah, everything works as it should. But if someone doesn’t find the script or ask the same, you know these features in the optimization plugins might.

    But tracking and everything works as it should.

    So now absolute complete minimal footprint from GA4.

    Happy weekend, enjoy!

    Thread Starter Rookie

    (@alriksson)

    or is it added by CAOS as data:text/javascript;base64?

    Or is it as you say any of my JS optimizers? Will check more from my end tomorrow.

    Thread Starter Rookie

    (@alriksson)

    Likely so and possible flying scripts. Seeing it lazy loaded and base64 decoded, while it’s not revealed on user interactions or scroll, but I see records in GA4, so it seems to be working.

    <script data-type="lazy" data-src="data:text/javascript;base64,CiAgICAhZnVuY3Rpb24oZSx0KXtpZigib2JqZWN0Ij09dHlwZW9mIGV4cG9ydHMmJiJvYmplY3QiPT10eXBlb2YgbW9kdWxlKW1vZHVsZS5leHBvcnRzPXQoKTtlbHNlIGlmKCJmdW5jdGlvbiI9PXR5cGVvZiBkZWZpbmUmJmRlZmluZS5hbWQpZGVmaW5lKFtdLHQpO2Vsc2V7dmFyIG49dCgpO2Zvcih2YXIgbyBpbiBuKSgib2JqZWN0Ij09dHlwZW9mIGV4cG9ydHM/ZXhwb3J0czplKVtvXT1uW29dfX0odGhpcywoKCk9PigoKT0+eyJ1c2Ugc3RyaWN0Ijt2YXIgZT17NTA4OihlLHQsbik9PntmdW5jdGlvbiBvKGUsdD0zMDAsbj0wKXtyZXR1cm4oLi4ubyk9PihjbGVhclRpbWVvdXQobiksbj1zZXRUaW1lb3V0KGUsdCwuLi5vKSl9ZnVuY3Rpb24gaShlPTE2KXtyZXR1cm4gZT1lPjE2PzE2OmUsYCR7TWF0aC5mbG9vcigxZTE2Kk1hdGgucmFuZG9tKCkpfWAucGFkU3RhcnQoZSwiMCIpLnN1YnN0cmluZygtMSxlKX1mdW5jdGlvbiBzKGUsdD0xNil7bGV0IG49MDtmb3IobGV0IHQ9MDt0PGUubGVuZ3RoO3QrKyluPShuPDw1KS1uK2UuY2hhckNvZGVBdCh0KSxuJj1uO3JldHVybiBuPU1hdGguYWJzKG4pLGAke259YC5wYWRTdGFydCh0LCIwIikuc3Vic3RyaW5nKC0xLHQpfWZ1bmN0aW9uIHIoKXtjb25zdCBlPWRvY3VtZW50LmJvZHksdD13aW5kb3cucGFnZVlPZmZzZXR8fGUuc2Nyb2xsVG9wLHtzY3JvbGxIZWlnaHQ6bixvZmZzZXRIZWlnaHQ6byxjbGllbnRIZWlnaHQ6aX09ZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LHM9TWF0aC5tYXgoZS5zY3JvbGxIZWlnaHQsbixlLm9mZnNldEhlaWdodCxvLGUuY2xpZW50SGVpZ2h0LGkpLXdpbmRvdy5pbm5lckhlaWdodDtyZXR1cm4gTWF0aC5mbG9vcigxMDAqTWF0aC5hYnModC9zKSl9ZnVuY3Rpb24gYShlLHQpe2xldCBuPWU7Zm9yKDtuJiYoIShudWxsPT1uP3ZvaWQgMDpuLm1hdGNoZXMpfHwhKG51bGw9PW4/dm9pZCAwOm4ubWF0Y2hlcyh0KSkpOyluPW51bGw9PW4/dm9pZCAwOm4ucGFyZW50Tm9kZTtyZXR1cm4gbn1mdW5jdGlvbiBjKGUpe2xldCB0LG4sbz0hMTt0cnl7KHtob3N0bmFtZTp0LHBhdGhuYW1lOm59PWUmJm5ldyBVUkwoZSl8fHt9KX1jYXRjaChlKXt9cmV0dXJuIHQmJihvPXQhPT13aW5kb3cubG9jYXRpb24uaG9zdCkse3Q6byxob3N0bmFtZTp0LHBhdGhuYW1lOm59fW4ucih0KSxuLmQodCx7bzooKT0+dSxpOigpPT5kLHU6KCk9Pm8sbDooKT0+bSxtOigpPT5mLGc6KCk9PnAsdjooKT0+cyxwOigpPT5pLGg6KCk9PnIsXzooKT0+ZywkOigpPT52LFM6KCk9PmMsajooKT0+YSxJOigpPT5sfSk7Y29uc3QgdT0iY2xpZW50SWQiLGw9InNlc3Npb25JZCIsZD0ic2Vzc2lvbkNvdW50IjtmdW5jdGlvbiBmKCl7Y29uc3R7aG9zdG5hbWU6ZSxvcmlnaW46dCxwYXRobmFtZTpuLHNlYXJjaDpvfT1kb2N1bWVudC5sb2NhdGlvbixpPWRvY3VtZW50LnRpdGxlO3JldHVybntsb2NhdGlvbjp0K24rbyxob3N0bmFtZTplLHBhdGhuYW1lOm4scmVmZXJyZXI6ZG9jdW1lbnQucmVmZXJyZXIsdGl0bGU6aX19ZnVuY3Rpb24gbShlPXUpe2NvbnN0IHQ9aSgpLG49bG9jYWxTdG9yYWdlLmdldEl0ZW0oZSk7cmV0dXJuIG58fChsb2NhbFN0b3JhZ2Uuc2V0SXRlbShlLHQpLHQpfWZ1bmN0aW9uIGcoZT1sKXtjb25zdCB0PWkoKSxuPXNlc3Npb25TdG9yYWdlLmdldEl0ZW0oZSk7cmV0dXJuIG58fChzZXNzaW9uU3RvcmFnZS5zZXRJdGVtKGUsdCksdCl9ZnVuY3Rpb24gdihlKXtjb25zdCB0PWxvY2FsU3RvcmFnZS5nZXRJdGVtKHUpP3ZvaWQgMDoiMSIsbj1zZXNzaW9uU3RvcmFnZS5nZXRJdGVtKGwpP3ZvaWQgMDoiMSI7bGV0IG89c2Vzc2lvblN0b3JhZ2UuZ2V0SXRlbShkKXx8IjEiO3JldHVybiBlJiYobz1mdW5jdGlvbihlPWQpe2xldCB0PSIxIjtjb25zdCBuPXNlc3Npb25TdG9yYWdlLmdldEl0ZW0oZSk7cmV0dXJuIG4mJih0PSIiKygrbisxKSksc2Vzc2lvblN0b3JhZ2Uuc2V0SXRlbShlLHQpLHR9KCkpLHtmaXJzdFZpc2l0OnQsc2Vzc2lvblN0YXJ0Om4sc2Vzc2lvbkNvdW50Om99fWZ1bmN0aW9uIHAoZSl7cmV0dXJuIEFycmF5LmlzQXJyYXkoZSk/ZS5tYXAoKGU9PmUubWFwKChlPT5udWxsPT1lP3ZvaWQgMDplLnRvU3RyaW5nKCkpKSkpOk9iamVjdC5rZXlzKGUpLm1hcCgodD0+W3QsYCR7ZVt0XX1gXSkpfX0sMjA5OihlLHQpPT57T2JqZWN0LmRlZmluZVByb3BlcnR5KHQsIk0iLHt2YWx1ZTohMH0pLHQuZmlsZXM9dC5rPXZvaWQgMDt0Lms9e3Byb3RvY29sVmVyc2lvbjoidiIsdHJhY2tpbmdJZDoidGlkIixwYWdlSWQ6Il9wIixsYW5ndWFnZToidWwiLGNsaWVudElkOiJjaWQiLGZpcnN0VmlzaXQ6Il9mdiIsaGl0Q291bnQ6Il9zIixzZXNzaW9uSWQ6InNpZCIsc2Vzc2lvbkNvdW50OiJzY3QiLHNlc3Npb25FbmdhZ2VtZW50OiJzZWciLHNlc3Npb25TdGFydDoiX3NzIixkZWJ1ZzoiX2RiZyIscmVmZXJyZXI6ImRyIixsb2NhdGlvbjoiZGwiLHRpdGxlOiJkdCIsZXZlbnROYW1lOiJlbiIsZXZlbnRQYXJhbToiZXAiLGV2ZW50UGFyYW1OdW1iZXI6ImVwbiIsc2NyZWVuUmVzb2x1dGlvbjoic3IiLGVuYWdlbWVudFRpbWU6Il9ldCJ9O3QuZmlsZXM9WyJwZGZ8eGxzeD98ZG9jeD98dHh0fHJ0Znxjc3Z8ZXhlfGtleXxwcChzfHR8dHgpfDd6fHBrZ3xyYXJ8Z3p8emlwfGF2aSIsIm1vdnxtcDR8bXBlP2d8d212fG1pZGk/fG1wM3x3YXZ8d21hIl19fSx0PXt9O2Z1bmN0aW9uIG4obyl7dmFyIGk9dFtvXTtpZih2b2lkIDAhPT1pKXJldHVybiBpLmV4cG9ydHM7dmFyIHM9dFtvXT17ZXhwb3J0czp7fX07cmV0dXJuIGVbb10ocyxzLmV4cG9ydHMsbikscy5leHBvcnRzfW4uZD0oZSx0KT0+e2Zvcih2YXIgbyBpbiB0KW4uRCh0LG8pJiYhbi5EKGUsbykmJk9iamVjdC5kZWZpbmVQcm9wZXJ0eShlLG8se086ITAsZ2V0OnRbb119KX0sbi5EPShlLHQpPT5PYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoZSx0KSxuLnI9ZT0+eyJ1bmRlZmluZWQiIT10eXBlb2YgU3ltYm9sJiZTeW1ib2wudG9TdHJpbmdUYWcmJk9iamVjdC5kZWZpbmVQcm9wZXJ0eShlLFN5bWJvbC50b1N0cmluZ1RhZyx7dmFsdWU6Ik1vZHVsZSJ9KSxPYmplY3QuZGVmaW5lUHJvcGVydHkoZSwiTSIse3ZhbHVlOiEwfSl9O3ZhciBvPXt9O3JldHVybigoKT0+e3ZhciBlPW87T2JqZWN0LmRlZmluZVByb3BlcnR5KGUsIk0iLHt2YWx1ZTohMH0pLGUudHJhY2s9dm9pZCAwO2NvbnN0IHQ9big1MDgpLGk9bigyMDkpLHM9InVuZGVmaW5lZCIhPXR5cGVvZiB3aW5kb3cscj1zJiZ3aW5kb3cubWluaW1hbEFuYWx5dGljcz8uZGVmaW5lR2xvYmFsLGE9cyYmd2luZG93Lm1pbmltYWxBbmFseXRpY3M/LmF1dG9UcmFjayxjPVsicSIsInMiLCJzZWFyY2giLCJxdWVyeSIsImtleXdvcmQiXTtsZXQgdSxsLGQsZj1bW0RhdGUubm93KCldXSxtPSExO2NvbnN0IGc9InBhZ2VfdmlldyIsdj0ic2Nyb2xsIixwPSJjbGljayIsdz0idmlld19zZWFyY2hfcmVzdWx0cyIsaD0idXNlcl9lbmdhZ2VtZW50Iix5PSJmaWxlX2Rvd25sb2FkIjtmdW5jdGlvbiBiKGUse3R5cGU6bixldmVudDpvLGRlYnVnOnN9KXtjb25zdHtsb2NhdGlvbjpyLHJlZmVycmVyOmEsdGl0bGU6dX09KDAsdC5tKSgpLHtmaXJzdFZpc2l0Omwsc2Vzc2lvblN0YXJ0OmQsc2Vzc2lvbkNvdW50OmZ9PSgwLHQuJCkoIW0pLGc9c2VsZi5zY3JlZW58fHt9O2xldCB2PVtbaS5rLnByb3RvY29sVmVyc2lvbiwiMiJdLFtpLmsudHJhY2tpbmdJZCxlXSxbaS5rLnBhZ2VJZCwoMCx0LnApKCldLFtpLmsubGFuZ3VhZ2UsKG5hdmlnYXRvci5sYW5ndWFnZXx8IiIpLnRvTG93ZXJDYXNlKCldLFtpLmsuY2xpZW50SWQsKDAsdC5sKSgpXSxbaS5rLmZpcnN0VmlzaXQsbF0sW2kuay5oaXRDb3VudCwiMSJdLFtpLmsuc2Vzc2lvbklkLCgwLHQuXykoKV0sW2kuay5zZXNzaW9uQ291bnQsZl0sW2kuay5zZXNzaW9uRW5nYWdlbWVudCwiMSJdLFtpLmsuc2Vzc2lvblN0YXJ0LGRdLFtpLmsuZGVidWcscz8iMSI6IiJdLFtpLmsucmVmZXJyZXIsYV0sW2kuay5sb2NhdGlvbixyXSxbaS5rLnRpdGxlLHVdLFtpLmsuc2NyZWVuUmVzb2x1dGlvbixgJHtnLndpZHRofXgke2cuaGVpZ2h0fWBdXTtyZXR1cm4gdj12LmNvbmNhdChmdW5jdGlvbih7dHlwZTplPSIiLGV2ZW50Om59KXtjb25zdCBvPWRvY3VtZW50LmxvY2F0aW9uLnNlYXJjaCxzPW5ldyBVUkxTZWFyY2hQYXJhbXMobykscj1jLnNvbWUoKGU9Pm5ldyBSZWdFeHAoYFs/fCZdJHtlfT1gLCJnIikudGVzdChvKSkpP3c6ZSxhPWMuZmluZCgoZT0+cy5nZXQoZSkpKTtsZXQgdT1bW2kuay5ldmVudE5hbWUscl0sW2Ake2kuay5ldmVudFBhcmFtfS5zZWFyY2hfdGVybWAsYXx8IiJdXTtyZXR1cm4gbiYmKHU9dS5jb25jYXQoKDAsdC5nKShuKSkpLHV9KHt0eXBlOm4sZXZlbnQ6b30pKSx2PXYuZmlsdGVyKCgoWyxlXSk9PmUpKSxuZXcgVVJMU2VhcmNoUGFyYW1zKHYpfWZ1bmN0aW9uIF8oKXtyZXR1cm4gZi5yZWR1Y2UoKChlLFt0LG49RGF0ZS5ub3coKV0pPT5lKyhuLXQpKSwwKS50b1N0cmluZygpfWZ1bmN0aW9uICQoZSxuKXtjb25zdCBvPSgwLHQuaikobi50YXJnZXQsImEsIGJ1dHRvbiwgaW5wdXRbdHlwZT1zdWJtaXRdLCBpbnB1dFt0eXBlPWJ1dHRvbl0iKSxzPW8/LnRhZ05hbWU/LnRvTG93ZXJDYXNlKCkscj0iYSI9PT1zPyJsaW5rIjpzLGE9bz8uZ2V0QXR0cmlidXRlKCJocmVmIil8fHZvaWQgMCxjPW8/LmdldEF0dHJpYnV0ZSgiZG93bmxvYWQiKXx8dm9pZCAwfHxhLHt0OnUsaG9zdG5hbWU6bCxwYXRobmFtZTpkfT0oMCx0LlMpKGMpLGY9ImxpbmsiPT09ciYmIXUsW21dPWM/Lm1hdGNoKG5ldyBSZWdFeHAoaS5maWxlcy5qb2luKCJ8IiksImciKSl8fFtdLGc9bT95OnAsdj1gJHtpLmsuZXZlbnRQYXJhbX0uJHtyfWA7aWYoIW98fGYmJiFtKXJldHVybjtsZXQgdz1bW2Ake3Z9X2lkYCxvLmlkXSxbYCR7dn1fY2xhc3Nlc2Asby5jbGFzc05hbWVdLFtgJHt2fV9uYW1lYCxvPy5nZXRBdHRyaWJ1dGUoIm5hbWUiKT8udHJpbSgpXSxbYCR7dn1fdGV4dGAsby50ZXh0Q29udGVudD8udHJpbSgpXSxbYCR7dn1fdmFsdWVgLG8/LmdldEF0dHJpYnV0ZSgidmFsdWUiKT8udHJpbSgpXSxbYCR7dn1fdXJsYCxhXSxbYCR7dn1fZG9tYWluYCxsXSxbYCR7aS5rLmV2ZW50UGFyYW19Lm91dGJvdW5kYCxgJHt1fWBdLFtpLmsuZW5hZ2VtZW50VGltZSxfKCldXTttJiYodz13LmNvbmNhdChbW2Ake2kuay5ldmVudFBhcmFtfS5maWxlX25hbWVgLGR8fGNdLFtgJHtpLmsuZXZlbnRQYXJhbX0uZmlsZV9leHRlbnNpb25gLG1dXSkpLEQoZSx7dHlwZTpnLGV2ZW50Ond9KX1mdW5jdGlvbiBTKCl7Y29uc3QgZT1mLmxlbmd0aC0xLFssdF09ZltlXTt0fHxmW2VdLnB1c2goRGF0ZS5ub3coKSl9ZnVuY3Rpb24geCgpe2NvbnN0IGU9Zi5sZW5ndGgtMSxbLHRdPWZbZV07dCYmZi5wdXNoKFtEYXRlLm5vdygpXSl9ZnVuY3Rpb24gaigpe2NvbnN0IGU9Zi5sZW5ndGgtMSxbLHRdPWZbZV0sbj1bImhpZGRlbiIsInZpc2libGUiXS5pbmRleE9mKGRvY3VtZW50LnZpc2liaWxpdHlTdGF0ZSksbz1Cb29sZWFuKG4pOy0xIT09biYmKG8/dCYmZi5wdXNoKFtEYXRlLm5vdygpXSk6IXQmJmZbZV0ucHVzaChEYXRlLm5vdygpKSl9Y29uc3QgST0oMCx0LnUpKChlPT57aWYoKDAsdC5oKSgpPDkwKXJldHVybjtjb25zdCBuPVtbYCR7aS5rLmV2ZW50UGFyYW1OdW1iZXJ9LnBlcmNlbnRfc2Nyb2xsZWRgLDkwXV07RChlLHt0eXBlOnYsZXZlbnQ6bn0pLGRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoInNjcm9sbCIsbCl9KSk7ZnVuY3Rpb24gTShlKXtjb25zdCB0PVtbaS5rLmVuYWdlbWVudFRpbWUsXygpXV07RChlLHt0eXBlOmgsZXZlbnQ6dH0pfWZ1bmN0aW9uIGsoZSl7bXx8KHU9JC5iaW5kKG51bGwsZSksbD1JLmJpbmQobnVsbCxlKSxkPU0uYmluZChudWxsLGUpLGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoInZpc2liaWxpdHljaGFuZ2UiLGopLGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoInNjcm9sbCIsbCksZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLHUpLHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJibHVyIixTKSx3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigiZm9jdXMiLHgpLHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJiZWZvcmV1bmxvYWQiLGQpKX1mdW5jdGlvbiBEKC4uLmUpe2NvbnN0W3Qse3R5cGU6bixldmVudDpvLGRlYnVnOml9XT1mdW5jdGlvbihlKXtjb25zdCB0PXdpbmRvdy5taW5pbWFsQW5hbHl0aWNzPy50cmFja2luZ0lkLG49InN0cmluZyI9PXR5cGVvZiBlWzBdP2VbMF06dCxvPSJvYmplY3QiPT10eXBlb2YgZVswXT9lWzBdOmVbMV18fHt9O3JldHVybltuLHt0eXBlOmcsLi4ub31dfShlKTtpZighdClyZXR1cm4gdm9pZCBjb25zb2xlLmVycm9yKCJHQTQ6IFRyYWNraW5nIElEIGlzIG1pc3Npbmcgb3IgdW5kZWZpbmVkIik7Y29uc3Qgcz1iKHQse3R5cGU6bixldmVudDpvLGRlYnVnOml9KSxyPXdpbmRvdy5taW5pbWFsQW5hbHl0aWNzPy5hbmFseXRpY3NFbmRwb2ludHx8Imh0dHBzOi8vd3d3Lmdvb2dsZS1hbmFseXRpY3MuY29tL2cvY29sbGVjdCI7bmF2aWdhdG9yLnNlbmRCZWFjb24oYCR7cn0/JHtzfWApLGsodCksbT0hMH1lLnRyYWNrPUQsciYmKHdpbmRvdy50cmFjaz1EKSxhJiZEKCl9KSgpLG99KSgpKSk7Cg==" src="data:text/javascript;base64,CiAgICAhZnVuY3Rpb24oZSx0KXtpZigib2JqZWN0Ij09dHlwZW9mIGV4cG9ydHMmJiJvYmplY3QiPT10eXBlb2YgbW9kdWxlKW1vZHVsZS5leHBvcnRzPXQoKTtlbHNlIGlmKCJmdW5jdGlvbiI9PXR5cGVvZiBkZWZpbmUmJmRlZmluZS5hbWQpZGVmaW5lKFtdLHQpO2Vsc2V7dmFyIG49dCgpO2Zvcih2YXIgbyBpbiBuKSgib2JqZWN0Ij09dHlwZW9mIGV4cG9ydHM/ZXhwb3J0czplKVtvXT1uW29dfX0odGhpcywoKCk9PigoKT0+eyJ1c2Ugc3RyaWN0Ijt2YXIgZT17NTA4OihlLHQsbik9PntmdW5jdGlvbiBvKGUsdD0zMDAsbj0wKXtyZXR1cm4oLi4ubyk9PihjbGVhclRpbWVvdXQobiksbj1zZXRUaW1lb3V0KGUsdCwuLi5vKSl9ZnVuY3Rpb24gaShlPTE2KXtyZXR1cm4gZT1lPjE2PzE2OmUsYCR7TWF0aC5mbG9vcigxZTE2Kk1hdGgucmFuZG9tKCkpfWAucGFkU3RhcnQoZSwiMCIpLnN1YnN0cmluZygtMSxlKX1mdW5jdGlvbiBzKGUsdD0xNil7bGV0IG49MDtmb3IobGV0IHQ9MDt0PGUubGVuZ3RoO3QrKyluPShuPDw1KS1uK2UuY2hhckNvZGVBdCh0KSxuJj1uO3JldHVybiBuPU1hdGguYWJzKG4pLGAke259YC5wYWRTdGFydCh0LCIwIikuc3Vic3RyaW5nKC0xLHQpfWZ1bmN0aW9uIHIoKXtjb25zdCBlPWRvY3VtZW50LmJvZHksdD13aW5kb3cucGFnZVlPZmZzZXR8fGUuc2Nyb2xsVG9wLHtzY3JvbGxIZWlnaHQ6bixvZmZzZXRIZWlnaHQ6byxjbGllbnRIZWlnaHQ6aX09ZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LHM9TWF0aC5tYXgoZS5zY3JvbGxIZWlnaHQsbixlLm9mZnNldEhlaWdodCxvLGUuY2xpZW50SGVpZ2h0LGkpLXdpbmRvdy5pbm5lckhlaWdodDtyZXR1cm4gTWF0aC5mbG9vcigxMDAqTWF0aC5hYnModC9zKSl9ZnVuY3Rpb24gYShlLHQpe2xldCBuPWU7Zm9yKDtuJiYoIShudWxsPT1uP3ZvaWQgMDpuLm1hdGNoZXMpfHwhKG51bGw9PW4/dm9pZCAwOm4ubWF0Y2hlcyh0KSkpOyluPW51bGw9PW4/dm9pZCAwOm4ucGFyZW50Tm9kZTtyZXR1cm4gbn1mdW5jdGlvbiBjKGUpe2xldCB0LG4sbz0hMTt0cnl7KHtob3N0bmFtZTp0LHBhdGhuYW1lOm59PWUmJm5ldyBVUkwoZSl8fHt9KX1jYXRjaChlKXt9cmV0dXJuIHQmJihvPXQhPT13aW5kb3cubG9jYXRpb24uaG9zdCkse3Q6byxob3N0bmFtZTp0LHBhdGhuYW1lOm59fW4ucih0KSxuLmQodCx7bzooKT0+dSxpOigpPT5kLHU6KCk9Pm8sbDooKT0+bSxtOigpPT5mLGc6KCk9PnAsdjooKT0+cyxwOigpPT5pLGg6KCk9PnIsXzooKT0+ZywkOigpPT52LFM6KCk9PmMsajooKT0+YSxJOigpPT5sfSk7Y29uc3QgdT0iY2xpZW50SWQiLGw9InNlc3Npb25JZCIsZD0ic2Vzc2lvbkNvdW50IjtmdW5jdGlvbiBmKCl7Y29uc3R7aG9zdG5hbWU6ZSxvcmlnaW46dCxwYXRobmFtZTpuLHNlYXJjaDpvfT1kb2N1bWVudC5sb2NhdGlvbixpPWRvY3VtZW50LnRpdGxlO3JldHVybntsb2NhdGlvbjp0K24rbyxob3N0bmFtZTplLHBhdGhuYW1lOm4scmVmZXJyZXI6ZG9jdW1lbnQucmVmZXJyZXIsdGl0bGU6aX19ZnVuY3Rpb24gbShlPXUpe2NvbnN0IHQ9aSgpLG49bG9jYWxTdG9yYWdlLmdldEl0ZW0oZSk7cmV0dXJuIG58fChsb2NhbFN0b3JhZ2Uuc2V0SXRlbShlLHQpLHQpfWZ1bmN0aW9uIGcoZT1sKXtjb25zdCB0PWkoKSxuPXNlc3Npb25TdG9yYWdlLmdldEl0ZW0oZSk7cmV0dXJuIG58fChzZXNzaW9uU3RvcmFnZS5zZXRJdGVtKGUsdCksdCl9ZnVuY3Rpb24gdihlKXtjb25zdCB0PWxvY2FsU3RvcmFnZS5nZXRJdGVtKHUpP3ZvaWQgMDoiMSIsbj1zZXNzaW9uU3RvcmFnZS5nZXRJdGVtKGwpP3ZvaWQgMDoiMSI7bGV0IG89c2Vzc2lvblN0b3JhZ2UuZ2V0SXRlbShkKXx8IjEiO3JldHVybiBlJiYobz1mdW5jdGlvbihlPWQpe2xldCB0PSIxIjtjb25zdCBuPXNlc3Npb25TdG9yYWdlLmdldEl0ZW0oZSk7cmV0dXJuIG4mJih0PSIiKygrbisxKSksc2Vzc2lvblN0b3JhZ2Uuc2V0SXRlbShlLHQpLHR9KCkpLHtmaXJzdFZpc2l0OnQsc2Vzc2lvblN0YXJ0Om4sc2Vzc2lvbkNvdW50Om99fWZ1bmN0aW9uIHAoZSl7cmV0dXJuIEFycmF5LmlzQXJyYXkoZSk/ZS5tYXAoKGU9PmUubWFwKChlPT5udWxsPT1lP3ZvaWQgMDplLnRvU3RyaW5nKCkpKSkpOk9iamVjdC5rZXlzKGUpLm1hcCgodD0+W3QsYCR7ZVt0XX1gXSkpfX0sMjA5OihlLHQpPT57T2JqZWN0LmRlZmluZVByb3BlcnR5KHQsIk0iLHt2YWx1ZTohMH0pLHQuZmlsZXM9dC5rPXZvaWQgMDt0Lms9e3Byb3RvY29sVmVyc2lvbjoidiIsdHJhY2tpbmdJZDoidGlkIixwYWdlSWQ6Il9wIixsYW5ndWFnZToidWwiLGNsaWVudElkOiJjaWQiLGZpcnN0VmlzaXQ6Il9mdiIsaGl0Q291bnQ6Il9zIixzZXNzaW9uSWQ6InNpZCIsc2Vzc2lvbkNvdW50OiJzY3QiLHNlc3Npb25FbmdhZ2VtZW50OiJzZWciLHNlc3Npb25TdGFydDoiX3NzIixkZWJ1ZzoiX2RiZyIscmVmZXJyZXI6ImRyIixsb2NhdGlvbjoiZGwiLHRpdGxlOiJkdCIsZXZlbnROYW1lOiJlbiIsZXZlbnRQYXJhbToiZXAiLGV2ZW50UGFyYW1OdW1iZXI6ImVwbiIsc2NyZWVuUmVzb2x1dGlvbjoic3IiLGVuYWdlbWVudFRpbWU6Il9ldCJ9O3QuZmlsZXM9WyJwZGZ8eGxzeD98ZG9jeD98dHh0fHJ0Znxjc3Z8ZXhlfGtleXxwcChzfHR8dHgpfDd6fHBrZ3xyYXJ8Z3p8emlwfGF2aSIsIm1vdnxtcDR8bXBlP2d8d212fG1pZGk/fG1wM3x3YXZ8d21hIl19fSx0PXt9O2Z1bmN0aW9uIG4obyl7dmFyIGk9dFtvXTtpZih2b2lkIDAhPT1pKXJldHVybiBpLmV4cG9ydHM7dmFyIHM9dFtvXT17ZXhwb3J0czp7fX07cmV0dXJuIGVbb10ocyxzLmV4cG9ydHMsbikscy5leHBvcnRzfW4uZD0oZSx0KT0+e2Zvcih2YXIgbyBpbiB0KW4uRCh0LG8pJiYhbi5EKGUsbykmJk9iamVjdC5kZWZpbmVQcm9wZXJ0eShlLG8se086ITAsZ2V0OnRbb119KX0sbi5EPShlLHQpPT5PYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoZSx0KSxuLnI9ZT0+eyJ1bmRlZmluZWQiIT10eXBlb2YgU3ltYm9sJiZTeW1ib2wudG9TdHJpbmdUYWcmJk9iamVjdC5kZWZpbmVQcm9wZXJ0eShlLFN5bWJvbC50b1N0cmluZ1RhZyx7dmFsdWU6Ik1vZHVsZSJ9KSxPYmplY3QuZGVmaW5lUHJvcGVydHkoZSwiTSIse3ZhbHVlOiEwfSl9O3ZhciBvPXt9O3JldHVybigoKT0+e3ZhciBlPW87T2JqZWN0LmRlZmluZVByb3BlcnR5KGUsIk0iLHt2YWx1ZTohMH0pLGUudHJhY2s9dm9pZCAwO2NvbnN0IHQ9big1MDgpLGk9bigyMDkpLHM9InVuZGVmaW5lZCIhPXR5cGVvZiB3aW5kb3cscj1zJiZ3aW5kb3cubWluaW1hbEFuYWx5dGljcz8uZGVmaW5lR2xvYmFsLGE9cyYmd2luZG93Lm1pbmltYWxBbmFseXRpY3M/LmF1dG9UcmFjayxjPVsicSIsInMiLCJzZWFyY2giLCJxdWVyeSIsImtleXdvcmQiXTtsZXQgdSxsLGQsZj1bW0RhdGUubm93KCldXSxtPSExO2NvbnN0IGc9InBhZ2VfdmlldyIsdj0ic2Nyb2xsIixwPSJjbGljayIsdz0idmlld19zZWFyY2hfcmVzdWx0cyIsaD0idXNlcl9lbmdhZ2VtZW50Iix5PSJmaWxlX2Rvd25sb2FkIjtmdW5jdGlvbiBiKGUse3R5cGU6bixldmVudDpvLGRlYnVnOnN9KXtjb25zdHtsb2NhdGlvbjpyLHJlZmVycmVyOmEsdGl0bGU6dX09KDAsdC5tKSgpLHtmaXJzdFZpc2l0Omwsc2Vzc2lvblN0YXJ0OmQsc2Vzc2lvbkNvdW50OmZ9PSgwLHQuJCkoIW0pLGc9c2VsZi5zY3JlZW58fHt9O2xldCB2PVtbaS5rLnByb3RvY29sVmVyc2lvbiwiMiJdLFtpLmsudHJhY2tpbmdJZCxlXSxbaS5rLnBhZ2VJZCwoMCx0LnApKCldLFtpLmsubGFuZ3VhZ2UsKG5hdmlnYXRvci5sYW5ndWFnZXx8IiIpLnRvTG93ZXJDYXNlKCldLFtpLmsuY2xpZW50SWQsKDAsdC5sKSgpXSxbaS5rLmZpcnN0VmlzaXQsbF0sW2kuay5oaXRDb3VudCwiMSJdLFtpLmsuc2Vzc2lvbklkLCgwLHQuXykoKV0sW2kuay5zZXNzaW9uQ291bnQsZl0sW2kuay5zZXNzaW9uRW5nYWdlbWVudCwiMSJdLFtpLmsuc2Vzc2lvblN0YXJ0LGRdLFtpLmsuZGVidWcscz8iMSI6IiJdLFtpLmsucmVmZXJyZXIsYV0sW2kuay5sb2NhdGlvbixyXSxbaS5rLnRpdGxlLHVdLFtpLmsuc2NyZWVuUmVzb2x1dGlvbixgJHtnLndpZHRofXgke2cuaGVpZ2h0fWBdXTtyZXR1cm4gdj12LmNvbmNhdChmdW5jdGlvbih7dHlwZTplPSIiLGV2ZW50Om59KXtjb25zdCBvPWRvY3VtZW50LmxvY2F0aW9uLnNlYXJjaCxzPW5ldyBVUkxTZWFyY2hQYXJhbXMobykscj1jLnNvbWUoKGU9Pm5ldyBSZWdFeHAoYFs/fCZdJHtlfT1gLCJnIikudGVzdChvKSkpP3c6ZSxhPWMuZmluZCgoZT0+cy5nZXQoZSkpKTtsZXQgdT1bW2kuay5ldmVudE5hbWUscl0sW2Ake2kuay5ldmVudFBhcmFtfS5zZWFyY2hfdGVybWAsYXx8IiJdXTtyZXR1cm4gbiYmKHU9dS5jb25jYXQoKDAsdC5nKShuKSkpLHV9KHt0eXBlOm4sZXZlbnQ6b30pKSx2PXYuZmlsdGVyKCgoWyxlXSk9PmUpKSxuZXcgVVJMU2VhcmNoUGFyYW1zKHYpfWZ1bmN0aW9uIF8oKXtyZXR1cm4gZi5yZWR1Y2UoKChlLFt0LG49RGF0ZS5ub3coKV0pPT5lKyhuLXQpKSwwKS50b1N0cmluZygpfWZ1bmN0aW9uICQoZSxuKXtjb25zdCBvPSgwLHQuaikobi50YXJnZXQsImEsIGJ1dHRvbiwgaW5wdXRbdHlwZT1zdWJtaXRdLCBpbnB1dFt0eXBlPWJ1dHRvbl0iKSxzPW8/LnRhZ05hbWU/LnRvTG93ZXJDYXNlKCkscj0iYSI9PT1zPyJsaW5rIjpzLGE9bz8uZ2V0QXR0cmlidXRlKCJocmVmIil8fHZvaWQgMCxjPW8/LmdldEF0dHJpYnV0ZSgiZG93bmxvYWQiKXx8dm9pZCAwfHxhLHt0OnUsaG9zdG5hbWU6bCxwYXRobmFtZTpkfT0oMCx0LlMpKGMpLGY9ImxpbmsiPT09ciYmIXUsW21dPWM/Lm1hdGNoKG5ldyBSZWdFeHAoaS5maWxlcy5qb2luKCJ8IiksImciKSl8fFtdLGc9bT95OnAsdj1gJHtpLmsuZXZlbnRQYXJhbX0uJHtyfWA7aWYoIW98fGYmJiFtKXJldHVybjtsZXQgdz1bW2Ake3Z9X2lkYCxvLmlkXSxbYCR7dn1fY2xhc3Nlc2Asby5jbGFzc05hbWVdLFtgJHt2fV9uYW1lYCxvPy5nZXRBdHRyaWJ1dGUoIm5hbWUiKT8udHJpbSgpXSxbYCR7dn1fdGV4dGAsby50ZXh0Q29udGVudD8udHJpbSgpXSxbYCR7dn1fdmFsdWVgLG8/LmdldEF0dHJpYnV0ZSgidmFsdWUiKT8udHJpbSgpXSxbYCR7dn1fdXJsYCxhXSxbYCR7dn1fZG9tYWluYCxsXSxbYCR7aS5rLmV2ZW50UGFyYW19Lm91dGJvdW5kYCxgJHt1fWBdLFtpLmsuZW5hZ2VtZW50VGltZSxfKCldXTttJiYodz13LmNvbmNhdChbW2Ake2kuay5ldmVudFBhcmFtfS5maWxlX25hbWVgLGR8fGNdLFtgJHtpLmsuZXZlbnRQYXJhbX0uZmlsZV9leHRlbnNpb25gLG1dXSkpLEQoZSx7dHlwZTpnLGV2ZW50Ond9KX1mdW5jdGlvbiBTKCl7Y29uc3QgZT1mLmxlbmd0aC0xLFssdF09ZltlXTt0fHxmW2VdLnB1c2goRGF0ZS5ub3coKSl9ZnVuY3Rpb24geCgpe2NvbnN0IGU9Zi5sZW5ndGgtMSxbLHRdPWZbZV07dCYmZi5wdXNoKFtEYXRlLm5vdygpXSl9ZnVuY3Rpb24gaigpe2NvbnN0IGU9Zi5sZW5ndGgtMSxbLHRdPWZbZV0sbj1bImhpZGRlbiIsInZpc2libGUiXS5pbmRleE9mKGRvY3VtZW50LnZpc2liaWxpdHlTdGF0ZSksbz1Cb29sZWFuKG4pOy0xIT09biYmKG8/dCYmZi5wdXNoKFtEYXRlLm5vdygpXSk6IXQmJmZbZV0ucHVzaChEYXRlLm5vdygpKSl9Y29uc3QgST0oMCx0LnUpKChlPT57aWYoKDAsdC5oKSgpPDkwKXJldHVybjtjb25zdCBuPVtbYCR7aS5rLmV2ZW50UGFyYW1OdW1iZXJ9LnBlcmNlbnRfc2Nyb2xsZWRgLDkwXV07RChlLHt0eXBlOnYsZXZlbnQ6bn0pLGRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoInNjcm9sbCIsbCl9KSk7ZnVuY3Rpb24gTShlKXtjb25zdCB0PVtbaS5rLmVuYWdlbWVudFRpbWUsXygpXV07RChlLHt0eXBlOmgsZXZlbnQ6dH0pfWZ1bmN0aW9uIGsoZSl7bXx8KHU9JC5iaW5kKG51bGwsZSksbD1JLmJpbmQobnVsbCxlKSxkPU0uYmluZChudWxsLGUpLGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoInZpc2liaWxpdHljaGFuZ2UiLGopLGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoInNjcm9sbCIsbCksZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLHUpLHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJibHVyIixTKSx3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigiZm9jdXMiLHgpLHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJiZWZvcmV1bmxvYWQiLGQpKX1mdW5jdGlvbiBEKC4uLmUpe2NvbnN0W3Qse3R5cGU6bixldmVudDpvLGRlYnVnOml9XT1mdW5jdGlvbihlKXtjb25zdCB0PXdpbmRvdy5taW5pbWFsQW5hbHl0aWNzPy50cmFja2luZ0lkLG49InN0cmluZyI9PXR5cGVvZiBlWzBdP2VbMF06dCxvPSJvYmplY3QiPT10eXBlb2YgZVswXT9lWzBdOmVbMV18fHt9O3JldHVybltuLHt0eXBlOmcsLi4ub31dfShlKTtpZighdClyZXR1cm4gdm9pZCBjb25zb2xlLmVycm9yKCJHQTQ6IFRyYWNraW5nIElEIGlzIG1pc3Npbmcgb3IgdW5kZWZpbmVkIik7Y29uc3Qgcz1iKHQse3R5cGU6bixldmVudDpvLGRlYnVnOml9KSxyPXdpbmRvdy5taW5pbWFsQW5hbHl0aWNzPy5hbmFseXRpY3NFbmRwb2ludHx8Imh0dHBzOi8vd3d3Lmdvb2dsZS1hbmFseXRpY3MuY29tL2cvY29sbGVjdCI7bmF2aWdhdG9yLnNlbmRCZWFjb24oYCR7cn0/JHtzfWApLGsodCksbT0hMH1lLnRyYWNrPUQsciYmKHdpbmRvdy50cmFjaz1EKSxhJiZEKCl9KSgpLG99KSgpKSk7Cg=="></script>

    which decode to:

    
    !function (e, t) {
    	if ("object" == typeof exports && "object" == typeof module) 
    		module.exports = t();
    	 else if ("function" == typeof define && define.amd) 
    		define([], t);
    	 else {
    		var n = t();
    		for (var o in n) 
    			(
    				"object" == typeof exports
    					? exports
    					: e
    			)[o] = n[o]
    		
    	}
    }(this, (() => (() => {
    	"use strict";
    	var e = {
    			508: (e, t, n) => {
    				function o(e, t = 300, n = 0) {
    					return(... o) => (clearTimeout(n), n = setTimeout(e, t, ... o))
    				}
    				function i(e = 16) {
    					return e = e > 16
    						? 16
    						: e,
    					`${
    						Math.floor(1e16 * Math.random())
    					}`.padStart(e, "0").substring(-1, e)
    				}
    				function s(e, t = 16) {
    					let n = 0;
    					for (let t = 0; t < e.length; t++) 
    						n = (n << 5) - n + e.charCodeAt(t),
    						n &= n;
    					
    					return n = Math.abs(n),
    					${n}.padStart(t, "0").substring(-1, t)
    				}
    				function r() {
    					const e = document.body,
    						t = window.pageYOffset || e.scrollTop, {
    							scrollHeight: n,
    							offsetHeight: o,
    							clientHeight: i
    						} = document.documentElement,
    						s = Math.max(e.scrollHeight, n, e.offsetHeight, o, e.clientHeight, i) - window.innerHeight;
    					return Math.floor(100 * Math.abs(t / s))
    				}
    				function a(e, t) {
    					let n = e;
    					for (; n && (!(
    						null == n
    							? void 0
    							: n.matches
    					) || !(
    						null == n
    							? void 0
    							: n.matches(t)
    					));) 
    						n = null == n
    							? void 0
    							: n.parentNode;
    					
    					return n
    				}
    				function c(e) {
    					let t,
    						n,
    						o = !1;
    					try {
    						({hostname: t, pathname: n} = e && new URL(e) || {})
    					} catch (e) {}
    					return t && (o = t !== window.location.host), {
    						t: o,
    						hostname: t,
    						pathname: n
    					}
    				}
    				n.r(t),
    				n.d(t, {
    					o: () => u,
    					i: () => d,
    					u: () => o,
    					l: () => m,
    					m: () => f,
    					g: () => p,
    					v: () => s,
    					p: () => i,
    					h: () => r,
    					_: () => g,
    					$: () => v,
    					S: () => c,
    					j: () => a,
    					I: () => l
    				});
    				const u = "clientId",
    					l = "sessionId",
    					d = "sessionCount";
    				function f() {
    					const {hostname: e, origin: t, pathname: n, search: o} = document.location,
    						i = document.title;
    					return {
    						location: t + n + o,
    						hostname: e,
    						pathname: n,
    						referrer: document.referrer,
    						title: i
    					}
    				}
    				function m(e = u) {
    					const t = i(),
    						n = localStorage.getItem(e);
    					return n || (localStorage.setItem(e, t), t)
    				}
    				function g(e = l) {
    					const t = i(),
    						n = sessionStorage.getItem(e);
    					return n || (sessionStorage.setItem(e, t), t)
    				}
    				function v(e) {
    					const t = localStorage.getItem(u)
    							? void 0
    							: "1",
    						n = sessionStorage.getItem(l)
    							? void 0
    							: "1";
    					let o = sessionStorage.getItem(d) || "1";
    					return e && (o = function (e = d) {
    						let t = "1";
    						const n = sessionStorage.getItem(e);
    						return n && (t = "" + (+ n + 1)),
    						sessionStorage.setItem(e, t),
    						t
    					}()), {
    						firstVisit: t,
    						sessionStart: n,
    						sessionCount: o
    					}
    				}
    				function p(e) {
    					return Array.isArray(e)
    						? e.map((e => e.map((
    							e => null == e
    								? void 0
    								: e.toString()
    						))))
    						: Object.keys(e).map((t => [t, `${
    								e[t]
    							}`]))
    				}
    			},
    			209: (e, t) => {
    				Object.defineProperty(t, "M", {
    					value: !0
    				}),
    				t.files = t.k = void 0;
    				t.k = {
    					protocolVersion: "v",
    					trackingId: "tid",
    					pageId: "_p",
    					language: "ul",
    					clientId: "cid",
    					firstVisit: "_fv",
    					hitCount: "_s",
    					sessionId: "sid",
    					sessionCount: "sct",
    					sessionEngagement: "seg",
    					sessionStart: "_ss",
    					debug: "_dbg",
    					referrer: "dr",
    					location: "dl",
    					title: "dt",
    					eventName: "en",
    					eventParam: "ep",
    					eventParamNumber: "epn",
    					screenResolution: "sr",
    					enagementTime: "_et"
    				};
    				t.files = ["pdf|xlsx?|docx?|txt|rtf|csv|exe|key|pp(s|t|tx)|7z|pkg|rar|gz|zip|avi", "mov|mp4|mpe?g|wmv|midi?|mp3|wav|wma"]
    			}
    		},
    		t = {};
    	function n(o) {
    		var i = t[o];
    		if (void 0 !== i) 
    			return i.exports;
    		
    		var s = t[o] = {
    			exports: {}
    		};
    		return e[o](s, s.exports, n),
    		s.exports
    	}
    	n.d = (e, t) => {
    		for (var o in t) 
    			n.D(t, o) && ! n.D(e, o) && Object.defineProperty(e, o, {
    				O: !0,
    				get: t[o]
    			})
    		
    	},
    	n.D = (e, t) => Object
    		.prototype
    		.hasOwnProperty
    		.call(e, t),
    	n.r = e => {
    		"undefined" != typeof Symbol && Symbol.toStringTag && Object.defineProperty(e, Symbol.toStringTag, {value: "Module"}),
    		Object.defineProperty(e, "M", {
    			value: !0
    		})
    	};
    	var o = {};
    	return(() => {
    		var e = o;
    		Object.defineProperty(e, "M", {
    			value: !0
    		}),
    		e.track = void 0;
    		const t = n(508),
    			i = n(209),
    			s = "undefined" != typeof window,
    			r = s && window.minimalAnalytics ?. defineGlobal,
    			a = s && window.minimalAnalytics ?. autoTrack,
    			c = [
    				"q",
    				"s",
    				"search",
    				"query",
    				"keyword"
    			];
    		let u,
    			l,
    			d,
    			f = [
    				[Date.now()]
    			],
    			m = !1;
    		const g = "page_view",
    			v = "scroll",
    			p = "click",
    			w = "view_search_results",
    			h = "user_engagement",
    			y = "file_download";
    		function b(e, {
    			type : n,
    			event : o,
    			debug : s
    		}) {
    			const {location: r, referrer: a, title: u} = (0, t.m)(), {
    					firstVisit: l,
    					sessionStart: d,
    					sessionCount: f
    				} = (0, t.$)(! m),
    				g = self.screen || {};
    			let v = [
    				[
    					i.k.protocolVersion, "2"
    				],
    				[
    					i.k.trackingId, e
    				],
    				[
    					i.k.pageId, (0, t.p)()
    				],
    				[
    					i.k.language, (navigator.language || "").toLowerCase()
    				],
    				[
    					i.k.clientId, (0, t.l)()
    				],
    				[
    					i.k.firstVisit, l
    				],
    				[
    					i.k.hitCount, "1"
    				],
    				[
    					i.k.sessionId, (0, t._)()
    				],
    				[
    					i.k.sessionCount, f
    				],
    				[
    					i.k.sessionEngagement, "1"
    				],
    				[
    					i.k.sessionStart, d
    				],
    				[
    					i.k.debug,
    					s
    						? "1"
    						: ""
    				],
    				[
    					i.k.referrer, a
    				],
    				[
    					i.k.location, r
    				],
    				[
    					i.k.title, u
    				],
    				[
    					i.k.screenResolution, `${
    						g.width
    					}x${
    						g.height
    					}`
    				]
    			];
    			return v = v.concat(function ({
    				type: e = "",
    				event: n
    			}) {
    				const o = document.location.search,
    					s = new URLSearchParams(o),
    					r = c.some((e => new RegExp([?|&]${e}=, "g").test(o)))
    						? w
    						: e,
    					a = c.find((e => s.get(e)));
    				let u = [
    					[
    						i.k.eventName, r
    					],
    					[
    						`${
    							i.k.eventParam
    						}.search_term`,
    						a || ""
    					]
    				];
    				return n && (u = u.concat((0, t.g)(n))),
    				u
    			}({type: n, event: o})),
    			v = v.filter((([, e]) => e)),
    			new URLSearchParams(v)
    		}
    		function _() {
    			return f.reduce(((e, [
    				t,
    				n = Date.now()
    			]) => e + (n - t)), 0).toString()
    		}
    		function $(e, n) {
    			const o = (0, t.j)(n.target, "a, button, input[type=submit], input[type=button]"),
    				s = o ?. tagName ?. toLowerCase(),
    				r = "a" === s
    					? "link"
    					: s,
    				a = o ?. getAttribute("href") || void 0,
    				c = o ?. getAttribute("download") || void 0 || a, {
    					t: u,
    					hostname: l,
    					pathname: d
    				} = (0, t.S)(c),
    				f = "link" === r && ! u,
    				[m] = c ?. match(new RegExp(i.files.join("|"), "g")) || [],
    				g = m
    					? y
    					: p,
    				v = `${
    					i.k.eventParam
    				}.${r}`;
    			if (! o || f && ! m) 
    				return;
    			
    			let w = [
    				[
    					${v}_id, o.id
    				],
    				[
    					${v}_classes, o.className
    				],
    				[
    					${v}_name,
    					o ?. getAttribute("name") ?. trim()
    				],
    				[
    					${v}_text,
    					o.textContent ?. trim()
    				],
    				[
    					${v}_value,
    					o ?. getAttribute("value") ?. trim()
    				],
    				[
    					${v}_url, a
    				],
    				[
    					${v}_domain, l
    				],
    				[
    					`${
    						i.k.eventParam
    					}.outbound,${u}`
    				],
    				[
    					i.k.enagementTime, _()
    				]
    			];
    			m && (w = w.concat([
    				[
    					`${
    						i.k.eventParam
    					}.file_name`,
    					d || c
    				],
    				[
    					`${
    						i.k.eventParam
    					}.file_extension`, m
    				]
    			])),
    			D(e, {
    				type: g,
    				event: w
    			})
    		}
    		function S() {
    			const e = f.length - 1,
    				[, t] = f[e];
    			t || f[e].push(Date.now())
    		}
    		function x() {
    			const e = f.length - 1,
    				[, t] = f[e];
    			t && f.push([Date.now()])
    		}
    		function j() {
    			const e = f.length - 1,
    				[, t] = f[e],
    				n = ["hidden", "visible"].indexOf(document.visibilityState),
    				o = Boolean(n);
    			-1 !== n && (
    				o
    					? t && f.push([Date.now()])
    					: ! t && f[e].push(Date.now())
    			)
    		}
    		const I = (0, t.u)((e => {
    			if ((0, t.h)() < 90) 
    				return;
    			
    			const n = [[`${
    						i.k.eventParamNumber
    					}.percent_scrolled`, 90]];
    			D(e, {
    				type: v,
    				event: n
    			}),
    			document.removeEventListener("scroll", l)
    		}));
    		function M(e) {
    			const t = [[i.k.enagementTime, _()]];
    			D(e, {
    				type: h,
    				event: t
    			})
    		}
    		function k(e) {
    			m || (u = $.bind(null, e), l = I.bind(null, e), d = M.bind(null, e), document.addEventListener("visibilitychange", j), document.addEventListener("scroll", l), document.addEventListener("click", u), window.addEventListener("blur", S), window.addEventListener("focus", x), window.addEventListener("beforeunload", d))
    		}
    		function D(... e) {
    			const [
    				t, {
    					type: n,
    					event: o,
    					debug: i
    				}
    			] = function (e) {
    				const t = window.minimalAnalytics ?. trackingId,
    					n = "string" == typeof e[0]
    						? e[0]
    						: t,
    					o = "object" == typeof e[0]
    						? e[0]
    						: e[1] || {};
    				return [
    					n, {
    						type: g,
    						... o
    					}
    				]
    			}(e);
    			if (! t) 
    				return void console.error("GA4: Tracking ID is missing or undefined");
    			
    			const s = b(t, {
    					type: n,
    					event: o,
    					debug: i
    				}),
    				r = window.minimalAnalytics ?. analyticsEndpoint || "https://www.google-analytics.com/g/collect";
    			navigator.sendBeacon(${r}?${s}),
    			k(t),
    			m = !0
    		}
    		e.track = D,
    		r && (window.track = D),
    		a && D()
    	})(),
    	o
    })()));
    • This reply was modified 1 year, 5 months ago by Rookie.
    Thread Starter Rookie

    (@alriksson)

    @daanvandenbergh perfect! Yes I thought something was off was just about to say as standard async worked. Saw now you asked for the url. Let me update and test.

    Seeing the window! Where is the local minimal script loaded though?

    <script>
        window.minimalAnalytics =  {
            trackingId: 'G-*********',
            autoTrack: true,
            defineGlobal: true
        }
    </script>
    Thread Starter Rookie

    (@alriksson)

    what should I be looking for? used flying analytics before, still activated but only loading old UA script and tracking.

    Thread Starter Rookie

    (@alriksson)

    Cannot see the tracking code being added Tracking Code Position footer.
    This site is using oxygen builder. Shouldn’t need to use the option to add manually?

    Thread Starter Rookie

    (@alriksson)

    @daanvandenbergh amazing! and it comes with both?

    autoTrack: true,
    defineGlobal: true,
    Thread Starter Rookie

    (@alriksson)

    Ok thanks!

    Thread Starter Rookie

    (@alriksson)

    @daanvandenbergh Perfect. Keep me posted today when the update is released.

    Thread Starter Rookie

    (@alriksson)

    Sorry meant fetchpriority=low

    Thread Starter Rookie

    (@alriksson)

    @daanvandenbergh thanks!

    If you can have the GA4 minimal version updated I will test below. Got an answer. So can you make sure yo have settings to enable that as well?

    Provided you’ve set?defineGlobal: true?in the config options for?@minimal-analytics/ga4, you should be able to do something like the following:

    <a  onclick="track({ /*[...]*/ })">Click</a>
    
    Thread Starter Rookie

    (@alriksson)

    @daanvandenbergh unfortunately no documentation regarding onclick events but raised an issue to see if he can shine some clarity regarding that.

    But the gtag onclick event works on the normal GA4 script right? That they have not changed?

Viewing 15 replies - 61 through 75 (of 1,108 total)