Help
RSS
API
Feed
Maltego
Contact
Domain > pandagifts.ru
×
Welcome!
Right click nodes and scroll the mouse to navigate the graph.
×
More information on this domain is in
AlienVault OTX
Is this malicious?
Yes
No
Files that talk to pandagifts.ru
MD5
A/V
ebbf2139fa265c6896be78fe8bbd44f7
DNS Resolutions
Date
IP Address
2013-10-12
178.250.247.183
(
ClassC
)
2014-12-11
37.143.14.45
(
ClassC
)
2015-05-18
-
2025-01-07
81.163.20.133
(
ClassC
)
Port 80
HTTP/1.1 301 Moved PermanentlyServer: nginxDate: Tue, 07 Jan 2025 01:35:15 GMTContent-Type: text/htmlContent-Length: 162Connection: keep-aliveLocation: https://pandagifts.ru/ html>head>title>301 Moved Permanently/title>/head>body>center>h1>301 Moved Permanently/h1>/center>hr>center>nginx/center>/body>/html>
Port 443
HTTP/1.1 200 OKServer: nginxDate: Tue, 07 Jan 2025 01:35:16 GMTContent-Type: text/html; charsetutf-8Content-Length: 157116Connection: keep-aliveVary: Accept-EncodingCache-Control: privatep3p: CPIDC DSP COR ADM DEVi TAIi PSA PSD IVAi IVDi CONi HIS OUR IND CNTSet-Cookie: __RequestVerificationTokenL2iqxVjZehgSV1LLdc6Tq1m8X_hDklLYcM2oqxCq6NpJ1IxYDGIaA3PCv0ooV0D5lLbS4PXYVuY4uRMxXgLQsBBA0C01; path/; secure; HttpOnly; SameSiteLaxX-By: v6Server-nginx-rule: default_server2 !DOCTYPE html>html langru-ru>head> meta http-equivcontent-type contenttext/html; charsetutf-8 /> meta nameviewport contentwidthdevice-width, initial-scale1.0, maximum-scale1> script typetext/javascript> function setDViewport() { document.getElementsByName(viewport)0.setAttribute(content, width + (screen.width 1170 ? 1170 : screen.width) + , initial-scale + (screen.width 1170 ?(window.screen.width / 1170):1.0) + , heightdevice-height); var e document.getElementsByTagName(html)0; e.setAttribute(class, desctop-version) } function checkDCookie() { var e document.cookie.match(new RegExp((?:^|; )mobile(^;*))); return null ! e && false e1 ? (setDViewport(), !1) : !0 }; /\?mobiletrue/.test(window.location.href)&&(document.cookiemobile+encodeURIComponent(true)+; path /; domain+window.location.host),checkDCookie()&&/\?mobilefalse/.test(window.location.href)&&(document.cookiemobile +encodeURIComponent(false)+; path/; domain+window.location.host,setDViewport()); /script> meta namegenerator contentСайт работает на платформе Pixlpark (www.pixlpark.com)> link relshortcut icon href/content/pxp-favicon.ico?pid6150&v638688041400000000 /> title>Подарки и бизнес-сувениры в Москве/title> meta namedescription contentОнлайн-заказ подарков, бизнес-сувениров с нанесением логотипов в Интернет-магазине «PandaGifts» - сувенирная продукция и подарки для бизнеса в Москве. Мы работаем только с проверенными поставщиками сувенирной продукции и сами осуществляем процесс нанесения изображений на изделия, обеспечивая строгий контроль всех стадий производства. /> meta namekeywords content /> !--CSS--> link href/content/style.css?v47010FDB690F81C08FFA3E92B6C56A51 relstylesheet mediaall />link href/content/media.css?v35C1D753AFE6F5BFC27E7C59567B9B28 relstylesheet mediaall />link href/content/theme-base.css?v482B7B64845EACBF6327932123FA6E81 relstylesheet mediaall /> !--META--> script async typetext/javascript>(function ct_load_script() {var ct document.createElement(script); ct.type text/javascript; ct.asynctrue; ct.relpreload;ct.src document.location.protocol+//cc.calltracking.ru/phone.02967.13817.async.js?nc+Math.floor(new Date().getTime()/300000);var s document.getElementsByTagName(script)0; s.parentNode.insertBefore(ct, s);})();/script>!-- Google Tag Manager -->script>(function(w,d,s,l,i){wlwl||;wl.push({gtm.start:new Date().getTime(),event:gtm.js});var fd.getElementsByTagName(s)0,jd.createElement(s),dll!dataLayer?&l+l:;j.asynctrue;j.srchttps://www.googletagmanager.com/gtm.js?id+i+dl;f.parentNode.insertBefore(j,f);})(window,document,script,dataLayer,GTM-T6ZXKKB);/script>!-- End Google Tag Manager -->meta nameyandex-verification content8a4b8b7f6d9393b4 />!-- Google tag (gtag.js) -->script async srchttps://www.googletagmanager.com/gtag/js?idG-W0WB8PHH5X>/script>script> window.dataLayer window.dataLayer || ; function gtag(){dataLayer.push(arguments);} gtag(js, new Date()); gtag(config, G-W0WB8PHH5X);/script>meta namegoogle-site-verification content9bWlg-YOFsoRd3f8dYsl8mM2CN4mA-xg-Mxd1sgFBD8 />meta nameyandex-verification contentdc930d20d981c932 />!-- Top.Mail.Ru counter -->script typetext/javascript>var _tmr window._tmr || (window._tmr );_tmr.push({id: 3389172, type: pageView, start: (new Date()).getTime()});(function (d, w, id) { if (d.getElementById(id)) return; var ts d.createElement(script); ts.type text/javascript; ts.async true; ts.id id; ts.src https://top-fwz1.mail.ru/js/code.js; var f function () {var s d.getElementsByTagName(script)0; s.parentNode.insertBefore(ts, s);}; if (w.opera object Opera) { d.addEventListener(DOMContentLoaded, f, false); } else { f(); }})(document, window, tmr-code);/script>noscript>div>img srchttps://top-fwz1.mail.ru/counter?id3389172;jsna styleposition:absolute;left:-9999px; altTop.Mail.Ru />/div>/noscript>!-- /Top.Mail.Ru counter -->meta namemailru-verification content326c6be7936487a9 />script> window.pxp{}; window.pxp.utilities{}; window.pxp.frontend{accountId:2876,frontendId:6150,languageId:7235,languageCode:ru,languageCulture:ru-ru,defaultLanguageCulture:ru-ru,decimalPlaces:2,slug:,timeZoneMinutesOffset:180,origin:https://pandagifts.ru/}; window.frontendwindow.pxp.frontend;window.pxp.phoneRules{PhoneMask:+7 (###) ### ##-##,OutputRule:+CCC (AAA) ANNN NN-NNNNNNNNNNN,ExtMask:\\ #\\######,RuleTitle:7,RuleValue:ru,AdminUrlFormat:null},{PhoneMask:+375 (##) ### ##-##?#,OutputRule:+CCC (AAA) ANNN NN-NNNNNNNNNNN,ExtMask:\\ #\\######,RuleTitle:375,RuleValue:by,AdminUrlFormat:null} window.pxp.user{userId:null,isAdministrator:false,isOperator:false, isAnonymous:false, isCompanyOwner:false, displayName:null}; if(!(window.console && console.log)) {var _pxpNoop function(){};console {log: _pxpNoop,debug:_pxpNoop,info:_pxpNoop,warn:_pxpNoop,error:_pxpNoop};} window.pxpLoggedErrorsCount 0; window.onerrorfunction(msg, url, lineNo, columnNo, errorObj){ if (window.pxpLoggedErrorsCount > 3) return; if (msg ResizeObserver loop limit exceeded || msg ResizeObserver loop completed with undelivered notifications.) return false; url window.location.toString(); var stack null; if (typeof errorObj ! undefined && errorObj ! null && typeof errorObj.stack ! undefined) stack errorObj.stack; var data {Msg:msg,Url:url,LineNum:lineNo,Stack:stack}; var xhr new XMLHttpRequest(); xhr.open(POST, /api/admin/log/js/errors/write); xhr.setRequestHeader(Content-Type, application/json;charsetutf-8); xhr.onload function() { if (typeof console ! undefined && typeof console.log function) console.log(Error logged); }; xhr.send(JSON.stringify(data)); window.pxpLoggedErrorsCount ++; return false; } document.addEventListener(DOMContentLoaded, function(){ pxp.showCookieConfirmIfNeeded?.(Работая с этим сайтом, вы даете свое согласие на использование файлов cookie.br/> Это необходимо для нормального функционирования сайта.); }); ;window.registerSimpleComponentfunction(cn,cf){if(!ko.components.isRegistered(cn)){ko.components.register(cn,cf)};};window.pxp.utilities.registerSimpleComponentwindow.registerSimpleComponent; ;window.registerLoadingComponentfunction(cn, cvmif, mtn){if(ko.components.isRegistered(cn)){return;} var ismtnEmptymtnnull||mtn.trim();mtnismtnEmpty?!--empty template-->:!--ko template:{name:+mtn+,data:$data}-->!--/ko-->; ko.components.register(cn,{ viewModel:{createViewModel:function(params){var __tm ko.observable({__isInInit: ko.observable(!ismtnEmpty)});cvmif(params).then(function(ntm){ if (ntm null) { return; }; __tm(ntm); });return __tm;}}, template: !--ko if:(typeof(__isInInit)!undefined&&__isInInit())-->div styleposition:relative;width:auto;height:250px;>div classloading-wheel>/div>/div>!-- /ko -->!--ko if:typeof(__isInInit)undefined--> + mtn + !--/ko-->} )}; window.pxp.utilities.registerLoadingComponent window.registerLoadingComponent; pxp.utilities.slider function() { var e; function i() {} return e i, i.create function(i, s) { return new Promise(function(t, n) { e.prepare().then(function(e) { if (0 s.type) { a { pagination: { el: .swiper-pagination, clickable: s.clickable }, navigation: { nextEl: .swiper-button-next.button-next_main, prevEl: .swiper-button-prev.button-prev_main }, loop: !0, slidesPerView: s.slidesPerView, spaceBetween: s.spaceBetween, hashnav: s.hashnav, speed: s.speed, autoplay: { delay: s.delay }, on: { init: function() { var e `${s.className}-${s.sliderId}`; document.getElementsByClassName(e)0.style.visibility visible; } } }; t(new e(i, a)); return; } if (1 s.type) { var n new e(s.thumbsClass, { spaceBetween: s.spaceBetween, slidesPerView: s.slidesPerView, freeMode: s.freeMode, watchSlidesVisibility: s.watchSlidesVisibility, watchSlidesProgress: s.watchSlidesProgress, resistanceRatio: s.resistanceRatio }); t(new e(i, { spaceBetween: s.spaceBetween, navigation: { nextEl: .swiper-button-next-product-slider, prevEl: .swiper-button-prev-product-slider }, thumbs: { swiper: n }, resistanceRatio: s.resistanceRatio, on: { init: function() { var e `${s.thumbsClassName}-${s.sliderId}`, i `${s.className}-${s.sliderId}`; document.getElementsByClassName(e)0.style.visibility visible; document.getElementsByClassName(i)0.style.visibility visible; } } })); return; } if (2 s.type) { var r { spaceBetween: s.spaceBetween, slidesPerView: s.slidesPerView, slidesPerGroup: s.slidesPerGroup, slidesPerColumn: s.slidesPerColumn, lazy: { loadPrevNext: !0 }, resistanceRatio: s.resistanceRatio, watchSlidesVisibility: s.watchSlidesVisibility, preloadImages: s.preloadImages, navigation: { nextEl: .swiper-button-next, prevEl: .swiper-button-prev }, pagination: { el: .swiper-pagination, clickable: !0 }, autoplay: s.autoplay, breakpoints: { 768: { slidesPerView: 2, slidesPerColumn: 2 }, 992: { slidesPerView: 3, slidesPerColumn: 2 } } }; t(new e(i, r)); return; } if (3 s.type) { var a { pagination: { el: .reviews__swiper .swiper-pagination, clickable: !0 }, navigation: { nextEl: .swiper-button-next, prevEl: .swiper-button-prev }, slidesPerView: s.slidesPerView, spaceBetween: s.spaceBetween, speed: s.speed, loop: s.loop, breakpoints: { 630: { spaceBetween: 15, slidesPerView: 1 }, 768: { slidesPerView: 2 }, 1200: { slidesPerView: 2 } }, on: { init: function() { if (s && typeof s.readMoreButton function) { setTimeout(() > s.readMoreButton(this), 100); } } } }; t(new e(i, a)); return; } if (4 s.type) { var a { loop: s.loop, slidesPerView: s.slidesPerView, delay: s.delay, spaceBetween: s.spaceBetween, hashnav: s.hashnav }; t(new e(i, a)), console.log(a); return; } if (5 s.type) { var m { loop: !0, slidesPerView: 1, clickable: !0, spaceBetween: 15, hashnav: !1, speed: 1500, delay: s.delay, navigation: { nextEl: .swiper-button-next, prevEl: .swiper-button-prev }, pagination: { el: .swiper-pagination, clickable: !0 }, on: { init: function() { if (s && typeof s.loadActiveSlideImages function) { setTimeout(() > s.loadActiveSlideImages(this), 100); } }, slideChange: function() { if (s && typeof s.loadActiveSlideImages function) { s.loadActiveSlideImages(this); } } } }; t(new e(i, m)); return; } if (6 s.type) { var a { navigation: { nextEl: .swiper-button-next, prevEl: .swiper-button-prev }, slidesPerView: 5, slidesPerColumn: 1, spaceBetween: 30, loop: true, breakpoints: { 1024: { slidesPerView: 3, slidesPerColumn: 1, allowTouchMove: true }, 768: { slidesPerView: 3, slidesPerColumn: 1, spaceBetween: 15, allowTouchMove: true }, 640: { slidesPerView: 4, slidesPerColumn: 1, spaceBetween: 15, allowTouchMove: true } } }; t(new e(i, a)); return; } if (7 s.type) { var a { pagination: { el: .souvenirs__swiper .swiper-pagination, clickable: !0 }, navigation: { nextEl: .swiper-button-next, prevEl: .swiper-button-prev }, slidesPerView: s.slidesPerView, spaceBetween: s.spaceBetween, speed: s.speed, loop: s.loop, breakpoints: { 630: { spaceBetween: 15, slidesPerView: 2, slidesPerColumn: 2 }, 768: { slidesPerView: 2 }, 1200: { slidesPerView: 2 } }, on: { init: function() { if (s && typeof s.readMoreButton function ) { setTimeout(() > s.readMoreButton(this), 100); } } } }; t(new e(i, a)); return; } }); }); }, i.swiper null, i.prepareRequest null, i.prepare function() { return null ! e.prepareRequest ? e.prepareRequest : e.prepareRequest new Promise(function(i, s) { null ! e.swiper && i(e.swiper); var t window.pxp.frontend.origin + content/js/swiper.min.js, n window.pxp.frontend.origin + /content/css/swiper.min.css, r document.createElement(link); r.type text/css, r.rel stylesheet, r.href n; var a document.createElement(script); a.type text/javascript, a.src t, document.head.appendChild(r), document.head.appendChild(a), a.onload function() { e.swiper window.Swiper, i(e.swiper); }; }); }, i; }(); window.toCurrency function(val ,ds ,gs){ let acr pxp.frontend.decimalPlaces; val typeof(val) string ? parseFloat(val) : val; val isNaN(val) ? 0 : val; let aDigits val.toFixed(acr).split(.); aDigits0 aDigits0.split().reverse().join().replace(/(\d{3})(?\d)/g, $1 + gs).split().reverse().join(); return aDigits.join(ds); }; window.pxp.utilities.toCurrency window.toCurrency; window.getPriceString function(price) { let pr,psspan classpostfix currency rub>span>руб./span>/span>,s,,gs ; return (pr+ +pxp.utilities.toCurrency(price, s, gs) + + ps).trim(); }; window.pxp.utilities.currencyPostfixруб.; window.pxp.utilities.getPriceString window.getPriceString; pxp.utilities.isMobile function (maxWidth) { var windowWidth window.innerWidth; var isMobile windowWidth > 0 && windowWidth (maxWidth ?? 600); return isMobile;}/script>script idpxp__empty typetext/html>!-- empty block -->/script>script idpxp__loading typetext/html>div styleposition:relative;height:200px;>div classloading-wheel>/div>/div>/script>script typetext/javascript > (function(m, e, t, r, i, k, a){mimi||function() { (mi.a mi.a ||).push(arguments)}; mi.l1*new Date(); ke.createElement(t),ae.getElementsByTagName(t)0,k.async1,k.srcr,a.parentNode.insertBefore(k, a) }) (window, document, script, https://mc.yandex.ru/metrika/tag.js, ym); ym(91635999, init, { id: 91635999, clickmap: true, trackLinks: true, accurateTrackBounce: true, webvisor: true, ecommerce: dataLayer, triggerEvent: true }); /script> noscript>div>img srchttps://mc.yandex.ru/watch/91635999 styleposition:absolute; left:-9999px; alt />/div>/noscript> script async srchttps://www.googletagmanager.com/gtag/js?idG-W0WB8PHH5X>/script> script> window.dataLayer window.dataLayer || ; function gtag(){dataLayer.push(arguments);} gtag(js, new Date()); gtag(config, G-W0WB8PHH5X); /script> !--Canonical--> link relcanonical hrefhttps://pandagifts.ru /> !--bread--> /head>body classhome> form methodpost action./ idaspnetForm>div classaspNetHidden>input typehidden name__VIEWSTATE id__VIEWSTATE valueb4NMIqDtphaY5Bl0njHkOYpdL6NKFLudCtZD7OufvWUKV0VJodr+G95pw3COLyhB0PZAS228nM4Rmp/9VDflgjYMghE />/div>script src/content/js/_pxp.app.js?v638630294040000000 typetext/javascript>/script> input name__RequestVerificationToken typehidden value70ylQxUW9h4tcEzF_oJmzIeMWZ7VWGmZpd4t1aCM2zZQeJDEmMRK9jscV7_QlRw-3ANlLqOli6_-1CWo2-OK1gZbvXg1 /> script src/content/js/pxp/build/phoneInputControl-bundle.min.js?v638658779260000000>/script>script typetext/javascript>window.PhoneInputControl pxpFrontend.phoneInputControl.PhoneInputControl;/script>style>:root {--pxp-action-main:#64bb46;--pxp-action-main-text:#ffffff;--pxp-action-main-hover:#eb6309;--pxp-action-main-hover-text:#ffffff;--pxp-menu-bg:#364657;--pxp-menu-bg-alternative:#30373E;--pxp-group-background:#ffffff;}/style> script> async function getResourse(url) { const response await fetch(url); if( !response.ok ) throw new Error(`Ошибка по адресу ${url}, статус ошибки ${response.status}`); return await response.json(); }; async function sendResourse(url) { const response await fetch(url, { method: POST, }); if( !response.ok ) throw new Error(`Ошибка по адресу ${url}, статус ошибки ${response.status}`); return await response; }/script>script>function GetNovelties(method) { var self this; self.goods ko.observableArray(); getResourse(/api/catalog/ + method + ?count16&randomfalse).then( (data) > { var goods ; data.forEach((element) > { goods.push(element); }); self.goods(goods); } );}/script>style> .user-profile__cart ahref/user/cart, .user-profile__item ahref/account/orders, .user-profile__name ahref/account/, .user-profile__item ahref/account/logout, .user-profile__item ahref/account/products, .user-profile__item ahref/account/discounts, .user-profile { display: none; }/style> header> div classlogo-container container> div classlogo-wrapper> a href/ titlepandagifts.ru> img src/content/pxp-logo/6150.svg?lid7235&v638688041400000000 altpandagifts.ru/> /a> /div> /div> style> :root { --main-color: #002447; } /*#eb6309 - оранжевый*//style>div classtop-line> div classcontainer> div classflex-container> div classaddress-company m-hidden> a href/contact-us classaddress-company--link flex nowrap title> i classaddress-company--icon icon-map>/i> span classaddress-company--title>г. Москва, Зубарев пер. 15 корп. 1, БЦ Чайка Плаза/span> /a> /div> div classtop-message>Минимальный заказ с нанесением span classmin_sum>/span> ₽ /div> div classtop-message> a stylecolor:#ffffff hreftel:+7 800 505-98-76> +7 800 505-98-76 / a>/div> ul classinformation-pages flex-container m-hidden> li classinformation-pages--item> a href/about-us classinformation-pages--link flex>О компании/a> /li> li classinformation-pages--item> a href/contact-us classinformation-pages--link flex>Контакты/a> /li> li classinformation-pages--item> a href/faq classinformation-pages--link flex>Помощь/a> /li> /ul> /div> /div>/div>div classmiddle-line search-1> div classcontainer> div classmiddle-wrapper row flex nowrap> a hrefjavascript:// classnav-control nav-mobile d-hidden> span classnav-control--bar>/span> /a> a href/ title classlogo-wrapper> img src/content/gifts-theme/logo-panda.svg altПодарки и сувенирная продукция для бизнеса titleПодарки и сувенирная продукция для бизнеса в Москве width200px height40px classw-100> /a> div idsearchCatalog>/div> div idorderOnMail-head> a hrefmailto:zakaz@pandagifts.ru classbtn btn-default head-mail stylemax-width: 120px;> i>img src/content/gifts-theme/icons/mail2.png width20px stylemargin: 5px 8px 5px 0px;>/img>/i> u>Заказать/u> /a> /div> div classuser-actions flex nowrap>!-- div classuser-action--item m-hidden> a href// classuser-action--link flex nowrap titleИзбранное> i classuser-action--iconFavorites icon-heart>/i> span classuser-action--title>Избранное/span> /a> /div> --> div classuser-action--item> a href/user/cart classuser-action--link shopping-cart flex nowrap titleКорзина> div classuser-action--iconCard icon-shopping-cart> span classadded_card>0/span> /div> u classuser-action--title>Корзина/u> /a> /div> div classuser-action--item m-hidden> div classuser-profile m-hidden> a href/account/ classuser-action--link auth-user auth flex nowrap titleПрофиль> i classuser-action--iconProfile icon-user-circle>/i> /a> ul classuser-profile-block> li classuser-profile__name> a href/account/ classuser-name>/a> /li> li classuser-profile__item> a href/account/ titleМой профиль> Мой профиль /a> /li> li classuser-profile__item> a href/account/orders titleЗаказы в работе> Мои заказы /a> /li> li classuser-profile__item> a href/account/discounts titleМои скидки> Мои скидки /a> /li> li classuser-profile__item> a href/account/changepassword titleСменить пароль> Сменить пароль /a> /li> li classuser-profile__item logout> a href/account/logout titleВыход> u>Выход/u> /a> /li> /ul> /div> /div> div classuser-action--item m-hidden> a href/account/ classuser-action--link auth-user flex nowrap titleПрофиль> i classuser-action--iconProfile icon-user-circle>/i> span classuser-action--title>Профиль/span> /a> /div>/div> /div> /div>/div>div classbottom-line pop-up> div classcontainer> div classnavigation flex-container> div idsearchCatalogMobile classd-hidden>/div> div classtab-container w-100> ul classtab-control flex> li classtab-item flex>a href# classtab-link active data-tabsection1>span classtab-text>Меню/span>/a>/li> li classtab-item flex>a href# classtab-link data-tabsection2>span classtab-text>Каталог/span>/a>/li> /ul> div classtab-content flex-container nowrap> div classtab-pane flex data-panesection2> div classnavigation-menu catalog-categories nav> div classnav-button m-hidden flex> span classnav-control m-hidden> span classnav-control--bar>/span> /span> u>Каталог товаров/u> i classnav-button--icon icon-angle-down flex>/i> /div> div classnav-container relative iddinamicCategoriesMenu> ul data-bindforeach: categories classnav-control--list flex> li data-bindattr: {data-cat: Id } classnav-control--item> a data-bindattr: { href: Url } classnav-control--link flex> svg classnav-control--icon> use xlink:href data-bindattr: { xlink:href: Image}>/use> /svg> u data-bindtext: Caption>/u> i classnav-control--arrow icon-angle-right flex m-hidden>/i> /a> /li> /ul> div data-bindforeach: categories classnav-controled--list m-hidden > div data-bindattr: {data-sub: Id } classnav-controled--item> ul data-bindforeach: Groups classnav-controled--group flex> li classnav-controled--group--item> div classnav-controled--group--image> img data-bindattr: {src: Image, alt: Caption} classnav-controled--group--cover> /div> u data-bindtext: Caption classnav-controled--group--title>/u> ul data-bindforeach: Categories classnav-controled--group--list> li classnav-controled--groupList--item> a data-bindattr: { href: Url } classnav-controled--groupList--link> u data-bindtext: Caption>/u> /a> /li> /ul> /li> /ul> ul data-bindforeach: Subcategories classnav-controled--subcategories flex> li classnav-controled--subcategories--item> a data-bindattr: { href: Url } classnav-controled--subcategories--link> u data-bindtext: Caption>/u> /a> /li> /ul> /div> /div> /div> /div> /div> div classtab-pane flex active menu-section data-panesection1> div classnavigation-menu navigation-menu--center flex-container> ul classnavigation-menu--list flex-container> li classnavigation-menu--item> a href/nanesenie-logo classnavigation-menu--link flex> u classnavigation-menu--title>Виды продукции/u> /a> /li> li classnavigation-menu--item> a href/selections classnavigation-menu--link flex> u classnavigation-menu--title>Подборки/u> /a> /li> li classnavigation-menu--item> a href/application-types classnavigation-menu--link flex> u classnavigation-menu--title>Типы нанесения/u> /a> /li> li classnavigation-menu--item> a href/individualnoe-izgotovlenie classnavigation-menu--link flex> u classnavigation-menu--title>Изготовление сувениров/u> /a> /li> li classnavigation-menu--item> a href/portfolio classnavigation-menu--link flex> u classnavigation-menu--title>Портфолио/u> /a> /li> /ul>/div> div classnavigation-menu flex-container> ul classnavigation-menu--list flex-container> !-- li classnavigation-menu--item> a href/catalog/suveniry-k-8-marta classnavigation-menu--link flex> u classnavigation-menu--title>Сувениры к 8 марта/u> /a> /li> --> li classnavigation-menu--item> a hrefhttps://blog.pandagifts.ru target_blank relnoopener classnavigation-menu--link flex> u classnavigation-menu--title>Новости/u> /a> /li> !-- li classnavigation-menu--item> a href/guestbook classnavigation-menu--link flex> u classnavigation-menu--title>Отзывы/u> /a> /li> --> !-- li classnavigation-menu--item> a hrefhttps://gifts.pixlpark.ru/designs classnavigation-menu--link inactive flex> u classnavigation-menu--title>Сувениры с дизайном/u> /a> /li> --> !-- li classnavigation-menu--item idshow-navigation-submenu> a href# classnavigation-menu--link inactive flex> u classnavigation-menu--title>Прочее/u> /a> ul classnavigation--submenu idnavigation-submenu> li classnavigation-submenu--item> a href/catalog/posuda-krujki/kruzhka-promo-plus-dlya-sublimaczionnoj-pechati-krasnaya-657951 classflex> u> Пример подключения онлайн-редактора/u> i classnav-control--arrow icon-angle-right flex m-hidden>/i>/a> /li> li classnavigation-submenu--item> a href/catalog/futbolki/futbolka-imperial-190-oranzhevaya-137420 classflex> u>Пример расчета стоимости нанесения/u> i classnav-control--arrow icon-angle-right flex m-hidden>/i>/a> /li> li classnavigation-submenu--item> a href/content/gifts-theme/Презентация бизнес-сувениров.pdf classflex> u>Пример презентации (PDF-документ)/u> i classnav-control--arrow icon-angle-right flex m-hidden>/i>/a> /li> /ul> /li> --> /ul> /div> div classuser-actions flex nowrap>!-- div classuser-action--item m-hidden> a href// classuser-action--link flex nowrap titleИзбранное> i classuser-action--iconFavorites icon-heart>/i> span classuser-action--title>Избранное/span> /a> /div> --> div classuser-action--item> a href/user/cart classuser-action--link shopping-cart flex nowrap titleКорзина> div classuser-action--iconCard icon-shopping-cart> span classadded_card>0/span> /div> u classuser-action--title>Корзина/u> /a> /div> div classuser-action--item m-hidden> div classuser-profile m-hidden> a href/account/ classuser-action--link auth-user auth flex nowrap titleПрофиль> i classuser-action--iconProfile icon-user-circle>/i> /a> ul classuser-profile-block> li classuser-profile__name> a href/account/ classuser-name>/a> /li> li classuser-profile__item> a href/account/ titleМой профиль> Мой профиль /a> /li> li classuser-profile__item> a href/account/orders titleЗаказы в работе> Мои заказы /a> /li> li classuser-profile__item> a href/account/discounts titleМои скидки> Мои скидки /a> /li> li classuser-profile__item> a href/account/changepassword titleСменить пароль> Сменить пароль /a> /li> li classuser-profile__item logout> a href/account/logout titleВыход> u>Выход/u> /a> /li> /ul> /div> /div> div classuser-action--item m-hidden> a href/account/ classuser-action--link auth-user flex nowrap titleПрофиль> i classuser-action--iconProfile icon-user-circle>/i> span classuser-action--title>Профиль/span> /a> /div>/div> /div> /div> /div> /div> /div>/div>div classheader-sticky flex> div classcontainer> div classrow> div classflex-container> a hrefjavascript:// classnav-control nav-mobile d-hidden> span classnav-control--bar>/span> /a> !-- a href/ title classlogo-wrapper> img src/content/gifts-theme/logo-panda.svg altПодарки и сувенирная продукция для бизнеса titleПодарки и сувенирная продукция для бизнеса в Москве width200px height40px classw-100> /a> --> a href/ title classlogo-wrapper> img styleheight: 50px src/content/gifts-theme/logo-panda.svg altPandaGifts width200px height40px classw-100> /a> div classnavigation-menu navigation-menu--center flex-container> ul classnavigation-menu--list flex-container> li classnavigation-menu--item> a href/nanesenie-logo classnavigation-menu--link flex> u classnavigation-menu--title>Виды продукции/u> /a> /li> li classnavigation-menu--item> a href/selections classnavigation-menu--link flex> u classnavigation-menu--title>Подборки/u> /a> /li> li classnavigation-menu--item> a href/application-types classnavigation-menu--link flex> u classnavigation-menu--title>Типы нанесения/u> /a> /li> li classnavigation-menu--item> a href/individualnoe-izgotovlenie classnavigation-menu--link flex> u classnavigation-menu--title>Изготовление сувениров/u> /a> /li> li classnavigation-menu--item> a href/portfolio classnavigation-menu--link flex> u classnavigation-menu--title>Портфолио/u> /a> /li> /ul>/div> div classuser-actions flex nowrap>!-- div classuser-action--item m-hidden> a href// classuser-action--link flex nowrap titleИзбранное> i classuser-action--iconFavorites icon-heart>/i> span classuser-action--title>Избранное/span> /a> /div> --> div classuser-action--item> a href/user/cart classuser-action--link shopping-cart flex nowrap titleКорзина> div classuser-action--iconCard icon-shopping-cart> span classadded_card>0/span> /div> u classuser-action--title>Корзина/u> /a> /div> div classuser-action--item m-hidden> div classuser-profile m-hidden> a href/account/ classuser-action--link auth-user auth flex nowrap titleПрофиль> i classuser-action--iconProfile icon-user-circle>/i> /a> ul classuser-profile-block> li classuser-profile__name> a href/account/ classuser-name>/a> /li> li classuser-profile__item> a href/account/ titleМой профиль> Мой профиль /a> /li> li classuser-profile__item> a href/account/orders titleЗаказы в работе> Мои заказы /a> /li> li classuser-profile__item> a href/account/discounts titleМои скидки> Мои скидки /a> /li> li classuser-profile__item> a href/account/changepassword titleСменить пароль> Сменить пароль /a> /li> li classuser-profile__item logout> a href/account/logout titleВыход> u>Выход/u> /a> /li> /ul> /div> /div> div classuser-action--item m-hidden> a href/account/ classuser-action--link auth-user flex nowrap titleПрофиль> i classuser-action--iconProfile icon-user-circle>/i> span classuser-action--title>Профиль/span> /a> /div>/div> /div> /div> /div>/div>script typetext/javascript> (function () { var dinamicCategories new DinamicCategoriesMenu(), dinamicCategoriesElement document.getElementById(dinamicCategoriesMenu); ko.applyBindings(dinamicCategories, dinamicCategoriesElement); })(); function DinamicCategoriesMenu(ids) { var menu this, // текущий inlineCategories ko.observableArray(); menu.categories ko.computed(getCategories); init(); function init() { var getCategoriesUrl /api/catalog/groupedCategories?photolabId; getCategoriesUrl + pxp.frontend.frontendId; $.getJSON(getCategoriesUrl, onSuccessListener); function changeImage(categories) { var arr categories; for (var i 0; i arr.length; i++) { var category arri; var name category.Url.replace(/catalog/, ); category.Image /content/images/gifts/menu-catalog-icon3.svg# + name; } return arr; } function onSuccessListener(categories) { inlineCategories(changeImage(categories)); var navigation new ShowListsController({ parentSelector: .navigation-menu, controlList: { element: document.querySelector(.nav-control--list), attribute: data-cat, activeClass: nav-control--active }, controledList: { element: document.querySelector(.nav-controled--list), attribute: data-sub, activeClass: nav-controled--active } }) } }; function getCategories() { var categories inlineCategories(); if (!(ids instanceof Array && !!ids.length)) categories; var selectedCategories new Array(), result new Array(), categoriesLength categories.length, idsLength ids.length, allCatsCategory new DinamycCategory(), allCatsWrapper allCatsCategory.Subcategories, index, selectedCategoriesLength, selectedCatIndex; for (index 0; index categoriesLength; ++index) { var categoryData categoriesindex, category new DinamycCategory(categoryData, allCatsWrapper); } selectedCategoriesLength selectedCategories.length; if (!selectedCategoriesLength) return categories; for (index 0; index idsLength; ++index) { var id idsindex; for (selectedCatIndex 0; selectedCatIndex selectedCategoriesLength; ++selectedCatIndex) { var selectedCategory selectedCategoriesselectedCatIndex; if (selectedCategory.Id id) result.push(selectedCategory); } } result.push(allCatsCategory); return result; function DinamycCategory(data, dataWrapper) { var category this; category.Id 0; category.Url /catalog; category.Caption Все продукты; category.Title ko.observable(category.Caption); category.Image ko.observable(category.Image); category.Icon ko.observable(category.Image); category.Subcategories new Array(); init(); function init() { if (!(data instanceof Object) || data null) return; if (ids.indexOf(data.Id) > -1) { selectedCategories.push(category); } else { dataWrapper.push(category); } for (var key in category) { if (category.hasOwnProperty(key) && data.hasOwnProperty(key)) { if (key Subcategories) { processSubcategories(datakey); continue; } categorykey datakey; } } category.Title(category.Caption); category.Icon(category.Image); } function processSubcategories(subcategories) { if (!subcategories) return; var subcategoriesLength subcategories.length, categoryWrapper category.Subcategories, subcategoryIndex; for (subcategoryIndex 0; subcategoryIndex subcategoriesLength; ++subcategoryIndex) { var subcategoryData subcategoriessubcategoryIndex, subcategory new DinamycCategory(subcategoryData, categoryWrapper); } } } } }/script>!-- new -->style> .nav>li:hover>.dropdown-menu { display: block } .nav > li:nth-child(n+2):last-child .dropdown-menu, .nav > li:nth-child(n+3):nth-last-child(-n+2) .dropdown-menu, .nav > li:nth-child(n+4):nth-last-child(-n+3) .dropdown-menu, .nav > li:nth-child(n+5):nth-last-child(-n+4) .dropdown-menu, .nav > li:nth-child(n+5):nth-last-child(-n+5) .dropdown-menu{ left: auto!important; right: 0!important; } .nav > li:nth-child(n+2):last-child .dropdown-menu:before, .nav > li:nth-child(n+3):nth-last-child(-n+2) .dropdown-menu:before, .nav > li:nth-child(n+4):nth-last-child(-n+3) .dropdown-menu:before, .nav > li:nth-child(n+5):nth-last-child(-n+4) .dropdown-menu:before, .nav > li:nth-child(n+5):nth-last-child(-n+5) .dropdown-menu:before{ left: auto; right: 40px; } @media screen and (max-width: 952px){ .nav>li:hover>.dropdown-menu { display: none !important; } }/style>script> (function() { if (undefined ! typeof window && window.addEventListener) { var e Object.create(null), l, d function() { clearTimeout(l); l setTimeout(n, 100) }, m function() {}, t function() { window.addEventListener(resize, d, !1); window.addEventListener(orientationchange, d, !1); if (window.MutationObserver) { var k new MutationObserver(d); k.observe(document.documentElement, { childList: !0, subtree: !0, attributes: !0 }); m function() { try { k.disconnect(), window.removeEventListener(resize, d, !1), window.removeEventListener(orientationchange, d, !1) } catch (v) {} } } else document.documentElement.addEventListener(DOMSubtreeModified, d, !1), m function() { document.documentElement.removeEventListener(DOMSubtreeModified, d, !1); window.removeEventListener(resize, d, !1); window.removeEventListener(orientationchange, d, !1) } }, u function(k) { function e(a) { if (void 0 ! a.protocol) var c a; else c document.createElement(a), c.href a; return c.protocol.replace(/:/g, ) + c.host } if (window.XMLHttpRequest) { var d new XMLHttpRequest; var m e(location); k e(k); d void 0 d.withCredentials && ! k && k ! m ? XDomainRequest || void 0 : XMLHttpRequest } return d }; var n function() { function d() { --q; 0 q && (m(), t()) } function l(a) { return function() { !0 ! ea.base && (a.useEl.setAttributeNS(http://www.w3.org/1999/xlink, xlink:href, # + a.hash), a.useEl.hasAttribute(href) && a.useEl.setAttribute(href, # + a.hash)) } } function p(a) { return function() { var c document.body , b document.createElement(x); a.onload null; b.innerHTML a.responseText; if (b b.getElementsByTagName(svg)0) b.setAttribute(aria-hidden, true), b.style.position absolute, b.style.width 0, b.style.height 0, b.style.overflow hidden, c.insertBefore(b, c.firstChild); d() } } function n(a) { return function() { a.onerror null; a.ontimeout null; d() } } var a, c, q 0; m(); var f document.getElementsByTagName(use); for (c 0; c f.length; c + 1) { try { var g fc.getBoundingClientRect() } catch (w) { g !1 } var h (a fc.getAttribute(href) || fc.getAttributeNS(http://www.w3.org/1999/xlink, href) || fc.getAttribute(xlink:href)) && a.split ? a.split(#) : , ; var b h0; h h1; var r g && 0 g.left && 0 g.right && 0 g.top && 0 g.bottom; g && 0 g.width && 0 g.height && !r ? (fc.hasAttribute(href) && fc.setAttributeNS(http://www.w3.org/1999/xlink, xlink:href, a), b.length && (a eb, !0 ! a && setTimeout(l({ useEl: fc, base: b, hash: h }), 0), void 0 a && (h u(b), void 0 ! h && (a new h, eb a, a.onload p(a), a.onerror n(a), a.ontimeout n(a), a.open(GET, b), a.send(), q + 1)))) : r ? b.length && eb && setTimeout(l({ useEl: fc, base: b, hash: h }), 0) : void 0 eb ? eb !0 : eb.onload && (eb.abort(), delete eb.onload, eb !0) } f ; q + 1; d() }; var p function() { window.removeEventListener(load, p, !1); l setTimeout(n, 0) }; complete ! document.readyState ? window.addEventListener(load, p, !1) : p() } } )();/script>/header> h1 stylevisibility: hidden; display: none; classtitle-before-slider>Сувенирная продукция с логотипом/h1>div classmain-slider swiper-container mb-80> div classswiper-wrapper> div classswiper-slide> !--Слайд 1 --> div classbanner1> div classblock-banner> div classtitle>img src/content/gifts-theme/images/glavnaya-slider/banner1-logo.png>/div> p>Делаем бизнес узнаваемым/p> ul> li>• 15 лет на рынке/li> li>• 60 000+ товаров/li> li>• Все виды нанесений/li> /ul> p>Подбираем br> сувенирную продукцию за 15 минут/p> a hrefhttps://pandagifts.ru/catalog classlink>Выбрать/a> /div> div classimages>img src/content/gifts-theme/images/glavnaya-slider/banner1-img.png>/div>/div>!-- div classcontainer h-100> div classmain-slide--container flex-container nowrap> div classmain-slide--info center> h3 classmain-slide--title animate-bottom>Имидж компании складывается из мелочей/h3> div classmain-slide--text animate-bottom> Деловая репутация – это один из важнейших факторов развития бизнеса. /div> div classmain-slide--price animate-bottom>от 999 руб./div> div classmain-slide--price animate-bottom new-bottom-slider> a classnew-bottom-link href/catalog/ejednevniki>Подробнее/a> /div> /div> div classmain-slide--cover flex animate-right> picture classmain-slide--image> source typeimage/webp srcset/content/gifts-theme/slides/main/nabor.webp> img src/content/gifts-theme/slides/main/nabor.png width487px height393px altИмидж компании складывается из мелочей> /picture> /div> /div>/div> --> /div> div classswiper-slide> !-- Слайд 2 --> div classbanner2> div classblock-banner> div classtitle>Бесплатная доставка/div> div classinfo>В пределах МКАД br> на заказ от 50 000 руб./div> a hrefhttps://pandagifts.ru/delivery-and-payment classlink>Подробнее/a> /div>/div>!-- div classcontainer h-100> div classmain-slide--container main-slide--tabContainer tab-container flex-container nowrap> div classmain-slide--info> h3 classmain-slide--title animate-bottom>Футболки для эффективной рекламы/h3> div classtab-control flex animate-bottom> span class main-slide--caption>Цвета: /span> a href# classtab-link сolor-white active data-tabsection1 titleбелая>/a> a href# classtab-link сolor-orange data-tabsection2 titleжелтая>/a> a href# classtab-link сolor-red data-tabsection3 titleкрасная>/a> a href# classtab-link сolor-blue data-tabsection4 titleярко-синяя>/a> /div> div classmain-slide--text animate-bottom> Футболки с логотипом, являются одним из лучших, проверенных временем, рекламных средств /div> div classmain-slide--price animate-bottom>от 250 руб./div> div classmain-slide--price animate-bottom new-bottom-slider> a classnew-bottom-link href/catalog/futbolki>Подробнее/a> /div> /div> div classtab-content flex relative w-100 h-100> div classtab-pane flex animate-right active data-panesection1> picture> source typeimage/webp data-srcset/content/gifts-theme/slides/main/t-shirts/white-shirts.webp> img data-src/content/gifts-theme/slides/main/t-shirts/white-shirts.png width580px height580px classw-100 swiper-lazy altБелая футболка под логотип> /picture> /div> div classtab-pane flex animate-right data-panesection2> picture> source typeimage/webp data-srcset/content/gifts-theme/slides/main/t-shirts/yellow-shirts.webp> img data-src/content/gifts-theme/slides/main/t-shirts/yellow-shirts.png width580px height580px classw-100 swiper-lazy altЖелтая футболка под логоти > /picture> /div> div classtab-pane flex animate-right data-panesection3> picture> source typeimage/webp data-srcset/content/gifts-theme/slides/main/t-shirts/red-shirts.webp> img data-src/content/gifts-theme/slides/main/t-shirts/red-shirts.png width580px height580px classw-100 swiper-lazy altКрасная футболка под логоти> /picture> /div> div classtab-pane flex animate-right data-panesection4> picture> source typeimage/webp data-srcset/content/gifts-theme/slides/main/t-shirts/blue-shirts.webp> img data-src/content/gifts-theme/slides/main/t-shirts/blue-shirts.png width580px height580px classw-100 swiper-lazy altСиняя футболка под логоти> /picture> /div> /div> /div>/div> --> /div> div classswiper-slide> !-- Слайд 3 --> div classbanner3> div classreklama-banner>Реклама. ООО Панда br> erid: 2VtzqwfPKxA/div> div classblock-banner> div classtitle>еженедельники portobello/div> div classinfo>Более 300 вариантов ежедневников br> в каталоге PandaGifts/div> a hrefhttps://pandagifts.ru/catalog/search?query{%22keyword%22:%22Ежедневники%20Portobello%22} classlink>Выбрать/a> /div>/div>!-- div classcontainer h-100> div classmain-slide--container main-slide--tabContainer main-slide--switching tab-container flex nowrap> div classmain-slide--info> h3 classmain-slide--title animate-bottom>Полезные и «умные» подарки/h3> div classtab-control flex animate-bottom> a href# classtab-link active data-tabsection1> img data-src/content/gifts-theme/slides/main/smart/smart-02-mini.png classswiper-lazy alt> /a> a href# classtab-link data-tabsection2> img data-src/content/gifts-theme/slides/main/smart/smart-01-mini.png classswiper-lazy alt> /a> a href# classtab-link data-tabsection3> img data-src/content/gifts-theme/slides/main/smart/smart-03-mini.png classswiper-lazy alt> /a> /div> div classmain-slide--text animate-bottom> Современные аналоги привычных вещей, с новыми функциональными возможностями /div> div classmain-slide--price animate-bottom>от 2 999 руб./div> div classmain-slide--price animate-bottom new-bottom-slider> a classnew-bottom-link href/catalog/smart-braslety>Подробнее/a> /div> /div> div classtab-content flex relative w-100 h-100> div classtab-pane flex animate-right active data-panesection1> picture> source typeimage/webp data-srcset/content/gifts-theme/slides/main/smart/smart-02.webp> img data-src/content/gifts-theme/slides/main/smart/smart-02.png width580px height580px classw-100 swiper-lazy altУмные фитнес-часы - вид спереди> /picture> /div> div classtab-pane flex animate-right data-panesection2> picture> source typeimage/webp data-srcset/content/gifts-theme/slides/main/smart/smart-01.webp> img data-src/content/gifts-theme/slides/main/smart/smart-01.png width580px height580px classw-100 swiper-lazy altУмные фитнес-часы - вид сбоку> /picture> /div> div classtab-pane flex animate-right data-panesection3> picture> source typeimage/webp data-srcset/content/gifts-theme/slides/main/smart/smart-03.webp> img data-src/content/gifts-theme/slides/main/smart/smart-03.png width580px height580px classw-100 swiper-lazy altУмные фитнес-часы> /picture> /div> /div> /div>/div> --> /div> div classswiper-slide> !-- Слайд 4 --> div classbanner4> div classreklama-banner>Реклама. ООО Панда br> erid: 2VtzqwZR2TG/div> div classblock-banner> div classimages>img src/content/gifts-theme/images/glavnaya-slider/banner04.png>/div> div classblock> div classtitle>Ручки с вашим логотипом/div> div classdesc>В нашем каталоге вы сможете br> найти ручки на любой вкус!/div> a hrefhttps://pandagifts.ru/catalog/ruchki classlink>Смотреть/a> /div> /div>/div>!-- div classcontainer h-100> div classmain-slide--container flex-container nowrap> div classmain-slide--info center> /div> div classmain-slide--cover flex animate-right> picture classmain-slide--image> source typeimage/webp srcset/content/gifts-theme/images/banner.jpg> img src/content/gifts-theme/images/banner.jpg width487px height393px alt> /picture> /div> /div>/div> --> /div> div classswiper-slide> !--Слайд 5 --> div classbanner5> div classreklama-banner>Реклама. ООО Панда br> erid: 2VtzqvvRhfk/div> div classblock-banner> div classtitle>Продукция компании Xiaomi/div> div classdesc>Девайсы известного бренда br> будут с вашим логотипом/div> a hrefhttps://pandagifts.ru/catalog/search?query{%22brand%22:%22Xiaomi%22} target_blank classlink>Выбрать/a> /div> div classimages>img src/content/gifts-theme/images/glavnaya-slider/banner5.png>/div>/div>!-- div classcontainer h-100> div classmain-slide--container flex-container nowrap> div classmain-slide--info center> /div> div classmain-slide--cover flex animate-right> picture classmain-slide--image> source typeimage/webp srcset/content/gifts-theme/images/glavnaya-slider/panda.webp> a hrefhttps://pandagifts.ru/about-us target_blank> img src/content/gifts-theme/images/glavnaya-slider/panda.jpg width1920 height500 altPanda Gifts - делаем бизнес узнаваемым titlePanda Gifts - делаем бизнес узнаваемым border0 classimg-banner-full styleposition: fixed; top: 2px; left: 0px;/> /a> /picture> /div> /div>/div> --> /div> /div>/div> div classcontainer-fluid before-main> !-- div classnew-modal-container> div classnew_window> div classnew_window-text> button classbutton-close>x/button> Более 60 000 наименований! br /> Самостоятельный поиск до 180 минут br /> Подбор нашим маркетологам - 15 мин /div> div idcallModuleContainer>/div> /div>/div>script typetext/javascript> (function () { var feedBackModuleUrl https://www.pixlpark.com/content/js/modules/feedbackmodule.js?v9D9D36536283EF5CBC6E15657191E33A; var contactFeedbackContainer document.getElementById(contactFeedbackContainer); var callbackModuleContainer document.getElementById(callbackModuleContainer); var callModuleContainer document.getElementById(callModuleContainer); function getElementFinderHandler(element, callback) { return function (e) { if(e) e.stopPropagation(); function checkElementInViewport(element) { var rectElement element.getBoundingClientRect(); var wHeight (window.innerHeight || document.documentElement.clientHeight); var wWidth (window.innerWidth || document.documentElement.clientWidth); var fitInVertical (rectElement.top wHeight) && ((rectElement.top + rectElement.height) > 0); var fitInHorizontal (rectElement.left wWidth) && ((rectElement.left + rectElement.width) > 0); return (fitInVertical && fitInHorizontal); } var isVisible checkElementInViewport(element); if (isVisible && typeof callback function) callback(); } } function getOnClickEventHandler(onLoadHandler) { return function (e) { e.stopPropagation(); if (typeof onLoadHandler function) onLoadHandler(); } } function loadSource(url, onLoadHandler) { var scriptElement document.createElement(script); scriptElement.setAttribute(type, text/javascript); document.querySelector(head).appendChild(scriptElement); if (typeof onLoadHandler function) { scriptElement.addEventListener(load, onLoadHandler); } scriptElement.setAttribute(src, url); } // если нужна форма с обратной связью function renderFeedBackModule(container, config ) { if (container null) return; var handler getElementFinderHandler(container, initHandler); handler(); window.addEventListener(scroll, handler); var isComplete false; function initHandler() { window.removeEventListener(scroll, handler); if (isComplete) return if (typeof window.FeedbackModule undefined || window.FeedbackModule null) { loadSource(feedBackModuleUrl, initHandler); return; } var feedbackModule new FeedbackModule(container, { fields: { name: name, label: Ваше имя, placeholder: Иванов Иван, type: text, required: true }, { name: phone, label: Телефон, placeholder: +7 (999) 999 9999, type: text, required: true, mask: +7(###) ###-####, validate: function (str) { if (typeof str ! string) return true; var isPNumber /^\d\d\(\)\ -{4,14}\d$/; str str.replace(/\+/g, ).replace(/-/g, ); var valid isPNumber.test(str); return !!valid; } }, { name: email, label: Ваш e-mail, placeholder: i.ivanov@pixlpark.com, type: email, required: true, },{ name: company, label: Компания, placeholder: pixlpark, type: text, required: false }, { name: message, label: Ваш вопрос, type: multiline }, { name: fileAttach, type: file, label: Прикрепить файл, } , isModal: false, captchaIsEnabled: config.captcha || false, successMessage: Сообщение успешно отправлено!br>Мы свяжемся с вами в течении 15 минут., title: Заказать обратный звонок, submit: Отправить, agreementMessage: true, autocomplete:true, }); isComplete true; } } // если нужна форма заказать звонок function renderCallbackModule(container, config {}) { console.log(config) if (container null) return; var config { agreementMessage: false, lazy: true, isModal: false, captchaIsEnabled: config.captchaIsEnabled }; function initHandler() { if (typeof window.FeedbackModule undefined || window.FeedbackModule null) { loadSource(feedBackModuleUrl, initHandler); return; } var feedbackModuleWriteUs new CallbackModule(container, config); } initHandler(); } renderFeedBackModule(contactFeedbackContainer); renderCallbackModule(callbackModuleContainer, {captchaIsEnabled: true}); renderCallbackModule(callModuleContainer, {captchaIsEnabled: false}); })();/script>-->div classnew-modal-container>script data-b24-forminline/25/pjazpi data-skip-movingtrue>(function(w,d,u){var sd.createElement(script);s.asynctrue;s.srcu+?+(Date.now()/180000|0);var hd.getElementsByTagName(script)0;h.parentNode.insertBefore(s,h);})(window,document,https://cdn-ru.bitrix24.ru/b25472290/crm/form/loader_25.js);/script>/div> /div> div classcontainer-fluid container-wrapper> div classcontainer> !-- Популярные категории -->div classpop-categories row flex mb-80> div classcol-12 center> h2 classmain-title mb-24>Популярные категории/h2> div classmb-32>Сувенирная продукция и подарки с логотипом/div> /div> div classcol-large-6> div classpop-category--item> a href/catalog/posuda?sortPriceDesc classpop-category--link> div classpop-category--imgWrap> picture classpop-category--picture> source typeimage/webp srcset/content/gifts-theme/images/popular/dishe.webp> img src/content/gifts-theme/images/popular/dishe.png width638 height638 classw-100 altПосуда> /picture> /div> div classpop-category--info> h3 classpop-category--title>Посуда/h3> div classpop-category--number>Более 2000 продуктов/div> /div> /a> /div> /div> div classcol-large-6> div classrow flex second-half> div classcol-middle-6 col-small-6> div classpop-category--item> a href/catalog/ejednevniki?sortPriceDesc classpop-category--link> div classpop-category--imgWrap> picture classpop-category--picture> source typeimage/webp srcset/content/gifts-theme/images/popular/notepads.webp> img src/content/gifts-theme/images/popular/notepads.png width307 height307 classw-100 altЕжедневники> /picture> /div> div classpop-category--info> h4 classpop-category--title>Ежедневники/h4> div classpop-category--number>Более 1800 продуктов/div> /div> /a> /div> /div> div classcol-middle-6 col-small-6> div classpop-category--item> a href/catalog/suveniry-k-prazdnikam?sortPriceDesc classpop-category--link> div classpop-category--imgWrap> picture classpop-category--picture> source typeimage/webp srcset/content/gifts-theme/images/popular/christmas-decor.webp> img src/content/gifts-theme/images/popular/christmas-decor.png width307 height307 classw-100 altК праздникам> /picture> /div> div classpop-category--info> h4 classpop-category--title>К праздникам/h4> div classpop-category--number>Более 700 продуктов/div> /div> /a> /div> /div> div classcol-middle-6 col-small-6> div classpop-category--item> a href/catalog/elektronika?sortPriceDesc classpop-category--link> div classpop-category--imgWrap> picture classpop-category--picture> source typeimage/webp srcset/content/gifts-theme/images/popular/flash-drive.webp> img src/content/gifts-theme/images/popular/flash-drive.png width307 height307 classw-100 altЭлектроника> /picture> /div> div classpop-category--info> h4 classpop-category--title>Электроника/h4> div classpop-category--number>Более 3500 продуктов/div> /div> /a> /div> /div> div classcol-middle-6 col-small-6> div classpop-category--item> a href/catalog/promo-odezhda?sortPriceDesc classpop-category--link> div classpop-category--imgWrap> picture classpop-category--picture> source typeimage/webp srcset/content/gifts-theme/images/popular/clothes.webp> img src/content/gifts-theme/images/popular/clothes.png width307 height307 classw-100 altОдежда> /picture> /div> div classpop-category--info> h4 classpop-category--title>Одежда/h4> div classpop-category--number>Более 3800 продуктов/div> /div> /a> /div> /div> /div> /div>/div>!-- Популярные товары -->div classmain-products project111> div classcol-12 center> h3 classmb-24>Популярные товары/h3> /div> div classtab-container> ul classtab-control flex> li classtab-item> a href# classtab-link active data-tabnovelties> span classtab-text>Новинки/span> /a> /li> li classtab-item> a href# classtab-link data-tabrecommended> span classtab-text>Рекомендуемые/span> /a> /li> /ul> div classtab-content slider-row> div classtab-pane active data-panenovelties> div classswiper-container novelties-slider idnovelties-slider> div classswiper-wrapper data-bindforeach:goods> div classswiper-slide> ol classproduct-list> li classproduct-list-item> div classproduct-list-item-wrapper> div classproduct-image-container> a data-bindattr: { href: ProductPageUrl }> img data-bindattr: { src: CoverUrl + ?size1 } alt classswiper-lazy width250 height250> /a> /div> div classproduct-info-container> a data-bindattr: { href: ProductPageUrl } classcategory-title> u data-bindtext: Title>/u> /a> div classcategory-price> span classfrom>от/span> span classvalue data-bindtext: PriceString>/span> /div> div classcategory-info> div classline v-code data-bindvisible: VendorCode ! null> span classnote small>Артикул: /span> span classvalue small data-bindtext: VendorCode>/span> /div> div classline n-stock data-bindvisible: ItemsAvailable ! null> span classnote small>Доступно:/span> span classvalue small data-bindtext: ItemsAvailable>/span> /div> div classline data-bindvisible: Brand ! null> span classnote small>Бренд: /span> span classvalue small data-bindtext: Brand>/span> /div> /div> /div> a hrefjavascript:// classadd-product btn data-bindattr: { data-product-id: Id }> Добавить в корзину /a> /div> /li> /ol> /div> /div>/div>script> (function(){ ko.applyBindings(new GetNovelties(newProducts), document.getElementById(novelties-slider)); })();/script> /div> div classtab-pane data-panerecommended> div classswiper-container recommended-slider idrecommended-slider> div classswiper-wrapper data-bindforeach:goods> div classswiper-slide> ol classproduct-list> li classproduct-list-item> div classproduct-list-item-wrapper> div classproduct-image-container> a data-bindattr: { href: ProductPageUrl }> img data-bindattr: { src: CoverUrl + ?size1 } alt classswiper-lazy> /a> /div> div classproduct-info-container> a data-bindattr: { href: ProductPageUrl } classcategory-title> u data-bindtext: Title>/u> /a> div classcategory-price> span classfrom>от/span> span classvalue data-bindtext: PriceString>/span> /div> div classcategory-info> div classline v-code data-bindvisible: VendorCode ! null> span classnote small>Артикул: /span> span classvalue small data-bindtext: VendorCode>/span> /div> div classline n-stock data-bindvisible: ItemsAvailable ! null> span classnote small>Доступно:/span> span classvalue small data-bindtext: ItemsAvailable>/span> /div> div classline data-bindvisible: Brand ! null> span classnote small>Бренд: /span> span classvalue small data-bindtext: Brand>/span> /div> /div> /div> a hrefjavascript:// classadd-product btn data-bindattr: { data-product-id: Id }> Добавить в корзину /a> /div> /li> /ol> /div> /div>/div>script> (function(){ ko.applyBindings(new GetNovelties(recommendedProducts), document.getElementById(recommended-slider)); })();/script> /div> /div> /div>/div>!-- Отзывы клиентов -->div classwrap-rewiew> iframe srchttps://yandex.ru/maps-reviews-widget/1102404719?comments relnofollow>/iframe> a hrefhttps://yandex.ru/maps/org/pandagifts/1102404719/ relnofollow target_blank> PandaGifts на карте Москвы — Яндекс Карты /a>/div>style> .wrap-rewiew { width: 100%; max-width: 760px; height: 870px; overflow: hidden; position: relative; margin: 30px auto; } .wrap-rewiew iframe { width: 100%; height: 100%; border: none; } .wrap-rewiew a { color: #198cff; font-size: 14px; padding: 0 20px; position: absolute; bottom: 0; width: 100%; text-align: center; left: 0; border: none; }/style>!-- Последние новости -->div classlast-news relative> section classlast-news-section >div classcontainer-fluid container-wrapper>div classcontainer>div classblock-news>h2 classtitle-with-all>Последние новостиa href/news classall desktop>Все новости/a>/h2>div classnews-list>div styledisplay: block>h4>a href/news/pozdravlenie_s_novym_2025_godom>Поздравляем наших клиентов и партнёров с 2025 годом !/a>/h4>div classdate>25.12.2024 13:42/div>/div>div styledisplay: block>h4>a href/news/50115>Поздравляем наших клиентов и партнёров с 2025 годом !/a>/h4>div classdate>25.12.2024 13:28/div>div classnews-block> div classnews-block--wrapper> div classnews-block--date> span classdate--number> 9 /span> br> span classdate--month> апреля /span> !-- Указываем дату --> /div> a classpicture--link hrefhttps://pandagifts.ru/selections/kolonki-sven-s-logotipom> div classnews-block--picture> picture> img src/content/gifts-theme/images/selections/kolonki-sven-s-logotipom/sven-eksklyuziv.jpeg width410 height300 altЛучший эксклюзив. Только для клиентов Panda Gifts!> /picture> !-- Указываем изображение --> /div> div classnews-block--tags> span>Новости/span> !-- Указываем тэги --> /div> /a> div classnews-block--picture-mask> span>/span> /div> h3 classnews-block--title> a hrefhttps://pandagifts.ru/selections/kolonki-sven-s-logotipom classtitle--link> Лучший эксклюзив. Только для клиентов Panda Gifts! !-- Указываем заголовок --> /a> /h3> div classnews-block--description> Специально для рекламного рынка мы совместно с командой SVEN разработали Портативные аккустические системы. !-- Указываем описание --> /div> a hrefhttps://pandagifts.ru/selections/kolonki-sven-s-logotipom classnews-block--link> Читать дальше /a> /div>/div>/div>div styledisplay: block>h4>a href/news/29-maya>Решим HR-задачи с помощью Корпоративного Мерча/a>/h4>div classdate>25.12.2024 13:18/div>div classnews-block> div classnews-block--wrapper> div classnews-block--date> span classdate--number> 19 /span> br> span classdate--month> сентября /span> !-- Указываем дату --> /div> a classpicture--link hrefhttps://blog.pandagifts.ru/25-sentyabrya/> div classnews-block--picture> picture> img src/content/gifts-theme/images/den-otkrytyh-dverey-25-sentyabrya.jpeg width410 height300 altРешим HR-задачи с помощью Корпоративного Мерча> /picture> !-- Указываем изображение --> /div> div classnews-block--tags> span>Новости/span> !-- Указываем тэги --> /div> /a> div classnews-block--picture-mask> span>/span> /div> h3 classnews-block--title> a hrefhttps://blog.pandagifts.ru/25-sentyabrya/ classtitle--link> Решим HR-задачи с помощью Корпоративного Мерча !-- Указываем заголовок --> /a> /h3> div classnews-block--description> PandaGifts приглашает Вас на День Открытых дверей 25 сентября в 10.00 !-- Указываем описание --> /div> a hrefhttps://blog.pandagifts.ru/25-sentyabrya/ classnews-block--link> Читать дальше /a> /div>/div>/div>/div>/div>a classall mobilehref/news>Все новости/a>/div>/div>/div>/section>/div>!-- Наши бренды -->div classslider-row> div classcol-12 center> h3 classmb-24>Наши бренды/h3> /div> !--noindex-->div classbrands-slider swiper-container> /div>!--/noindex-->/div>script> function getBrandsImages(directoryPath, el) { var selector document.querySelector(el); getResourse(/api/cms/directoryFiles?directoryPath + directoryPath + &photolabId + pxp.frontend.frontendId).then((data) > { var wrapper document.createElement(div); wrapper.className swiper-wrapper; for (var i in data) { var item datai; item.trim(); var indexDelete item.indexOf(?); var newstr item.substr(0, indexDelete).split(/); var titleImage newstrnewstr.length-1; var altImage titleImage.slice(0, -5); var link `/catalog/search?query{brand:${altImage.replace(/-/g, %20)}}`; var slides `div classswiper-slide>a classbrands-item flex loading-wheel href${link} title${altImage}>img data-src${datai} width150 height100 classswiper-lazy alt${altImage}>/a>/div>`; wrapper.insertAdjacentHTML(beforeend, slides); } selector.append(wrapper); sliderRender.init(el, {view: 6, speed: 500, middle: 3, small: 2, pagination: false,}); }) } getBrandsImages(/content/gifts-theme/images/brands, .brands-slider);/script> /div> /div> div classcontainer-fluid after-main> script> function PixlparkOverlay() { var self this; self.container document.createElement(div); self.container.className pxp-overlay; self.body document.body; self.body.appendChild(self.container); self.open open; self.close close; function open(cls) { self.container.classList.add(opened); self.body.classList.contains(nav-showed) ? self.body.classList.remove(nav-showed) : false; self.body.classList.add(cls); isClosed(cls); } function close(cls) { self.container.classList.remove(opened); self.body.classList.remove(cls); } function isClosed(cls) { self.container.addEventListener(click, function(){ self.close(cls); }); } } var overlay new PixlparkOverlay();/script>script> function PixlparkModal(config, callback) { var self this; self.container document.getElementById(config.container); self.controls document.querySelectorAll(config.selector); self.modalLoaded false; if (self.container null && self.controls null) return; iterateControls(); function iterateControls() { for (var index 0; index self.controls.length; index++) { self.controlsindex.addEventListener(click, controlHandler); } } function controlHandler(evt) { evt.preventDefault(); self.modalLoaded ? open() : create(); } function create() { callback ? callback(self.container) : false; self.closeButton document.createElement(button); self.closeButton.className icon-times; self.container.appendChild(self.closeButton); overlay.open(config.container); var parent setTimeout(function() {self.container.classList.remove(loading-wheel)}, 400); close(); self.modalLoaded true; } function open() { overlay.open(config.container); close(); } function close() { self.closeButton.addEventListener(click, function(evt) { evt.preventDefault(); overlay.close(config.container); }); } }/script>script> (function () { var tabContainer document.querySelectorAll(.tab-container); (tabContainer.length > 1) ? tabContainer.forEach(function (tab) { switching(tab) }) : switching(tabContainer0); function switching(tab) { if (!tab) return; var tabLink tab.querySelectorAll(.tab-control .tab-link); var tabPane tab.querySelectorAll(.tab-content .tab-pane); for (var index 0, current; index tabLink.length; index++) { current tabLinkindex; current ? current.addEventListener(click, function (evt) { evt.preventDefault(); var link evt.currentTarget; if (link.classList.contains(active)) return; Object.keys(tabPane).forEach(function (key) { var pane tabPanekey; var linkValue link.dataset.tab; var paneValue pane.dataset.pane; if (linkValue paneValue) { removeClasses(tabLink); removeClasses(tabPane); addClasses(pane); addClasses(link); } }, tabPane); }) : false; } } function removeClasses(nodes) { nodes.forEach(function (element) { element.classList.remove(active) }); } function addClasses(element) { element.classList.add(active); } })();/script>script> function getPageCurrent(numberArray) { var location window.location.href, currentUrl location.split(/); return currentUrlnumberArray } function addClassInActive(activeElement) { activeElement.classList.add(active); return false; } function markActiveLink(selectorItem, numberArray) { var categoryLinks document.querySelectorAll(selectorItem), currentPage getPageCurrent(numberArray); for (var i 0; i categoryLinks.length; i++) { var categoryItem categoryLinksi.getAttribute(href), categoryItemLink categoryItem.split(/).pop(); if (currentPage categoryItemLink) { addClassInActive(categoryLinksi) } else { categoryItemLink categoryItem.split(/); if (currentPage categoryItemLink1) { addClassInActive(categoryLinksi) } } } } $(document).ready(function () { markActiveLink(.navigation-menu--link, 3); markActiveLink(.nav-control--link, 3); });/script>script> var sliderRender (function() { var loader null; var swiperUrl https://pandagifts.ru/content/gifts-theme/js/swiper-bundle.min.js?vFE7CF89B65ABD23AE27A6176494AF10A; function SliderRender() { var self this; self.prepareSwiper (function() { if (loader ! null) return loader; return loader new Promise(function(resolve, reject) { if (typeof Swiper function) return resolve(); var script document.createElement(script); document.querySelector(body).appendChild(script); script.addEventListener(load, function() { resolve(); }); script.setAttribute(src, swiperUrl); }); })(); self.init function(selector, config {}) { var container document.querySelector(selector); if (container null) return; self.prepareSwiper.then(function() { var swiper new Swiper(container, { slidesPerView: config.view || 1, grid: { rows: config.column || 1 }, loop: true, spaceBetween: config.between || 15, autoplay: {delay: config.autoplay || 5000}, speed: config.speed || 2000, navigation: { prevEl: create(swiper-button-prev icon-angle-left flex, config.navigation), nextEl: create(swiper-button-next icon-angle-right flex, config.navigation) }, pagination: { el: create(swiper-pagination flex, config.pagination), type: bullets, clickable: true }, watchSlidesProgress: true, effect: config.effect || , lazy: {loadPrevNext: false}, preloadImages: false, breakpoints: { 320: { slidesPerView: config.small || 1, }, 769: { slidesPerView: config.middle || 2, }, 1024: { slidesPerView: config.view || 1, } } }); function create(className, control true) { if (control true) { var element document.createElement(div); element.className className; container.appendChild(element); return element; } } swiper.on(lazyImageReady, function (swiper, slideEl, imageEl) { if (slideEl.querySelector(.loading-wheel)){ slideEl.querySelector(.loading-wheel).classList.remove(loading-wheel); } }); }); } } return new SliderRender(); }());/script>script data-b24-formclick/27/ebjpob data-skip-movingtrue>(function(w,d,u){var sd.createElement(script);s.asynctrue;s.srcu+?+(Date.now()/180000|0);var hd.getElementsByTagName(script)0;h.parentNode.insertBefore(s,h);})(window,document,https://cdn-ru.bitrix24.ru/b25472290/crm/form/loader_27.js);/script>div classcall-fastModule btn flex idquickOrderModuleModal> i classicon-rocket>/i> Запросить расчет /div> /div> div classfooter-pusher>/div> div classaspNetHidden> input typehidden name__VIEWSTATEGENERATOR id__VIEWSTATEGENERATOR valueCA0B0334 />/div>/form> footer classcontainer-fluid> div classcontainer> div classrow> div classtop-footer flex> div classcol-large-3 col-middle-6> div classtop-footer--logo flex> a href/ title classlogo-wrapper> img src/content/gifts-theme/logo-panda.svg altПодарки и сувенирная продукция для бизнеса titleПодарки и сувенирная продукция для бизнеса в Москве width200px height40px classw-100> /a> /div> div classtop-footer--description> p>Делаем бизнес узнаваемым./p> /div> ul classtop-footer--contacts-list> li classtop-footer--contacts-item> a href/contact-us classtop-footer--link titleАдрес> i classicon-map-loc>/i> span classcontacts-item--title>г. Москва, Зубарев пер. 15 корп. 1, БЦ Чайка Плаза/span> /a> /li> li classtop-footer--contacts-item> a classsite-phone top-footer--link titleТелефон> i classicon-phone>/i> span classcontacts-item--title>+7 800 505-98-76/span> /a> /li> li classtop-footer--contacts-item> a classsite-phone top-footer--link titleТелефон> i classicon-phone>/i> span classcontacts-item--title>+7 495 792-56-69/span> /a> /li> li classtop-footer--contacts-item> a hrefmailto:info@pandagifts.ru classtop-footer--link site-email titleE-mail> i classicon-message3>/i> span classcontacts-item--title>info@pandagifts.ru/span> /a> /li> a classheader_telegram icons-head hrefhttps://t.me/pandagiftswelcome target_blank titletelegram relnofollow>img src/content/gifts-theme/icons/telegram.png altТелеграм classheader-messeng>/a> /ul> /div> div classcol-large-5 col-middle-6 > div classrow> div classflex footer--menu> div classcol-large-4 col-middle-4> h6 classtop-footer--subtitle flex>Каталог i classicon-angle-down flex>/i> /h6> ul classtop-footer--list> li classtop-footer--item>a href/catalog/promo-odezhda classtop-footer--link>Одежда/a> /li> li classtop-footer--item>a href/catalog/podarochnye-nabory classtop-footer--link>Наборы/a>/li> li classtop-footer--item>a href/catalog/elektronika classtop-footer--link>Электроника/a> /li> li classtop-footer--item>a href/catalog/ruchki classtop-footer--link>Ручки/a> /li> li classtop-footer--item>a href/catalog/ejednevniki classtop-footer--link>Ежедневники/a> /li> li classtop-footer--item>a href/catalog classtop-footer--link>Другая продукция/a> /li> /ul> /div> div classcol-large-4 col-middle-4> h6 classtop-footer--subtitle flex>Информация i classicon-angle-down flex>/i>/h6> ul classtop-footer--list> li classtop-footer--item>a href/novelties classtop-footer--link>Новинки/a> /li> li classtop-footer--item>a href/selections classtop-footer--link>Подборки/a> /li> li classtop-footer--item>a href/application-types classtop-footer--link>Виды нанесения/a>/li> li classtop-footer--item>a href/nanesenie-logo classtop-footer--link>Нанесение по видам продукции/a>/li> li classtop-footer--item>a href/individualnoe-izgotovlenie classtop-footer--link>Индивидуальное изготовление/a>/li> li classtop-footer--item>a href/useful/clothing_size classtop-footer--link>Как подобрать размер одежды?/a>/li> li classtop-footer--item>a href/portfolio classtop-footer--link>Портфолио/a> /li> li classtop-footer--item>a hrefhttps://blog.pandagifts.ru/category/novosti/ classtop-footer--link>Новости/a>/li> !--li classtop-footer--item>a href/guestbook classtop-footer--link>Oтзывы/a>--> /li> /ul> /div> div classcol-large-4 col-middle-4> h6 classtop-footer--subtitle flex>О компании i classicon-angle-down flex>/i>/h6> ul classtop-footer--list> li classtop-footer--item>a href/about-us classtop-footer--link>О нас/a>/li> li classtop-footer--item>a href/reviews classtop-footer--link>Отзывы/a>/li> li classtop-footer--item>a href/contact-us classtop-footer--link>Контакты/a> /li> li classtop-footer--item>a href/requisites classtop-footer--link>Реквизиты/a> /li> li classtop-footer--item>a href/delivery-and-payment classtop-footer--link>Доставка и оплата/a> /li> li classtop-footer--item>a href/feedback classtop-footer--link>Обратная связь/a> /li> li classtop-footer--item>a href/faq classtop-footer--link>FAQ/a>/li> li classtop-footer--item>a hrefhttps://blog.pandagifts.ru classtop-footer--link>Блог/a>/li> /ul> /div> /div> /div> /div> /div> /div>/div>div classbottom-footer> div classcontainer> div classrow> !--div classbottom-footer--line>/div>--> div classbottom-footer--copyright flex> p classcol-4 footer-copyright--item footer-copyright--development> span>/span> /p> div classcol-3 footer-copyright--item footer-copyright--pay> img classcopyright-pay--picture src/content/gifts-theme/images/footer/paylogo.png altПлатежные системы Visa, MasterCard, Мир.> /div> div classcol-5 footer-copyright--item footer-copyright--right-block> div classfooter-copyright--link-block> a href/policy classtop-footer--link>О персональных данных/a> /div> div classfooter-copyright--link-block> a href/terms classtop-footer--link>Пользовательское соглашение/a> /div> div classfooter-copyright--brand> © span classcurrent-year>/span> «PandaGifts» /div> /div> /div> /div> /div>/div>button idup-btn aria-labelПрокрутить вверх страницы>/button>script typetext/javascript> $(document).ready(function () { $(.top-footer--subtitle).on(click, function () { $(this).toggleClass(open); $(this).next(.top-footer--list).toggleClass(selected); }); /* Up-btn */ const upBtn $(#up-btn); $(window).on(scroll, function () { if ($(this).scrollTop() > 200) { upBtn.fadeIn(); } else { upBtn.fadeOut(); } }); upBtn.on(click, function () { $(html:not(:animated),body:not(:animated)).animate({ scrollTop: 0 }, 600); }); /* Up-btn END */ });/script>!--Цели метрики-->script typetext/javascript> document.addEventListener(DOMContentLoaded, function() { var quickOrderModuleModalToggle document.querySelector(#quickOrderModuleModal); if (document.body.contains(quickOrderModuleModalToggle)) { quickOrderModuleModalToggle.addEventListener(click, function () { ym(91635999, reachGoal, click-zakazat-rashet); }); } var orderFormSubmitBtn document.querySelector(.order-form .custom-order__control-selector .btn); if (document.body.contains(orderFormSubmitBtn)) { orderFormSubmitBtn.addEventListener(click, function () { ym(91635999,reachGoal,send-zakazat-rashet); }); } var callContactFeedbackBtn document.querySelector(.write-us .callContactFeedback); if (document.body.contains(callContactFeedbackBtn)) { callContactFeedbackBtn.addEventListener(click, function () { ym(91635999, reachGoal, click-ostivat-zayavku); }); } var contactFeedbackContainerSubmitBtn document.querySelector(#contactFeedback .button-wrapper > .btn); if (document.body.contains(contactFeedbackContainerSubmitBtn)) { contactFeedbackContainerSubmitBtn.addEventListener(click, function () { ym(91635999,reachGoal,send-ostivat-zayavku); }); } var callModuleContainerSubmitBtn document.querySelector(#callModuleContainer .button-wrapper > .btn); if (document.body.contains(callModuleContainerSubmitBtn)) { callModuleContainerSubmitBtn.addEventListener(click, function () { ym(91635999,reachGoal,send-modal-form); }); } var productListAddProductBtn document.querySelectorAll(.product-list-item-wrapper .add-product.btn); if (document.body.contains(productListAddProductBtn0)) { productListAddProductBtn.forEach(function (el) { el.addEventListener(click, function () { ym(91635999,reachGoal,click-go-cart); }); }); } var productOrderBtnAddToCart document.querySelector(.product-order .btn-add-to-cart); if (document.body.contains(productOrderBtnAddToCart)) { productOrderBtnAddToCart.addEventListener(click, function () { ym(91635999,reachGoal,click-go-cart); }); } var backetUserActionsCart document.querySelector(.backet-userActions--cart); if (document.body.contains(backetUserActionsCart)) { backetUserActionsCart.addEventListener(click, function () { ym(91635999,reachGoal,click-go-cart); }); } var quickOrderCreateCall document.querySelector(#quickOrderCreateCall); if (document.body.contains(quickOrderCreateCall)) { quickOrderCreateCall.addEventListener(click, function () { ym(91635999,reachGoal,click-checkout); }); } });/script>!--Цели метрики КОНЕЦ-->script> (function(w,d,u){ var sd.createElement(script);s.asynctrue;s.srcu+?+(Date.now()/60000|0); var hd.getElementsByTagName(script)0;h.parentNode.insertBefore(s,h); })(window,document,https://cdn-ru.bitrix24.ru/b25472290/crm/site_button/loader_1_6439h2.js);/script>/footer>!-- Google Tag Manager (noscript) -->noscript>iframe srchttps://www.googletagmanager.com/ns.html?idGTM-T6ZXKKBheight0 width0 styledisplay:none;visibility:hidden>/iframe>/noscript>!-- End Google Tag Manager (noscript) -->script>(function(w,d,u){var sd.createElement(script);s.asynctrue;s.srcu+?+(Date.now()/60000|0);var hd.getElementsByTagName(script)0;h.parentNode.insertBefore(s,h);})(window,document,https://cdn-ru.bitrix24.ru/b25472290/crm/tag/call.tracker.js);/script>script typeapplication/ld+json> { @context: https://schema.org, @type: Organization, name: PandaGifts - Сувенирная продукция с логотипом, url: https://pandagifts.ru/, sameAs: https://t.me/pandagiftswelcome, logo: { @type: ImageObject, image: https://pandagifts.ru/content/gifts-theme/logo-panda.svg, url: https://pandagifts.ru/content/gifts-theme/logo-panda.svg }, address: { @type: PostalAddress, postalCode: 129164, addressLocality: г. Москва, streetAddress: Зубарев пер. 15 корп. 1, БЦ \Зубаревский\ }, email: info@pandagifts.ru, telephone: +78005059876,+74957925669 }/script>script typeapplication/ld+json> { @context: https://schema.org, @type: LocalBusiness, @id: https://pandagifts.ru/, name: Сувенирная продукция с логотипом, image: https://pandagifts.ru/content/gifts-theme/logo-panda.svg, priceRange: от 10 до 100000, currenciesAccepted: RU, paymentAccepted: Visa, Master Card, Мир, openingHours: Пн-Чт 09:30–18:30; Пт 09:30–17:30, address: { @type: PostalAddress, streetAddress: Зубарев пер. 15 корп. 1, БЦ \Зубаревский\, addressCountry: RU, addressLocality: г. Москва, addressRegion: Московская область, postalCode: 129164 }, email: info@pandagifts.ru, telephone: +78005059876 }/script> script> (function(){ sliderRender.init(.main-slider, {effect: fade, middle: 1, speed: 900}); sliderRender.init(.novelties-slider, {pagination: false, view: 4, column: 2, speed: 800}); sliderRender.init(.recommended-slider, {pagination: false, view: 4, column: 2, speed: 800}); sliderRender.init(.rewiew-slider, {pagination: false, view: 2, speed: 500}); })(); /script>!-- Yandex.Metrika counter -->script> (function(m,e,t,r,i,k,a){mimi||function(){(mi.ami.a||).push(arguments)}; mi.l1*new Date(); for (var j 0; j document.scripts.length; j++) {if (document.scriptsj.src r) { return; }} ke.createElement(t),ae.getElementsByTagName(t)0,k.async1,k.srcr,a.parentNode.insertBefore(k,a)}) (window, document, script, https://mc.yandex.ru/metrika/tag.js, ym); ym(91635999, init, { clickmap:true, trackLinks:true, accurateTrackBounce:true, webvisor:true, ecommerce:dataLayer });/script>!-- /Yandex.Metrika counter -->div classpop-up right loading-wheel idshopping-modal> div idbasketContainer classrelative> h3 classbacket-title>Корзина/h3> div data-bindvisible: !isEmpty()> div classbacket-empty flex> i classbacket-empty--icon icon-shopping-cart mb-24>/i> div classbacket-empty--title mb-24 bold>Ваша корзина пуста/div> div classcenter mb-24>Начните с главной страницы или воспользуйтесь поиском по каталогу/div> div classbacket-userActions>a href/user/cart classbacket-userActions--cart btn>Перейти в корзину/a>/div> /div> /div> div classbacket flex data-bindvisible: isEmpty()> div classbacket-contents w-100> ul classbacket-list data-bindforeach:basket> li classbacket-list--item relative> a classbacket-item--link flex data-bindattr: { href: ProductUrl }> div classbacket-item--cover> img data-bindattr: { src: PreviewUrl } classw-100> /div> div classbacket-item--info> div classbacket-item--title data-bindtext: Title>/div> div classbacket-item--countPrice> span classbacket-item--quantity data-bindtext: Quantity>/span> x span classbacket-item--price>u data-bindtext: ItemPrice>/u> руб./span> /div> /div> /a> div classbacket-item--delete icon-times data-bindclick: $root.deleteGfItem titleудалить>/div> /li> /ul> /div> div classbacket-orderInfo w-100> div classbacket-total flex> span classbacket-total--title uppertext>Итого:/span> span classbacket-total--price>u data-bindtext: totalPrice>/u> руб./span> /div> div classbacket-minimum data-bindvisible: balance() > 0> div classmin-sum>Минимальная сумма для заказа: span classbacket-minimum--price>span data-bindtext: minSumOrder>/span> руб./span>/div> span>До минимальной суммы осталось: /span> span classbacket-minimum--price>u data-bindtext: balance>/u> руб./span> div classbacket-progress--wrap flex> div classbacket-progress--area>div classbacket-progress---bar data-bindstyle: {width:progress}>/div>/div> div classbacket-progress--text data-bindtext: progress>/div> /div> /div> div classbacket-userActions> a href/user/cart classbacket-userActions--cart btn btn-default>Перейти в корзину/a> /div> /div> /div> /div>/div>script> (function(){ new PixlparkModal({selector: .shopping-cart, container: shopping-modal}); // вызов окна корзины })();/script>script> function GetShoppingCart(){ var self this; self.gfItemsCount ko.observable(0); self.minSumOrder ko.observable(false); self.basket ko.observableArray(); self.isEmpty ko.observable(false); self.totalPrice ko.observable(false); self.balance ko.observable(false); self.progress ko.observable(false); function setGfItemsCount(count){ document.querySelectorAll(.added_card).forEach(element > {element.textContent count}) } function setMinSumOrder(minSumOrder){ (minSumOrder > 0) ? document.querySelector(.min_sum).textContent minSumOrder : false } function loadBasketRequest(){ getResourse(/api/cart/gfItems).then((data) > { var basket ; self.gfItemsCount data.Items.length; data.Items.forEach(element > {basket.push(element)}); self.totalPrice((data.TotalPrice).toFixed(2)); self.minSumOrder(data.MinPrice); self.balance((self.minSumOrder() - data.TotalPrice).toFixed(2)); self.progress(((data.TotalPrice / self.minSumOrder()) * 100).toFixed(2) + %); self.basket(basket); self.isEmpty(self.gfItemsCount); setGfItemsCount(self.gfItemsCount); setMinSumOrder(self.minSumOrder()); $(.backet-minimum).clone().addClass(backet-minimum--cart).prependTo(.shopping-cart-container .shopping-cart-items-wrapper); }); //setMinSumOrder(5000); }; function sendGfItem(element) { var id element.dataset.productId; var url /api/catalog/cart/add?photolabId + pxp.frontend.frontendId + &productId + parseInt(id); sendResourse(url).then(() > loadBasketRequest()); } function addGfItem(){ var messageAdded document.createElement(div); messageAdded.className message-added flex; messageAdded.innerHTML i classicon-check-circle>/i>Товар успешно добавлен в корзину; document.body.appendChild(messageAdded); function addGfItemToTime() { var $addControls document.querySelectorAll(.add-product); var searchPage document.location; if (searchPage.pathname /catalog/search) return false; $addControls.forEach(element > { function clickAddHandler(event){ event.preventDefault(); // add alert messageAdded.classList.add(open); setTimeout(function(){ messageAdded.classList.remove(open); }, 2000); sendGfItem(event.target); } element.addEventListener(click, clickAddHandler, false); }) clearTimeout(timeoutAdd); } var timeoutAdd setTimeout(addGfItemToTime, 800); } self.deleteGfItem function(obj, event) { if (confirm(Вы уверены, что хотите удалить данный товар из корзины?)) { getResourse(/api/cart/delete?id + obj.Id + &photolabId + pxp.frontend.frontendId).then((data) > {loadBasketRequest()}) } } loadBasketRequest(); addGfItem(); } ko.applyBindings(new GetShoppingCart(), document.getElementById(basketContainer));/script>script> function SearchCatalog(selector, config) { var self this; self.$el selector self.options config; self.title self.options.title; self.selectedId self.options.selectedId; self.categories self.options.data; self.$value; self.defaultValue; render(); setup(); function render() { self.$el.classList.add(custom-select); self.$el.appendChild(getTemplate(self.categories, self.title, self.selectedId)); show(self.$el); } function setup() { self.$el.addEventListener(click, function(e) { var type e.target.dataset.type; if (type input || type icon) { toggle() } else if (type item) { select(e.target.dataset.id) } else if (type backdrop) { close() } }); } function getTemplate(categories, title, selectedId) { var s_container create(div, custom-select--container); var s_backdrop create(div, custom-select--backdrop, backdrop); var s_input create(div, custom-select--input, input); var s_dropdown create(ul, custom-select--dropdown); s_dropdown.classList.add(pxp-dropdown) self.defaultValue create(li, custom-select--item, item); self.defaultValue.setAttribute(data-id, 0); self.defaultValue.textContent title; s_dropdown.appendChild(self.defaultValue); for (var index 0, current; index categories.length; index++) { var element create(li, custom-select--item, item); current categoriesindex; if (self.selectedId current.id) { title current.category; element.classList.add(selected); } else if (self.selectedId || !self.selectedId){ hide(s_dropdown.firstChild); } element.textContent current.category; element.setAttribute(data-id, current.id); s_dropdown.appendChild(element); } s_input.textContent title; s_input.classList.add(flex); self.$value s_input; s_container.appendChild(s_backdrop); s_container.appendChild(s_input); s_container.appendChild(s_dropdown); function create(tagName, classname, attribute) { var element document.createElement(tagName); classname ? element.className classname : false; attribute ? element.setAttribute(data-type, attribute) : false; return element; } return s_container; } function isOpen() { return self.$el.classList.contains(open); } function toggle() { isOpen() ? close() : open(); } function open() { self.$el.classList.add(open); } function close() { self.$el.classList.remove(open); } function hide(element){ element.style.display none; } function show(element){ element.style.display inherit; } function current() { var current; self.categories.find(function(item){ if (item.id self.selectedId && self.selectedId ! 0) { current item.category; show(self.defaultValue); return; } else if (self.selectedId 0){ current self.defaultValue.textContent; hide(self.defaultValue); } }); console.log(current) return current; } function select(id) { self.selectedId id; console.log(self.$value.textContent) self.$value.textContent current(); self.$el.querySelectorAll(data-typeitem).forEach(function(element){ element.classList.remove(selected) }); self.$el.querySelector(data-id + + id + + ).classList.add(selected); close(); } }/script>script> function SearchModel(container, isDesctop) { if (!ko.bindingHandlers.enterkey) { ko.bindingHandlers.enterkey { init: function (element, valueAccessor, allBindings, viewModel) { var callback valueAccessor(); $(element).keypress(function (event) { var keyCode (event.which ? event.which : event.keyCode); if (keyCode 13) { callback.call(viewModel); return false; } return true; }); } }; } if (typeof container undefined || !(container instanceof Element)) return; var self this; searchid 2312919; //ID яндекс поиска self.isGifts ko.observable(_isGifts()); self.placeholder ko.observable(_getPlaceholder()); self.query ko.observable(_getQuery()); self.submit submit; self.isError ko.observable(false); self.isDisabled ko.observable(false); self.onEnter _onEnterHandler; self.categories ko.observable(false); function generateSearchWrapper() { var input document.createElement(input); var button document.createElement(button); var icon document.createElement(i); var catalog document.createElement(div); input.className search-input flex; input.type search; input.dataset.bind textInput:query, enterkey: submit, attr: {placeholder: placeholder}; button.className search-button flex; button.dataset.bind click:submit, disable: isDisabled; button.type button; icon.className icon-search; catalog.className search-catalogs flex; button.appendChild(icon); container.appendChild(input); container.appendChild(catalog); container.appendChild(button); container.className flex-container search-wrapper; var getCategoriesUrl /api/catalog/categories?photolabId; getCategoriesUrl + pxp.frontend.frontendId; isDesctop ? $.getJSON(getCategoriesUrl, onSuccessListener) : false; function _getQueryCategory() { var urlSearchParams new URLSearchParams(window.location.search); var value self.isGifts() ? JSON.parse(urlSearchParams.get(query)) ! null ? JSON.parse(urlSearchParams.get(query)).categoryId : : urlSearchParams.get(gsearch); return value; } function onSuccessListener(categories) { var s_categories ; for (var i 0; i categories.length; i++){ s_categoriesi {id : categoriesi.Id, category : categoriesi.Caption} } self.categories new SearchCatalog(catalog, { title: Выберите категорию, selectedId: _getQueryCategory(), data: s_categories }); } return container; } function _getPlaceholder() { return self.isGifts() ? Поиск по каталогу : Поиск по сайту; } function _isGifts() { var giftsContainer document.querySelector(#searchCatalog); return giftsContainer ! null; } function _getQuery() { var urlSearchParams new URLSearchParams(window.location.search); var value self.isGifts() ? JSON.parse(urlSearchParams.get(query)) ! null ? JSON.parse(urlSearchParams.get(query)).keyword : : urlSearchParams.get(gsearch); return value; } function submit(){ if (self.isError()) return; var query self.query().trim(); if (!query.length > 0){ self.isError(true); self.isDisabled(true); self.placeholder(Вы не заполнили поле) setTimeout(function () { self.placeholder(_getPlaceholder()); self.isError(false); self.isDisabled(false); }, 1000); return; } redirect(query); } function redirect(query){ self.isDisabled(true); self.isGifts() ? window.location.href /catalog/search?query{+requestText(query)+} : window.location.href /search?searchid + searchid + &text + query + &web0; } function requestText(query) { var request {}; var text ; var catId self.categories.selectedId ? self.categories.selectedId : null; query ? request.keyword query : false; catId ? request.categoryId catId : false; for (var key in request) { text + +key+:+requestkey+,; } return text.slice(0, -1); // обрезаем запятую } function _onEnterHandler(model, event){ if (event.keyCode 13) self.submit(); return true; } var wrapper generateSearchWrapper(); ko.applyBindings(self, wrapper); } isMobile ? new SearchModel(document.getElementById(searchCatalogMobile), false) : new SearchModel(document.getElementById(searchCatalog), true); /script>script typetext/javascript> (function () { var dinamicCategories new DinamicCategoriesMenu(), dinamicCategoriesElement document.getElementById(dinamicCategoriesMenu); ko.applyBindings(dinamicCategories, dinamicCategoriesElement); })(); function DinamicCategoriesMenu(ids) { var menu this, // текущий inlineCategories ko.observableArray(); menu.categories ko.computed(getCategories); init(); function init() { var getCategoriesUrl /api/catalog/groupedCategories?photolabId; getCategoriesUrl + pxp.frontend.frontendId; $.getJSON(getCategoriesUrl, onSuccessListener); function changeImage(categories) { var arr categories; for (var i 0; i arr.length; i++) { var category arri; var name category.Url.replace(/catalog/, ); category.Image /content/images/gifts/menu-catalog-icon3.svg# + name; } return arr; } function onSuccessListener(categories) { inlineCategories(changeImage(categories)); var navigation new ShowListsController({ parentSelector: .navigation-menu, controlList: { element: document.querySelector(.nav-control--list), attribute: data-cat, activeClass: nav-control--active }, controledList: { element: document.querySelector(.nav-controled--list), attribute: data-sub, activeClass: nav-controled--active } }) } }; function getCategories() { var categories inlineCategories(); if (!(ids instanceof Array && !!ids.length)) categories; var selectedCategories new Array(), result new Array(), categoriesLength categories.length, idsLength ids.length, allCatsCategory new DinamycCategory(), allCatsWrapper allCatsCategory.Subcategories, index, selectedCategoriesLength, selectedCatIndex; for (index 0; index categoriesLength; ++index) { var categoryData categoriesindex, category new DinamycCategory(categoryData, allCatsWrapper); } selectedCategoriesLength selectedCategories.length; if (!selectedCategoriesLength) return categories; for (index 0; index idsLength; ++index) { var id idsindex; for (selectedCatIndex 0; selectedCatIndex selectedCategoriesLength; ++selectedCatIndex) { var selectedCategory selectedCategoriesselectedCatIndex; if (selectedCategory.Id id) result.push(selectedCategory); } } result.push(allCatsCategory); return result; function DinamycCategory(data, dataWrapper) { var category this; category.Id 0; category.Url /catalog; category.Caption Все продукты; category.Title ko.observable(category.Caption); category.Image ko.observable(category.Image); category.Icon ko.observable(category.Image); category.Subcategories new Array(); init(); function init() { if (!(data instanceof Object) || data null) return; if (ids.indexOf(data.Id) > -1) { selectedCategories.push(category); } else { dataWrapper.push(category); } for (var key in category) { if (category.hasOwnProperty(key) && data.hasOwnProperty(key)) { if (key Subcategories) { processSubcategories(datakey); continue; } categorykey datakey; } } category.Title(category.Caption); category.Icon(category.Image); } function processSubcategories(subcategories) { if (!subcategories) return; var subcategoriesLength subcategories.length, categoryWrapper category.Subcategories, subcategoryIndex; for (subcategoryIndex 0; subcategoryIndex subcategoriesLength; ++subcategoryIndex) { var subcategoryData subcategoriessubcategoryIndex, subcategory new DinamycCategory(subcategoryData, categoryWrapper); } } } } }/script>!-- new -->style> .nav>li:hover>.dropdown-menu { display: block } .nav > li:nth-child(n+2):last-child .dropdown-menu, .nav > li:nth-child(n+3):nth-last-child(-n+2) .dropdown-menu, .nav > li:nth-child(n+4):nth-last-child(-n+3) .dropdown-menu, .nav > li:nth-child(n+5):nth-last-child(-n+4) .dropdown-menu, .nav > li:nth-child(n+5):nth-last-child(-n+5) .dropdown-menu{ left: auto!important; right: 0!important; } .nav > li:nth-child(n+2):last-child .dropdown-menu:before, .nav > li:nth-child(n+3):nth-last-child(-n+2) .dropdown-menu:before, .nav > li:nth-child(n+4):nth-last-child(-n+3) .dropdown-menu:before, .nav > li:nth-child(n+5):nth-last-child(-n+4) .dropdown-menu:before, .nav > li:nth-child(n+5):nth-last-child(-n+5) .dropdown-menu:before{ left: auto; right: 40px; } @media screen and (max-width: 952px){ .nav>li:hover>.dropdown-menu { display: none !important; } }/style>script> (function() { if (undefined ! typeof window && window.addEventListener) { var e Object.create(null), l, d function() { clearTimeout(l); l setTimeout(n, 100) }, m function() {}, t function() { window.addEventListener(resize, d, !1); window.addEventListener(orientationchange, d, !1); if (window.MutationObserver) { var k new MutationObserver(d); k.observe(document.documentElement, { childList: !0, subtree: !0, attributes: !0 }); m function() { try { k.disconnect(), window.removeEventListener(resize, d, !1), window.removeEventListener(orientationchange, d, !1) } catch (v) {} } } else document.documentElement.addEventListener(DOMSubtreeModified, d, !1), m function() { document.documentElement.removeEventListener(DOMSubtreeModified, d, !1); window.removeEventListener(resize, d, !1); window.removeEventListener(orientationchange, d, !1) } }, u function(k) { function e(a) { if (void 0 ! a.protocol) var c a; else c document.createElement(a), c.href a; return c.protocol.replace(/:/g, ) + c.host } if (window.XMLHttpRequest) { var d new XMLHttpRequest; var m e(location); k e(k); d void 0 d.withCredentials && ! k && k ! m ? XDomainRequest || void 0 : XMLHttpRequest } return d }; var n function() { function d() { --q; 0 q && (m(), t()) } function l(a) { return function() { !0 ! ea.base && (a.useEl.setAttributeNS(http://www.w3.org/1999/xlink, xlink:href, # + a.hash), a.useEl.hasAttribute(href) && a.useEl.setAttribute(href, # + a.hash)) } } function p(a) { return function() { var c document.body , b document.createElement(x); a.onload null; b.innerHTML a.responseText; if (b b.getElementsByTagName(svg)0) b.setAttribute(aria-hidden, true), b.style.position absolute, b.style.width 0, b.style.height 0, b.style.overflow hidden, c.insertBefore(b, c.firstChild); d() } } function n(a) { return function() { a.onerror null; a.ontimeout null; d() } } var a, c, q 0; m(); var f document.getElementsByTagName(use); for (c 0; c f.length; c + 1) { try { var g fc.getBoundingClientRect() } catch (w) { g !1 } var h (a fc.getAttribute(href) || fc.getAttributeNS(http://www.w3.org/1999/xlink, href) || fc.getAttribute(xlink:href)) && a.split ? a.split(#) : , ; var b h0; h h1; var r g && 0 g.left && 0 g.right && 0 g.top && 0 g.bottom; g && 0 g.width && 0 g.height && !r ? (fc.hasAttribute(href) && fc.setAttributeNS(http://www.w3.org/1999/xlink, xlink:href, a), b.length && (a eb, !0 ! a && setTimeout(l({ useEl: fc, base: b, hash: h }), 0), void 0 a && (h u(b), void 0 ! h && (a new h, eb a, a.onload p(a), a.onerror n(a), a.ontimeout n(a), a.open(GET, b), a.send(), q + 1)))) : r ? b.length && eb && setTimeout(l({ useEl: fc, base: b, hash: h }), 0) : void 0 eb ? eb !0 : eb.onload && (eb.abort(), delete eb.onload, eb !0) } f ; q + 1; d() }; var p function() { window.removeEventListener(load, p, !1); l setTimeout(n, 0) }; complete ! document.readyState ? window.addEventListener(load, p, !1) : p() } } )();/script>script> function ShowListsController(settings) { var controlItems settings.controlList.element.children, controlItemsLength controlItems.length, controledItems settings.controledList.element.children, controledItemsLength controledItems.length, parentControls document.querySelector(settings.parentSelector); settings.controlList.element.childNodes.forEach(addControlEvents); parentControls.addEventListener(mouseenter, function(){ parentControls.classList.add(is-actived); }); parentControls.addEventListener(mouseleave, function(){ setTimeout(() > parentControls.classList.remove(is-actived), 1500); }); function addControlEvents(element) { element.addEventListener(mouseenter, chooseControlItem.bind(null, element)) } function chooseControlItem(element) { var controlAttributeValue element.getAttribute(settings.controlList.attribute), controledItem getControledItem(controlAttributeValue); toggleClassLists(element, controledItem); } function getControledItem(searchAttributeValue) { if (!searchAttributeValue) return null; for (var i 0; i controledItemsLength; ++i) { var controledItem controledItemsi, attributeValue controledItem.getAttribute(settings.controledList.attribute); if (attributeValue ! searchAttributeValue) continue; return controledItem; } return null; } function toggleClassLists(control, controlled) { if (!controlled) return; var i 0; for (i 0; i controlItemsLength; ++i) dropControlActiveClass(controlItemsi); for (i 0; i controledItemsLength; ++i) dropControledActiveClass(controledItemsi); setControlActiveClass(control); setControledActiveClass(controlled); } function dropControlActiveClass(element) { var activeClass settings.controlList.activeClass; element.classList.remove(activeClass); } function dropControledActiveClass(element) { var activeClass settings.controledList.activeClass; element.classList.remove(activeClass); } function setControlActiveClass(element) { var activeClass settings.controlList.activeClass; element.classList.add(activeClass); } function setControledActiveClass(element) { var activeClass settings.controledList.activeClass; element.classList.add(activeClass); } } $(function() { $(.nav-mobile).click(function() {overlay.open(nav-showed); return false; }); });/script>script> const header document.querySelector(header); const scrollUp scroll-up; const scrollDown scroll-down; let lastScroll 0; window.addEventListener(scroll, () > { const currentScroll window.pageYOffset; if (currentScroll 200) { header.classList.remove(scrollUp); return; } if (currentScroll > lastScroll && !header.classList.contains(scrollDown)) { // down header.classList.remove(scrollUp); header.classList.add(scrollDown); } else if (currentScroll lastScroll && header.classList.contains(scrollDown)) { // up header.classList.remove(scrollDown); header.classList.add(scrollUp); } lastScroll currentScroll;}); /script>script> var phoneNumber document.querySelectorAll(.site-phone); if (phoneNumber) { for (var i 0; i phoneNumber.length; i++) { phoneNoSpacesText phoneNumberi; var phoneNoSpaces phoneNoSpacesText.textContent; phoneNoSpaces phoneNoSpaces.replace(/\s+/g, ); phoneNoSpaces phoneNoSpaces.replace(/\-/g, ); phoneNumberi.setAttribute(href, `tel:${phoneNoSpaces}`); } }/script>script typetext/javascript> $(#faqItems li > a.semilink).click(function () { $(this).siblings(.faq-answer).toggle(); $(this).parent().toggleClass(selected); });/script>script>$(#show-navigation-submenu).mouseover(function(){$(#navigation-submenu).addClass(open);});$(#show-navigation-submenu).mouseleave(function(){$(#navigation-submenu).removeClass(open);});$(#show-navigation-submenu).click(function(){ $(#navigation-submenu).toggleClass(mobi-open);});/script>script> $(function(){ (document.referrer && document.referrer https://gifts.pixlpark.ru/checkout) ? checkUserAuth() : false; function checkUserAuth(){ if (!pxp.user.isAnonymous && pxp.user.userId ! null) $(#ctl00_cphMainPanel_butGoToCheckout).click(); } });/script>script> document.querySelector(.current-year).innerHTML new Date().getFullYear();/script>script> $(function () { const footerLinks document.querySelectorAll( .top-footer--item .top-footer--link ); const navigationMenuLinks document.querySelectorAll( .navigation-menu--link ); const addNonClickableLinks (links) > { links.forEach((link) > { if (window.location.href link.href) { link.classList.add(non-clickable); } }); }; setTimeout(function () { const navControlLinks document.querySelectorAll(.nav-control--link); addNonClickableLinks(navControlLinks); }, 800); addNonClickableLinks(footerLinks); addNonClickableLinks(navigationMenuLinks); });/script>div classpop-up right loading-wheel idauth-wrapper> div idauthContainer>/div> div classtransfer-registration flex> i classregistration-icon icon-user-circle>/i> div classregistration-text>Еще не регистрировались?/div> a href/account/register classregistration-link>Зарегистрироваться/a> /div>/div>script> function getAuthManager(container){ var sourceUrl https://pandagifts.ru/content/js/pxp/build/authmanager-bundle.min.js; loadSource(sourceUrl, requestSettings); function loadSource(url, onLoadHandler) { var script document.createElement(script); document.querySelector(body).appendChild(script); if (typeof onLoadHandler function) { script.addEventListener(load, onLoadHandler); } script.setAttribute(src, url); } function requestSettings() { var settings { container: container.querySelector(#authContainer), initManager: 0, onSucceed: function() { window.location.reload(); }, onFailed: function() { console.log(Max attempt count was reached. Reloading...); window.location.reload(); } }; var myModel new pxpFrontend.authManager.AuthManager(settings); } } (function(){ new PixlparkModal({selector: .auth-user, container: auth-wrapper}, getAuthManager); })(); /script>script> (function() { function Selections(data) { var selections ; this.selections ko.observableArray(); data.map((current, index) > { var title init(current.title, Заголовок не задан); var cover init(current.cover, /content/gifts-theme/images/constructor/default.png); var fictitious init(current.fictitious, /content/gifts-theme/images/constructor/default.png); var link init(current.link, ); var date init(current.date, ); var path init(current.path, ); var text init(current.text, ); var filterName init(current.filterName, ); selections.push({ title, link, cover, filterName, fictitious, date, text, path }); }); function init(argument, actionIsEmpty){ return (!argument || argument || argument undefined) ? actionIsEmpty : argument; } this.selections(selections); } var container document.getElementById(selections); container ? ko.applyBindings(new Selections(selectionsList), container) : null; })();/script>script typetext/javascript> (function () { var feedBackModuleUrl https://www.pixlpark.com/content/js/modules/feedbackmodule.js?v9D9D36536283EF5CBC6E15657191E33A; var contactFeedbackContainer document.getElementById(contactFeedbackContainer); var callbackModuleContainer document.getElementById(callbackModuleContainer); var callModuleContainer document.getElementById(callModuleContainer); function getElementFinderHandler(element, callback) { return function (e) { if(e) e.stopPropagation(); function checkElementInViewport(element) { var rectElement element.getBoundingClientRect(); var wHeight (window.innerHeight || document.documentElement.clientHeight); var wWidth (window.innerWidth || document.documentElement.clientWidth); var fitInVertical (rectElement.top wHeight) && ((rectElement.top + rectElement.height) > 0); var fitInHorizontal (rectElement.left wWidth) && ((rectElement.left + rectElement.width) > 0); return (fitInVertical && fitInHorizontal); } var isVisible checkElementInViewport(element); if (isVisible && typeof callback function) callback(); } } function getOnClickEventHandler(onLoadHandler) { return function (e) { e.stopPropagation(); if (typeof onLoadHandler function) onLoadHandler(); } } function loadSource(url, onLoadHandler) { var scriptElement document.createElement(script); scriptElement.setAttribute(type, text/javascript); document.querySelector(head).appendChild(scriptElement); if (typeof onLoadHandler function) { scriptElement.addEventListener(load, onLoadHandler); } scriptElement.setAttribute(src, url); } // если нужна форма с обратной связью function renderFeedBackModule(container, config ) { if (container null) return; var handler getElementFinderHandler(container, initHandler); handler(); window.addEventListener(scroll, handler); var isComplete false; function initHandler() { window.removeEventListener(scroll, handler); if (isComplete) return if (typeof window.FeedbackModule undefined || window.FeedbackModule null) { loadSource(feedBackModuleUrl, initHandler); return; } var feedbackModule new FeedbackModule(container, { fields: { name: name, label: Ваше имя, placeholder: Иванов Иван, type: text, required: true }, { name: phone, label: Телефон, placeholder: +7 (999) 999 9999, type: text, required: true, mask: +7(###) ###-####, validate: function (str) { if (typeof str ! string) return true; var isPNumber /^\d\d\(\)\ -{4,14}\d$/; str str.replace(/\+/g, ).replace(/-/g, ); var valid isPNumber.test(str); return !!valid; } }, { name: email, label: Ваш e-mail, placeholder: i.ivanov@pixlpark.com, type: email, required: true, },{ name: company, label: Компания, placeholder: pixlpark, type: text, required: false }, { name: message, label: Ваш вопрос, type: multiline }, { name: fileAttach, type: file, label: Прикрепить файл, } , isModal: false, captchaIsEnabled: config.captcha || false, successMessage: Сообщение успешно отправлено!br>Мы свяжемся с вами в течении 15 минут., title: Заказать обратный звонок, submit: Отправить, agreementMessage: true, autocomplete:true, }); isComplete true; } } // если нужна форма заказать звонок function renderCallbackModule(container, config {}) { console.log(config) if (container null) return; var config { agreementMessage: false, lazy: true, isModal: false, captchaIsEnabled: config.captchaIsEnabled }; function initHandler() { if (typeof window.FeedbackModule undefined || window.FeedbackModule null) { loadSource(feedBackModuleUrl, initHandler); return; } var feedbackModuleWriteUs new CallbackModule(container, config); } initHandler(); } renderFeedBackModule(contactFeedbackContainer); renderCallbackModule(callbackModuleContainer, {captchaIsEnabled: true}); renderCallbackModule(callModuleContainer, {captchaIsEnabled: false}); })();/script>style> .new_window .FeedbackForm input.text, .new_window .FeedbackForm textarea{ width: 100%; } .new_window .FeedbackForm li{ width: 100%; } .new_window .FeedbackForm .fieldsList-wrapper{ width: 100%; align-items: flex-start; } ol.fieldsList-wrapper{ display: flex; flex-direction: column; } /* .new_window { display: block; margin: 0 auto; width: 480px; height: 362px; border: 1px solid; padding: 20px; background: #fff; border-radius: 10px; box-shadow: 0px 0px 4px #000; } */ /* .input_style{ width: 140px; height: 50px; background-color: #002447; color: white; } */ /* .new_button{ display: flex; justify-content: end; } */ .new-modal-container{ display: none; justify-content: center; align-items: center; position: fixed; width: 100%; height: 100%; left: 0; top: 0; background: rgba(0,0,0,.4); z-index: 100; align-items: center; } .new-modal-container.active{ display: flex; } .new_window { background: #fff; /* display: flex; */ /* align-items: center; */ /* flex-direction: column; */ border-radius: 10px; padding: 15px; box-shadow: 0px 0px 9px rgb(0 0 0 / 60%); width: 500px;} .new_window .button-close { border: none; background: transparent; left: 97%; top: -23%; position: relative; font-size: 24px; color: #333; cursor: pointer; font-family: inherit; outline: none; box-shadow: none; padding: 0; } /style>script> let newModal document.querySelector(.new-modal-container); let cross document.querySelector(.button-close); if(localStorage.getItem(modalClosed)) { setTimeout(() > { newModal.classList.add(active); let fakeFeedback document.querySelector(.FeedbackForm:nth-child(2)); if(!fakeFeedback) return; fakeFeedback.remove(); }, 3600000) } else { setTimeout(() > { newModal.classList.add(active); let fakeFeedback document.querySelector(.FeedbackForm:nth-child(2)); if(!fakeFeedback) return; fakeFeedback.remove(); }, 60000) } newModal.onclick (e) > { if(e.target.className new-modal-container active) { newModal.classList.remove(active); localStorage.setItem(modalClosed,true); } } cross.onclick () > { newModal.classList.remove(active); localStorage.setItem(modalClosed,true); } /script> script typetext/javascript> function ValidatorUpdateDisplay(val) { if (typeof (val.display) string) { if (val.display None) { return; } if (val.display Dynamic) { val.style.display val.isvalid ? none : block; return; } } if ((navigator.userAgent.indexOf(Mac) > -1) && (navigator.userAgent.indexOf(MSIE) > -1)) { val.style.display block; } val.style.visibility val.isvalid ? hidden : visible; } /script> script> if (typeof loadAsyncContentBlocks ! undefined) loadAsyncContentBlocks(); /script>/body>/html>
View on OTX
|
View on ThreatMiner
Please enable JavaScript to view the
comments powered by Disqus.
Data with thanks to
AlienVault OTX
,
VirusTotal
,
Malwr
and
others
. [
Sitemap
]