{"version":3,"sources":["assets/src/js/mi-misc.js"],"names":["$","document","ready","length","window","location","search","history","pushState","origin","pathname","Mi","Misc","RegExp","miEscape","s","replace","Tools","setCookie","name","value","days","date","Date","expires","setTime","getTime","toGMTString","cookie","getCookie","defaultValue","n","split","i","c","charAt","substring","indexOf","getUrlParameter","sParam","results","exec","href","decodeURI","Gclid","mainLogic","TrackingConsentManager","canTrackCurrentUser","gclid","gclsrc","$inputGclid","gclidCookie","val","Social","this","loadSocials","getDescription","attr","trim","getImage","module","each","$this","params","u","text","imgUrl","socialClickBehavior","url","via","title","image","$elem","click","e","open","param","preventDefault"],"mappings":"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","file":"mi-misc.js","sourcesContent":["$(document).ready(function() {\r\n if ($('form[method=\"POST\"]').length > 0 && window.location.search.length > 0) {\r\n history.pushState({}, '', window.location.origin + window.location.pathname);\r\n }\r\n});\r\n\r\nMi = typeof Mi !== 'undefined' ? Mi : {};\r\nMi.Misc = {};\r\n\r\n/**\r\n * Escapes given string.\r\n * \r\n * @param {string} s \r\n * input.\r\n * @returns {string} \r\n * output.\r\n */\r\nRegExp.miEscape = (s) => {\r\n return s.replace(/[-\\/\\\\^$*+?.()|[\\]{}]/g, '\\\\$&');\r\n};\r\n\r\nMi.Misc.Tools = {\r\n\r\n /**\r\n * Set a cookie.\r\n * \r\n * @param {string} name\r\n * Cookie name.\r\n * @param {mixed} value\r\n * Cookie value.\r\n * @param {int} days\r\n * Validity duration (in days).\r\n * @returns {undefined}\r\n */\r\n setCookie: function (name, value, days) {\r\n var date = new Date();\r\n date.setTime(date.getTime() + (days * 24 * 60 * 60 * 1000));\r\n var expires = '; expires=' + date.toGMTString();\r\n document.cookie = name + '=' + value + expires + ';path=/';\r\n },\r\n\r\n /**\r\n * Get a cookie.\r\n * \r\n * @param {any} name\r\n * Cookie name.\r\n * @param {any} [defaultValue]\r\n * Default value if cookie is not found. Null if missing.\r\n * @returns {mixed|null}\r\n * Cookie value if defined, default value otherwise. \r\n */\r\n getCookie: function (name, defaultValue) {\r\n var n = name + '=';\r\n var cookie = document.cookie.split(';');\r\n for (var i = 0; i < cookie.length; i++) {\r\n var c = cookie[i];\r\n while (c.charAt(0) == ' ') {\r\n c = c.substring(1, c.length);\r\n }\r\n if (c.indexOf(n) == 0) {\r\n return c.substring(n.length, c.length);\r\n }\r\n }\r\n return typeof defaultValue !== 'undefined' ? defaultValue : null;\r\n },\r\n\r\n /**\r\n * \r\n * @param {string} sParam Retrieving parameters from the url\r\n * @param {number|string} defaultValue Default value, if search parameter is\r\n * not found. `''` by default\r\n * @returns {number|string} Value of sParam\r\n */\r\n getUrlParameter: function (sParam, defaultValue) {\r\n if (typeof defaultValue === 'undefined') {\r\n defaultValue = '';\r\n }\r\n const results = new RegExp('[?&]' + RegExp.miEscape(sParam) + '(?:=([^&#]*)|[#&]|$)').exec(window.location.href);\r\n return (results !== null && typeof results[1] !== 'undefined') ? decodeURI(results[1]) : defaultValue;\r\n },\r\n};\r\n\r\nMi.Misc.Gclid = {\r\n\r\n mainLogic: function () {\r\n if (!TrackingConsentManager.canTrackCurrentUser()) {\r\n return false;\r\n }\r\n\r\n const gclid = Mi.Misc.Tools.getUrlParameter('gclid');\r\n if (gclid) {\r\n const gclsrc = Mi.Misc.Tools.getUrlParameter('gclsrc');\r\n if (!gclsrc || gclsrc.indexOf('aw') !== -1) {\r\n Mi.Misc.Tools.setCookie('gclid', gclid, 90);\r\n }\r\n }\r\n\r\n const $inputGclid = $('input[name=\"gclid\"]');\r\n if ($inputGclid.length > 0) {\r\n const gclidCookie = Mi.Misc.Tools.getCookie('gclid', null);\r\n if (gclidCookie !== null) {\r\n $inputGclid.val(gclidCookie);\r\n }\r\n }\r\n\r\n return true;\r\n }\r\n};\r\n\r\nMi.Misc.Social = {\r\n\r\n /**\r\n * @returns {undefined}\r\n */\r\n mainLogic: function () {\r\n this.loadSocials();\r\n },\r\n\r\n /**\r\n * @returns {string}\r\n * Blog page title.\r\n */\r\n getDescription: function () {\r\n return $('meta[property=\"og:description\"]').attr('content').trim().replace(/[%#<>]/g, '');\r\n },\r\n\r\n /**\r\n * @returns {string}\r\n * Blog page title.\r\n */\r\n getImage: function () {\r\n return $('meta[property=\"og:image\"]').attr('content').replace(/[%#<>]/g, '');\r\n },\r\n\r\n /**\r\n * @returns {undefined}\r\n */\r\n loadSocials: function () {\r\n\r\n var module = Mi.Misc.Social;\r\n\r\n $('.mi-social-hub-item--facebook').each(function () {\r\n var $this = $(this);\r\n var params = {\r\n u: window.location.href,\r\n text: Mi.Misc.Social.getDescription(),\r\n imgUrl: $this.attr('data-image'),\r\n };\r\n module.socialClickBehavior($this, 'https://www.facebook.com/sharer/sharer.php', params);\r\n });\r\n\r\n $('.mi-social-hub-item--twitter').each(function () {\r\n var params = {\r\n url: window.location.href,\r\n text: Mi.Misc.Social.getDescription(),\r\n via: 'markem-imaje',\r\n };\r\n module.socialClickBehavior($(this), 'https://twitter.com/intent/tweet', params);\r\n });\r\n\r\n $('.mi-social-hub-item--linkedin').each(function () {\r\n var params = {\r\n url: window.location.href,\r\n title: Mi.Misc.Social.getDescription(),\r\n image: Mi.Misc.Social.getImage()\r\n };\r\n module.socialClickBehavior($(this), 'https://www.linkedin.com/shareArticle', params);\r\n });\r\n },\r\n\r\n /**\r\n * \r\n * @param {object} $elem\r\n * JQuery element to click on.\r\n * @param {string} url\r\n * Share API URL.\r\n * @param {object} params\r\n * Share API parameters like page url, description, images...\r\n * @returns {undefined}\r\n */\r\n socialClickBehavior: function ($elem, url, params) {\r\n $elem.click(function (e) {\r\n window.open(url + '?' + $.param(params), 'pop', 'width=600, height=400, scrollbars=no');\r\n e.preventDefault();\r\n return false;\r\n });\r\n }\r\n}\r\n\r\n$(document).ready(function () {\r\n Mi.Misc.Gclid.mainLogic();\r\n Mi.Misc.Social.mainLogic();\r\n});"]}