/*marketgid.comV3*/MarketGidBaseBlockC651827 = function(root_id, VJ, fallback, containerId, uniqId, versionWidget) { var self = this; this.VJ = VJ; this.root = this.VJ.document.getElementById(root_id); this.containerId = containerId; this.uniqId = uniqId; this.ZO = fallback; this.page = 1; this.iteration = 1; this.adlink = ''; this.template = ''; this.id = 651827; this.originalId = 651827; this.tickerShow = 0; this.pvid = 0; this.LF = []; this.muid = ""; this.LH = {}; this.AA = {}; this.AB = []; this.GF = []; this.NF = []; this.ZF = ""; this.BW = ""; this.KA = 0; this.PJ = {}; this.ML = ""; this.YY = ""; this.banners = {}; this.crashStep = 0; this.loadedDefault = false; this.teaserHashes = {}; this.DM = {}; this.json = []; this.servicerData = {}; this.childWidgetsData = []; this.versionWidget = versionWidget; this.sspPerformance = '10' >= Math.ceil(Math.random() * 100); this.fakeMode = 0; this.requestParams = {}; self.webProtocol = 'https:'; if (self.VJ.self !== self.VJ.top) { refererUrl = self.VJ.document.referrer; var parts = refererUrl.split('/'); self.intExchangeProtocol = parts[0].indexOf('http') == 0 ? parts[0] : 'https:'; } else { var protocol = self.VJ.document.location.protocol; self.intExchangeProtocol = protocol.indexOf('http') == 0 ? protocol : 'https:'; } self.sourceName = ""; this.templates = []; this.templateId = 0; self.setStyles = function(styles) { self.styles = styles.replace(/\((\'|\")?\/\//g, '($1' + self.webProtocol + '//'); }; self.setTemplate = function(template) { template = template.replace(/^\s*[\r\n]|\s{2,}/gm, ''); template = template.replace(/\((\'|\")?\/\//g, '($1' + self.webProtocol + '//'); template = template.replace('src="//', 'src="' + self.webProtocol + '//'); self.templateText = template.replace('href="//', 'href="' + self.webProtocol + '//'); }; this.RV = "servicer.marketgid.com"; self.setTemplate('
{foreach} {if this.iteration != 1}
{/if}
{/foreach}
'); self.setStyles(' @font-face { font-family: \'Open Sans\'; font-style: normal; font-weight: 400; src: local(\'Open Sans\'), local(\'OpenSans\'), url(//fonts.gstatic.com/s/opensans/v10/K88pR3goAWT7BTt32Z01m1tXRa8TVwTICgirnJhmVJw.woff2) format(\'woff2\'); unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F; } @font-face { font-family: \'Open Sans\'; font-style: normal; font-weight: 400; src: local(\'Open Sans\'), local(\'OpenSans\'), url(//fonts.gstatic.com/s/opensans/v10/RjgO7rYTmqiVp7vzi-Q5UVtXRa8TVwTICgirnJhmVJw.woff2) format(\'woff2\'); unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; } @font-face { font-family: \'Open Sans\'; font-style: normal; font-weight: 400; src: local(\'Open Sans\'), local(\'OpenSans\'), url(//fonts.gstatic.com/s/opensans/v10/u-WUoqrET9fUeobQW7jkRVtXRa8TVwTICgirnJhmVJw.woff2) format(\'woff2\'); unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF; } @font-face { font-family: \'Open Sans\'; font-style: normal; font-weight: 400; src: local(\'Open Sans\'), local(\'OpenSans\'), url(//fonts.gstatic.com/s/opensans/v10/cJZKeOuBrn4kERxqtaUH3VtXRa8TVwTICgirnJhmVJw.woff2) format(\'woff2\'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000; } @font-face { font-family: \'Open Sans\'; font-style: normal; font-weight: 700; src: local(\'Open Sans Bold\'), local(\'OpenSans-Bold\'), url(//fonts.gstatic.com/s/opensans/v10/k3k702ZOKiLJc3WVjuplzCUUniRZcd_wq8DYmIfsw2A.woff2) format(\'woff2\'); unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F; } @font-face { font-family: \'Open Sans\'; font-style: normal; font-weight: 700; src: local(\'Open Sans Bold\'), local(\'OpenSans-Bold\'), url(//fonts.gstatic.com/s/opensans/v10/k3k702ZOKiLJc3WVjuplzOXREeHhJi4GEUJI9ob_ak4.woff2) format(\'woff2\'); unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; } @font-face { font-family: \'Open Sans\'; font-style: normal; font-weight: 700; src: local(\'Open Sans Bold\'), local(\'OpenSans-Bold\'), url(//fonts.gstatic.com/s/opensans/v10/k3k702ZOKiLJc3WVjuplzBUOjZSKWg4xBWp_C_qQx0o.woff2) format(\'woff2\'); unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF; } @font-face { font-family: \'Open Sans\'; font-style: normal; font-weight: 700; src: local(\'Open Sans Bold\'), local(\'OpenSans-Bold\'), url(//fonts.gstatic.com/s/opensans/v10/k3k702ZOKiLJc3WVjuplzOgdm0LZdjqr5-oayXSOefg.woff2) format(\'woff2\'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000; } .mgpopular { background-color: rgba(255, 0, 0, 0.2) !important; border-color: rgba(255, 90, 0, 0.3) !important; } .mgresponsive { display: inherit; } .mgbox { padding: 0 !important; position: relative !important; text-align: center; vertical-align: top !important; margin: 0 auto; border-style: solid; transition: none !important; border-width: 0px; border-color: ; background-color: ; display: -ms-flexbox; display: -webkit-flex; display: flex; -webkit-flex-direction: row; -ms-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; line-height: 100% !important; max-width: 0; width: 0; box-sizing: border-box; } .mgbox .submit a { text-decoration: none; line-height: 21px; font-size: 12px; text-transform: uppercase; color: #fff; background: #00965b; padding: 5px 8%; border-radius: 3px; word-wrap: normal; font-family: \'Open Sans\', sans-serif; display: inline-block; } .mgbox .submit_domain { position: absolute; bottom: 0; height: 55px; height: 24px; height: 35px; display: none; width: 100%; text-align: center; left: 0; overflow: hidden; } .mgbox .submit_domain .submit { display: none; } .mgbox .image-with-text { margin-bottom: 53px; margin-bottom: 21px; margin-bottom: 31px; margin-bottom: -1px; padding: 0 8px; } .mgbox .image-with-text .arrow_box { position: relative; background: #333333; z-index: 10; } .mgbox .image-with-text .arrow_box:after { left: 50%; top: 50%; border: solid transparent; content: " "; height: 0; width: 0; position: absolute; pointer-events: none; border-color: rgba(51, 51, 51, 0); border-left-color: #333333; border-width: 10px; margin-top: 0; margin-left: -10px; background: #00965b; } .mgbox .text-elements { text-align: center; margin-top: 20px; margin: 0 auto; } .mgbox .text-elements { max-width: 200px; } .mgbox { width: 100%; max-width: 100%; } div.mcimg { padding: 0px; text-align: center; margin: 0 auto; overflow: hidden; -webkit-border-bottom-right-radius: 4px; -webkit-border-bottom-left-radius: 4px; -moz-border-radius-bottomright: 4px; -moz-border-radius-bottomleft: 4px; border-bottom-right-radius: 4px; border-bottom-left-radius: 4px; } img.mcimg { border-style: solid; border-color: #ffffff; border-width: 0px; width: 100% !important; height: auto !important; max-width: 200px; max-height: 200px; box-sizing: border-box; -webkit-border-radius: 4px; -moz-border-radius: 4px; border-radius: 4px; margin: 0 auto; } .mcimg a { text-decoration: none; } .mctitle { margin: 15px 0 10px; text-align: center; } .mctitle a { font-weight: bold; font-size: 14px; font-style: normal; text-decoration: none; color: #333333; font-family: \'Open Sans\', sans-serif; line-height: 14px; } .mcdesc { color: red; display: block; text-align: center; } .mcdesc a { font-weight: normal; font-size: 12px; font-style: normal; text-decoration: none; color: #444444; font-family: \'Open Sans\', sans-serif; line-height: 12px; } .mcdomain { display: none; text-align: center; margin-top: 4px; overflow: hidden; } .mcdomain a { font-weight: normal; font-size: 11px; font-style: normal; text-decoration: none; color: #aaaaaa; font-family: \'Open Sans\', sans-serif; line-height: 11px; height: 11px; display: block; padding-top: 4.5px; padding-bottom: 2px; overflow: hidden; } .mgline { position: relative; background: none repeat scroll 0 0; background-color: ; cursor: pointer; display: inline-block; _overflow: hidden; *zoom: 1; *display: inline; vertical-align: top; border-style: solid; border-color: #dddddd; border-width: 1px; -webkit-border-radius: 7px; -moz-border-radius: 7px; border-radius: 7px; width: 24%; max-width: 24%; box-sizing: border-box; margin: 0.5%; padding: 10px 0.5%; display: -ms-flexbox; display: -webkit-flex; display: flex; -webkit-flex-direction: column; -ms-flex-direction: column; flex-direction: column; word-wrap: break-word; } .mgline:hover .mctitle a { text-decoration: underline; } .mgline:hover .submit a, .mgline:hover .arrow_box:after { background: #e34222; } .mgline:hover .mcprice { background: #e34222; -webkit-border-bottom-right-radius: 4px; -webkit-border-bottom-left-radius: 4px; -moz-border-radius-bottomright: 4px; -moz-border-radius-bottomleft: 4px; border-bottom-right-radius: 4px; border-bottom-left-radius: 4px; } .mgline { vertical-align: top; } .mgline, .mgbox { min-width: 90px; } .mgline[max-width~="120px"] .mcdesc { display: none !important; } @supports not (flex-wrap: wrap) { .mgbox { display: block !important; } .mgline { display: inline-block !important; } } div.mcprice { text-align: center; background: #00965b; height: 20px; position: relative; color: #fff; -webkit-border-bottom-right-radius: 4px; -webkit-border-bottom-left-radius: 4px; -moz-border-radius-bottomright: 4px; -moz-border-radius-bottomleft: 4px; border-bottom-right-radius: 4px; border-bottom-left-radius: 4px; max-width: 200px; margin: -20px auto 0; } div.mcprice span { padding: 0 5px; display: block; font-weight: bold; font-size: 11px; font-style: normal; text-decoration: none; color: #ffffff; font-family: \'Open Sans\', sans-serif; line-height: 11px; line-height: 20px; } div.mcprice span:empty { display: none; } div.mcprice:empty { display: none; } div.mcprice { display: block; } span.mcpriceold { font-weight: bold; font-size: 11px; font-style: normal; text-decoration: none; color: #ffffff; font-family: \'Open Sans\', sans-serif; line-height: 11px; text-decoration: line-through !important; background: #333333; height: 20px; line-height: 20px; position: relative; -webkit-border-bottom-right-radius: 4px; -webkit-border-bottom-left-radius: 4px; -moz-border-radius-bottomright: 4px; -moz-border-radius-bottomleft: 4px; border-bottom-right-radius: 4px; border-bottom-left-radius: 4px; width: 50%; float: left; text-align: center; box-sizing: border-box; } .mcpriceold-container { margin: -20px auto 0; max-width: 200px; } @media (max-width: 480px) { .mgline { width: 48% !important; margin: 1% !important; max-width: 48% !important; } } .mgline div.image-with-price { display: inline-block; margin: 0 auto; } .mgline div.image-with-price[max-width~="120px"] .mcpriceold-container { display: none !important; } .mgline div.image-with-price[max-width~="100px"] .mcprice { display: none !important; } .mgpopular { background-color: rgba(255, 0, 0, 0.2) !important; border-color: rgba(255, 90, 0, 0.3) !important; } '); self.adBlockStyles = ''; self.adBlockStyles = self.adBlockStyles.replace(/\((\'|\")?\/\//g, '($1' + self.webProtocol + '//'); self.clickTracking = ""; self.XO = ''; self.funcBlocks = {}; self.DM = {}; self.loadedPopularTeaser = false; self.deviceType = "desktop"; self.hrefAttr = "href"; self.FD = ["wages"]; self.consentData = ''; self.cmpEnabled = false; self.cookieMatchingDomain = 'cm.marketgid.com' ; self.VJ._mgIntExchangeNews = self.VJ._mgIntExchangeNews || {}; this.TI = function(str,limit,dots) { if (str.length<=limit) return str; var word=new Array(); word=str.split(" "); var ret=word[0] + ' '; var test; for (i=1;ilimit) return ret + (typeof(dots) == 'undefined' || dots ? '...' : ''); else ret+=word[i] + ' '; } return str; }; this.UK = function(str,limit){ var word=new Array(); var i; var ret=''; word=str.split(" "); for (i=0;ilimit && word[i].search(/&\w+;/)<0) ret+=word[i].substr(0,limit) + ' ' + word[i].substr(limit) + ' '; else ret+=word[i] + ' '; } return ret; }; this.MK = function(title) { title=this.TI(title,60,1); return title; }; this.DX = function(desc) { desc=this.TI(desc,60); return desc; }; this.isArray = function(o) { return Object.prototype.toString.call(o) === '[object Array]'; }; self.fixGetElementsByClassNameHandler = function(el) { if (el.getElementsByClassName == undefined) { el.getElementsByClassName = function(cl) { var retnode = []; var myclass = new RegExp('\\b'+cl+'\\b'); var elem = this.getElementsByTagName('*'); for (var i = 0; i < elem.length; i++) { var classes = elem[i].className; if (myclass.test(classes)) retnode.push(elem[i]); } return retnode; }; } }; this.YT = function() { if (!self.ZO) { if (self.VJ.document.getElementById("MarketGidPreloadC" + this.containerId)) { self.VJ.document.getElementById("MarketGidPreloadC" + this.containerId).style.display = 'none'; } else if (self.VJ.document.getElementById("M5516PreloadC" + this.containerId)) { self.VJ.document.getElementById("M5516PreloadC" + this.containerId).style.display = 'none'; } } else if (self.ZO && this.KA == 0) { self.root.innerHTML = ""; if (self.VJ.document.getElementById("M5516PreloadC651827")) { self.VJ.document.getElementById("M5516PreloadC651827").style.display = 'none'; } } }; this.MarketGidLoadNews = function(json, servicerData) { this.YT(); if (typeof servicerData != 'undefined') { self.servicerData = servicerData; if (typeof servicerData.dt != 'undefined') { self.deviceType = servicerData.dt; } if (self.servicerData.hasOwnProperty('templateId') && self.templates[self.servicerData.templateId]) { var templateScript = this.VJ.document.createElement('script'); templateScript.type = 'text/javascript'; templateScript.charset = 'utf-8'; templateScript.src = self.webProtocol + '//' + self.templates[self.servicerData.templateId]; var getTemplate = function() { var i, templates = self.VJ._mgtemplates; for (i in templates) { if ((templates[i].widgetId == self.id || templates[i].widgetId == self.originalId) && templates[i].templateId == self.servicerData.templateId) { return templates[i]; } } return null; }; this.root.parentNode.appendChild(templateScript); var attempts = 5; var interval = setInterval(function() { var template = getTemplate(); if (null === template) { if (--attempts >= 0) { return; } else { (new Image(0, 0)).src = self.webProtocol + '//c.marketgid.com/widget-template-timeout?id=' + self.id; } } else { self.templateId = template.templateId; self.setStyles(template.styles); self.setTemplate(template.template); } clearInterval(interval); self.MarketGidLoadNews(json); }, self.servicerData.tsi || 15); return; } } if (self.fakeMode == 0) { for (var i = 0; i < self.AB.length; i++) { self[self.AB[i]](); } } if (this.isArray(json)){ var template = self["templateFunc"](self, json); self.json = json; if (this.root && template) { if (typeof self.parseAdvertLink == 'function') { template = self.parseAdvertLink(template); } if (this.ZO && this.KA == 0) { this.root.innerHTML = "" } this.addTemplate(template); this.renderBanners(); } } else { if (this.root && this.KA==0) { this.root.innerHTML=''; return; } } if (self.servicerData && self.servicerData.muidn && self.servicerData.pvid && self.pvid != 0 && self.servicerData.pvid == self.pvid) { try { if (self.VJ.localStorage) { self.VJ.localStorage.setItem('mgMuidn', self.servicerData.muidn); } } catch (e) {} } this.LH["page"] = this.page; this.LH['time'] = (new Date()).getTime(); this.setCookie(); var hrefs = this.root.getElementsByTagName("a"); for (var i = 0; i < hrefs.length; i++) { hrefs[i].rel = "nofollow noopener"; } if (typeof self.templateId !== "undefined" && self.templateId !== 0) { self.UR(self.styles, self.VJ.document.getElementsByClassName('MarketGidC651827')[0]); } this.KA++; if (self.fakeMode == 0) { for (var i = 0; i < self.GF.length; i++) { self[self.GF[i]](); } } else { if (typeof(self.responsiveInit) == "function") { self.responsiveInit(); } } }; this.addTemplate = function(template) { this.root.insertAdjacentHTML('beforeend', this.ML + template + this.YY); }; this.PK = function() { var d = this.VJ.document, w = this.VJ, dE = 'documentElement', cH = 'clientHeight', cW = 'clientWidth', iH = 'innerHeight', iW = 'innerWidth', sH = 'scrollHeight', sW = 'scrollWidth', oH = 'offsetHeight', oW = 'offsetWidth', oL = 'offsetLeft', oT = 'offsetTop', sT = 'scrollTop', sL = 'scrollLeft'; if (w[iW]) { return {"c": w[iH], "s": w.pageYOffset}; } else if (d[dE] && d[dE][cW]) { return {"c": d[dE][cH], "s": d[dE][sT]}; } else if (d.body[cW]) { return {"c": d.body[cH], "s": d.body[sT]}; } return 0; }; this.renderItem = function(n, callbackText, type) { if ('html' in n) { var bid = 'mgBanner_651827_' + this.page + '_' + this.iteration; var styles = 'width: 100%; height: 100%; border: 0px; margin: 0px; overflow: hidden; position: relative;'; var banner = ''; this.banners[bid] = n; n = ['', this.iteration]; } else { var banner = ''; } if (self.isArray(n)) { var p = self.QO(n, type); if (p.id && (!(p.id in self.PJ) || (typeof self.isElastic !== 'undefined' && self.isElastic == true))) { if (typeof p.hash !== 'undefined' && typeof p.id !== 'undefined') { self.teaserHashes[p.id] = p.hash; } self.PJ[p.id] = 1; var addClasses = []; if (!self.loadedPopularTeaser && typeof(p.other.adc) != 'undefined' && ( p.other.adc.toString().indexOf('mrsadca') >= 0 || p.other.adc.toString().indexOf('mrsadcp') >= 0 )) { addClasses.push('mgpopular'); self.loadedPopularTeaser = true; } addClasses.push('teaser-' + p.id); if ('l' in p.other && null != p.other.l.match(/[\?|&]u=/)) { addClasses.push('dsp'); } if ('type' in p.other) { addClasses.push('type-' + p.other.type); } var createWebLink = function(url) { return url && url.indexOf('//') === 0 ? self.webProtocol + url : url; }; var price = p.price.replace(new RegExp('[^0-9.]'), ''); var priceOld = p.priceold.replace(new RegExp('[^0-9.]'), ''); var vars = [ [/\{\*.*?\*\}/, ''], [/\{\$href\}/g, self.hrefAttr + '="' + self.MM(p.hash) + '" data-hash="' + p.hash + '"'], [/\{\$pmc_item\}/, self.id], [/\{\$hash\}/g, p.hash], [/\{\$target\}/g, ((typeof p.other.type !== 'undefined' && p.other.type == 'i') || (typeof self.servicerData.ats !== 'undefined' && self.servicerData.ats)) ? 'target="_top"' : 'target="_blank"'], [/(class\=\"[^+]?)(mgline)([^+]?\")/, '$1$2 ' + addClasses.join(' ') + '$3'], [/\{\$source\}/g, p.source], [/\{\$src\}/g, 'width="200" height="200"' + ' data-i="'+p.id+'" src="'+ createWebLink(p.other["i"]) + '"'], [/\{\$title\}/g, self.MK(p.title)], [/\{\$desc\}/g, self.DX(p.desc)], [/\{\$iteration\}/g, self.iteration], [/\$iteration/g, self.iteration], [/this\.iteration/g, self.iteration], [/\{\$price\}/g, p.price], [/\{\$priceold\}/g, p.priceold], [/\{\$discount\}/g, p.discount], [/\{if \$price\}/g, "{if '' != " + price + "}"], [/\{if !\$price\}/g, "{if '' == " + price + "}"], [/\{if \$priceold\}/g, "{if '' != " + priceOld + "}"], [/\{if \$price != " "\}/g, "{if " + p.price.trim().length + " != 0}"], [/\{if \$price == " "\}/g, "{if " + p.price.trim().length + " == 0}"], [/\$priceold/g, p.priceold], [/\$price/g, p.price], [/\{if \$rep\}/g, "{if p.isReplic}"], [/\{\$banner\}/g, banner], [/\{if \$teaser\}/g, "{if '' == '" + banner + "'}"], [/\{if \$banner\}/g, "{if '' != '" + banner + "'}"], [/\{\$category\}/g, p.other.category || ''], [/\{\$sourceName\}/g, self.sourceName] ]; for (var i = 0 ; i < vars.length; i++) { callbackText = callbackText.replace(vars[i][0], vars[i][1]); } while (true) { var x = callbackText; var r = /\{if ([^\}]*?)\}(((?!\{(?:\/)?if).)*)\{\/if\}/g; callbackText = callbackText.replace(r, function(str, p1, p2) { if (self.expressionParser(p1)) { return p2; } else { return ''; } }); if (x == callbackText) break; } this.iteration++; return callbackText; } else { self.PJ[p.id]++; return ""; } } }; this.renderBanners = function() { for (var i in self.banners) { var iframe = self.VJ.document.getElementById(i); iframe.contentWindow.document.open(); iframe.contentWindow.document.write("" + self.banners[i].html + ""); iframe.contentWindow.document.close(); iframe.contentWindow.document.body.addEventListener('click', function(event) { var node = event.target; var isLink = false; while (node.parentElement) { if (node.tagName === 'A') { isLink = true; break; } else { node = node.parentElement; } } if (isLink) { var image = new Image(); image.src = self.banners[i].clickUrl + self.getAntifraudQueryParameter(self.banners[i].clickUrl); } }, true); } }; this.expressionMap = { '||': function(parts) { for (var i in parts) { if (self.expressionParser(parts[i])) { return true; } } return false; }, '&&': function(parts) { for (var i in parts) { if (!self.expressionParser(parts[i])) { return false; } } return true; }, '==': function(parts) { return self.expressionParser(parts[0]) == self.expressionParser(parts[1]); }, '!=': function(parts) { return self.expressionParser(parts[0]) != self.expressionParser(parts[1]); }, '+': function(parts) { return self.expressionParser(parts[0]) + self.expressionParser(parts[1]); }, '-': function(parts) { return self.expressionParser(parts[0]) - self.expressionParser(parts[1]); }, '*': function(parts) { return self.expressionParser(parts[0]) * self.expressionParser(parts[1]); }, '/': function(parts) { return self.expressionParser(parts[0]) / self.expressionParser(parts[1]); }, '%': function(parts) { return self.expressionParser(parts[0]) % self.expressionParser(parts[1]); } }; this.expressionParser = function(expression) { for (var i in self.expressionMap) { if (expression.indexOf(i) !== -1) { return self.expressionMap[i](expression.split(i)); } } return (expression || '').replace(/^([\'|\s]+)|([\'|\s]+)$/g, ''); }; this.generateTemplate = function(templateText) { self["templateText"] = templateText; self["templateFunc"] = function(inf, json) { var parts = /(.*)?\{foreach\}(.*)?\{\/foreach\}(.*)?/.exec(self["templateText"]); if (!parts) { return; } var template = typeof(parts[1]) != 'undefined' ? parts[1] : ''; for (var i = 0; i < json.length; i++) { template += inf.renderItem(json[i], parts[2], 'goods'); } template += typeof(parts[3]) != 'undefined' ? parts[3] : ''; return template; }; return true; }; this.getPageCount = function () { var pagesCountNews = parseInt(''); var pagesCountGoods = parseInt('20'); return pagesCountNews && pagesCountGoods ? Math.min(pagesCountNews, pagesCountGoods) : (pagesCountNews ? pagesCountNews : pagesCountGoods); }; this.init = function() { if (typeof JSON !== 'object') { this.YT(); console.log('Unsupported browser'); } if (this.root) { this.getCookie(); var cookiePage = parseInt(this.LH["page"]); this.LF = this.root.getElementsByTagName('a'); var pageOffset = (this.VJ['MarketGidPageOffset'] ? parseInt(this.VJ['MarketGidPageOffset']) : 0); self.addEvent(self.root, 'click', self.hangNiceLinkListener); self.addEvent(self.root, "\x63\x6f\x6e\x74\x65\x78\x74menu", self.hangNiceLinkListener); self.addEvent(self.root, 'mouseup', self.hangNiceLinkListener); self.addEvent(self.root, 'touchstart', self.hangNiceLinkListener); var pagesCount = self.getPageCount(); if (cookiePage != null && cookiePage < pagesCount && cookiePage > 0 ) { this.page = cookiePage + 1; } else if (cookiePage > (pagesCount - 1) || cookiePage < 1 ) { this.page = 1 + pageOffset; } if ((new Date()).getTime() - (this.LH['time']!=undefined ? this.LH['time'] : 0) >= 6e5) { this.page = 1+pageOffset; } if (!this.page) this.page = 1; this.pageUnlim = this.page - 1; this.LH["page"] = this.page; this.setCookie(); if (!this.VJ.document.cookie) { var dt = new Date(); this.page = dt.getSeconds()%pagesCount+1; } this.ZF = self.webProtocol + '//'+this.RV+'/'; self.clickTracking = typeof(self.VJ.MGClickTracking) != 'undefined' ? self.VJ.MGClickTracking : ""; if (!self.generateTemplate(self.templateText)) { return; } self.VJ.onClickExcludes = self.VJ.onClickExcludes || []; self.VJ.onClickExcludes.push(self.root); if (typeof self.adBlockStatement !== "undefined" && self.adBlockStatement == 1 && 'default' !== "headline-in-picture") { self.UR(self.adBlockStyles); } else { self.UR(self.styles); } for (var i=0; i= 0; var isMarketgid = self.RV.indexOf('marketgid.com') >= 0; if (isMarketgid && isYandex && !isOnlyOwnSubnet && !isPopunder) { self.ZF = self.webProtocol + '//'+self.PVServicers[2]+'/'; } self.adBlockStatement = false; if (self.adBlockStatement) { self.requestParams.limitads = "limitads=" + '4'; } var script = self.VJ.document.createElement('script'); script.type = 'text/javascript'; script.charset = 'utf-8'; var scriptSrc = ""; var fs = forceShow ? 'fs/' : ''; scriptSrc += self.ZF + fs + '651827/' + self.page; if (refresh) { self.requestParams.rsh = "rsh=" + refresh; } if (typeof self.VJ.MGi != "undefined") { self.requestParams.geo = "geo_zone=" + self.VJ.MGi; } self.requestParams.pv = "pv=5"; self.requestParams.cbuster = self.getCbusterParameter(); if (JSON.parse('["wages"]').indexOf('int_exchange') >= 0 || 0 ) { var ogUrlEl = self.VJ.document.querySelector('meta[property="og:url"]'); var ogTitleEl = self.VJ.document.querySelector('meta[property="og:title"]'); if (self.VJ !== self.VJ.top) { ogUrlEl = self.VJ.document.referrer.split('?')[0]; } if (ogUrlEl) { self.requestParams.ogurl = 'ogurl=' + encodeURIComponent(typeof ogUrlEl === "object" ? ogUrlEl.getAttribute('content') : ogUrlEl); } if (ogTitleEl) { self.requestParams.ogtitle = 'ogtitle=' + encodeURIComponent(ogTitleEl.getAttribute('content')); } } if (self.uniqId != '') { self.requestParams.uniqId = "uniqId=" + self.uniqId; } if (self.getActiveChilds().length) { self.requestParams.childs = "childs=" + self.getActiveChilds().join(","); } if (typeof self.VJ.MG_setRequestNonPersonalizedAds != 'undefined' && self.VJ.MG_setRequestNonPersonalizedAds == 1) { self.requestParams.npa = "npa=1"; } if ('0' == '1' && self.getInternalIds().length != 0) { self.requestParams.viewedInternalIds = "exclude_int_exchange=" + self.getInternalIds().join(','); } if (self.cmpEnabled) { var consentData = { "consentData": "", "gdprApplies": false }; if (self.consentData != '' && typeof self.consentData.gdprApplies !== 'undefined' && typeof self.consentData.consentData !== 'undefined') { consentData = self.consentData; } else { if (self.VJ.localStorage) { try { var data = JSON.parse(self.VJ.localStorage.getItem('MG_ConsentData')); if (data != null && typeof data.gdprApplies !== 'undefined' && typeof data.consentData !== 'undefined') { consentData = data; } } catch (err) {} } } self.requestParams.consentData = "consentData=" + consentData.consentData; self.requestParams.gdprApplies = "gdprApplies=" + consentData.gdprApplies; } if (scriptSrc.indexOf('?') == -1) { scriptSrc += '?'; } else { scriptSrc += '&'; } var params = []; for (var key in self.requestParams) { params.push(self.requestParams[key]); } var isIframe = self.VJ.self !== self.VJ.top; try { self.VJ.top.body; var isCrossIframe = true; } catch (e) { var isCrossIframe = false; } params.push('ref=' + encodeURIComponent(isIframe && isCrossIframe ? self.VJ.parent.document.referrer : self.VJ.document.referrer)); if (isIframe) { params.push('iframe=1'); } try { if (!sessionStorage.MG_Session_lastUpdate || Number(sessionStorage.MG_Session_lastUpdate) + 30 * 60 * 1000 < Date.now()) { var refererUrl = isIframe ? self.VJ.parent.document.referrer : self.VJ.document.referrer; var matchDomain = refererUrl.match(/:\/\/([^\/:]+)/i); sessionStorage.MG_Session_pr = matchDomain && matchDomain[1] ? matchDomain[1] : ''; sessionStorage.MG_Session_lu = isIframe ? self.VJ.parent.location.href : self.VJ.location.href; } sessionStorage.MG_Session_lastUpdate = Date.now(); if (sessionStorage && sessionStorage.MG_Session_pr) { params.push('pr=' + encodeURIComponent(sessionStorage.MG_Session_pr)) } if (sessionStorage && sessionStorage.MG_Session_lu) { params.push('lu=' + encodeURIComponent(sessionStorage.MG_Session_lu)) } } catch(err) { } var w = self.getMostTopWindow(); if (typeof w._mgPageView5516 == 'undefined') { w._mgPageView5516 = true; params.push('pageView=1'); } else { params.push('pageView=0'); } self.pvid = (new Date()).getTime().toString(16) + (Math.round(Math.random() * 1000000000)+2147483648).toString(16); params.push('pvid=' + self.pvid); if (self.versionWidget != '') { params.push('implVersion=' + self.versionWidget); } try { if (self.VJ.localStorage) { var mgMuidn = self.VJ.localStorage.getItem('mgMuidn'); if (mgMuidn) { params.push('muid=' + mgMuidn); self.muid = mgMuidn; } } } catch (ex) {} scriptSrc += params.join("&"); script.src = scriptSrc; if (self.sspPerformance) { script.onload = function() { self.VJ.performance.getEntries().map(function(entry) { if (entry.name === scriptSrc) { var duration = Math.ceil(entry.responseEnd - entry.startTime); (new Image(0, 0)).src = self.webProtocol + '//c.marketgid.com/widget-ssp-performance?time=' + duration; } }); }; } (self.realRoot != undefined ? self.realRoot : self.root).parentNode.appendChild(script); script.onerror = function () { self.isAdblock = true; }; }; this.getActiveChilds = function() { return []; }; this.start = function() { if (self.root && self.KA == 0) { if ("function" == typeof self.VJ.__cmp) { self.cmpEnabled = true; try { self.VJ.__cmp("getConsentData", null, function (result) { self.consentData = result; if (self.VJ.localStorage) { self.VJ.localStorage.setItem('MG_ConsentData', JSON.stringify(result)); } }); setTimeout(function() { self.FM(); }, 50); } catch (e) { self.FM(); } } else { self.FM(); } } }; this.addEvent = function(elem, type, handler) { if (elem.addEventListener) { elem.addEventListener(type, handler, false) } else { elem.attachEvent('on' + type, handler) } }; this.removeEvent = function(elem, type, handler) { if (elem.removeEventListener) { elem.removeEventListener(type, handler, false) } else { elem.detachEvent('on' + type, handler) } }; this.getMainCssSelector = function() { return "#" + (this.realRoot ? this.realRoot.id : this.root.id); }; this.doubleClickHandler = function(parameters) { var i, query = [], image = new Image(0, 0); if (parameters.url.tagName != 'A') { parameters.url = self.HY(parameters.url); if (null == parameters.url) { return; } } for (i in parameters) { query.push(encodeURIComponent(i) + '=' + encodeURIComponent(parameters[i])); } image.src = self.webProtocol + '//c.marketgid.com/doubleclick?' + query.join('&'); }; this.adBlockDetect = function () { var states = {ABP_NOT_DETECTED: 0, ABP_DETECTED: 1}; var classList = ["banner_ad", "sponsored_ad"]; var createBlockDetectionDiv = function (className) { var trigger = self.VJ.document.createElement("div"); trigger.className = className; trigger.innerHTML = '.'; self.root.appendChild(trigger); return trigger; }; var isBlockDetectedOnDiv = function (e) { return !e.offsetHeight; }; var isBlockDetectedOnClassNames = function (e) { var i, r = e.length, o; for (i = 0; i < r; i++) { o = createBlockDetectionDiv(e[i]); var blockDetect = isBlockDetectedOnDiv(o); self.root.removeChild(o); if (blockDetect) { return true; } } return false; }; var getBlockedState = function (e) { return isBlockDetectedOnClassNames(e) ? states.ABP_DETECTED : states.ABP_NOT_DETECTED; }; return getBlockedState(classList); };};var mgCanLoad651827 = false;var mgFallback651827 = false;var mgShortWidget651827 = false;if (document.getElementById("MG_ID")) { var rootId651827 = document.getElementById("MG_ID").innerHTML; var mgRootId651827 = parent.window.document.getElementById("MarketGidScriptRootC" + rootId651827) ? ("MarketGidScriptRootC" + rootId651827) : ("M5516ScriptRootC" + rootId651827); if (parent.window.document.getElementById(mgRootId651827)) { mgCanLoad651827 = true; }} else { var mgRootId651827 = document.getElementById("MarketGidScriptRootC" + 651827) ? ("MarketGidScriptRootC" + 651827) : ("M5516ScriptRootC" + 651827); if (document.getElementById(mgRootId651827)) { mgCanLoad651827 = true; mgFallback651827 = true; mgShortWidget651827 = true; }} if (document.getElementById("MarketGidComposite651827") || document.getElementById("M5516Composite651827")) { mgCanLoad651827 = true; mgFallback651827 = true; }if (this['mgCanLoad651827']) { if (!mgFallback651827) { var uniqId = ""; if ('0' == '1') { uniqId = ("00000" + Math.round(Math.random()*100000).toString(16)).slice(-5); } var uniqStr = uniqId != "" ? ("_" + uniqId) : ""; var rootId651827 = document.getElementById("MG_ID").innerHTML; var div651827 = parent.window.document.createElement('div'); div651827.id = "MarketGidComposite651827" + uniqStr; var mgRootId651827 = parent.window.document.getElementById("MarketGidScriptRootC" + rootId651827) ? ("MarketGidScriptRootC" + rootId651827) : ("M5516ScriptRootC" + rootId651827); var versionWidget = parent.window.document.getElementById("MarketGidScriptRootC" + rootId651827) ? '9' : '10'; parent.window.document.getElementById(mgRootId651827).id = mgRootId651827 + uniqStr; var mgPreloadId651827 = parent.window.document.getElementById("MarketGidPreloadC" + rootId651827) ? ("MarketGidPreloadC" + rootId651827) : ("M5516PreloadC" + rootId651827); if (parent.window.document.getElementById(mgPreloadId651827)) { parent.window.document.getElementById(mgPreloadId651827).id = mgPreloadId651827 + uniqStr; } mgRootId651827 = mgRootId651827 + uniqStr; parent.window.document.getElementById(mgRootId651827).appendChild(div651827); MarketGidInfC651827 = new MarketGidBaseBlockC651827(div651827.id, parent.window, false, rootId651827 + uniqStr, uniqId, versionWidget); } else if (mgShortWidget651827) { var uniqId = ""; if ('0' == '1') { uniqId = ("00000" + Math.round(Math.random()*100000).toString(16)).slice(-5); } var uniqStr = uniqId != "" ? ("_" + uniqId) : ""; if (!window.document.getElementById("MarketGidComposite651827") || !window.document.getElementById("M5516Composite651827") ) { var div651827 = window.document.createElement('div'); div651827.id = "MarketGidComposite651827" + uniqStr; var rootDiv651827 = window.document.getElementById("MarketGidScriptRootC" + 651827) ? ("MarketGidScriptRootC" + 651827) : ("M5516ScriptRootC" + 651827); window.document.getElementById(rootDiv651827).appendChild(div651827); window.document.getElementById(rootDiv651827).id = rootDiv651827 + uniqStr; } var mgPreloadId651827 = window.document.getElementById("MarketGidPreloadC" + 651827) ? ("MarketGidPreloadC" + 651827) : ("M5516PreloadC" + 651827); if (window.document.getElementById(mgPreloadId651827)) { window.document.getElementById(mgPreloadId651827).id = mgPreloadId651827 + uniqStr; } var mgRootId651827 = document.getElementById("MarketGidComposite651827" + uniqStr) ? "MarketGidComposite651827" + uniqStr : "M5516Composite651827" + uniqStr; MarketGidInfC651827 = new MarketGidBaseBlockC651827(mgRootId651827, window, false, 651827 + uniqStr, uniqId, 11); } else { var mgRootId651827 = document.getElementById("MarketGidComposite651827") ? "MarketGidComposite651827" : "M5516Composite651827"; var versionWidget = document.getElementById("MarketGidComposite651827") ? '3' : '4'; document.getElementById(mgRootId651827).innerHTML = ""; MarketGidInfC651827 = new MarketGidBaseBlockC651827(mgRootId651827, window, false, 0, '', versionWidget); } this['MarketGidCMainBlock651827'] = function(self){ self.addEvent(self.root, 'mousemove' ,function (e) { self.root.mouseX = e.pageX - self.root.offsetLeft; self.root.mouseY = e.pageY - self.root.offsetTop; }); self.JT = function(hash, event, element) { var href = ""; var data = self.DM[hash]; if (element && typeof self.VJ._mgExternalLinkChanger !== 'undefined' && self.VJ._mgExternalLinkChanger == 1) { href = element.protocol + "//" + element.hostname + element.pathname; var paramsStr = element.search; if (paramsStr != '') { paramsStr = paramsStr.replace("?", ""); var params = paramsStr.split("&"); for (var i = 0; i < params.length; i++) { var param = params[i].split("="); if (param[0] != 'k' && param[0] != 'dc') { href += (i == 0 ? "?" : "&") + params[i]; } } } } else { href = self.clickTracking + self.webProtocol; if (data) { if (data.link) { if (/^http[s]?:/.test(data.link)) { href = self.clickTracking + data.link; } else if (data['coopType'] == 'i') { href = self.clickTracking + self.intExchangeProtocol + data.link; } else { href = self.clickTracking + self.webProtocol + data.link; } } } else { href = "#"; } } var dcparam = ""; if (typeof self.FU !== 'undefined' && self.FU) { if (typeof self.isWagesLink === 'function' && self.isWagesLink(element)) { dcparam = 'dc=1'; } } var delayClickParam = self.getQueryParameterByName('dc'); if (delayClickParam) { dcparam = 'dc=' + parseInt(delayClickParam); } var clickZone = self.getClickZone(); if (clickZone !== '' && dcparam == "") { dcparam = 'dc=' + self.getClickZone(); } if (dcparam !== "") { href += ((href.indexOf('?') >= 0) ? '&' : '?') + dcparam; } if (typeof self.AE == 'function' && data && data['coopType'] != 'i') { href += self.getAntifraudQueryParameter(href, event, element); } if (self.clickTracking && href.indexOf(self.clickTracking) !== -1) { href = self.clickTracking + encodeURIComponent(href.replace(self.clickTracking, '')); } if (self.templateId) { href += ((href.indexOf('?') >= 0) ? '&' : '?') + 'tpl=' + self.templateId; } try { if (self.VJ.localStorage) { var mgMuidn = self.VJ.localStorage.getItem('mgMuidn'); if (typeof (mgMuidn) == "string" && mgMuidn.length > 0 ) { href += ((href.indexOf('?') >= 0) ? '&' : '?') + 'muid=' + mgMuidn; } } } catch (e) {}; if (true == parseInt('0')) { var template = '//%host%/r/%title%?u=%rurl%'; template = template.replace(/^(\/\/)/, self.VJ.location.protocol + '$1'); template = template.replace(/(%host%)/, self.VJ.location.host); template = template.replace(/(%title%)/, self.PB(data[3])); href = template.replace(/(%rurl%)/, self.DC(href, true)); } return href; }; self.getClickZone = function() { var coordinate = JSON.parse('[]'); if (coordinate.length == 0) { return ''; } if (typeof coordinate.top == "undefined" || typeof coordinate.left == "undefined" || typeof coordinate.right == "undefined" || typeof coordinate.bottom == "undefined" ) { return ''; } var height = self.root.offsetHeight; var width = self.root.offsetWidth; var pixelCoordinate = []; pixelCoordinate['top'] = parseInt(height / 100 * coordinate.top); pixelCoordinate['left'] = parseInt(width / 100 * coordinate.left); pixelCoordinate['right'] = width - parseInt(width / 100 * coordinate.right); pixelCoordinate['bottom'] = height - parseInt(height / 100 * coordinate.bottom); var mouseX = self.root.mouseX; var mouseY = self.root.mouseY; var zoneIds = [ [2, 3, 4], [5, '', 6], [7, 8, 9], ]; return zoneIds[ (mouseY <= pixelCoordinate['top']) ? 0 : (mouseY >= pixelCoordinate['bottom'] ? 2 : 1) ][ (mouseX <= pixelCoordinate['left']) ? 0 : (mouseX >= pixelCoordinate['right'] ? 2 : 1) ]; }; self.getAntifraudQueryParameter = function(href, event, element) { var params = self.AE(event, element); if (params) { var suffix = self.id; return ((href.indexOf('?') >= 0) ? '&' : '?') + 'k=' + suffix + 'f' + params; } return ''; }; self.MM = function(hash, event, element) { var href; var data = self.DM[hash]; if (data.other['sdl'] == 1 && data['coopType'] != 'i') { href = self.clickTracking; if (typeof(data.other['dl']) != 'undefined' && data.other['dl'] != '') { href += data.other['dl']; } else { var source = decodeURIComponent(data[0].replace(/[`|',:\/?;$%&\(\)^*!@\s]/g, '')).toLowerCase(); var title = decodeURIComponent(data[3].replace(/[`|',:\/?;$%&\(\)^*!@]/g, '')).replace(/\s/g, '_'); href += self.webProtocol + '//' + (source ? source + '/' : '') + title; } if (self.clickTracking && href.indexOf(self.clickTracking) !== -1) { href = self.clickTracking + encodeURIComponent(href.replace(self.clickTracking, '')); } } else { href = self.JT(hash, event, element); } return href; }; self.PB = function(str) { var a = { 'Ё':'YO','Й':'I','Ц':'TS','У':'U','К':'K','Е':'E','Н':'N','Г':'G','Ш':'SH','Щ':'SCH', 'З':'Z','Х':'H','Ъ':'','ё':'yo','й':'i','ц':'ts','у':'u','к':'k','е':'e','н':'n', 'г':'g','ш':'sh','щ':'sch','з':'z','х':'h','ъ':'\'','Ф':'F','Ы':'I','В':'V','А':'a', 'П':'P','Р':'R','О':'O','Л':'L','Д':'D','Ж':'ZH','Э':'E','ф':'f','ы':'i','в':'v','а':'a', 'п':'p','р':'r','о':'o','л':'l','д':'d','ж':'zh','э':'e','Я':'Ya','Ч':'CH','С':'S', 'М':'M','И':'I','Т':'T','Ь':'','Б':'B','Ю':'YU','я':'ya','ч':'ch','с':'s','м':'m', 'и':'i','т':'t','ь':'','б':'b','ю':'yu',' ':'_', 'і':'i', 'І':'I', 'ї':'i', 'Ї':'I' }; return str.split('').map(function (char) { if (char.match(/[a-z0-9_\-]/i)) { return char; } return a[char] || ''; }).join(''); }; self.getQueryParameterByName = function(name) { name = name.replace(/[\[\]]/g, "\\$&"); var regex = new RegExp("[?&]" + name + "(=([^&#]*)|&|#|$)"); var results = regex.exec(self.VJ.location.href); if (!results) { return null; } if (!results[2]) { return ''; } return decodeURIComponent(results[2].replace(/\+/g, " ")); }; self.HY = function(el) { while (el && el.tagName !== 'BODY') { if (el.tagName == "A") { return el; } else { el = el.parentNode; } } return null; }; self.KC = function (element, selector) { var foundElements; while (element.parentNode) { foundElements = element.parentNode.querySelectorAll(selector); for (var i = 0; i < foundElements.length; i++) { if (element.isEqualNode(foundElements[i])) { return foundElements[i]; } } element = element.parentNode; } return null; }; self.QO = function(data, type) { var t = {}; t.source = data[0]; t.id = data[1]; t.title = (typeof data[3] != 'undefined') ? data[3] : ""; t.desc = (typeof data[4] != 'undefined') ? data[4] : ""; if (type.toLowerCase() == 'news') { t.mirror = data[5] ? data[5] : self.PVs[self.NC]; t.hash = data[6]; t.other = data[7]; t.price = " "; t.priceold = t.discount = ""; t.isReplic = false; } else { t.mirror = self.PVs[self.NC]; t.key = data[6]; t.price = (typeof data[7] != 'undefined') ? data[7].replace(".00", "") : ""; t.priceold = (typeof data[8] != 'undefined') ? data[8].replace(".00", "") : ""; t.discount = t.priceold.replace(new RegExp('[^0-9.]'), '') == '' ? '' : Math.floor((1 - t.price.replace(/[^\d,]+/g, '').replace(',', '.') / t.priceold.replace(/[^\d,]+/g, '').replace(',', '.')) * 100) + '%'; t.hash = data[9]; t.other = (typeof data[10] != 'undefined') ? data[10] : {}; var titleLower = t.title.toLowerCase(); var descLower = t.desc.toLowerCase(); var replicWords = ["копия", "подделка", "реплика", "как оригинал"]; var replicInsertWords = ["Копия. ", "Реплика. "]; if (data[5] == '1') { t.isReplic = true; for (var i = 0; i < replicWords.length; i++) { if (self.MK(titleLower).indexOf(replicWords[i]) > -1 || self.DX(descLower).indexOf(replicWords[i]) > -1) { t.isReplic = false; break; } } } else { t.isReplic = false; } } if (self.deviceType != 'desktop') { t.other.sdl = 0; } data['other'] = t.other; self.DM[t.hash] = data; self.DM[t.hash]['id'] = t.id; self.DM[t.hash]['img'] = typeof(t.other['i']) != 'undefined' ? t.other['i'] : null; self.DM[t.hash]['source'] = t.source; self.DM[t.hash]['img'] = t.other["i"]; self.DM[t.hash]['type'] = type; self.DM[t.hash]['link'] = typeof(t.other['l']) != 'undefined' ? t.other['l'] : null; self.DM[t.hash]['mirror'] = t.mirror; self.DM[t.hash]['coopType'] = typeof(t.other['type']) != 'undefined' ? t.other['type'] : null; self.DM[t.hash]['clicktrackers'] = typeof(t.other['clicktrackers']) != 'undefined' ? t.other['clicktrackers'] : []; self.DM[t.hash]['cdomain'] = t.other.cdomain || null; self.DM[t.hash]['ccid'] = t.other.ccid || null; self.DM[t.hash]['ch'] = t.other.ch || null; self.DM[t.hash]['imp'] = typeof(t.other['imp']) != 'undefined' ? t.other['imp'] : []; if (self.DM[t.hash]['coopType'] == 'i') { self.VJ._mgIntExchangeNews[t.id] = 1; } return t; }; self.getInternalIds = function() { return Object.keys(self.VJ._mgIntExchangeNews); }; self.DC = function(s, replaceChars) { replaceChars = typeof replaceChars == 'undefined' ? replaceChars : false; var b64c = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/='; var b64e = ''; var c1, c2, c3, e1, e2, e3, e4; var i = 0; while (i < s.length) { c1 = s.charCodeAt(i++); c2 = s.charCodeAt(i++); c3 = s.charCodeAt(i++); e1 = c1 >> 2; e2 = ((c1&3) << 4) | (c2 >> 4); e3 = isNaN(c2) ? 64 : (((c2&15) << 2) | (c3 >> 6)); e4 = isNaN(c3) ? 64 : (c3&63); b64e += b64c.charAt(e1) + b64c.charAt(e2) + b64c.charAt(e3) + b64c.charAt(e4); } if (true == replaceChars) { b64e = b64e.replace('+', '-').replace('/', '_').replace('=', '*'); } return b64e; }; self.hangNiceLinkListener = function(event) { if (self.loadedDefault) { return; } if (!event) { var event = self.VJ.event; } if (!event.target) { event.target = event.srcElement; } var element = event.target; if (element.tagName != 'A') { var element = self.HY(element); if (null == element) { return; } } var hash = element['data-hash'] || element.getAttribute('data-hash'); if (hash != undefined) { if (typeof self.DM[hash] != 'undefined' && typeof self.DM[hash]['other'] != 'undefined' && typeof self.DM[hash]['other']['sdl'] != 'undefined' ) { self.DM[hash]['other']['sdl'] = 0; } element[self.hrefAttr] = self.JT(hash, event, element); } }; self.htmlToElement = function (html) { var template = document.createElement('div'); template.innerHTML = html; return template.firstChild; }; self.htmlToElements = function (html) { var template = self.VJ.document.createElement('div'); template.innerHTML = html; return Array.prototype.slice.call(template.childNodes); }; self.JX = function (el) { while (el.tagName !== 'BODY') { if ('fixed' != el.style.position && null == el.offsetParent) { return true; } if ('hidden' == el.style.visibility) { return true; } if ('none' == el.style.display) { return true; } el = el.parentNode; } return false; }; self.UR = function(style, container) { style = style.replace(/(@media \([^(]*\) {)/g, "$1}"); style = style.replace(/((?:^|}|,)\W*)((?:\w+)?\.(?:mc|mg)[\-\w]+)/g, "$1" + this.getMainCssSelector() + " $2"); style = style.replace(/((@media \([^(]*\) \{)\})/g, "$2"); style = style.replace(/video-cdn\.(.+)\/mgPlayer/g, self.NCDomain); if (style == "") return; if (!container) { var MGst = self.VJ.document.createElement('style'); MGst.className = 'MarketGidC651827'; MGst.type = 'text/css'; (self.realRoot != undefined ? self.realRoot : self.root).appendChild(MGst); if (MGst.styleSheet) { MGst.styleSheet.cssText = style; } else { MGst.appendChild(self.VJ.document.createTextNode(style)); } ; } else { var MGst = container; MGst.className = 'MarketGidC651827'; if (MGst.styleSheet) { MGst.styleSheet.cssText = style; } else { while (MGst.firstChild) { MGst.removeChild(MGst.firstChild); } MGst.appendChild(self.VJ.document.createTextNode(style)); } ; } };}; this['MarketGidCMainBlock651827'].call(this['MarketGidInfC651827'], this['MarketGidInfC651827']); this['MarketGidInfC651827']['funcBlocks']['Main'] = 'MarketGidCMainBlock651827'; MarketGidCCookieBlock651827 = function(self){ this.storageName = "MarketGidStorage" + (this.VJ.MarketGidPageOffset ? this.VJ.MarketGidPageOffset : ""); this.FY = function() { var matches = this.VJ.document.cookie.match(new RegExp("(?:^|; )" + this.storageName + "=([^;]*)")); var res = {}; if (matches) { try { res = JSON.parse(decodeURIComponent(matches[1])); } catch (e) {}; } return res; }; this.getCookie = function() { var value = this.FY(); if (value["C651827"]!=undefined) { this.LH = value["C651827"]; } else this.LH = {}; if (value["0"]!=undefined) { this.AA = value["0"]; } else this.AA = {}; }; this.setCookie = function() { var totalCookie = this.FY(); totalCookie["C651827"] = this.LH; totalCookie["0"] = this.AA; var value = encodeURIComponent(JSON.stringify(totalCookie)); this.VJ.document.cookie = this.storageName+"="+value+";path=/"; };}; this['MarketGidCCookieBlock651827'].call(this['MarketGidInfC651827'], this['MarketGidInfC651827']); this['MarketGidInfC651827']['funcBlocks']['Cookie'] = 'MarketGidCCookieBlock651827'; MarketGidCSubnetsBlock651827 = function() { var self = this; self.funcBlocks["Subnets"] = "MarketGidCSubnetsBlock651827"; this.NF.push("SA"); this.NC = ""; this.PVs = {}; this.PVServicers = {}; this.PVsImages = {}; this.PVsAdvert = {}; this.PVsAdLinkBlocks = {}; this.PVsUtm = {}; this.subnetDashboardDomains = {}; this.PVNames = {}; this.PVs['0'] = 'marketgid.com'; this.PVServicers['0'] = 'servicer.marketgid.com'; this.PVNames['marketgid'] = parseInt('0'); this.PVsImages['0'] = 'marketgid.com'; this.PVsAdLinkBlocks['0'] = '
%WIDGET_TITLE%
'; this.PVsUtm['0'] = '?utm_source=informer&utm_medium=text&utm_campaign=add&utm_content='; this.subnetDashboardDomains['0'] = self.webProtocol + '//dashboard.marketgid.com'; this.PVs['1'] = 'ladycenter.ru'; this.PVServicers['1'] = 'servicer.marketgid.com'; this.PVNames['lady'] = parseInt('1'); this.PVsImages['1'] = 'marketgid.com'; this.PVsAdLinkBlocks['1'] = ''; this.PVsUtm['1'] = '?utm_source=informer&utm_medium=text&utm_campaign=add&utm_content='; this.subnetDashboardDomains['1'] = self.webProtocol + '//dashboard.marketgid.com'; this.PVs['2'] = 'tovarro.com'; this.PVServicers['2'] = 'servicer.tovarro.com'; this.PVNames['tovarro'] = parseInt('2'); this.PVsImages['2'] = 'tovarro.com'; this.PVsAdLinkBlocks['2'] = '
%WIDGET_TITLE%
'; this.PVsUtm['2'] = '?utm_source=informer&utm_medium=text&utm_campaign=add&utm_content='; this.subnetDashboardDomains['2'] = self.webProtocol + '//dashboard.tovarro.com'; this.PVs['3'] = 'lentainform.com'; this.PVServicers['3'] = 'servicer.lentainform.com'; this.PVNames['lentainform'] = parseInt('3'); this.PVsImages['3'] = 'lentainform.com'; this.PVsAdLinkBlocks['3'] = '
%WIDGET_TITLE%
'; this.PVsUtm['3'] = '?utm_source=informer&utm_medium=text&utm_campaign=add&utm_content='; this.subnetDashboardDomains['3'] = self.webProtocol + '//dashboard.lentainform.com'; this.PVs['4'] = 'marketgid.com'; this.PVServicers['4'] = 'servicer.marketgid.com'; this.PVNames['marketgid'] = parseInt('4'); this.PVsImages['4'] = 'marketgid.com'; this.PVsAdLinkBlocks['4'] = '
%WIDGET_TITLE%
'; this.PVsUtm['4'] = '?utm_source=informer&utm_medium=text&utm_campaign=add&utm_content='; this.subnetDashboardDomains['4'] = self.webProtocol + '//dashboard.marketgid.com'; this.NF.push("SA"); var informerData = []; informerData.push({"id": "651827"}); this.SA = function() { for (var i = 0; i < informerData.length; i++) { var tickerId = informerData[i].id; if ('0' !== '1') { (function(tickerId) { self.VJ["MarketGidLoadGoods" + tickerId + (self.uniqId != '' ? ('_' + self.uniqId) : '')] = function(json, awd) { self.originalId = self.id; self.id = tickerId; self.XO = 'goods'; self.NC = '0'; self.NCDomain = 'marketgid.com'; self["MarketGidLoadNews"](json, awd); }; self.VJ["MarketGidCReject" + tickerId] = self['MarketGidReject']; })(tickerId); } if ('1' !== '1') { (function(tickerId) { self.VJ["MarketGidLoadGoods" + tickerId + (self.uniqId != '' ? ('_' + self.uniqId) : '')] = function(json, awd) { self.originalId = self.id; self.id = tickerId; self.XO = 'goods'; self.NC = '1'; self.NCDomain = 'ladycenter.ru'; self["MarketGidLoadNews"](json, awd); }; self.VJ["MarketGidCReject" + tickerId] = self['MarketGidReject']; })(tickerId); } if ('2' !== '1') { (function(tickerId) { self.VJ["TovarroLoadGoods" + tickerId + (self.uniqId != '' ? ('_' + self.uniqId) : '')] = function(json, awd) { self.originalId = self.id; self.id = tickerId; self.XO = 'goods'; self.NC = '2'; self.NCDomain = 'tovarro.com'; self["MarketGidLoadNews"](json, awd); }; self.VJ["TovarroCReject" + tickerId] = self['MarketGidReject']; })(tickerId); } if ('3' !== '1') { (function(tickerId) { self.VJ["LentaInformLoadGoods" + tickerId + (self.uniqId != '' ? ('_' + self.uniqId) : '')] = function(json, awd) { self.originalId = self.id; self.id = tickerId; self.XO = 'goods'; self.NC = '3'; self.NCDomain = 'lentainform.com'; self["MarketGidLoadNews"](json, awd); }; self.VJ["LentaInformCReject" + tickerId] = self['MarketGidReject']; })(tickerId); } if ('4' !== '1') { (function(tickerId) { self.VJ["MarketGidLoadGoods" + tickerId + (self.uniqId != '' ? ('_' + self.uniqId) : '')] = function(json, awd) { self.originalId = self.id; self.id = tickerId; self.XO = 'goods'; self.NC = '4'; self.NCDomain = 'marketgid.com'; self["MarketGidLoadNews"](json, awd); }; self.VJ["MarketGidCReject" + tickerId] = self['MarketGidReject']; })(tickerId); } } }; self.getSubnetByMirror = function(mirror) { var subnet = 0; if (typeof self.PVNames[mirror] != 'undefined') { subnet = self.PVNames[mirror]; } return subnet; }}; this['MarketGidCSubnetsBlock651827'].call(this['MarketGidInfC651827'], this['MarketGidInfC651827']); this['MarketGidInfC651827']['funcBlocks']['Subnets'] = 'MarketGidCSubnetsBlock651827'; MarketGidCInternalExchangeLoggerBlock651827 = function(self){ self.GF.push("iExchangeLoggerInit"); self.iExchangeLoggerInit = function () { self.addEvent(self.root, "click", function(event) { if (!event) var event = self.VJ.event; if (!event.target) { event.target = event.srcElement; } self.QW = true; var element = event.target; if (element.tagName != 'A') { var element = self.HY(element); if (null == element) { return; } } if (!element.hasAttribute('data-hash')) { return; } var hash = element.getAttribute('data-hash'); if (self.DM[hash] && self.DM[hash]['coopType'] == 'i') { var img = document.createElement('IMG'); var data = "cid=" + self.id + "&tid=" + self.DM[hash]['id'] + "&h=" + hash; if (typeof self.servicerData['isBot'] !== 'undefined') { data += "&bot=" + self.servicerData['isBot']; } if (typeof self.servicerData['tt'] !== 'undefined') { data += "&tt=" + self.servicerData['tt']; } if (typeof self.servicerData['ts'] !== 'undefined') { data += "&ts=" + self.servicerData['ts']; } var scriptSrc = "//c.marketgid.com/clie?" + data; img.src = self.webProtocol + scriptSrc; img.onerror = function () { }; } }); };}; this['MarketGidCInternalExchangeLoggerBlock651827'].call(this['MarketGidInfC651827'], this['MarketGidInfC651827']); this['MarketGidInfC651827']['funcBlocks']['InternalExchangeLogger'] = 'MarketGidCInternalExchangeLoggerBlock651827'; MarketGidCInternalExchangeBlock651827 = function(self){ self.GF.push("AT"); function ZS(VJ) { var YI = []; var LO = [VJ]; while (LO.length > 0) { var el = LO.pop(); for (var i = 0; i < el.childNodes.length; i++) { var node = el.childNodes[i]; if (node.nodeType === Node.COMMENT_NODE) { YI.push(node); } else { LO.push(node); } } } return YI; } self.AT = function () { if (self.FD.indexOf('int_exchange') == -1) { return; } var comments = ZS(self.root); for (var i = 0; i < comments.length; i++) { var comment = comments[i]; var mgline = self.KC(comment, '.mgline'); if (!mgline) { continue; } if (mgline.className.indexOf('type-w') == -1) { continue; } var img = self.VJ.document.createElement("IMG"); img.setAttribute('height', 20); if (comment.data == 'intExchangeWagesImagePlace') { img.className = 'mcimgad'; img.src = self.webProtocol + "//cdn.marketgid.com/images/marketgid/int_exchange_wages_ad.svg"; } var link = mgline.querySelector('a'); var hash = link['data-hash'] || link.getAttribute('data-hash'); if (hash && self.DM[hash] && !!self.DM[hash]['source']) { if (comment.data == 'intExhangeWagesSourcePlace') { img.className = 'mcimgsrc'; img.src = self.webProtocol + "//cdn.marketgid.com/images/marketgid/int_exchange_wages_src.svg"; } } if (!img.src) { continue; } comment.parentNode.replaceChild(img, comment); } } }; this['MarketGidCInternalExchangeBlock651827'].call(this['MarketGidInfC651827'], this['MarketGidInfC651827']); this['MarketGidInfC651827']['funcBlocks']['InternalExchange'] = 'MarketGidCInternalExchangeBlock651827'; this['MarketGidCAntiAdblockBlock651827'] = function(self) { self.isAdblock = false; self.isServerSide = typeof loadServerSideAds56956102 == 'function'; self.NF.push('initServerSide'); self.GF.push("initAntiAdblock"); self.initServerSide = function (){ if (self.isServerSide && self.isAdblock){ self.VJ._mgq = self.VJ._mgq || []; loadServerSideAds56956102(self.VJ._mgq); } }; self.initAntiAdblock = function () { if (self.isAdblock){ var displayType = "block"; if (self.root.style.display != ""){ displayType = self.root.style.display; } self.root.style.setProperty("visibility", "visible", "important"); self.root.style.setProperty("display", displayType, "important"); self.appendVisibleRecursive(self.root); self.root.addEventListener("click", function (t) { t.preventDefault(); var e = t.target; var n = ''; if (e.tagName == 'A') { return self.VJ.location = e.href; } else { while ("A" != e.tagName) { e = e.parentNode; if (e == self.root) { return false; } } n = e.href; } return self.VJ.location = n; }); } }; self.appendVisibleRecursive = function (node) { for (var i = -1, l = node.childNodes.length; ++i < l;) { var el = node.childNodes[i]; var displayType = "block"; if (typeof el.style != 'object'){ continue; } if (el.style.display == 'none') { continue; } if (el.tagName=='STYLE' || el.tagName == 'SCRIPT'){ continue; } if (el.tagName=='TD'){ displayType = "table-cell"; } if (el.tagName=='TR'){ displayType = "table-row"; } if (el.className.length > 0 && el.className.split(' ').indexOf('mgbox') > -1){ displayType = "flex"; } if (el.className.length > 0 && el.className.split(' ').indexOf('mgline') > -1){ displayType = "inline-block"; } if (el.tagName == 'A' && el.parentNode.className.length > 0 && el.parentNode.className.split(' ').indexOf('submit') > -1){ if (parseInt('0') == 1) { displayType = "inline-block"; } else { continue; } } if (el.className.length > 0 && el.className.split(' ').indexOf('fake') > -1){ continue; } el.style.setProperty("visibility", "visible", "important"); el.style.setProperty("display", displayType, "important"); if (el.childNodes.length > 0){ self.appendVisibleRecursive(el); } } };}; this['MarketGidCAntiAdblockBlock651827'].call(this['MarketGidInfC651827'], this['MarketGidInfC651827']); this['MarketGidInfC651827']['funcBlocks']['AntiAdblock'] = 'MarketGidCAntiAdblockBlock651827'; MarketGidCUtilsBlock651827 = function(self){ self.utils = {}; self.utils.getScroll = function() { var w = self.utils.getWindow(); return { top: w.document.body.scrollTop || w.document.documentElement.scrollTop || 0, left: w.document.body.scrollLeft || w.document.documentElement.scrollLeft || 0 } }; self.utils.getRect = function(element, withScroll) { var rect = element.getBoundingClientRect(); var toReturn = { top: rect.top, bottom: rect.bottom, left: rect.left, right: rect.right, height: (rect.height ? rect.height : rect.bottom - rect.top), width: (rect.width ? rect.width : rect.right - rect.left) }; if (self.VJ.self !== self.VJ.top) { var frame = self.utils.getFrame(); if (frame) { var iframeRect = frame.getBoundingClientRect(); toReturn.top += iframeRect.top; toReturn.bottom += iframeRect.top; toReturn.left += iframeRect.left; toReturn.right += iframeRect.left; } } if (withScroll) { var scroll = self.utils.getScroll(); toReturn.top += scroll.top; toReturn.bottom += scroll.top; toReturn.left += scroll.left; toReturn.right += scroll.left; } return toReturn; }; self.utils.getViewportSize = function() { var w = self.utils.getWindow(); return { width: (w.innerWidth || w.document.documentElement.clientWidth), height: (w.innerHeight || w.document.documentElement.clientHeight) }; }; var currentWindow = undefined; self.utils.getWindow = function() { if (currentWindow === undefined) { var w = self.VJ; if (self.VJ.parent != self.VJ.self) { try { if (self.VJ.top.document != undefined) { w = self.VJ.top; } } catch (err) { } } currentWindow = w; } return currentWindow; }; var topFrame = undefined; self.utils.getFrame = function() { if (topFrame === undefined) { try { for (var w = self.VJ, frame = w.frameElement; w.frameElement; w = w.parent) { frame = w.frameElement; } topFrame = frame; } catch(err) { topFrame = null; } } return topFrame; }}; this['MarketGidCUtilsBlock651827'].call(this['MarketGidInfC651827'], this['MarketGidInfC651827']); this['MarketGidInfC651827']['funcBlocks']['Utils'] = 'MarketGidCUtilsBlock651827'; MarketGidCRtbBlock651827 = function(self){ this.GF.push("cmPixelLoad"); this.cmPixelLoad = function(fpQuery) { if (!self.VJ['i.js.loaded'] && self.cookieMatchingDomain) { self.VJ['i.js.loaded'] = true; var script = MarketGidInfC651827.VJ.document.createElement('script'); script.charset = 'utf-8'; var scriptSrc = self.webProtocol + '//' + self.cookieMatchingDomain + '/i.js?' + self.getCbusterParameter(); if (typeof(fpQuery) == 'string' && fpQuery != "") { scriptSrc += fpQuery; } script.src = scriptSrc; script.type = 'text/javascript'; script.async = true; script.onerror = function () { self.VJ['i.js.loaded'] = false; }; var currentRoot = MarketGidInfC651827.realRoot != undefined ? MarketGidInfC651827.realRoot : MarketGidInfC651827.root; currentRoot.parentNode.appendChild(script); } if (!self.VJ['i-noref.js.loaded'] && self.cookieMatchingDomain) { self.VJ['i-noref.js.loaded'] = true; var iframe = document.createElement('IFRAME'); iframe.src = 'about:blank'; iframe.frameBorder = 0; iframe.style.position = 'absolute'; iframe.style.top = '0px'; iframe.style.left = '-1px'; iframe.style.width = '0px'; iframe.style.height = '0px'; iframe.style.display = 'none'; iframe.onload = function () { var script = this.contentDocument.createElement('script'); script.charset = 'utf-8'; var scriptSrc = self.webProtocol + '//' + self.cookieMatchingDomain + '/i-noref.js?' + self.getCbusterParameter(); script.src = scriptSrc; script.type = 'text/javascript'; script.async = true; script.onerror = function () { self.VJ['i-noref.js.loaded'] = false; }; this.contentDocument.body.appendChild(script); }; document.body.appendChild(iframe); } };}; this['MarketGidCRtbBlock651827'].call(this['MarketGidInfC651827'], this['MarketGidInfC651827']); this['MarketGidInfC651827']['funcBlocks']['Rtb'] = 'MarketGidCRtbBlock651827'; MarketGidCMgqBlock651827 = function(self){ this.isLongCheck = false; this.NF.push("mgqInit"); this.mgqWorker = function() { var length = self.VJ._mgq.length; var pool = self.VJ._mgq.slice(0); var mgqRemovedCounter = 0; for (var i = 0; i < length; i++) { var el = pool[i]; if (typeof(self.VJ[el[0]]) == 'function') { try { self.VJ[el[0]].apply(self.VJ, el.slice(1)); } catch (e) { } self.VJ._mgq.splice(i - mgqRemovedCounter, 1); mgqRemovedCounter++; } } if (!self.VJ._mgqi) { self.VJ._mgqi = self.VJ.setInterval(function() { self.mgqWorker(); }, 5); } if (!self.isLongCheck) { if ((new Date()).getTime() - self.VJ._mgqt > 10000) { self.isLongCheck = true; self.VJ.clearInterval(self.VJ._mgqi); self.VJ._mgqi = self.VJ.setInterval(function() { self.mgqWorker(); }, 100); } } }; this.mgqInit = function() { self.VJ._mgq = self.VJ._mgq || []; if (typeof(self.VJ._mgqp) == 'undefined') { self.VJ._mgqp = self.mgqWorker; self.VJ._mgqt = (new Date()).getTime(); self.mgqWorker(); } };}; this['MarketGidCMgqBlock651827'].call(this['MarketGidInfC651827'], this['MarketGidInfC651827']); this['MarketGidInfC651827']['funcBlocks']['Mgq'] = 'MarketGidCMgqBlock651827'; this['MarketGidCAntifraudBlock651827'] = function(self){ self.GF.push('LK'); self.NF.push('RE'); self.RM = null; self.YL = null; self.QW = false; self.GP = ''; self.DK = ''; self.ND = ''; self.XF = ''; self.KN = ''; self.LA = ''; self.KQ = ''; self.EV = ''; self.OD = ''; self.PZ = 0; self.CU = 0; self.NU = ''; self.afCoords = ''; self.TF = ''; self.DY = ''; self.XS = ''; self.ST = 1; self.STFlag = ''; self.afCharging = -1; self.afLevel = -1; self.topIFrame = undefined; self.RE = function() { if (typeof(self.AA['svspr']) === 'undefined') { self.ND = self.MO(self.VJ.document.referrer, 500); self.AA['svspr'] = self.ND; self.setCookie(); } else { self.ND = self.AA['svspr']; } self.XF = self.VJ.document.referrer; self.KN = self.VJ.document.location.href; var r = []; r = self.DH(70, 50, 50); self.ND = self.HV(r[0]); self.XF = self.HV(r[1]); self.KN = self.HV(r[2]); if (typeof(self.AA['svsds']) !== 'undefined') { self.LA = self.AA['svsds']; self.LA++; } else { self.LA = 1; } self.AA['svsds'] = self.LA; self.setCookie(); var d = new Date(); self.GP = d.getTime() + '' + self.id + Math.floor(Math.random()*100) + '' + (2*Math.floor(Math.random()*4)); self.GP += 1; self.GP = self.EU(self.MO(self.GP, 16, 1)); self.PZ = self.EU(d.getTime()); if (typeof(self.AA['TejndEEDj']) === 'undefined') { self.AA['TejndEEDj'] = self.GP; self.setCookie(); } self.NU = self.QN(); self.TF = self.QR(); self.STFlag = self.getFocusFlag(); self.DY = self.HV(self.BR()); self.XS = self.EU(self.CM()); self.generateBatteryInfo(); }; self.HV = function(s) { s = s.toString(); s = unescape(encodeURIComponent(s)); var b64c = '\x41\x42\x43\x44\x45\x46\x47\x48\x49\x4a\x4b\x4c\x4d\x4e\x4f\x50\x51\x52\x24\x54\x55\x56\x57\x58\x59\x5a\x61\x62\x63\x64\x65\x2a\x67\x68\x69\x6a\x6b\x6c\x6d\x6e\x6f\x70\x71\x72\x73\x74\x75\x76\x77\x78\x79\x7a\x30\x31\x32\x33\x34\x35\x36\x37\x38\x39\x2b\x2f\x3d'; var b64e = ''; var c1, c2, c3, c4, e1, e2, e3, e4; for (var i = 0; i < s.length;) { c1 = s.charCodeAt(i++); c2 = 2 << 5; e1 = c1 >> (c2 / 32); c3 = s.charCodeAt(i++); e2 = ((c1 & 3) << (c2 / 16)) | (c3 >> (c2 / 16)); c4 = s.charCodeAt(i++); e3 = isNaN(c3) ? c2 : (((c3 & 15) << (c2 / 32)) | (c4 >> (c2 - 58))); e4 = isNaN(c4) ? c2 : (c4 & (c2 - 1)); b64e += b64c.charAt(e1) + b64c.charAt(e2) + b64c.charAt(e3) + b64c.charAt(e4); } return b64e; }; self.RB = function(n) { return n ? Math.round(n).toString(16) : ''; }; self.MO = function(str, n, r) { var length = str.length; if (length <= n) { return str; } var start = r ? length - n : 0; return str.substr(start, n); }; self.CP = function(element) { var offsetLeft = 0, offsetTop = 0; do { offsetLeft += element.offsetLeft; offsetTop += element.offsetTop; } while (element = element.offsetParent); return { 'x': offsetLeft, 'y': offsetTop }; }; self.ZE = function(event) { var x = 0, y = 0; if (!event) event = self.VJ.event; if (event.pageX || event.pageY) { x = event.pageX; y = event.pageY; } else if (event.touches && event.touches[0]) { x = event.touches[0].pageX; y = event.touches[0].pageY; } else if (event.clientX || event.clientY) { x = event.clientX + (self.VJ.document.documentElement.scrollLeft || self.VJ.document.body.scrollLeft) - self.VJ.document.documentElement.clientLeft; y = event.clientY + (self.VJ.document.documentElement.scrollTop || self.VJ.document.body.scrollTop) - self.VJ.document.documentElement.clientTop; } return { 'x':x, 'y':y }; }; self.QK = function(event) { var x = 0, y = 0; if (event.clientX || event.clientY) { x = event.clientX; y = event.clientY; } else if (event.touches && event.touches[0]) { x = event.touches[0].clientX; y = event.touches[0].clientY; } return { 'x':x, 'y':y }; }; self.getMaxTouchPoints = function() { var r = 98; if (typeof(self.VJ.navigator.maxTouchPoints) !== 'undefined') { r = self.VJ.navigator.maxTouchPoints; } else { r = 99; } return r; }; self.QR = function() { var TY = 0; if (self.VJ.opera) { TY += 1; } if (self.VJ.opera && self.VJ.opera.buildNumber) { TY += 2; } if (self.VJ.document.all || self.VJ.MSStream) { TY += 4; } if (!self.VJ.btoa || self.VJ.navigator.msPointerEnabled || typeof(self.VJ.clearImmediate) !== 'undefined') { TY += 8; } if (self.VJ.chrome) { TY += 16; } if (typeof(self.VJ.mozInnerScreenX) !== 'undefined') { TY += 32; } if (!self.VJ.external) { TY += 64; } return TY; }; self.getFocusFlag = function() { var focusFlag = 0; if (self.VJ.opera) { focusFlag += 1; } if (self.VJ.opera && self.VJ.opera.buildNumber) { focusFlag += 2; } if (self.VJ.document.all || self.VJ.MSStream) { focusFlag += 4; } if (!self.VJ.btoa || self.VJ.navigator.msPointerEnabled || typeof(self.VJ.clearImmediate) !== 'undefined') { focusFlag += 8; } if (self.VJ.chrome) { focusFlag += 16; } if (typeof(self.VJ.mozInnerScreenX) !== 'undefined') { focusFlag += 32; } if (!self.VJ.external) { focusFlag += 64; } return focusFlag; }; self.LW = function() { return self.VJ.navigator.javaEnabled() ? 1 : 0; }; self.QH = function() { var b = 0; if (typeof(self.VJ.navigator.plugins) !== 'undefined' && typeof(self.VJ.navigator.plugins["Shockwave Flash"]) == 'object') { b = 1; } else if (typeof(self.VJ.ActiveXObject) !== 'undefined') { try { if (new ActiveXObject('ShockwaveFlash.ShockwaveFlash')) { b = 1; } } catch(e) {} } return b; }; self.UI = function() { return self.VJ.navigator.cookieEnabled ? 1 : 0; }; self.XC = function() { if (self.VJ.sessionStorage) { try { var e = null; self.VJ.sessionStorage.setItem('svs', 1); e = self.VJ.sessionStorage.getItem('svs'); } catch (n) {} } return e ? 1 : 0; }; self.RQ = function() { if (self.VJ.localStorage) { try { var e = null; self.VJ.localStorage.setItem('svs', 1); e = self.VJ.localStorage.getItem('svs'); } catch (n) {} } return e ? 1 : 0; }; self.EG = function() { var b = 0; if (self.LW()) b += 1; if (self.QH()) b += 2; if (self.UI()) b += 4; if (self.RQ()) b += 8; if (self.XC()) b += 16; if (self.isTouchStart()) b += 32; return b; }; self.isTouchStart = function() { return typeof(self.VJ.ontouchstart) !== 'undefined'; }; self.GZ = function(number) { return 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcde.ghijklmnopqrstuv0123456789wxyz-_'.substr(number, 1); }; self.EY = function(number) { var dict = { '00': 'A', '01': 'B', '02': 'C', '03': 'D', '04': 'E', '05': 'F', '06': 'G', '07': 'H', 10: 'I', 11: 'J', 12: 'K', 13: 'L', 14: 'M', 15: 'N', 16: 'O', 17: 'P', 20: 'Q', 21: 'R', 22: 'S', 23: 'T', 24: 'U', 25: 'V', 26: 'W', 27: 'X', 30: 'Y', 31: 'Z', 32: 'a', 33: 'b', 34: 'c', 35: 'd', 36: 'e', 37: '.', 40: 'g', 41: 'h', 42: 'i', 43: 'j', 44: 'k', 45: 'l', 46: 'm', 47: 'n', 50: 'o', 51: 'p', 52: 'q', 53: 'r', 54: 's', 55: 't', 56: 'u', 57: 'v', 60: '0', 61: '1', 62: '2', 63: '3', 64: '4', 65: '5', 66: '6', 67: '7', 70: '8', 71: '9', 72: 'w', 73: 'x', 74: 'y', 75: 'z', 76: '-', 77: '_', 0: '!', 1: '*', 2: ';', 3: ':', 4: '=', 5: '+', 6: '$', 7: '~' }; return dict[number]; }; self.DH = function(l1, l2, l3) { var arr = [self.ND, self.XF, self.KN]; var sizes = [l1, l2, l3]; var totalSize = 0; var totalLength = 0; for (var i = 0; i < sizes.length; i++) { totalSize += sizes[i]; totalLength += arr[i].length; } if (totalLength <= totalSize) return arr; var completes = [0, 0, 0]; var buffer = []; for (var i = 0; i < arr.length; i++) { var end = -1; if (arr[i].length >= 8) { end = arr[i].indexOf("/", 8); } if (end == -1) { buffer[i] = arr[i]; arr[i] = ''; } else { buffer[i] = arr[i].substr(0, end); arr[i] = arr[i].substr(end); } sizes[i] -= buffer[i].length; } var domains = buffer.slice(); var replaces = []; if (domains[0] == domains[1]) { replaces[0] = "++"; } else if (domains[0] == domains[2]) { replaces[0] = "::"; } if (domains[1] == domains[2]) { replaces[1] = ";;"; } while(1) { var bFlag = 0; for (var i = 0; i < arr.length; i++) { if (!completes[i] && !arr[i].length) { completes[i] = 1; for (var j = 0; j < completes.length; j++) { if (!completes[j]) { sizes[j] += sizes[i]; sizes[i] = 0; break; } } } else if (!completes[i]) { bFlag = 1; buffer[i] += arr[i][0]; if (arr[i].length != 1) { arr[i] = arr[i].substr(1); } else { arr[i] = ''; } sizes[i]--; if (!sizes[i]) { completes[i] = 1; } } } if (!bFlag) { for (var i = 0; i < arr.length; i++) { if (!arr[i].length) continue; for (var j = 0; j < sizes.length; j++) { if (sizes[j]) { completes[i] = 0; sizes[i] = sizes[j]; sizes[j] = 0; bFlag = 1; break; } } if (bFlag) { break; } } } if (!bFlag) { break; } } for (var i in replaces) { buffer[i] = buffer[i].split(domains[i]).join(replaces[i]); } return buffer; }; self.EU = function(number) { if (number == null) { return ''; } number = Math.abs(number); var oct = parseInt(number, 10).toString(8); var RC = 2; var n = Math.ceil(oct.length/RC); var chars = ''; for (var i = 0; i < n; i++) { var part = oct.substr(i*RC, RC); chars += self.EY(part); } return chars; }; self.QN = function() { var XQ = {"props":{"3":"window.close","13":"window.navigator.taintEnabled","16":"window.EventTarget.toString","18":"window.navigator.appName","20":"window.ApplicationCacheErrorEvent","22":"window.clearImmediate","23":"window.CryptoKey","25":"window.external.AddSearchProvider","32":"window.chrome.search","33":"window.clientInformation.vendor","40":"window.TouchEvent","43":"window.DeviceMotionEvent","46":"window.navigator.webkitGetGamepads","49":"window.Notification","56":"window.BeforeLoadEvent","57":"window.Entity","72":"window.AnalyserNode","74":"window.ArrayBufferView","76":"window.HTMLBaseFontElement","86":"window.self.SharedWorker","87":"window.Touch","91":"window.DOMException.ABORT_ERR","92":"window.Set","98":"window.document.createTouch","138":"window.NaN","139":"window.document.prepend","163":"window.SiteBoundCredential","165":"window.CanvasCaptureMediaStreamTrack","166":"window.core.version","167":"window.Blob"},"rules":{"contains":{"3":["({command:\"window.close.self\"})"],"18":["MicrosoftInternetExplorer"],"33":["GoogleInc."]},"not_empty":[13,16,18,20,22,23,25,32,40,43,46,49,56,57,76,86,87,91,92,98,138,139,163,165,166],"undefined":[25,46,72,74,87,167]}}; var AF = ''; for (var i in XQ['props']) { i = parseInt(i, 10); var node = window; var value = ''; var tree = XQ['props'][i].split('.'); for (var depth in tree) { if (tree[depth] in node) { try { node = node[tree[depth]]; } catch (e) { node = 'undefined'; } } else { node = 'undefined'; break; } } value = (node + '').replace(/\s/g, ''); if (XQ['rules']['contains'] && i in XQ['rules']['contains']) { for (var j in XQ['rules']['contains'][i]) { AF += value.indexOf(XQ['rules']['contains'][i][j]) != -1 ? "1" : "0"; } } if (XQ['rules']['empty'] && XQ['rules']['empty'].indexOf(i) != -1) { AF += value == "" ? "1" : "0"; } if (XQ['rules']['not_empty'] && XQ['rules']['not_empty'].indexOf(i) != -1) { AF += (value != "undefined" && value != "") ? "1" : "0"; } if (XQ['rules']['undefined'] && XQ['rules']['undefined'].indexOf(i) != -1) { AF += value == "undefined" ? "1" : "0"; } } var RC = 6; var n = Math.ceil(AF.length/RC); var chars = ''; for (var i = 0; i < n; i++) { var part = AF.substr(i*RC, RC); var dec = parseInt(part, 2); chars += self.GZ(dec); } return chars; }; self.FG = function(el) { while (el.firstChild && el.firstChild.nodeType == 1) { el = el.firstChild; } while (el.parentNode) { if (self.VJ.getComputedStyle(el).getPropertyValue('opacity') <= 0.2) { return 1; } if (el == self.VJ.document.body) { break; } el = el.parentNode; } return 0; }; self.CM = function() { var n = 0; if (typeof(self.VJ.navigator.mimeTypes) !== 'undefined') { n = self.VJ.navigator.mimeTypes.length; } return n; }; self.BR = function() { var str = ''; if (typeof(self.VJ.navigator.plugins) !== 'undefined') { var arr = self.VJ.navigator.plugins; var pl = []; for(var i = 0; i < arr.length; i++) { pl.push(arr[i]['name']); } str = self.MO(pl.join('|').replace(/\s/g,""), 300); } return str; }; self.RY = function() { var r = 0; if (typeof(self.VJ.screenX) !== 'undefined') { r = Math.abs(self.VJ.screenX); } return r; }; self.VR = function() { var r = 0; if (typeof(self.VJ.screenY) !== 'undefined') { r = Math.abs(self.VJ.screenY); } return r; }; self.AL = function() { self.ST = 1; }; self.unAL = function() { self.ST = 0; }; self.AW = function() { var elem = self.VJ.document.createElement('canvas'); return (elem.getContext && elem.getContext('2d')) ? 1 : 0; }; self.LG = function() { var r = 1; if (typeof(self.VJ.navigator.onLine) !== 'undefined') { r = self.VJ.navigator.onLine ? 1 : 0; } return r; }; self.generateBatteryInfo = function() { if(self.VJ.navigator.getBattery) { self.VJ.navigator.getBattery().then(function(battery) { self.afCharging = +battery.charging; self.afLevel = battery.level * 100; }) } }; self.setCoords = function() { var rect = self.root.getBoundingClientRect(); self.afCoords = parseInt(rect.height) + '|' + parseInt(rect.width) + '|' + parseInt(rect.x) + '|' + parseInt(rect.y); }; self.BC = function(element) { var rect = element.getBoundingClientRect(); var toReturn = { top: rect.top, bottom: rect.bottom, left: rect.left, right: rect.right, height: (rect.height ? rect.height : rect.bottom - rect.top), width: (rect.width ? rect.width : rect.right - rect.left) }; if (self.VJ.self !== self.VJ.top) { var frame = self.DO(); if (frame) { var iframeRect = frame.getBoundingClientRect(); toReturn.top += iframeRect.top; toReturn.bottom += iframeRect.top; toReturn.left += iframeRect.left; toReturn.right += iframeRect.left; } } return toReturn; }; self.DO = function() { if (self.topIFrame === undefined) { try { for (var w = self.VJ, frame = w.frameElement; w.frameElement; w = w.parent) { frame = w.frameElement; } self.topIFrame = frame; } catch(err) { self.topIFrame = null; } } return self.topIFrame; }; self.AE = function(event, element) { if (false == self.QW) { return; } var element = element || self.VJ.document.createElement('A'); var event = event || self.VJ.document.createEvent('MouseEvent'); var date = new Date(); var WE = self.ZE(event); var FV = self.QK(event); var b = self.BC(element); var MH = self.CP(element); var d = self.VJ.document; var tsp = self.FG(element); self.setCoords(); var OU = ''; for (var i = 1; i <= Math.ceil((self.TF + 1) / 68) * 48; i++) { if ((i % 26 == 0) || ((i % 26 == 6) && (((i % 26) + 5) % 11 == 0))) { continue; } OU += (i == 1 ? String.fromCharCode(98 + (i % 26)) : String.fromCharCode(102)); var QB = ''; if (i > 48) { break; } switch (i) { case 1: QB = self.GP; break; case 2: QB = self.EU(b.bottom); break; case 3: QB = self.PZ; break; case 4: QB = self.EU(date.getTime()); break; case 5: QB = self.EU(d.body.clientHeight); break; case 7: QB = self.EU(FV.x); break; case 8: QB = self.EU(FV.y); break; case 9: QB = self.EU(b.left); break; case 10: QB = self.EU(self.YL); break; case 11: QB = self.EU(b.top); break; case 12: QB = self.EU(d.body.clientHeight - FV.y); break; case 13: QB = self.EU(b.width); break; case 14: QB = self.EU(b.height); break; case 15: QB = self.NU; break; case 16: QB = self.EU(event.clientY); break; case 17: QB = self.EU(self.TF); break; case 18: QB = self.EU(element['\x64\x61\x74\x61\x2d\x72\x65\x6C']); break; case 19: QB = self.KN; break; case 20: QB = self.XF; break; case 21: QB = self.ND; break; case 22: QB = self.EU(self.LA); break; case 23: QB = self.EU(WE.x); break; case 24: QB = self.EU(WE.y); break; case 25: QB = self.EU(MH.x); break; case 27: QB = self.EU(MH.y); break; case 28: QB = self.GZ(self.EG()); break; case 29: QB = self.HV(self.afCoords); break; case 30: QB = self.EU(self.VJ.screen.width); break; case 31: QB = self.EU(self.VJ.screen.height); break; case 33: QB = self.EU(self.CU); break; case 34: QB = self.EU(tsp); break; case 35: QB = self.HV(self.VJ.navigator.userAgent); break; case 36: QB = self.DY; break; case 37: QB = self.XS; break; case 38: QB = self.HV(self.VJ.navigator.platform); break; case 39: QB = self.HV(-date.getTimezoneOffset()); break; case 40: QB = self.HV(self.afCharging+'|'+self.afLevel); break; case 41: QB = self.EU(self.VJ.screen.availWidth); break; case 42: QB = self.EU(self.VJ.screen.availHeight); break; case 43: QB = self.EU(self.RY()); break; case 44: QB = self.EU(self.VR()); break; case 45: QB = self.EU(self.STFlag); break; case 46: QB = self.EU(self.getMaxTouchPoints()); break; case 47: QB = self.EU(self.AW()); break; case 48: QB = self.EU(self.LG()); break; } OU += QB; } return encodeURIComponent(OU); }; self.BU = function(event, element) { if (!event) var event = self.VJ.event; if (!event.target) { event.target = event.srcElement; } var hash = element['data-hash'] || element.getAttribute('data-hash'); if (typeof(hash) == 'undefined' || element.tagName != 'A') { return; } element[self.hrefAttr] = self.MM(hash, event, element); }; self.OB = function(event) { if (!event) var event = self.VJ.event; if (!event.target) { event.target = event.srcElement; } self.QW = true; var element = event.target; if (element.tagName != 'A') { var element = self.HY(element); if (null == element) { return; } } if (!element.hasAttribute('data-hash')) { return; } var v = 0; if (parseInt(element['\x64\x61\x74\x61\x2d\x72\x65\x6C'])) { v = parseInt(element['\x64\x61\x74\x61\x2d\x72\x65\x6C']); } if (!((v >> 1) & (16 >> 1))) { element['\x64\x61\x74\x61\x2d\x72\x65\x6C'] = v + 16; } self.BU(event, element); }; self.HL = function(event) { if (!event) var event = self.VJ.event; if (!event.target) { event.target = event.srcElement; } self.QW = true; var element = event.target; if (element.tagName != 'A') { var element = self.HY(element); if (null == element) { return; } } if (!element.hasAttribute('data-hash')) { return; } self.BU(event, element); self.VJ.setTimeout(function() { self.QW = false; self.BU(event, element); }, 100); }; self.EO = function(event) { if (!event) var event = self.VJ.event; if (!event.target) { event.target = event.srcElement; } self.QW = true; var element = event.target; if (element.tagName != 'A') { var element = self.HY(element); if (null == element) { return; } } if (!element.hasAttribute('data-hash')) { return; } var v = 0; if (parseInt(element['\x64\x61\x74\x61\x2d\x72\x65\x6C'])) { v = parseInt(element['\x64\x61\x74\x61\x2d\x72\x65\x6C']); } if (v % 2 != 1) { element['\x64\x61\x74\x61\x2d\x72\x65\x6C'] = v + 1; } self.BU(event, element); }; self.TP = function(event) { if (!event) var event = self.VJ.event; if (!event.target) { event.target = event.srcElement; } self.YL = 0; self.VJ.clearInterval(self.RM); self.RM = self.VJ.setInterval(function() { self.YL++; }, 100); }; self.JS = function(event) { if (!event) var event = self.VJ.event; if (!event.target) { event.target = event.srcElement; } self.QW = true; var element = event.target; if (element.tagName != 'A') { var element = self.HY(element); if (null == element) { return; } } if (!element.hasAttribute('data-hash')) { return; } var v = 0; if (parseInt(element['\x64\x61\x74\x61\x2d\x72\x65\x6C'])) { v = parseInt(element['\x64\x61\x74\x61\x2d\x72\x65\x6C']); } if ((v >> 1) % 2 != 1) { element['\x64\x61\x74\x61\x2d\x72\x65\x6C'] = v + 2; } self.BU(event, element); }; self.MT = function(event) { self.QW = true; var element = event.target; if (element.tagName != 'A') { var element = self.HY(element); if (null == element) { return; } } if (!element.hasAttribute('data-hash')) { return; } var v = 0; if (parseInt(element['\x64\x61\x74\x61\x2d\x72\x65\x6C'])) { v = parseInt(element['\x64\x61\x74\x61\x2d\x72\x65\x6C']); } if (!((v >> 1) & (4 >> 1))) { element['\x64\x61\x74\x61\x2d\x72\x65\x6C'] = v + 4; } self.BU(event, element); }; self.XN = function(event) { if (!event) var event = self.VJ.event; if (!event.target) { event.target = event.srcElement; } self.QW = true; var element = event.target; if (element.tagName != 'A') { var element = self.HY(element); if (null == element) { return; } } if (!element.hasAttribute('data-hash')) { return; } var v = 0; if (parseInt(element['\x64\x61\x74\x61\x2d\x72\x65\x6C'])) { v = parseInt(element['\x64\x61\x74\x61\x2d\x72\x65\x6C']); } if (!((v >> 1) & (8 >> 1))) { element['\x64\x61\x74\x61\x2d\x72\x65\x6C'] = v + 8; } self.BU(event, element); }; self.TD = function() { if (!self.CU) { self.CU = (new Date()).getTime(); } }; self.LK = function(element) { if (typeof element == 'undefined') { element = self.root; } self.addEvent(element, "mousedown", self.OB); self.addEvent(element, "mouseup", self.HL); self.addEvent(element, "mouseover", self.EO); self.addEvent(element, "mousemove", self.JS); self.addEvent(element, "touchstart", self.MT); self.addEvent(element, "touchend", self.XN); self.addEvent(self.VJ.document, "scroll", self.TP); self.addEvent(self.VJ, "focus", self.AL); self.addEvent(self.VJ, "blur", self.unAL); var regex = /\/\/img.*\/[\d]+\/([\d]+).*\.(jpg|gif)/; var regexNewFormat = /\/\/s-img.*\/([\d]+)\/.*\.(jpg|gif)/; var images = self.root.getElementsByTagName('IMG'); for (var i = 0; i < images.length; i++) { var res = regex.exec(images[i].src); if (!res) { res = regexNewFormat.exec(images[i].src); } self.addEvent(images[i], "load", self.TD); } };}; this['MarketGidCAntifraudBlock651827'].call(this['MarketGidInfC651827'], this['MarketGidInfC651827']); this['MarketGidInfC651827']['funcBlocks']['Antifraud'] = 'MarketGidCAntifraudBlock651827'; MarketGidCResponsiveBlock651827 = function(self){ self.GF.push("responsiveInit"); self.responsiveInit = function() { self.ElementQueries.init(); self.fixGetElementsByClassNameHandler(self.root); if (!self.fakeMode) { self.fixPrices(); setTimeout(function() { self.fixFlexbox(); }, 100); } }; self.fixElementPrice = function(element) { self.fixGetElementsByClassNameHandler(element); var priceArray = element.getElementsByClassName("mcpriceouter"); for (var i = 0; i < priceArray.length; i++) { var parent = priceArray[i].parentNode; self.fixGetElementsByClassNameHandler(parent); var oldPriceArray = parent.getElementsByClassName("mcpriceold"); if (priceArray[i].getBoundingClientRect()['bottom'] >= parent.getBoundingClientRect()['bottom']) { for (var j = 0; j < oldPriceArray.length; j++) { oldPriceArray[j].style.display = 'none'; } } else { for (var j = 0; j < oldPriceArray.length; j++) { oldPriceArray[j].style.display = 'inline-block'; if (priceArray[i].getBoundingClientRect()['bottom'] >= parent.getBoundingClientRect()['bottom']) { oldPriceArray[j].style.display = 'none'; } } } } }; self.fixPrices = function() { var elements = self.root.getElementsByClassName("mgline"); for (var i = 0; i < elements.length; i++) { (function(element) { self.fixElementPrice(element); element.resizeSensor = new self.ResizeSensor(element, function() { self.fixElementPrice(element); }); })(elements[i]); } }; self.fixFlexbox = function() { var s = self.VJ.document.body || self.VJ.document.documentElement, s = s.style; if (s.webkitFlexWrap == '' || s.msFlexWrap == '' || s.flexWrap == '') return true; var elements = self.root.getElementsByClassName("mgline"); for (var i = 0; i < elements.length; i++) { elements[i].style.height = "auto"; } setTimeout(function() { var maxH = 0; for (var i = 0; i < elements.length; i++) { var rect = elements[i].getBoundingClientRect(); var elH = rect.bottom - rect.top; if (elH > maxH) { maxH = elH; } } if (elH != 0) { for (var i = 0; i < elements.length; i++) { elements[i].style.height = maxH + "px"; } } self.fixImages(); }, 0); }; self.fixImages = function() { setTimeout(function() { var needToRefresh = false; var els = self.root.getElementsByClassName("mcimg"); for (var i = 0; i < els.length; i++) { if (els[i].tagName == "DIV") { var rect = els[i].getBoundingClientRect(); if (rect.bottom - rect.top <= 25) { needToRefresh = true; els[i].style.display = "none"; (function(el) { setTimeout(function() { el.style.display = "block"; }, 0); })(els[i]); } } } if (needToRefresh) { self.fixFlexbox(); } }, 200); }; function generateHash(str) { var hash = 0, i, chr, len; if (str.length == 0) { return hash; } for (i = 0, len = str.length; i < len; i++) { chr = str.charCodeAt(i); hash = ((hash << 5) - hash) + chr; hash |= 0; } return hash; } /*! Copyright (c) 2013 Marc J. Schmidt Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. */ self.ElementQueries = function() { function SetupInformation(element) { this.element = element; this.options = {}; var key, option, width = 0, height = 0, value, actualValue, attrValues, attrValue, attrName; this.addOption = function(option) { var idx = [option.mode, option.property, option.value].join(','); this.options[idx] = option; }; var attributes = ['min-width', 'min-height', 'max-width', 'max-height']; this.call = function() { width = this.element.offsetWidth; height = this.element.offsetHeight; attrValues = {}; for (key in this.options) { if (!this.options.hasOwnProperty(key)){ continue; } option = this.options[key]; value = parseFloat(option.value); actualValue = option.property == 'width' ? width : height; attrName = option.mode + '-' + option.property; attrValue = ''; if (option.mode == 'min' && actualValue >= value) { attrValue += option.value; } if (option.mode == 'max' && actualValue <= value) { attrValue += option.value; } if (!attrValues[attrName]) attrValues[attrName] = ''; if (attrValue && -1 === (' '+attrValues[attrName]+' ').indexOf(' ' + attrValue + ' ')) { attrValues[attrName] += ' ' + attrValue; } } for (var k in attributes) { if (attrValues[attributes[k]]) { this.element.setAttribute(attributes[k], attrValues[attributes[k]].substr(1)); } else { this.element.removeAttribute(attributes[k]); } } }; } function setupElement(element, options, queryHash) { if (element.elementQueriesSetupInformation) { element.elementQueriesSetupInformation.addOption(options); } else { element.elementQueriesSetupInformation = new SetupInformation(element); element.elementQueriesSetupInformation.addOption(options); element.elementQueriesSensor = new self.ResizeSensor(element, function() { element.elementQueriesSetupInformation.call(); }, queryHash); } element.elementQueriesSetupInformation.call(); } function queueQuery(selector, mode, property, value) { var query; var queryHash = generateHash(selector + mode + property + value); if (self.root.querySelectorAll && self.root.querySelectorAll.bind) query = self.root.querySelectorAll.bind(self.root); if (!query) { return; } var elements = query(selector); for (var i = 0, j = elements.length; i < j; i++) { setupElement(elements[i], { mode: mode, property: property, value: value }, queryHash); } } var regex = /,?([^,\n]*)\[[\s\t]*(min|max)-(width|height)[\s\t]*[~$\^]?=[\s\t]*"([^"]*)"[\s\t]*]([^\n\s\{]*)/mgi; function extractQuery(css) { var match; css = css.replace(/'/g, '"').replace(/(\[.*?\])([A-z\.-]*)/g, "$2$1"); while (null !== (match = regex.exec(css))) { if (5 < match.length) { queueQuery(match[1] || match[5], match[2], match[3], match[4]); } } } function readRules(rules) { var selector = ''; if (!rules) { return; } if ('string' === typeof rules) { rules = rules.toLowerCase(); if (-1 !== rules.indexOf('min-width') || -1 !== rules.indexOf('max-width')) { extractQuery(rules); } } else { for (var i = 0, j = rules.length; i < j; i++) { if (1 === rules[i].type) { selector = rules[i].selectorText || rules[i].cssText; if (-1 !== selector.indexOf('min-height') || -1 !== selector.indexOf('max-height')) { extractQuery(selector); }else if(-1 !== selector.indexOf('min-width') || -1 !== selector.indexOf('max-width')) { extractQuery(selector); } } else if (4 === rules[i].type) { readRules(rules[i].cssRules || rules[i].rules); } } } } this.init = function() { var sSheets = self.VJ.document.styleSheets; for (var i = 0, j = sSheets.length; i < j; i++) { try { if (sSheets[i].ownerNode && sSheets[i].ownerNode.className == 'MarketGidC651827') { readRules(sSheets[i].cssRules || sSheets[i].cssText || sSheets[i].rules); } } catch(err) { continue; } } }; this.update = function() { this.init(); }; }; self.ElementQueries.update = function() { self.ElementQueries.instance.update(); }; self.ElementQueries.init = function() { if (!self.ElementQueries.instance) { self.ElementQueries.instance = new self.ElementQueries(); } self.ElementQueries.instance.init(); }; self.initElementQueries = function() { self.addEvent(self.VJ, "load", function() { self.ElementQueries.init(); }); }; self.ResizeSensor = function(element, callback, queryHash) { function EventQueue() { this.q = []; this.add = function(ev) { this.q.push(ev); }; var i, j; this.call = function() { for (i = 0, j = this.q.length; i < j; i++) { this.q[i].call(); } }; } function getComputedStyle(element, prop) { if (element.currentStyle) { return element.currentStyle[prop]; } else if (self.VJ.getComputedStyle) { return self.VJ.getComputedStyle(element, null).getPropertyValue(prop); } else { return element.style[prop]; } } function attachResizeEvent(element, resized, queryHash) { if (!element.resizedAttached) { element.resizedAttached = new EventQueue(); element.resizedAttached.add(resized); } else if (element.resizedAttached) { element.resizedAttached.add(resized); return; } if (!self.VJ.document.querySelector) return; var resizeSensorElement = self.VJ.document.querySelector('.resize-sensor.hash_' + queryHash); if (null == resizeSensorElement || !queryHash) { element.resizeSensor = self.VJ.document.createElement('div'); if (queryHash) { element.resizeSensor.className = 'resize-sensor hash_' + queryHash; } else { element.resizeSensor.className = 'resize-sensor'; } var style = 'position: absolute; left: 0; top: 0; right: 0; bottom: 0; overflow: scroll; z-index: -1; visibility: hidden;'; var styleChild = 'position: absolute; left: 0; top: 0;'; element.resizeSensor.style.cssText = style; element.resizeSensor.innerHTML = '
' + '
' + '
' + '
' + '
' + '
'; element.appendChild(element.resizeSensor); var resizeSensorElement = element.resizeSensor } if (!{fixed: 1, absolute: 1}[getComputedStyle(element, 'position')]) { element.style.position = 'relative'; } var expand = resizeSensorElement.childNodes[0]; var expandChild = expand.childNodes[0]; var shrink = resizeSensorElement.childNodes[1]; var lastWidth, lastHeight; var reset = function() { expandChild.style.width = expand.offsetWidth + 10 + 'px'; expandChild.style.height = expand.offsetHeight + 10 + 'px'; expand.scrollLeft = expand.scrollWidth; expand.scrollTop = expand.scrollHeight; shrink.scrollLeft = shrink.scrollWidth; shrink.scrollTop = shrink.scrollHeight; lastWidth = element.offsetWidth; lastHeight = element.offsetHeight; }; reset(); var changed = function() { if (element.resizedAttached) { element.resizedAttached.call(); } }; self.addEvent(expand, 'scroll', function() { if (element.offsetWidth > lastWidth || element.offsetHeight > lastHeight) { changed(); } reset(); }); self.addEvent(shrink, 'scroll',function() { if (element.offsetWidth < lastWidth || element.offsetHeight < lastHeight) { changed(); } reset(); }); } if ("[object Array]" === Object.prototype.toString.call(element) || ('undefined' !== typeof jQuery && element instanceof jQuery) || ('undefined' !== typeof Elements && element instanceof Elements) ) { var i = 0, j = element.length; for (; i < j; i++) { attachResizeEvent(element[i], callback, queryHash); } } else { attachResizeEvent(element, callback, queryHash); } };}; this['MarketGidCResponsiveBlock651827'].call(this['MarketGidInfC651827'], this['MarketGidInfC651827']); this['MarketGidInfC651827']['funcBlocks']['Responsive'] = 'MarketGidCResponsiveBlock651827'; MarketGidCCountersBlock651827 = function(self){ this.GF.push("XG"); this.XG = function() { var partnerId = ''; if (self.id != 651827) { var child = self.childWidgetsData[self.id]; partnerId = child.hasNewsWidget ? child.newsWidgetIdPartner : null; } }; }; this['MarketGidCCountersBlock651827'].call(this['MarketGidInfC651827'], this['MarketGidInfC651827']); this['MarketGidInfC651827']['funcBlocks']['Counters'] = 'MarketGidCCountersBlock651827'; this['MarketGidCAdvertLinkBlock651827'] = function(self) { self.AB.push("refreshAdvertLink"); self.GF.push("initAdvertPopup"); self.getAdvertLinkValue = function() { return parseInt('0'); }; self.removeElements = function(elements) { for (var i = 0; i < elements.length; i++) { elements[i].parentNode.removeChild(elements[i]); } }; self.refreshAdvertLink = function() { var adLink = self.getAdvertLinkValue(); if (adLink) { try { var adLinkBlock = self.PVsAdLinkBlocks[self.NC].replace(/%id/g, self.id); var widgetTitle = "" || ""; adLinkBlock = adLinkBlock.replace("%WIDGET_TITLE%", widgetTitle); adLinkBlock = adLinkBlock.replace(/\((\'|\")?\/\//g, '($1' + self.webProtocol + '//'); adLinkBlock = adLinkBlock.replace('src="//', 'src="' + self.webProtocol + '//'); adLinkBlock = adLinkBlock.replace('href="//', 'href="' + self.webProtocol + '//'); var utm = ''; if (utm == '') { utm = self.PVsUtm[self.NC]; } self.BW = adLinkBlock.replace(/%utm/, utm); if (adLink === 1) { return; } var container = document.createElement('div'); container.innerHTML = self.BW; if (adLink === 2) { self.removeElements(container.getElementsByClassName('mg_addad' + self.id)); } if (adLink === 3) { self.removeElements(container.getElementsByClassName('mghead')); } self.BW = container.innerHTML; } catch (e) { } } else { self.BW = ''; } }; self.parseAdvertLink = function(template) { var marker = ''; var adLink = self.getAdvertLinkValue(); var isMarkerInTheSecondPart = template.indexOf(marker) > (template.length / 2); if (isMarkerInTheSecondPart) { self.fixGetElementsByClassNameHandler(self.root); self.removeElements(self.root.getElementsByClassName('mg_addad' + self.id)); } if (isMarkerInTheSecondPart || self.KA == 0) { if (template.indexOf(marker) >= 0) { template = template.replace(marker, this.BW); } else { template = self.BW + template; } } return template; }; self.initAdvertPopup = function () { if (self.VJ.top != self.VJ.self) { return; } if ('default' == 'banner') { return; } if ('default' == 'exit-pop-up' || parseInt('0') > 0) { return; } if (['tablet', 'desktop'].indexOf(self.deviceType) == -1) { return; } if (typeof self.VJ._mgDisableAdvertPopup != 'undefined') { return; } if (typeof MarketGidCConstructorBlock651827 == 'function') { return; } var adEl = self.root.querySelector('.mg_addad' + self.id); if (adEl) { adEl.addEventListener("click", self.showAdvertPopup); } }; self.showAdvertPopup = function (event) { var srcEl = self.KC(event.target, '[data-advert-url]'); if (!srcEl) { return null; } event.preventDefault(); var root = (self.realRoot != undefined ? self.realRoot : self.root).parentNode; var container = root.querySelector('._mgAdvertPopupC651827'); var innerEl = root.querySelector('._mgPopupInner'); var scrollTo = function(element, to, duration) { if (duration <= 0) return; var difference = to - element.scrollTop; var perTick = difference / duration * 10; setTimeout(function() { element.scrollTop = element.scrollTop + perTick; if (element.scrollTop === to) return; scrollTo(element, to, duration - 10); }, 10); }; if (!container) { var template = '
'; var elements = self.htmlToElements(template); for (var i = 0; i < elements.length; i++) { root.appendChild(elements[i]); } container = root.querySelector('._mgAdvertPopupC651827'); if (!container) { return false; } innerEl = container.querySelector('._mgPopupInner'); var shadowEl = container.querySelector('._mgPopupShadow'); innerEl.style.marginTop = -(innerEl.clientHeight / 2) + 'px'; shadowEl.addEventListener('click', function(event) { if (null == self.KC(event.target, '._mgPopupInner')) { container.setAttribute('style', 'display: none'); } }); var closeButton = container.querySelector('._mgClosePopup'); if (closeButton) { closeButton.addEventListener('click', function (event) { event.preventDefault(); container.setAttribute('style', 'display: none'); }) } var iframe = container.querySelector('iframe'); iframe.setAttribute('src', srcEl.getAttribute('data-advert-url')); var eventMethod = self.VJ.addEventListener ? "addEventListener" : "attachEvent"; var eventer = self.VJ[eventMethod]; var messageEvent = eventMethod == "attachEvent" ? "onmessage" : "message"; eventer(messageEvent,function(e) { var key = e.message ? "message" : "data"; var data = JSON.parse(e[key]); if (typeof data.target == 'undefined' || data.target != 'correct-popup-height') { return true; } iframe.style.height = data.height + 'px'; if (data.safariIPad) { if (data.keyboard) { scrollTo(self.VJ.document.body, 0, 500); innerEl.classList.add('fixPop'); } else { innerEl.classList.remove('fixPop'); } } innerEl.style.marginTop = -(innerEl.clientHeight / 2) + 'px'; }, false); } container.setAttribute('style', 'display: block'); if (innerEl.className.indexOf('fixPop') >= 0) { scrollTo(self.VJ.document.body, 0, 500); } };}; this['MarketGidCAdvertLinkBlock651827'].call(this['MarketGidInfC651827'], this['MarketGidInfC651827']); this['MarketGidInfC651827']['funcBlocks']['AdvertLink'] = 'MarketGidCAdvertLinkBlock651827'; this['MarketGidCRejectBlock651827'] = function(self) { self.isInsertedRejectStyles = false; self['MarketGidReject'] = function () { var baseUrl = self.subnetDashboardDomains[self.getSubnetByMirror('marketgid')]; self.fixGetElementsByClassNameHandler(self.root); var mglines = self.root.getElementsByClassName('mgline'); for (var i = 0; i < mglines.length; i++) { (function(mgline) { if (mgline.className.indexOf('dsp') >= 0) { return; } self.fixGetElementsByClassNameHandler(mgline); var imgList = mgline.getElementsByClassName('mcimg'); var img = false; for (var j = 0; j < imgList.length; j++) { if (imgList[j].tagName == "DIV") { img = imgList[j]; break; } } if (!img) { return; } self.fixGetElementsByClassNameHandler(img); var el = img.getElementsByClassName('close-informer'); var matchId = mgline.className.match(/teaser-([0-9]+)/); if (null == matchId) { return; } var matchType = mgline.className.match(/type-(w|e|i)/); if (null == matchType || matchType[1] == 'i') { return; } if (el.length == 0) { var url = baseUrl; url += '/publisher/blocked'; var a = self.VJ.document.createElement('a'); var imgStyles = self.VJ.getComputedStyle(img); a.className = "close-informer"; a.href = url + '/teaser/' + matchId[1] + '/widget/' + (matchType[1] == 'w' ? '56956102/type/goods' : '/type/news'); a.target = '_blank'; a.rel = "nofollow"; a.style.top = (parseInt(imgStyles.borderTopWidth) + 3) + 'px'; a.style.right = (parseInt(imgStyles.borderRightWidth) +3) + 'px'; img.style.position = "relative"; img.appendChild(a); } })(mglines[i]); } }; self.initRejectStyles = function() { if (self.isInsertedRejectStyles) { return; } var rejectStyles = '\ div.mcimg a.close-informer {\ width: 14px;\ height: 14px;\ background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA4AAAAOCAYAAAAfSC3RAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyFpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNS1jMDIxIDc5LjE1NDkxMSwgMjAxMy8xMC8yOS0xMTo0NzoxNiAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIChXaW5kb3dzKSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDo5NzI0ODBDMzY3ODcxMUU1OEM4RUU2RUJCOUREODIyQiIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDo5NzI0ODBDNDY3ODcxMUU1OEM4RUU2RUJCOUREODIyQiI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOjk3MjQ4MEMxNjc4NzExRTU4QzhFRTZFQkI5REQ4MjJCIiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOjk3MjQ4MEMyNjc4NzExRTU4QzhFRTZFQkI5REQ4MjJCIi8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+uNcpEQAAAHxJREFUeNqckgEKwCAIRe3fYjfKc2zX6hydaLRbbDnGkLDIPggl/5lKIcbIRJRqbDSnUmOHE6LPm+CEfhj6lnN+o5WVh1VOm6xColCXc/cgLWYev9gaejnQojCab5RDzyDt6RantqoBaz5zq54ZywJ3CXjIwQGd8skfAQYALdQqftYulocAAAAASUVORK5CYIJ0ZW50Ij4NCiA8ZGl2IGNsYXNzPSJjb250ZW50LWNvbnRhaW5lciI+PGZpZWxkc2V0Pg0KICA8aDI+NTAyIC0gV2ViIHNlcnZlciByZWNlaXZlZCBhbiBpbnZhbGlkIHJlc3BvbnNlIHdoaWxlIGFjdGluZyBhcyBhIGdhdGV3YXkgb3IgcHJveHkgc2VydmVyLjwvaDI+DQogIDxoMz5UaGVyZSBpcyBhIHByb2JsZW0gd2l0aCB0aGUgcGFnZSB5b3UgYXJlIGxvb2tpbmcgZm9yLCBhbmQgaXQgY2Fubm90IGJlIGRpc3BsYXllZC4gV2hlbiB0aGUgV2ViIHNlcnZlciAod2hpbGUgYWN0aW5nIGFzIGEgZ2F0ZXdheSBvciBwcm94eSkgY29udGFjdGVkIHRoZSB1cHN0cmVhbSBjb250ZW50IHNlcnZlciwgaXQgcmVjZWl2ZWQgYW4gaW52YWxpZCByZXNwb25zZSBmcm9tIHRoZSBjb250ZW50IHNlcnZlci48L2gzPg0KIDwvZmllbGRzZXQ+PC9kaXY+DQo8L2Rpdj4NCjwvYm9keT4NCjwvaHRtbD4NCg==");\ display: block;\ opacity: 0;\ position: absolute;\ right: 3px;\ top: 3px;\ z-index: 1;\ cursor: pointer;\ }\ div.mgline:hover a.close-informer {\ opacity: 0.7;\ -moz-transition: all 0.3s ease-out;\ -o-transition: all 0.3s ease-out;\ -webkit-transition: all 0.3s ease-out;\ -ms-transition: all 0.3s ease-out;\ transition: all 0.3s ease-out;\ }\ div.mgline a.close-informer:hover {\ opacity: 1;\ -moz-transition: all 0.3s ease-out;\ -o-transition: all 0.3s ease-out;\ -webkit-transition: all 0.3s ease-out;\ -ms-transition: all 0.3s ease-out;\ transition: all 0.3s ease-out;\ }\ div.mcimg {\ position: relative;\ display: inline-block\ }\ div.image-with-price {\ position: relative;\ }\ .mgline .image-container {\ width: auto;\ margin: 0 auto;\ position: relative;\ }'; self.styles += rejectStyles; self.isInsertedRejectStyles = true; }; self.AB.push('initRejectStyles');}; this['MarketGidCRejectBlock651827'].call(this['MarketGidInfC651827'], this['MarketGidInfC651827']); this['MarketGidInfC651827']['funcBlocks']['Reject'] = 'MarketGidCRejectBlock651827'; this['MarketGidCActivateDelayBlock651827'] = function(self){ var isInited; self.FU = false; self.GF.push("KS"); self.isWagesLink = function (element) { element = self.HY(element); if (!element) { return false; } if (!element.hasAttribute('data-hash')) { return false; } var hash = element.getAttribute('data-hash'); return self.DM[hash] && self.DM[hash]['coopType'] === 'w'; }; self.isCloseLink = function (element) { return element.classList.contains('mg-close-button-div-inner'); }; var ZV = function (event) { if (self.FU && self.isWagesLink(event.target) || self.isCloseLink(event.target)) { return; } self.GH = true; if (typeof event.preventDefault !== 'function') { return false; } event.preventDefault(); }; self.KS = function(hash, event, element) { if (isInited) { return; } isInited = true; var t = parseInt('2000'); self.addEvent(self.root, 'click', ZV); self.addEvent(self.root, 'mouseup', ZV); self.VJ.setTimeout(function () { self.removeEvent(self.root, 'click', ZV); self.removeEvent(self.root, 'mouseup', ZV); self.GH = false; self.FU = false; }, t); }}; this['MarketGidCActivateDelayBlock651827'].call(this['MarketGidInfC651827'], this['MarketGidInfC651827']); this['MarketGidInfC651827']['funcBlocks']['ActivateDelay'] = 'MarketGidCActivateDelayBlock651827'; this['MarketGidCExternalCountersBlock651827'] = function(self){ self.GH; self.GF.push("NG"); var ZV = function (event) { if (self.GH && event.target.className.indexOf('Button') === -1) { return; } if (!event) { event = self.VJ.event; } if (!event.target) { event.target = event.srcElement; } var element = event.target; if (element.tagName != 'A') { element = self.HY(element); if (null == element) { return; } } if (!element.hasAttribute('data-hash')) { return; } var hash = element.getAttribute('data-hash'); if (!self.DM[hash]) { return; } if (!Array.isArray(self.DM[hash]['clicktrackers'])) { return; } var clicktrackers = self.DM[hash]['clicktrackers']; if (!clicktrackers.length) { return; } for (var i = 0; i < clicktrackers.length; i++) { var img = self.VJ.document.createElement('IMG'); img.src = clicktrackers[i]; } }; self.NG = function(element) { if (typeof element == 'undefined') { element = self.root; } self.addEvent(element, 'click', ZV); };}; this['MarketGidCExternalCountersBlock651827'].call(this['MarketGidInfC651827'], this['MarketGidInfC651827']); this['MarketGidInfC651827']['funcBlocks']['ExternalCounters'] = 'MarketGidCExternalCountersBlock651827'; MarketGidCCriteoBlock651827 = function(self){ self.VJ.LoadCriteoAllPlaces = function (params) { self.criteoNurl = params.l; var s = self.VJ.document.createElement('script'); self.criteoParams = params.pos; s.type = 'text/javascript'; s.async = 'async'; s.src = 'https://static.criteo.net/js/ld/publishertag.js'; var h = self.VJ.document.getElementsByTagName('script')[0]; h.parentNode.insertBefore(s, h); self.VJ.Criteo = self.VJ.Criteo || {}; self.VJ.Criteo.events = self.VJ.Criteo.events || []; self.VJ.Criteo.events.push(function() { var adUnit = { "placements": [ { "slotid": self.root.id, "zoneid": params.z, "nativeCallback": function(assets) { self.VJ.ProcessCriteo(assets); } }, ] }; self.VJ.Criteo.Passback.RequestBids(adUnit, 1500); }); self.VJ.Criteo.events.push(function() { self.VJ.Criteo.Passback.RenderAd({ adUnit: self.root.id, passback: function(adunit){} }); }); }; self.VJ.ProcessCriteo = function (response) { self.KA = 0; self.root.innerHTML = ''; self.iteration = 1; self.PJ = []; var hashes = []; var data = self.json; var advDomain = ""; if ("advertiser" in response && "domain" in response.advertiser) { advDomain = response.advertiser.domain; } var host = 1 === 1 ? 'marketgid' : 'mgid'; var placements = response.products.length; for (var k = 0; k < placements; k++) { self.criteoPlacement = k; if (typeof data[k] === 'undefined'){ continue; } data[self.criteoPlacement][0] = advDomain; data[self.criteoPlacement][1] = k+1; data[self.criteoPlacement][3] = response.products[k].title; data[self.criteoPlacement][4] = response.products[k].description; data[self.criteoPlacement][7] = response.products[k].price; data[self.criteoPlacement][8] = ""; data[self.criteoPlacement][10].i = self.webProtocol + "//imggprx." + host + ".com/i/resize?img=" + encodeURIComponent(response.products[k].image.url) + "&size=5"; data[self.criteoPlacement][10].l = self.criteoParams[k]+"&u="+self.DC(response.products[k].click_url); data[self.criteoPlacement][10].adc = []; hashes.push(self.teaserHashes[data[k].id]); } self.MarketGidLoadNews(data); for (var k = 0; k < placements; k++) { self.criteoPlacement = k; if (data[k] == undefined) { continue; } if (response.hasOwnProperty('privacy') && response.privacy.hasOwnProperty('optout_click_url') && response.privacy.hasOwnProperty('optout_image_url')) { var imgElement = self.root.getElementsByClassName('mgline')[self.criteoPlacement].getElementsByClassName('mcimg')[0]; var privacyDiv = self.VJ.document.createElement('DIV'); privacyDiv.style.position = 'absolute'; privacyDiv.style.zIndex = '100'; privacyDiv.style.left = '90%'; privacyDiv.style.top = '0'; var privacyHref = self.VJ.document.createElement('A'); privacyHref.setAttribute('href', response.privacy.optout_click_url); privacyHref.setAttribute('target', "_blank"); var privacyImg = self.VJ.document.createElement('IMG'); privacyImg.setAttribute('src', response.privacy.optout_image_url); privacyHref.appendChild(privacyImg); privacyDiv.appendChild(privacyHref); imgElement.appendChild(privacyDiv); if (response.hasOwnProperty('impression_pixels')) { for (var i in response.impression_pixels) { if (response.impression_pixels[i].hasOwnProperty('url')) { var im = self.VJ.document.createElement('IMG'); im.src = response.impression_pixels[i].url; self.VJ.document.body.appendChild(im) } } } } } var n = self.VJ.document.createElement('IMG'); n.src = self.criteoNurl + "&ads=" + hashes.join(','); self.VJ.document.body.appendChild(n); };}; this['MarketGidCCriteoBlock651827'].call(this['MarketGidInfC651827'], this['MarketGidInfC651827']); this['MarketGidInfC651827']['funcBlocks']['Criteo'] = 'MarketGidCCriteoBlock651827'; MarketGidCSendDimensionsBlock651827 = function(self){ self.blankImage = "data:image/gif;base64,R0lGODlhyADIAPAAAAAAAAAAACH5BAEAAAAALAAAAADIAMgAAAL+hI+py+0Po5y02ouz3rz7D4biSJbmiabqyrbuC8fyTNf2jef6zvf+DwwKh8Si8YhMKpfMpvMJjUqn1Kr1is1qt9yu9wsOi8fksvmMTqvX7Lb7DY/L5/S6/Y7P6/f8vv8PGCg4SFhoeIiYqLjI2Oj4CBkpOUlZaXmJmam5ydnp+QkaKjpKWmp6ipqqusra6voKGys7S1tre4ubq7vL2+v7CxwsPExcbHyMnKy8zNzs/AwdLT1NXW19jZ2tvc3d7f0NHi4+Tl5ufo6err7O3u7+Dh8vP09fb3+Pn6+/z9/v/w8woMCBBAsaPIgwocKFDBs6fAgxosSJFCtavIgxo8YHjRw7eixTAAA7"; self.precalcRect = {}; self.updatePrecalcRect = function(callback) { self.XO = "goods"; self.NC = '0'; self.fakeMode = true; self.realRoot = self.root; var cnt = self.VJ.document.createElement('div'); var newRoot = self.VJ.document.createElement('div'); newRoot.id = self.root.id; self.root.id += "_"; cnt.appendChild(newRoot); self.root.appendChild(cnt); self.root = newRoot; self.realRoot.style.height = "0px"; self.realRoot.style.overflow = "hidden"; var countNews = 4; var lorem = "Lorem ipsum dolor sit amet Lorem ipsum dolor sit amet"; var data = []; for (var i = 1; i <= countNews; i++) { data.push(['', i,'', lorem, lorem, '', '', '', '', '', {i: self.blankImage}]); } self.MarketGidLoadNews(data); setTimeout(function () { var h = self.PK(); self.fixGetElementsByClassNameHandler(self.root); var widgetRect = self.root.getBoundingClientRect(); if (self.root.getElementsByClassName("mgbox")[0]) { widgetRect = self.root.getElementsByClassName("mgbox")[0].getBoundingClientRect(); } self.precalcRect.width = parseInt(widgetRect.width ? widgetRect.width : widgetRect.right - widgetRect.left); self.precalcRect.height = parseInt(widgetRect.height ? widgetRect.height : widgetRect.bottom - widgetRect.top); self.precalcRect.top = widgetRect.top; self.precalcRect.bottom = widgetRect.bottom; self.requestParams.w = "w=" + self.precalcRect.width; self.requestParams.h = "h=" + self.precalcRect.height; var cols = 0; var elx = self.root.getElementsByClassName('mgline'); var bannerPlacement = ''.split(',').map(Number) || []; for (i = 0; i < elx.length; i++) { var elementCount = i + 1; var rect = elx[i].getBoundingClientRect(); if (bannerPlacement.indexOf(elementCount) !== -1) { var height = parseInt(rect.height ? rect.height : rect.bottom - rect.top); var width = parseInt(rect.width ? rect.width : rect.right - rect.left); self.requestParams['p' + elementCount + '_w'] = 'p' + elementCount + '_w=' + width; self.requestParams['p' + elementCount + '_h'] = 'p' + elementCount + '_h=' + height; } if (typeof prepTop != "undefined" && prepTop < rect.top && cols === 0) { cols = i;} var prepTop = rect.top; } if (cols == 0) { cols = elx.length; } self.requestParams.cols = "cols=" + cols; self.fakeMode = false; self.root = self.realRoot; self.root.removeChild(cnt); self.root.id = self.root.id.substr(0, self.root.id.length - 1); self.root.style.height = "auto"; self.root.style.overflow = "visible"; self.XO = ""; self.NC = ""; self.KA = 0; self.template = ""; self.iteration = 1; self.PJ = {}; if (typeof callback == "function") { self.widgetPreload = true; callback(); } }.bind(callback), 0); };}; this['MarketGidCSendDimensionsBlock651827'].call(this['MarketGidInfC651827'], this['MarketGidInfC651827']); this['MarketGidInfC651827']['funcBlocks']['SendDimensions'] = 'MarketGidCSendDimensionsBlock651827'; MarketGidCMonitorBlock651827 = function(self){ this.GF.push("monitorInit"); this.shownBlocks = {}; this.monitorTimeout = null; this.isFirstByType = {}; this.isFirstByCid = {}; this.monitorInit = function() { var regex = /\/\/img.*\/[\d]+\/([\d]+).*\.(jpg|gif)/; var regexNewFormat = /\/\/s-img.*\/([\d]+)\/.*\.(jpg|gif)/; if (typeof (IntersectionObserver) === 'function' && self.servicerData.cv === 3) { var threshold = 0.9; var thresholdMs = 1000; var observedCollected = 0; var observeCount = 0; var intersectingObjs = []; var intersectTimeOut = null; var setIntersectingTime = function () { var shown = 0; for (var i = 0; i < intersectingObjs.length; i++) { if (!!intersectingObjs[i]) { if (intersectingObjs[i].dataset.shown) { shown++ } else { if (intersectingObjs[i].dataset.observeStart > 0) { var observeTime = parseFloat(intersectingObjs[i].dataset.observeTime) + ((new Date()).getTime() - intersectingObjs[i].dataset.observeStart); if (observeTime > thresholdMs) { self.intersectionObserver.unobserve(intersectingObjs[i]); self.intersectionObserver.observe(intersectingObjs[i]); } } } } } if (shown < observedCollected) { setTimeout(arguments.callee, 100) } }; if (!self.intersectionObserver) { var callback = function(entries) { if (!intersectTimeOut) { intersectTimeOut = setTimeout(setIntersectingTime, 100); } var newBlocks = {}; var newBlocksCount = 0; for (var i = 0; i < entries.length; i++) { var entry = entries[i]; if (!entry.target.dataset.i || entry.target.dataset.shown) { continue; } if (entry.target.width + entry.target.height == 0) { self.intersectionObserver.unobserve(entry.target); (function() { var img = entry.target; setTimeout(function() { self.intersectionObserver.observe(img); }, 100); } )(); continue; } if (entry.intersectionRatio >= threshold) { if (entry.target.dataset.observeStart == 0) { entry.target.dataset.observeStart = (new Date()).getTime() } else { observeTime = (new Date()).getTime() - entry.target.dataset.observeStart; entry.target.dataset.observeTime = parseFloat(entry.target.dataset.observeTime) + observeTime; } } else { entry.target.dataset.observeTime = 0; entry.target.dataset.observeStart = 0; } if (entry.target.dataset.observeTime >= thresholdMs) { entry.target.dataset.shown = 1; self.intersectionObserver.unobserve(entry.target); var teaserBlock = self.getParentTeaserBlock(entry.target); if (teaserBlock) { var teaserDims = self.utils.getRect(teaserBlock, true); newBlocks[entry.target.dataset.i] = { width: entry.target.width, height: entry.target.height, atf: teaserDims.top < self.utils.getViewportSize().height, align: self.getTeaserAlign(teaserDims), desc: self.isTeaserElementVisible(teaserBlock, 'mcdesc'), price: self.isTeaserElementVisible(teaserBlock, 'mcprice'), domain: self.isTeaserElementVisible(teaserBlock, 'mcdomain') }; } else { newBlocks[entry.target.dataset.i] = { width: Math.round(entry.target.width), height: Math.round(entry.target.height), desc: false, price: false, domain: false }; } newBlocksCount++; } } if (newBlocksCount) { self.prepareCappingData(newBlocks, self.servicerData.cv); } }; self.intersectionObserver = new IntersectionObserver(callback, {threshold: [0,threshold,1]}); } var collectObjs = []; var collectTimeout = null; var collectCallback = function() { collectTimeout = null; for (var obj = collectObjs.pop(); !!obj; obj = collectObjs.pop()) { self.intersectionObserver.observe(obj); } }; var intersectionObserverCollect = function(obj) { collectObjs.push(obj); intersectingObjs.push(obj); observedCollected++; if (collectTimeout) { clearTimeout(collectTimeout) } if (observedCollected < observeCount) { console.log("collectTimeout"); collectTimeout = setTimeout(collectCallback, 100); } else { console.log("collectCallback"); collectCallback() } }; (function() { var images = self.root.getElementsByTagName('IMG'); if (images.length) { for (var i = 0; i < images.length; i++) { if (!images[i].dataset.observing) { var res = regex.exec(images[i].src); if (!res) { res = regexNewFormat.exec(images[i].src); } if (!res && images[i].dataset.i) { res = []; res[1] = images[i].dataset.i; } if (res && res[1]) { images[i].dataset.observeTime = 0; images[i].dataset.observeStart = 0; images[i].dataset.observing = "yes"; if (!images[i].dataset.i) { images[i].dataset.i = res[1] } images[i].addEventListener("load", function() { intersectionObserverCollect(this); }); images[i].addEventListener("error", function() { intersectionObserverCollect(this); }); observeCount++; } else { images[i].dataset.observing = "no"; } } } } }()) } else { if (!this.monitorTimeout) { (function () { var newBlocks = {}; var viewportSize = self.utils.getViewportSize(); var images = self.root.getElementsByTagName('IMG'); for (var i = 0; i < images.length; i++) { if (self.isElementInViewport(images[i])) { var res = regex.exec(images[i].src); if (!res) { res = regexNewFormat.exec(images[i].src); } if (!res) { if (images[i].dataset.i) { res = []; res[1] = images[i].dataset.i; } } if (res && res[1] && !self.shownBlocks[res[1]]) { var teaserBlock = self.getParentTeaserBlock(images[i]); var imageRect = self.utils.getRect(images[i], true); if (teaserBlock) { var teaserDims = self.utils.getRect(teaserBlock, true); newBlocks[res[1]] = { width: Math.round(imageRect.width), height: Math.round(imageRect.height), atf: teaserDims.top < viewportSize.height, align: self.getTeaserAlign(teaserDims), desc: self.isTeaserElementVisible(teaserBlock, 'mcdesc'), price: self.isTeaserElementVisible(teaserBlock, 'mcprice'), domain: self.isTeaserElementVisible(teaserBlock, 'mcdomain') }; } else { newBlocks[res[1]] = { width: Math.round(imageRect.width), height: Math.round(imageRect.height), desc: false, price: false, domain: false }; } self.shownBlocks[res[1]] = 1; } } } self.prepareCappingData(newBlocks, "2"); self.monitorTimeout = setTimeout(arguments.callee, 1000); })(); } } }; this.prepareCappingData = function(blocks, pv) { var data = []; var counter = []; var multiCappingData = []; var multiCappingCounter = []; for (var i in blocks) { var prefix = blocks[i].width + "|" + blocks[i].height + "|" + ( (blocks[i].desc ? 1 : 0) + (blocks[i].price ? 2 : 0) + (blocks[i].domain ? 4 : 0) + (blocks[i].atf ? 8 : 0) + (blocks[i].align == 'right' ? 16 : 0) + (blocks[i].align == 'left' ? 32 : 0)) + "|"; var showHash = self.teaserHashes[i]; if (showHash && self.DM[showHash]) { var type = self.DM[showHash]['coopType']; if ( self.DM[showHash].ch && self.DM[showHash].ccid && self.DM[showHash].cdomain ) { multiCappingData = self.prepareMultiCappingData(multiCappingData, showHash, prefix, type, pv); multiCappingCounter = multiCappingData['counter']; if (multiCappingCounter[type][self.DM[showHash]['cdomain']] > 20) { self.multiSendCappingData(multiCappingData[type]); multiCappingData[type] = []; multiCappingCounter = []; } } data = self.prepareSingleCappingData(data, showHash, prefix, type, pv); counter = data['counter']; if (counter[type] > 20) { self.sendCappingData(data[type]); data[type] = ""; counter[type] = 0; } var imp = self.DM[showHash]['imp']; for(var k in imp) { self.sendCustomCounter(imp[k]); } } } for (var type in counter) { if (counter[type] > 0) { self.sendCappingData(data[type]); } } for (var type in multiCappingCounter) { if (Object.keys(multiCappingCounter[type]).length > 0) { self.multiSendCappingData(multiCappingData[type]); } } }; this.prepareMultiCappingData = function (multiCappingData, showHash, prefix, type, pv) { var cdomain = self.DM[showHash]['cdomain']; var servicerShowHash = self.DM[showHash]['ch']; var ccid = self.DM[showHash]['ccid']; var query = 'pv='+pv; if (typeof multiCappingData[type] == "undefined") { multiCappingData[type] = []; if (typeof multiCappingData['counter'] == "undefined") { multiCappingData['counter'] = []; } if (typeof multiCappingData['counter'][type] == "undefined") { multiCappingData['counter'][type] = []; } } if (typeof multiCappingData[type][cdomain] == "undefined") { multiCappingData[type][cdomain] = []; multiCappingData['counter'][type][cdomain] = 0; } if (typeof multiCappingData[type][cdomain][ccid] == "undefined") { multiCappingData[type][cdomain][ccid] = ''; } query += '&v=' + prefix + servicerShowHash; if (pv != "0" && !self.isFirstByType[type + ccid] || !self.isFirstByCid[type + ccid]) { query += '&f' + type + "=1"; self.isFirstByType[type + ccid] = 1; self.isFirstByCid[type + ccid] = 1; } multiCappingData[type][cdomain][ccid] += query; multiCappingData['counter'][type][cdomain]++; return multiCappingData; }; this.prepareSingleCappingData = function (data, showHash, prefix, type, pv) { if (typeof data[type] == 'undefined') { data[type] = 'pv='+pv; if (typeof data['counter'] == "undefined") { data['counter'] = []; } } if (typeof data['counter'][type] == "undefined") { data['counter'][type] = 0; } data[type] += "&v=" + prefix + showHash; if (pv != "0" && !self.isFirstByType[type]) { data[type] += '&f' + type + "=1"; self.isFirstByType[type] = 1; } data['counter'][type]++; return data; }; this.multiSendCappingData = function (data) { for (var domain in data) { for (var cid in data[domain]) { var query = data[domain][cid] + '&cid=' + cid; self.sendCappingData(query, domain); } } }; this.sendCappingData = function (dataQuery, domain) { var img = document.createElement('IMG'); var cidPosition = dataQuery.search('&cid='); var ispv2 = dataQuery.search('pv=0&') == -1; if (-1 != cidPosition) { var cid = dataQuery.substr(cidPosition + 5).split('&')[0]; } if (ispv2) { if (typeof self.VJ._mgwcapping == 'undefined' || self.VJ._mgwcapping.indexOf(self.id.toString()) == -1 || (typeof cid != "undefined" && self.VJ._mgwcapping.indexOf(cid.toString()) == -1)) { dataQuery = "f=1&" + dataQuery; } self.VJ._mgwcapping = self.VJ._mgwcapping || []; if (typeof cid == "undefined") { dataQuery += "&cid=" + self.id.toString(); self.VJ._mgwcapping.push(self.id.toString()); } else { self.VJ._mgwcapping.push(cid); } } else if (typeof cid == "undefined") { dataQuery += "&cid=" + self.id.toString(); } if (self.servicerData && self.servicerData.h2) { dataQuery += '&h2=' + self.servicerData.h2; } if (self.servicerData && self.servicerData.rid) { dataQuery += '&rid=' + self.servicerData.rid; } if (self.servicerData && self.servicerData.tt) { dataQuery += '&tt=' + self.servicerData.tt; } if (self.servicerData && self.servicerData.ts) { dataQuery += '&ts=' + self.servicerData.ts; } if (self.VJ.localStorage) { var mgMuidn = self.VJ.localStorage.getItem('mgMuidn'); if (typeof (mgMuidn) == "string" && mgMuidn.length > 0 ) { dataQuery += '&muid=' + mgMuidn; } } var cappingDomain = self.webProtocol + "//"; if (typeof domain !== "undefined") { cappingDomain += domain; } else { cappingDomain += "c.marketgid.com"; } dataQuery += '&' + self.getCbusterParameter(); dataQuery += '&tpl=' + self.templateId; img.src = cappingDomain + "/c?" + dataQuery; }; this.isElementInViewport = function(el) { var rect = self.utils.getRect(el, false); var viewport = self.utils.getViewportSize(); return ( rect.height > 0 && rect.width > 0 && rect.top >= 0 && rect.left >= 0 && rect.bottom <= viewport.height && rect.right <= viewport.width ); }; this.getParentTeaserBlock = function(el) { var current = el; while (current != self.root && current != self.VJ) { if (current.className.indexOf("mgline") >= 0) { return current; } else { current = current.parentNode; } } return null; }; this.isTeaserElementVisible = function(el, className) { self.fixGetElementsByClassNameHandler(el); var elements = el.getElementsByClassName(className); if (elements.length > 0) { var dims = elements[0].getBoundingClientRect(); if (dims.right - dims == 0 || dims.bottom - dims.top == 0) { return false; } else { return true; } } else { return false; } }; this.getTeaserAlign = function(teaserDims) { var bodyWidth = self.VJ.document.body.scrollWidth; if (teaserDims.right < 0.3 * bodyWidth) { return 'left'; } else if (teaserDims.left >= 0.7 * bodyWidth) { return 'right' } else { return 'center'; } }; this.sendCustomCounter = function (url) { var img = document.createElement('img'); img.src = url; }}; this['MarketGidCMonitorBlock651827'].call(this['MarketGidInfC651827'], this['MarketGidInfC651827']); this['MarketGidInfC651827']['funcBlocks']['Monitor'] = 'MarketGidCMonitorBlock651827'; MarketGidInfC651827.init(); }