PageSourceSearch

https://vecrus-beauty.com/local/templates/.default/components/scod…/.default/script.js?17510344238191

js vecrus-beauty.com collected 2026-10-08 23:17:09 UTC 8,191 bytes, 297 lines download raw bytes

1var scoder_modalcoupon;
2var scoder_modalcoupon_answer;
3
4var sc_offsetLeft = 0;
5var sc_offsetTop = 0;
6var sc_offsetLeftAnswer = 0;
7var sc_offsetTopAnswer = 0;
8
9function sc_get_cookie(name) {
10	var matches = document.cookie.match(new RegExp(
11	"(?:^|; )" + name.replace(/([\.$?*|{}\(\)\[\]\\\/\+^])/g, '\\$1') + "=([^;]*)"
12	));
13    return matches ? decodeURIComponent(matches[1]) : undefined;
14}
15function sc_set_cookie(name, value, options) {
16	options = options || {};
17
18	var expires = options.expires;
19
20	if (typeof expires == "number" && expires) {
21		var d = new Date();
22		d.setTime(d.getTime() + expires * 1000);
23		expires = options.expires = d;
24	}
25	if (expires && expires.toUTCString) {
26		options.expires = expires.toUTCString();
27	}
28
29	value = encodeURIComponent(value);
30
31	var updatedCookie = name + "=" + value;
32
33	for (var propName in options) {
34		updatedCookie += "; " + propName;
35		var propValue = options[propName];
36		if (propValue !== true) {
37			updatedCookie += "=" + propValue;
38		}
39	}
40
41	document.cookie = updatedCookie;
42}
43function sc_delete_cookie(name) {
44	sc_set_cookie(name, "", {
45		expires: -1,
46		path: '/'
47	})
48}
49function sc_gift_modal_show()
50{
51	scoder_modalcoupon.show();
52}
53function sc_gift_modal_close()
54{
55	//записать в куки, что окно закрыто и не нужно обновлять
56	BX.ajax({
57		url: '/bitrix/components/scoder/modalcoupon/ajax.api.php?'+BX.message('bitrix_sessid_get')+'&TIMECLOSE='+parseInt(BX.message('TIMECLOSE')),
58		method: 'POST',
59		data: {'action':"SC_CLOSE"},
60		onsuccess: function(data){
61			sc_set_cookie(
62				'SC_CLOSE_COUPON',
63				'Y',
64				{
65					expires: parseInt(BX.message('TIMECLOSE')),
66					path: '/'
67				}
68			);		//пишем в куки
69		},
70		onfailure: function(){
71			alert(BX.message('SCODER_ERROR'));
72		}
73	});
74}
75BX.ready(function(){
76	if (BX.message('POSITION') == "bottom_left")
77	{
78		sc_offsetLeft = (-1)*($(window).width()-$("#sc-modalcoupon-form").width())/2;
79		sc_offsetTop = ($(window).height()-$("#sc-modalcoupon-form").height())/2 - 80;
80
81		sc_offsetLeftAnswer = (-1)*($(window).width()-$("#sc-modal-answer").width())/2;
82		sc_offsetTopAnswer = ($(window).height()-$("#sc-modal-answer").height())/2;
83	}
84	else if (BX.message('POSITION') == "bottom_right")
85	{
86		sc_offsetLeft = ($(window).width()-$("#sc-modalcoupon-form").width())/2-60;
87		sc_offsetTop = ($(window).height()-$("#sc-modalcoupon-form").height())/2 - 80;
88
89		sc_offsetLeftAnswer = ($(window).width()-$("#sc-modal-answer").width())/2-60;
90		sc_offsetTopAnswer = ($(window).height()-$("#sc-modal-answer").height())/2;
91	}
92	else if (BX.message('POSITION') == "top_left")
93	{
94		sc_offsetLeft = (-1)*($(window).width()-$("#sc-modalcoupon-form").width())/2;
95		sc_offsetTop = (-1)*($(window).height()-$("#sc-modalcoupon-form").height())/2;
96
97		sc_offsetLeftAnswer = (-1)*($(window).width()-$("#sc-modal-answer").width())/2;
98		sc_offsetTopAnswer = (-1)*($(window).height()-$("#sc-modal-answer").height())/2+80;
99	}
100	else if (BX.message('POSITION') == "top_right")
101	{
102		sc_offsetLeft = ($(window).width()-$("#sc-modalcoupon-form").width())/2-60;
103		sc_offsetTop = (-1)*($(window).height()-$("#sc-modalcoupon-form").height())/2;
104
105		sc_offsetLeftAnswer = ($(window).width()-$("#sc-modal-answer").width())/2-60;
106		sc_offsetTopAnswer = (-1)*($(window).height()-$("#sc-modal-answer").height())/2+60;
107	}
108
109	scoder_modalcoupon = new BX.PopupWindow("scoder_modalcoupon_popup", null, {
110		autoHide : (BX.message('AUTO_HIDE')=="Y"?true:false),
111		content: BX('sc-modalcoupon-form'),
112		zIndex: 0,
113		offsetLeft: sc_offsetLeft,
114		offsetTop: sc_offsetTop,
115		closeByEsc : true,
116		overlay: {
117			 backgroundColor: '#3a3f44', opacity: '0.7'
118		  },
119		draggable: {restrict: false},
120		events: {
121			onAfterPopupShow: function () {
122				$('.sc-toggle').hide();
123
124			},
125			onPopupClose: function(){			//обработчик события закрытия модального окна
126				$('.sc-toggle').show();
127				sc_gift_modal_close();
128			}
129		},
130	});
131
132	if(sc_get_cookie('SC_NOT_SHOW_ICON_AFTER_CLOSE') !== "Y") {
133        // console.log(sc_get_cookie('SC_NOT_SHOW_ICON_AFTER_CLOSE'));
134        $('.sc-toggle').show();
135	}
136
137
138
139	scoder_modalcoupon_answer = new BX.PopupWindow("scoder_modalcoupon_answer_popup", null, {
140		autoHide : (BX.message('AUTO_HIDE')=="Y"?true:false),
141		content: BX('sc-modal-answer'),
142		zIndex: 0,
143		offsetLeft: sc_offsetLeftAnswer,
144		offsetTop: sc_offsetTopAnswer,
145		closeByEsc : true,
146		overlay: {
147			 backgroundColor: '#3a3f44', opacity: '0.7'
148		},
149		draggable: {restrict: false},
150		events: {
151			onAfterPopupShow: function () {
152				$('.sc-toggle').hide();
153				sc_set_cookie(
154					'SC_YEAR_HIDE',
155					'Y',
156					{
157						expires:62208000,
158						path: '/'
159					}
160				);
161			},
162		},
163	});
164
165	var is_userconsent = true;
166	$(document).on('submit', '#sc-coupon-form', function(e) {
167		var msg = $(this).serialize();
168
169		$('.sc-errorMsg').html('').hide();
170
171		if (BX.message('USER_CONSENT') == 'Y')
172		{
173			is_userconsent = false;
174			var sc_control = BX.UserConsent.load(BX('sc-coupon-form'));			//проверка согласия
175			if (!sc_control)
176			{
177				$('.sc-errorMsg').show().html(BX.message('SCODER_ERROR'));
178			}
179			//если согласен
180			if ($('input[name="sc_modalcoupon_userconsent_input"]').prop( "checked" ))
181				is_userconsent = true;
182		}
183
184		if (is_userconsent)
185		{
186			$('.sc-errorMsg').html('').hide();
187			BX.ajax({
188				url: '/bitrix/components/scoder/modalcoupon/ajax.api.php?USE_CAPTCHA='+BX.message('USE_CAPTCHA'),
189				method: 'POST',
190				data: msg,
191				onsuccess: function(data){
192
193					var obj = jQuery.parseJSON(data);
194					if (obj.RESULT == 'FIND')
195					{
196						$('.sc-errorMsg').show().html(BX.message('SCODER_ERROR_EMAIL'));
197					}
198					else if (obj.RESULT == 'SUCCES')		//если создан успешно
199					{
200						sc_gift_modal_close();
201						scoder_modalcoupon.close();
202						scoder_modalcoupon_answer.show();	//показать ответ
203					}
204					else if (obj.RESULT == 'ERROR')
205					{
206						$('.sc-errorMsg').show().html(obj.TEXT);
207					}
208
209				},
210				onfailure: function(){
211					$('.sc-errorMsg').show().html(BX.message('SCODER_ERROR'));
212				}
213			});
214		}
215		else
216		{
217			$('.sc-errorMsg').show().html(BX.message('SCODER_ERROR_USERCONSENT'));
218
219		}
220
221		return false;
222	});
223
224	//закрыли иконку
225	$(document).on('click', '#sc-icon-close', function(e) {
226		$('.sc-toggle').hide();
227		//если указано "Не отображать иконку после закрытия"
228		if (BX.message('NOT_SHOW_ICON_AFTER_CLOSE')=='Y')
229		{
230			sc_set_cookie(
231				'SC_NOT_SHOW_ICON_AFTER_CLOSE',
232				'Y',
233				{
234					expires:62208000,
235					path: '/'
236				}
237			);
238		}
239
240		return false;
241	});
242	//нажали на подарок
243	$(document).on('click', '.sc-toggle', function(e) {
244		sc_gift_modal_show();
245	});
246	//закрыть окно ответа
247	$(document).on('click', '#sc-button-close', function(e) {
248		scoder_modalcoupon_answer.close();
249		if (BX.message('IS_RELOAD_WINDOW')=='Y')
250		{
251			location.reload();
252		}
253
254	});
255
256	//если купон не закрыт
257	if (sc_get_cookie('SC_CLOSE_COUPON') != 'Y'
258		&& sc_get_cookie('SC_YEAR_HIDE') !='Y'
259			&& BX.message('IS_CLOSED')!="Y")
260	{
261		setTimeout(sc_gift_modal_show, parseInt(BX.message('TIMEOUT')));
262
263		if (BX.message('IS_SHOW_ICON')!="Y")
264			$('.sc-toggle').hide();				//скрываем иконку
265	}
266
267	$('.sc-captcha-update').on('click', function(e) {
268		$('#whiteBlock').show();
269		BX.ajax({
270			url: '/bitrix/components/scoder/modalcoupon/ajax.api.php?',
271			method: 'POST',
272			data: {'action':"SC_UPDATE_CAPTCHA", "sessid": $('#sessid').val()},
273			onsuccess: function(data){
274				$('#captchaImg').attr('src','/bitrix/tools/captcha.php?captcha_sid='+data);
275	            $('#captchaSid').val(data);
276	            $('#whiteBlock').hide();
277			},
278			onfailure: function(){
279				alert(BX.message('SCODER_ERROR'));
280			}
281		});
282	});
283
284	moveModal();
285	$( window ).resize(function() {
286		moveModal();
287	});
288	if (sc_get_cookie('SC_NOT_SHOW_ICON_AFTER_CLOSE') == 'Y')
289	{
290		$('.sc-toggle').hide();
291	}
292});
293
294function moveModal() {
295	$('#scoder_modalcoupon_popup').css('margin-top', $('.bx-logo').outerHeight()-1+'px');
296	// $('#scoder_modalcoupon_popup').css('margin-top', $('.bx-logo').outerHeight()-1+'px');
297}

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.