PageSourceSearch

https://audioskazki-online.com/design/default_1/js/main.js?v1791570591

js audioskazki-online.com collected 2026-10-09 18:29:57 UTC 81,665 bytes, 2,152 lines download raw bytes

1
2function aj(){
3	$('body').find('.aload.aload-hide').each(function(){
4		var t = $(this);
5		if(t.attr('data-load') == 'scroll'){
6			window.load_stack.push(function(){				
7				mload(t);
8			});
9		} else {
10			mload(t);
11		}
12			
13	});
14}
15function mload(t) {
16	t = $(t);
17	var d = { 
18		target: t.attr('data-target'),
19	}
20	if(typeof t.attr('data-params') != 'undefined'){
21		try {
22			d.params = t.attr('data-params');
23		} catch (er){
24			console.log(er);
25		}
26	}
27	if(typeof t.attr('data-success') != 'undefined'){
28		try {
29			d.after_load = t.attr('data-success')
30		} catch (er){
31			console.log(er);
32		}
33	}
34	
35	$.post('/ajax/section.php?target=' + d.target, d).done(function(data){
36		if(typeof data.target != 'undefined'){
37			if(typeof data.html != 'undefined' && data.html.trim() != '')
38			$('body').find('.aload[data-target="' + data.target + '"]').html(data.html).removeClass('aload-hide');
39			
40			if(typeof data.after_load != 'undefined') {
41				try {
42					eval("(" + data.after_load + ")");
43				} catch(er) {
44					console.log(er);
45				}
46			}
47		}
48	}).fail(function(){
49		
50	});	
51}
52
53window.load_stack = [];
54
55window.filter_sended = false;
56
57
58var start_from_cookie = false;
59var save_audio_to_cookie = true;
60window.sounds = [];
61var testdrive = 0;
62var need_play_audio = false;
63var my_interval = null;
64var my_interval_iterations = 0;
65var audioCtx = null ;
66var jsplayer = null;
67var play_timer = null;
68var play_warning = false;
69var share_buttons = false;
70/* ------------------------------ */
71var soc_buttons_api_inited = 1;
72function socButtonsInit(){
73	if(soc_buttons_api_inited) {
74		console.log('soc buttons init');
75		soc_buttons_api_inited = !1;
76		$('header').append('<script src="https://yastatic.net/es5-shims/0.0.2/es5-shims.min.js"></script><script src="https://yastatic.net/share2/share.js"></script>');		
77	}
78	console.log('soc buttons');
79	try {
80		share_buttons = Ya.share2('my-share', {
81			theme: {
82				services: 'vkontakte,facebook,odnoklassniki,moimir,viber,whatsapp,telegram',
83				lang: 'ru',
84				limit: 7,
85				size: 'm',
86				counter: 1,
87				copy: "last",
88				bare: false,
89			}
90		});
91	} catch(er) {
92		if(typeof Ya == 'undefined') {
93			setTimeout(function(){
94				socButtonsInit();
95			},500);
96		}
97	}
98}
99
100(function(ELEMENT) {
101    ELEMENT.matches = ELEMENT.matches || ELEMENT.mozMatchesSelector || ELEMENT.msMatchesSelector || ELEMENT.oMatchesSelector || ELEMENT.webkitMatchesSelector;
102    ELEMENT.closest = ELEMENT.closest || function closest(selector) {
103        if (!this) return null;
104        if (this.matches(selector)) return this;
105        if (!this.parentElement) {return null}
106        else return this.parentElement.closest(selector)
107      };
108}(Element.prototype));
109
110
111class EventEmitter {
112	
113	on (name, callback, ctx) {
114		if(typeof this.e === 'undefined'){
115			this.e = {};
116		}
117		var e = this.e;
118
119		
120        (e[name] || (e[name] = [])).push({
121            fn: callback,
122            ctx: ctx
123        })
124		
125        return this;
126    }
127	
128    once (name, callback, ctx) {
129        var self = this
130        function listener () {
131            self.off(name, listener)
132            callback.apply(ctx, arguments)
133        };
134
135        listener._ = callback
136        return this.on(name, listener, ctx)
137    }
138
139    emit (name) {
140	    var data = [].slice.call(arguments, 1)
141        var evtArr = ((this.e || (this.e = {}))[name] || []).slice()
142        var i = 0
143       
144        var len = evtArr.length
145
146        for (i; i < len; i++) {
147            evtArr[i].fn.apply(evtArr[i].ctx, data)
148        }
149	
150        return this;
151		
152    }
153
154    off (name, callback) {
155        var e = this.e || (this.e = {})
156        var evts = e[name]
157        var liveEvents = []
158
159        if (evts && callback) {
160            for (var i = 0, len = evts.length; i < len; i++) {
161                if (evts[i].fn !== callback && evts[i].fn._ !== callback) {
162                    liveEvents.push(evts[i])
163                }
164            }
165        }
166
167        (liveEvents.length) ? e[name] = liveEvents : delete e[name]
168
169        return this;
170    }
171}
172class ListPlayer extends EventEmitter { // eslint-disable-line
173    constructor (options ) {
174       if(typeof options === 'undefined') options={};
175	   super();
176        this.tracks = (options.tracks || []).map(function(t) {
177            if (typeof t === 'string') return { src: t }
178            return t;
179        })
180        this.loopTracks = options.loopTracks !== undefined ? options.loopTracks : true;
181        this.progressThroughTracks = options.progressThroughTracks !== undefined ? options.progressThroughTracks : true;
182        this.el = this._injectAudioElement();
183        this.index = 0;
184        this._loadTrack();
185
186        if (this.advanced) this._loadAudioContext();
187		
188    }
189	
190    play () {
191        this.emit('play');
192        this._loadTrack();
193        console.log('loaded');
194        return this.el.play();
195    }
196
197    pause () {
198        this.emit('pause');
199        return this.el.pause();
200    }
201
202    next () {
203        console.log('next');
204        this.emit('next');
205        this.index++;
206        if (this.index > this.tracks.length - 1) {
207            if (this.loopTracks) {
208                this.index = 0;
209            } else {
210                this.index--;
211                this.emit('error', 'you are on the last track');
212            }
213        }
214        var _wasPlaying = this.playing();
215        this._loadTrack();;
216        if (_wasPlaying) this.play();
217    }
218
219    prev () {
220        this.emit('prev');
221        this.index--;
222        if (this.index < 0) {
223            if (this.loopTracks) {
224                this.index = this.tracks.length - 1;
225            } else {
226                this.index++;
227                this.emit('error', 'you are on the first track');
228            }
229        }
230        var _wasPlaying = this.playing();
231        this._loadTrack();
232        if (_wasPlaying) this.play();
233    }
234
235    playing () {
236        return !this.el.paused;
237    }
238
239    seek (time) {
240        if (!time) return this.el.currentTime;
241        this.emit('seek', time);
242        this.el.currentTime = time;
243    }
244
245    _injectAudioElement () {
246        // var el = document.createElement('audio')
247        var a = $('body').find('#fixed-player').find('audio');
248        var el = a[0];
249        // document.body.appendChild(el)
250        // el.style.display = 'none'
251        return el;
252    }
253
254    _loadTrack () {
255        if (this._loadedTrack === this.index) return;
256        if (this.tracks.length === 0) return;
257        this.el.innerHTML = '';
258
259        this.currentTrack = this.tracks[this.index];
260        if( typeof this.currentTrack.html !== 'undefined') {
261            this.el.innerHTML = this.currentTrack.html;
262            this.el.load();
263            if (this.currentTrack.currentTime !== 'undefined' && this.currentTrack.currentTime > 0){
264                this.el.currentTime = this.currentTrack.currentTime;
265            }
266            // console.log(this.el);
267
268        } else {
269            var source = document.createElement('source');
270            source.src = this.currentTrack.src;
271            source.type = this.currentTrack.type || 'audio/aac';
272
273            this.el.appendChild(source);
274            this.el.load();
275            this._loadedTrack = this.index;
276        }
277    }
278    _loadAudioContext () {
279        var AudioContext = window.AudioContext || window.webkitAudioContext;
280        if (!AudioContext) return this.emit('error', 'web audio api unsupported');
281        this.ctx = new AudioContext();
282        this.src = this.ctx.createMediaElementSource(this.el);
283    }
284
285
286    addTrack (url) {
287        // console.log(url);
288        if (typeof url === 'string') {
289            this.tracks = [{src: url}];
290        } else {
291            this.tracks = [ url ];
292        }
293    }
294}
295
296function slowLoadingInit () {
297	console.log('test load');
298	var p = $('body').find('#fixed-player');
299	p.addClass('loading-long');
300	p.find('.loading-long-block').remove();
301	
302	var html = `<div class="loading-long-block">
303		<div class="loading-long-title">Аудио-файл долго загружается?</div>
304		<div class="loading-long-buttons">
305			<button class="loading-long-button-reload" type="button">перезагрузить</button> 
306			<button class="loading-long-button-notify" type="button">сообщить нам</button> 
307		</div>
308		<div class="loading-long-close">
309		<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="512px" version="1.1" height="512px" viewBox="0 0 64 64" enable-background="new 0 0 64 64">
310		  <g>
311			<path fill="#FFFFFF" d="M28.941,31.786L0.613,60.114c-0.787,0.787-0.787,2.062,0,2.849c0.393,0.394,0.909,0.59,1.424,0.59   c0.516,0,1.031-0.196,1.424-0.59l28.541-28.541l28.541,28.541c0.394,0.394,0.909,0.59,1.424,0.59c0.515,0,1.031-0.196,1.424-0.59   c0.787-0.787,0.787-2.062,0-2.849L35.064,31.786L63.41,3.438c0.787-0.787,0.787-2.062,0-2.849c-0.787-0.786-2.062-0.786-2.848,0   L32.003,29.15L3.441,0.59c-0.787-0.786-2.061-0.786-2.848,0c-0.787,0.787-0.787,2.062,0,2.849L28.941,31.786z"/>
312		  </g>
313		</svg>
314		</div>
315	</div>`;
316		
317	p.find('.player-container').prepend(html);
318	
319	console.log(navigator);
320	
321}
322function slowLoadingClear () {
323	$('body').find('#fixed-player').removeClass('loading-long').find('.loading-long-block').remove();
324}
325
326
327function loadAudio( object, url) {
328    var request = new XMLHttpRequest();
329    request.open('GET', url, true);
330    request.responseType = 'arraybuffer';
331
332    request.onload = function() {
333        audioCtx.decodeAudioData(request.response, function(buffer) {
334            object.buffer = buffer;
335        });
336    }
337    request.send();
338}
339var sub_file = false;
340function replayAudioSubDomain() {
341	if (sub_file) return;
342	console.log('replayAudioSubDomain');
343	try {
344		var player = $('body').find('#fixed-player');
345		var fix_audio = $(player).find('audio');
346		var src = fix_audio.attr('src');
347		if(typeof src == 'undefined') {
348			src = $(fix_audio.find('source')[0]).attr('src');
349		}
350		if(src.indexOf('//f1.fairy-tales-online.ru') > 0) {
351			// console.log('1');
352			// src = src.replace('//f1.fairy-tales-online.ru', '//f2.fairy-tales-online.ru');
353		} else {
354			if(src.indexOf('//fairy-tales-online.ru') > 0) {
355				sub_file = true;
356				src = src.replace('//fairy-tales-online.ru', '//f1.fairy-tales-online.ru');
357			}
358		}
359		
360		var cur_time = fix_audio[0].currentTime;
361		fix_audio.attr('src', src);
362		fix_audio[0].play();
363		fix_audio[0].currentTime = cur_time;
364	} catch(e) {
365		console.log(e);
366	}
367	// console.log(src);
368}
369function addAudioProperties(object) {
370	object.name = object.id;
371    object.source = object.url;
372    loadAudio(object, object.source);
373    object.play = function () {
374        var s = audioCtx.createBufferSource();
375        s.buffer = object.buffer;
376        s.connect(audioCtx.destination);
377        s.start(0);
378        object.s = s;
379    }
380}
381
382/* --------------------------------------------- */ 
383function testMSG(t) {
384    try {
385        if (!testdrive) {
386            return;
387        }
388        var tt = 'testMSG';
389        if (typeof t !== 'undefined') {
390            tt = t;
391        }
392        alert(tt);
393    } catch (e) {
394        console.log('error in func');
395    }
396}
397
398function getCookie(name) {
399    try {
400        var matches = document.cookie.match(new RegExp("(?:^|; )" + name.replace(/([\.$?*|{}\(\)\[\]\\\/\+^])/g, '\\$1') + "=([^;]*)"));
401        return matches ? decodeURIComponent(matches[1]) : undefined;
402    } catch (e) {
403        console.log(e);
404        return undefined;
405    }
406}
407
408function setAdSenceBlock(block) {
409    var items = $(block).find('.player-container:visible');
410    if (items.length > 3) {
411        var height = 'height:90px';
412        if ($(items).width() < 720) {
413            height = '';
414        }
415        var html = '<ins class="adsbygoogle" style="display:inline-block;width:100%;' + height + '" data-ad-client="ca-pub-4324700264658978" data-ad-slot="8899227224"></ins>';
416        html += '<script>try{ (adsbygoogle = window.adsbygoogle || []).push({}); } catch(e){ }</script>';
417    }
418}
419
420function contentInner() {
421    var heightCount = $('.block-player__inner-body');
422    if (heightCount.height() > 300) {
423        heightCount.addClass('block-player__inner-body_hidden');
424        $('.js-block-inner-body').removeClass('block-player__inner-body-btn_hidden');
425    }
426    $('.js-block-inner-body').click(function() {
427        $('.block-player__inner-body').toggleClass('block-player__inner-body_hidden');
428        if ($('.block-player__inner-body').hasClass('block-player__inner-body_hidden')) {
429            $(this).text('Читать полностью →');
430        } else {
431            $(this).text('Свернуть');
432        }
433    });
434}
435
436function setCookie(name, value, options) {
437    try {
438        options = options || {};
439        var expires = options.expires;
440        if (typeof expires == "number" && expires) {
441            var d = new Date();
442            d.setTime(d.getTime() + expires * 1000);
443            expires = options.expires = d;
444        }
445        if (expires && expires.toUTCString) {
446            options.expires = expires.toUTCString();
447        }
448        value = encodeURIComponent(value);
449        var updatedCookie = name + "=" + value;
450        var propName;
451        for (propName in options) {
452            if (typeof propName != 'undefined') {
453                updatedCookie += "; " + propName;
454                var propValue = options[propName];
455                if (propValue !== true) {
456                    updatedCookie += "=" + propValue;
457                }
458            }
459        }
460        document.cookie = updatedCookie;
461    } catch (e) {
462        console.log(e);
463    }
464}
465
466function deleteCookie(name) {
467    setCookie(name, "", {
468        expires: -1
469    });
470}
471function adsenceInit() {
472	socButtonsInit();
473    $('body').find('ins').each(function() {
474        try {
475            if ($(this).height() > 0 && !$(this).hasClass('ajax-inited')) {
476                var th = this;
477                $(this).after('<script>(adsbygoogle = window.adsbygoogle || []).push({});</script>');
478                $(th).addClass('ajax-inited');
479                (adsbygoogle = window.adsbygoogle || []).push({});
480            }
481        } catch (e) {}
482    });
483}
484
485function symbolLimit() {
486    if (window.matchMedia('(max-width: 767px)').matches) {
487        var playerName = $('body').find('.player__track-name-init');
488        var i = 0;
489        for (i; i < playerName.length; i++) {
490            var el = playerName[i];
491            if ($(el).height() >= '30') {
492                $(el).addClass('player__track-name_min');
493            }
494            if ($(el).height() >= '35') {
495                $(el).addClass('player__track-name_min_hidden');
496            }
497        }
498        try {
499            for (i = 0; i < playerName.length; i++) {
500                var el = playerName[i];
501                el = $(el).find('.visible-on-mobile')[0];
502                if (el.offsetHeight > 32 && $(el).html().indexOf('&shy;') < 1) {
503                    var t = $(el).html().split(' ');
504                    for (var j = 0; j < t.length; j++) {
505                        if (t[j].length > 4) t[j] = t[j].replace(/([аоеуэёюяыиь])/gi, '$1&shy;').replace('&shy;"', '"');
506                    }
507                    t = t.join(' ');
508                    $(el).html(t);
509                }
510                var j = 0;
511                while (el.offsetHeight > 32) {
512                    j++;
513                    if (j > 5) break;
514                    var t = $(el).html().split(' ');
515                    delete t[t.length - 1];
516                    t[t.length - 2] += '...';
517                    $(el).html(t.join(' ').trim());
518                }
519            }
520        } catch (e) {
521            console.log(e);
522        }
523    }
524}
525
526function mobileButtons() {
527    if (window.matchMedia('(max-width: 767px)').matches) {
528        save_audio_to_cookie = false;
529        $('body').on('click', '.js-player-mobile-filter', function() {
530            try {
531                $('body').find('.js-main-filter .banner-container-full-width').remove();
532                $('body').find('.player-mobile-filter .player-mobile-filter-items').html($('body').find('.js-main-filter').html());
533            } catch (e) {
534                console.log(e);
535            }
536            $('body').find('.player-mobile-filter').addClass('player-mobile-menu-page_visible');
537            return false;
538        });
539        $('body').on('click', '.js-close-button-filter', function() {
540            $('body').find('.player-mobile-filter').removeClass('player-mobile-menu-page_visible');
541            return false;
542        });
543        $('body').on('click', '.js-player-mobile-sort', function() {
544            try {
545                // var sorts = $('body').find('.songs-sort-block__label[name="songs-sorting"]');
546                var sorts = $('body').find('.songs-sort-block__label[data-name="songs-sorting"]');
547                $('body').find('.player-mobile__item-sort_active').removeClass('player-mobile__item-sort_active');
548                for (var i = 0; i < sorts.length; i++) {
549                    var id = $(sorts[i]).attr('id');
550                    var href = $(sorts[i]).attr('href');
551                    $('body').find('#' + id + '-mobile').next().find('a').attr('href', href);
552                    if ($(sorts[i]).attr('checked') != undefined) {
553                        $('body').find('#' + id + '-mobile').prop('checked', true).next().find('a').addClass('player-mobile__item-sort_active');
554                    } else {
555                        $('body').find('#' + id + '-mobile').prop('checked', false);
556                    }
557                }
558            } catch (e) {
559                console.log(e);
560            }
561            $('body').find('.player-mobile-sort').addClass('player-mobile-menu-page_visible');
562            return false;
563        });
564        $('body').on('click', '.js-close-button-sort', function() {
565            $('body').find('.player-mobile-sort').removeClass('player-mobile-menu-page_visible');
566            return false;
567        });
568    }
569}
570my_time_interval = null;
571function currentTimeCheck() {
572	my_current_time = 0;
573	try {
574		if (my_time_interval !== null) {
575			clearInterval(my_time_interval);
576		}
577		my_time_interval = setInterval(function() {
578			var player = $('body').find('#fixed-player');
579			var fix_audio = $(player).find('audio')[0];
580			if(fix_audio.currentTime > 0) {
581				clearInterval(my_time_interval);
582				return;
583			}
584			fix_audio.play();
585		}, 1000);
586		
587	} catch (e) {
588		console.log(e);
589	}
590}
591function initInterval() {
592	return;
593	my_interval_iterations = 0;
594	try {
595		if (my_interval !== null) {
596			clearInterval(my_interval);
597		}
598		my_interval = setInterval(function() {
599			my_interval_iterations++;
600			var player = $('body').find('#fixed-player');
601			if(player.find('.player-container').hasClass('loading-track')) {
602				var name = player.find('.player__track-name');
603				if($(name).attr('style') != '') {
604					$(name).attr('style', '');
605				} else {
606					$(name).attr('style', 'color:#fff;');
607				}
608				fix_audio = $(fixedPlayer).find('audio');
609				// fix_audio[0].pause();
610				fix_audio[0].play();
611				  
612				if(my_interval_iterations > 4){
613					// fix_audio[0].load();
614					fix_audio[0].play();
615					// fix_audio[0].played = true;
616					var mob = $('body').find('#player-mobile-menu').find('.player-mobile-menu__track-name');
617					var id = $(fix_audio).attr('data-fixed-id');
618					$('body').find('.test-field').remove();
619					var a = $('body').find('audio[data-id="' + id + '"]');
620					// $(mob).after('<div class="test-field">' + id + ' ' + my_interval_iterations + '</div>');
621					// $(mob).after('<div class="test-field">' + $(a).find('source').attr('src') + '</div>');
622					// $(mob).after('<div class="test-field">error: ' + fix_audio[0].error + '</div>');
623					// $(mob).after('<div class="test-field">autoplay: ' + fix_audio[0].autoplay + '</div>');
624					// $(mob).after('<div class="test-field">duration: ' + fix_audio[0].duration + '</div>');
625					// $(mob).after('<div class="test-field">paused: ' + fix_audio[0].paused + '</div>');
626					// $(mob).after('<div class="test-field">played: ' + JSON.stringify(fix_audio[0].played) + '</div>');
627					// $(mob).after('<div class="test-field">abort: ' + fix_audio[0].abort + '</div>');
628					if(a.length > 0){
629						console.log('replay');
630						// audioPlay(a[0]);
631					}
632				}
633			}
634			console.log('interval play');
635		},1000);
636	}catch(e) {
637		console.log(e);
638	}
639}
640
641
642var imgActive = false;
643
644function lazyLoad() {
645	myCallBackCaptcha();
646	if (imgActive === false) {
647		imgActive = true;
648		var lazyImages = [].slice.call(document.querySelectorAll("img[data-src]"));
649		setTimeout(function () {
650			lazyImages.forEach(function (lazyImage) {
651				if (
652					lazyImage.getBoundingClientRect().top <= window.innerHeight &&
653					lazyImage.getBoundingClientRect().right <= window.innerWidth &&
654					lazyImage.getBoundingClientRect().left >= 0 &&
655					lazyImage.getBoundingClientRect().bottom >= 0 &&
656					getComputedStyle(lazyImage).display !== "none" &&
657					typeof lazyImage.dataset.src != 'undefined'
658				) {
659					if(typeof lazyImage.dataset.src == 'undefined') {
660						return;
661					}
662					lazyImage.src = lazyImage.dataset.src;
663					lazyImage.removeAttribute("data-src");
664					if (lazyImage.dataset.srcset) {
665						lazyImage.srcset = lazyImage.dataset.srcset;
666						lazyImage.removeAttribute("data-srcset");
667					}
668					if (lazyImage.parentElement.classList.contains("img-lazy")) {
669						lazyImage.closest(".img-lazy").classList.remove("img-lazy");
670					}
671
672					lazyImages = lazyImages.filter(function (image) {
673						return image !== lazyImage;
674					});
675				}
676			});
677			imgActive = false;
678		}, 200);
679	}
680}
681
682if (document.addEventListener) {
683	document.addEventListener("DOMContentLoaded", lazyLoad);
684} else {
685	if (window.addEventListener) {
686		window.addEventListener("load", lazyLoad);
687	} else if (window.attachEvent) {
688		window.attachEvent("onload", lazyLoad);
689	}
690}
691document.addEventListener("scroll", lazyLoad);
692window.addEventListener("resize", lazyLoad);
693window.addEventListener("orientationchange", lazyLoad);
694
695
696$(function() {
697	
698	$('body').on('click','.show-more-main',function(){
699		var th = $(this);
700		if(th.attr('send')) return false;
701		var page = $(this).attr('data-page');
702		page++;
703		th.attr('send',true);
704		var url = location.href.replace(/page=[0-9]{1,}/i,'page=' + page);
705		if(!url.match(/page/i)){
706			if (url.indexOf('?')> -1) url += '&'; else url += '?';
707			url += 'page=' + page;
708		}
709		
710		console.log(url);
711		var hisObj = {
712			'url': url,
713		};
714		window.history.pushState(hisObj, '', url);
715		
716		$.post('/ajax/section.php?target=main-page', {page: page, target: 'main-page' }).done(function(data) {
717			console.log(data);
718			if(typeof data.html != 'undefined') {
719				$('body').find('.js-top-block').append(data.html);				
720				lazyLoad();
721			}
722			mload($('body').find('[data-target="main-pager"]'));
723		}).fail(function(){
724			
725			th.attr('send',false);
726		});
727		
728		return false;
729	});
730	
731	socButtonsInit();
732	$('body').on('click', '.js-get-stories-list', function() {
733		
734		var block = $(this).closest('.block-player');
735		var id = block.attr('data-id');
736		console.log(id);
737		var th = block.find('.block-player__item-btn_play');
738		var state = block.hasClass('is-active') ? 0 : 1;
739		
740		var s_list = block.find('.player-stories-list');
741		
742		$('body').find('.js-get-stories-list').removeClass('active');
743		$('body').find('.js-get-stories-list').removeClass('active');
744		th.removeClass('active');
745		s_list.removeClass('active');
746		block.removeClass('is-active').find('.active').removeClass('active');
747		
748		console.log(state, th);
749		if(state) {
750			
751			th.addClass('active');
752			s_list.addClass('active');
753			block.addClass('is-active');
754		}
755		block.find('.block-player__item-tags').toggleClass('hide-tags-player');
756		if(!s_list.hasClass('inited')){
757			$.post('/ajax/get_stories.php', {id : id}).done(function(data) {
758				if(typeof data.html !== 'undefined'){
759					var s_list = $('body').find('.block-player[data-id="' + data.id + '"]').find('.player-stories-list');
760					s_list.addClass('inited');
761					s_list.html(data.html);
762					var a = s_list.find('audio');
763					if(a.length > 0){
764						audioPlay(a[0]);
765					}
766				}
767			}).fail(function(){
768				
769			});
770			return false;
771		} else {
772			console.log(state, s_list);
773			if(state) { s_list.addClass('active'); }
774		}
775		return false;
776	});
777	$('body').on('click', '.js-player-mobile-sorting', function(e) {
778		console.log($(e.target).hasClass('js-player-mobile-sorting'), e.target);
779		if($(e.target).hasClass('js-player-mobile-sorting')){
780			$('body').find('.js-player-mobile-sorting').removeClass('player-mobile-menu-page_visible');
781		}
782	});
783	lazyLoad();
784	audioCtx = new (window.AudioContext || window.webkitAudioContext)(); // define audio context
785	jsplayer = new ListPlayer({
786	  loopTracks: true,
787	  progressThroughTracks: true
788	});
789		
790    try {
791        if (getCookie('audio_loop') == 'true') {
792            $('body').addClass('audio_loop');
793        }
794    } catch (e) {
795        console.log(e);
796    }
797    testMSG('ready document');
798    symbolLimit();
799    contentInner();
800    mobileButtons();
801    $('body').on('click', '.container-close', function(e) {
802        var clickTarget = $(e.target);
803        $(clickTarget).closest('.player-container').find('input[type="radio"]').attr('checked', false);
804    });
805    $('body').on('click', '.ws-label', function() {
806        try {
807            if ($(this).hasClass('ws-label_active') !== true) {
808                $('body').find('.ws-label').removeClass('ws-label_active');
809                $(this).addClass('ws-label_active');
810                $('body').find('.ws-container').removeClass('active');
811                $('body').find('.main-navigation_mobile').addClass('main-navigation_mobile_active');
812                $(this).siblings('.ws-container').addClass('active');
813            } else {
814                $('body').find('.ws-label').removeClass('ws-label_active');
815                $('body').find('.ws-container').removeClass('active');
816                $('body').find('.main-navigation_mobile').addClass('main-navigation_mobile_active');
817            }
818        } catch (e) {
819            console.log(e);
820        }
821    }).on('click', '.player__loop', function(e) {
822        var loop = !$('body').hasClass('audio_loop');
823        deleteCookie('audio_loop');
824        setCookie('audio_loop', loop, {
825            expires: 84600
826        });
827        if (loop) {
828            if (!$('body').hasClass('audio_loop')) {
829                $('body').addClass('audio_loop');
830            }
831        } else {
832            $('body').removeClass('audio_loop');
833        }
834        return false;
835    }).on('click', '.main-filter__link', function() {
836        if ($(this).hasClass('main-filter__link_active')) {
837            return false;
838        }
839        var url = $(this).attr('href');
840        var tags = url.match(/tags=([^\&]*)/i);
841        var url = '/ajax/get_top.php?ajax_top=1';
842        if (tags != undefined && tags[1] != undefined) {
843            url += '&tags=' + tags[1];
844        }
845        var th = this;
846        $.post(url).done(function(data) {
847            if (data != undefined && data.html != undefined && data.html.indexOf('js-top-block') > 0) {
848                $('body').find('.main-filter__link_active').removeClass('main-filter__link_active');
849                $(th).addClass('main-filter__link_active');
850                var block = $('body').find('.js-top-block');
851                if (block.length > 0) {
852                    block[0].outerHTML = data.html;
853                    $('body').find('.js-top-block .block-player').removeClass('block-player__item-all').addClass('block-player__item_min');
854                }
855				lazyLoad();
856            }
857        });
858        return false;
859    });
860    $('.header-fixed-block__sorter').on('click', function() {
861        /* 
862		$('body').toggleClass('body-no-scroll');
863        $('.header-fixed-menu').toggleClass('header-fixed-menu_visible');
864		*/
865		console.log('menu...');
866		$('body').toggleClass('body-no-scroll');
867        $('body').find('.main-navigation').toggleClass('main-navigation_visible');
868		$('body').find('.mobile-navigation__label').toggleClass('mobile-navigation__label_checked');
869		return false;
870    });
871    $('.player-mobile-menu-button').on('click', function() {
872        $('body').toggleClass('body-no-scroll');
873        $(this).toggleClass('player-mobile-menu-button_x');
874        $('.player-mobile-menu').toggleClass('player-mobile-menu_visible');
875    });
876    $(document).on('click', function(e) {
877        var clickTarget = $(e.target);
878        if ($('.player-mobile-menu').hasClass('player-mobile-menu_visible')) {
879            if (!clickTarget.closest('.fixed-player').length && !clickTarget.hasClass('fixed-player') && !clickTarget.closest('.player-mobile-menu__container').length && !clickTarget.hasClass('player-mobile-menu__container')) {
880                $('body').removeClass('body-no-scroll');
881                $('.player-mobile-menu-button').removeClass('player-mobile-menu-button_x');
882                $('.player-mobile-menu').removeClass('player-mobile-menu_visible');
883            }
884        }
885    });
886    $('body').on('click', '.player__mobile-menu, .player-mobile-menu-button', function() {
887        if (!$(this).hasClass('player-mobile-menu-button_x') || $(this).hasClass('.player__mobile-menu')) {
888            setMenuSong($(this).closest('.player-container'));
889            $('body').toggleClass('body-no-scroll');
890            $('#player-mobile-menu').toggleClass('player-mobile-menu-page_visible');
891        } else {
892            $('#player-mobile-menu').removeClass('player-mobile-menu-page_visible');
893            $('body').removeClass('body-no-scroll');
894        }
895        return false;
896    });
897    $(document).on('click', function(e) {
898        var clickTarget = $(e.target);
899        if (!clickTarget.closest('.player__mobile-menu').length && !clickTarget.hasClass('player__mobile-menu') && !clickTarget.closest('.player-mobile-menu__container').length && !clickTarget.hasClass('player-mobile-menu__container')) {
900            $('body').removeClass('body-no-scroll');
901            $('#player-mobile-menu').removeClass('player-mobile-menu-page_visible');
902        }
903    });
904    $('body').on('click', '.mobile-navigation__label', function() {
905        $('body').toggleClass('body-no-scroll');
906        $(this).toggleClass('mobile-navigation__label_checked');
907        $('.main-navigation').toggleClass('main-navigation_visible');
908        return false;
909    });
910    $(document).on('click', function(e) {
911        var clickTarget = $(e.target);
912        if ($('.main-navigation').hasClass('main-navigation_visible')) {
913            if (!clickTarget.closest('.mobile-navigation__label').length && !clickTarget.hasClass('mobile-navigation__label') && !clickTarget.closest('.main-navigation_visible').length && !clickTarget.hasClass('main-navigation_visible')) {
914                $('body').removeClass('body-no-scroll');
915                $('.mobile-navigation__label').removeClass('mobile-navigation__label_checked');
916                $('.main-navigation').removeClass('main-navigation_visible');
917            }
918        }
919    });
920    if (window.matchMedia('(max-width: 767px)').matches) {
921        $('span.nested-trigger').on('click', function() {
922            if ($(this).closest('li.nested').hasClass('open-nested-menu')) {
923                $(this).closest('li.nested').removeClass('open-nested-menu');
924            } else {
925                $('li.nested').removeClass('open-nested-menu');
926                $(this).closest('li.nested').addClass('open-nested-menu');
927            }
928        });
929    }
930    $('body').on('click', '.block-player__item-btn_play', function(e) {
931        $('body').find('.block-player__item-btn_play.active, .block-player.active').removeClass('active');
932        $(this).addClass('active');
933        $(this).closest('.block-player').addClass('active');
934        var block = $(this).closest('.block-player').find('.player-container-stories');
935        audios = $(block).find('.player__play-pause-btn');
936        if (audios.length > 0) {
937            $(audios[0]).click();
938            setAdSenceBlock(block);
939        }
940        return false;
941    }).on('click', '.player__play-pause-btn', function(e) {
942		deleteCookie('played');
943        $(this).toggleClass('player__play-pause-btn_active');
944        var player = $(this).closest('.player-container');
945        var audio = $(player).find('audio');
946        var statePlay = $(this).hasClass('player__play-pause-btn_pause');
947        if (statePlay) {
948            audioPause(audio);
949            $(this).removeClass('player__play-pause-btn_pause');
950        } else {
951            audioPlay(audio);
952            $(this).addClass('player__play-pause-btn_pause');
953        }
954        if (window.matchMedia('(max-width: 767px)').matches && $(player).closest('#fixed-player').length < 1) {
955            $(player).find('.player-container-bottom').slideDown();
956            $(player).find('.player__element_mobile').fadeIn();
957        }
958    }).on('keyup', '.search__input', function(e) {
959        var keyword = $(this).val();
960        var search_list = $(this).closest('form').find('.search_list');
961        if (search_list.length > 0) {
962            search_list.remove();
963        }
964        if (keyword.length > 2) {
965            $.get('/ajax/search_products.php', {
966                'query': keyword
967            }).done(function(data) {
968                if (data.suggestions.length > 0) {
969                    var html = '<div class="search_list">';
970                    for (var i = 0; i < data.suggestions.length; i++) {
971                        var item = data.suggestions[i];
972                        html += '<a href="/media/' + item.data.url + '" title="' + item.value + '">' + item.value + '</a>';
973                    }
974                    html += '</div>';
975                    $('body').find('.search').append(html);
976                }
977            });
978        }
979    }).on('submit', '.comment-respond-form', function() {
980        var data = $(this).serialize();
981        $.post($(this).attr('action'), data + '&ajax=1').done(function(response) {
982            var data = eval('(' + response + ')');
983            if (typeof data.error !== 'undefined' && data.error) {
984                var err_text = 'Неизвестная ошибка';
985                switch (data.error) {
986                    case 'captcha':
987                        err_text = 'Неверно введена капча';
988                        break;
989                    case 'empty_name':
990                        err_text = 'Введите имя';
991                        break;
992                    case 'empty_comment':
993                        err_text = 'Введите комментарий';
994                        break;
995                }
996                return;
997            } else {
998                var c = data.comment;
999                var coms = $('body').find('.comments');
1000                var html = '';
1001                if (c.answer_to > 0) {
1002                    html = '<div class="comment-response js-comment" data-id="' + c.id + '">';
1003                    html += '<div class="comment-title"><div class="comment-title__author">' + c.name + '</div><div class="comment-title__date">' + c.date + '</div>
1003<div class="comment-title__likes" data-id="' + c.id + '">' + c.likes + '</div></div>';
1004                    html += '<div class="comment-text">' + c.text + '</div><span class="comment-respond">ответить</span></div>';
1005                    $(html).insertAfter($('body').find('.js-comment[data-id=' + c.answer_to + ']'));
1006                } else {
1007                    // html = '<div class="comment-container" style="display:none"><a name="comment_' + c.id + '" href=""></a>';
1008                    html = '<div class="comment-container" style="display:none"><a data-name="comment_' + c.id + '" href=""></a>';
1009                    html += '<div class="comment js-comment" data-id="' + c.id + '"><div class="comment-title"><div class="comment-title__author">' + c.name + '</div><div class="comment-title__date">' + c.date + '</div><div class="comment-title__likes">' + c.likes + '</div></div>';
1010                    html += '<div class="comment-text">' + c.text + '</div><span class="comment-respond">ответить</span></div></div>';
1011                    if (coms.find('.comment-container').length > 0) coms.prepend(html);
1012                    else
1013                        coms.html(html);
1014                }
1015                var com = coms.find('.js-comment[data-id="' + c.id + '"]');
1016                if (com.hasClass('comment')) {
1017                    com = com.parent();
1018                }
1019                com.fadeIn(500);
1020                $('html, body').animate({
1021                    scrollTop: com.offset().top
1022                }, 200);
1023                $('body').find('.comment-respond-form')[0].reset();
1024            }
1025        });
1026        return false;
1027    }).on('submit', '.form-feedback', function() {
1028        var data = $(this).serialize();
1029        var th = this;
1030        $.post($(this).attr('action'), data + '&ajax=1' + '&referer=' + encodeURIComponent(location.href) + '&page_title=' + encodeURIComponent(document.title)).done(function(response) {
1031            if (response == 'error') {} else {
1032                $(th).html('Ваше сообщение отправлено');
1033                setTimeout(function() {
1034                    $('.modal').removeClass('modal_visible');
1035                    $('.modal-container').removeClass('modal-container_visible');
1036                    $('body').removeClass('body-no-scroll');
1037                }, 1500);
1038            }
1039        }).fail(function() {});
1040        return false;
1041    }).on('submit', '.offer_form', function() {
1042        var data = $(this).serialize();
1043        var th = $(this);
1044        if (th.prop('send')) {
1045            return false;
1046        }
1047        th.prop('send', true);
1048        $.post('/ajax/offer_item.php', data + '&ajax=1' + '&referer=' + encodeURIComponent(location.href) + '&page_title=' + encodeURIComponent(document.title)).done(function(response) {
1049            if (response == 'error' || response == 'error2' || response == 'captcha') {
1050                th.find('.recaptcha-code').html('<div class="g-recaptcha"></div>');
1051                myCallBackCaptcha();
1052                if (response == 'captcha') {
1053                    th.find('.error-text').html('Не пройдена проверка против роботов');
1054                } else {
1055                    if (response == 'error2') {
1056                        th.find('.error-text').html('Ошибка в названии сказки...');
1057                    } else {
1058                        th.find('.error-text').html('Ошибка...');
1059                    }
1060                }
1061            } else {
1062                {
1063                    $(th).html('Ваше сообщение отправлено, благодарим, что выбрали нас!');
1064                }
1065            }
1066            th.prop('send', false);
1067        }).fail(function() {
1068            th.find('.error-text').html('Ошибка...');
1069            th.prop('send', false);
1070        });
1071        return false;
1072    }).on('submit', '.search', function() {
1073        var data = $(this).serialize();
1074        if (data != 'keyword=') {
1075            updatePage($(this).attr('action') + '?' + data);
1076        }
1077        return false;
1078    }).on('click', '.filters-item-more', function() {
1079        var action = 0;
1080        var t = $(this).attr('data-text-next');
1081        $(this).attr('data-text-next', $(this).html());
1082        $(this).html(t);
1083        if ($(this).hasClass('js-active')) {
1084            action = 1;
1085            $(this).removeClass('js-active');
1086        } else {
1087            $(this).addClass('js-active');
1088        }
1089        if (action) {
1090            $(this).closest('.filters').find('.filters-item-outer').fadeOut(500);
1091        } else {
1092            $(this).closest('.filters').find('.filters-item-outer').fadeIn(500).css('display', 'block');
1093        }
1094    }).on('error', 'audio', function() {
1095        nextSong();
1096    }).on('click', '.player__next-btn', function() {
1097        nextSong();
1098    }).on('click', '.player-container input[type="radio"], .header-fixed-menu__container input[name="header-fixed-podborki"]', function() {
1099        var old_state = $(this).prop('old_checked');
1100        if (old_state !== true) {
1101            old_state = false;
1102        }
1103        if (old_state) {
1104            $(this).prop('checked', false);
1105        }
1106        $(this).closest('body').find('input[type="radio"]').prop('old_checked', false);
1107        $(this).prop('old_checked', $(this).prop('checked'));
1108    }).on('click', '.modal-opener[data-modal="feedback"]', function() {
1109        if ($('body').find('input[id="tab-video"]').length > 0) {
1110            $('body').find('#error_2').closest('.filters-item').show();
1111        } else {
1112            $('body').find('#error_2').closest('.filters-item').hide();
1113        }
1114    }).on('click', '.player__favorite, .ws-add-to-play-list, .song-counters-block__add-to-playlist, .block-player__item-favorite, .likes-and-favourites-block__favourites-button', function() {
1115        var id = 0;
1116        if ($(this).hasClass('song-counters-block__add-to-playlist') || $(this).hasClass('block-player__item-favorite') || $(this).hasClass('likes-and-favourites-block__favourites-button')) {
1117            if ($(this).hasClass('block-player__item-favorite')) {
1118                $(this).toggleClass('block-player__item-favorite_in-favorites');
1119            }
1120            id = $(this).attr('data-id');
1121        } else {
1122            if ($(this).hasClass('ws-add-to-play-list')) {
1123                id = $(this).closest('.player-mobile-menu__container').attr('data-id');
1124            } else {
1125                id = $(this).closest('.player-container').find('audio').attr('data-id');
1126                if (id === undefined) id = $(this).closest('.player-container').find('audio').attr('data-fixed-id');
1127            }
1128        }
1129        if (id !== undefined) {
1130            $.get('/ajax/add_to_playlist.php', {
1131                'id': id
1132            }).done(function(response) {
1133                if (response == 'auth') {
1134                    $('body').addClass('body-no-scroll');
1135                    $('.modal-container').addClass('modal-container_visible');
1136                    $('.login-modal').addClass('modal_visible');
1137                } else {
1138                    if (parseInt(response.id)) {
1139                        if (response.html.match(/favourites/)) {
1140                            $('body').find('.favourites-playlist')[0].outerHTML = (response.html);
1141                        }
1142                        var info = $('body').find('.player-mobile-menu__container');
1143                        $('body').find('.header-fixed-block__songs span').html(response.count);
1144                        if ($(info).attr('data-id') == response.id) {
1145                            if (response.state) {
1146                                $(info).find('.ws-add-to-play-list').html('<span>Удалить из плейлиста</span>');
1147                            } else {
1148                                $(info).find('.ws-add-to-play-list').html('<span>Добавить в плейлист</span>');
1149                            }
1150                        }
1151                        var product = $('body').find('.song-counters-block__add-to-playlist[data-id="' + id + '"]');
1152                        if (product.length > 0) {
1153                            if (response.state) {
1154                                $(product).html('Удалить из плейлиста').addClass('block-player__item-favorite_in-favorites');
1155                            } else {
1156                                $(product).html('Добавить в плейлист').removeClass('block-player__item-favorite_in-favorites');
1157                            }
1158                        }
1159                        var product = $('body').find('.block-player__item-favorite[data-id="' + id + '"]');
1160                        if (product.length > 0) {
1161                            if (response.state) {
1162                                $(product).html('удалить из плейлиста').addClass('block-player__item-favorite_in-favorites');
1163                            } else {
1164                                $(product).html('в плейлист').removeClass('block-player__item-favorite_in-favorites');
1165                            }
1166                        }
1167                        var product = $('body').find('.js-player-favourites-main[data-id="' + id + '"]');
1168                        if (product.length > 0) {
1169                            if (response.state) {
1170                                $(product).html('из плейлиста').addClass('block-player__item-favorite_in-favorites');
1171                            } else {
1172                                $(product).html('в плейлист').removeClass('block-player__item-favorite_in-favorites');
1173                            }
1174                        }
1175                    }
1176                }
1177            });
1178        }
1179    }).on('change', '.player-video-input', function() {
1180        var iframes = $(this).parent().find('iframe');
1181        for (var i = 0; i < iframes.length; i++) {
1182            $(iframes[i]).attr('src', $(iframes[i]).attr('data-src'));
1183        }
1184    }).on('click', '.player__prev-btn', function() {
1185        prevSong();
1186    }).on('click', '.new-comment', function(e) {
1187				e.stopImmediatePropagation();
1188        var com = $('.comment-respond-form');
1189        com.find('input[name="name"]').focus();
1190        $('html, body').animate({
1191            scrollTop: com.offset().top
1192        }, 200);
1193        return false;
1194    }).on('click', '.comment-respond', function() {
1195        var comment_id = $(this).closest('.js-comment').attr('data-id');
1196        var com = $('.comment-respond-form');
1197        $(com).find('input[name="answer_to"]').val(comment_id);
1198        com.find('input[name="name"]').focus();
1199        $('html, body').animate({
1200            scrollTop: com.offset().top
1201        }, 200);
1202        return false;
1203    }).on('change', '.track-controls__volume-control', function() {
1204        setVolume($(this).val());
1205    }).on('click', '.track-controls__seek-bar', function(e) {
1206        try {
1207            var v = (e.offsetX / $(this).width()).toFixed(2);
1208            $(this).val(v);
1209            if (v < 0) v = 0;
1210            if (v > 1) v = 0.95;
1211            if (isNaN(v)) v = 0;
1212            $(this).val(v);
1213        } catch (er) {
1214            console.log(er);
1215        }
1216        setTimeline($(this).val());
1217        return false;
1218    }).on('change', '.track-controls__seek-bar', function() {
1219        setTimeline($(this).val());
1220    }).on('click', '.close-mobile-button', function() {
1221        $('body').removeClass('body-no-scroll');
1222        $('#player-mobile-menu').removeClass('player-mobile-menu-page_visible');
1223        return false;
1224    }).on('click', '.modal-opener', function() {
1225        var modalname = $(this).data('modal');
1226        if (modalname.length !== 0) {
1227            $('body').addClass('body-no-scroll');
1228            $('.modal-container').addClass('modal-container_visible');
1229            $('.' + modalname + '-modal').addClass('modal_visible');
1230        }
1231    }).on('click', '.player__likes, .likes-button__counter, .block-player__item-likes', function() {
1232        var id = $(this).attr('data-id');
1233        var state = 0;
1234        var like_field = $(this).find('span');
1235        if ($(this).closest('.ws-likes-comments__likes').length > 0) {
1236            if (!$(this).closest('.ws-likes-comments__likes').hasClass('ws-likes-comments__likes_liked')) {
1237                state = 1;
1238                $(this).closest('.ws-likes-comments__likes').addClass('ws-likes-comments__likes_liked');
1239            } else {
1240                $(this).closest('.ws-likes-comments__likes').removeClass('ws-likes-comments__likes_liked');
1241            }
1242        } else {
1243            if ($(this).hasClass('likes-button__counter')) {
1244                if (!$(this).hasClass('block-player__likes_green')) {
1245                    state = 1;
1246                    $(this).addClass('block-player__likes_green');
1247                } else {
1248                    $(this).removeClass('block-player__likes_green');
1249                }
1250            } else {
1251                if (!$(this).hasClass('block-player__likes_green')) {
1252                    state = 1;
1253                    $(this).addClass('block-player__likes_green');
1254                } else {
1255                    $(this).removeClass('block-player__likes_green');
1256                }
1257            }
1258        }
1259        $.post('/ajax/rating.php', {
1260            'id': id,
1261            rate: state
1262        }).done(function(data) {
1263            if (data.rating !== undefined && data.rating > -1) {
1264                like_field.html(data.rating);
1265                like_field = $('body').find('.block-player .block-player__item-likes[data-id="' + id + '"]');
1266                like_field.html(data.rating);
1267                if (state) like_field.addClass('player__likes_green');
1268                else
1269                    like_field.removeClass('player__likes_green');
1270                like_field = $('body').find('.likes-button__counter[data-id="' + id + '"]');
1271                like_field.find('span').html(data.rating);
1272                if (state) like_field.addClass('player__likes_green');
1273                else
1274                    like_field.removeClass('player__likes_green');
1275            }
1276        });
1277        return false;
1278    }).on('click', '.comment-title__likes', function() {
1279        var id = $(this).attr('data-id');
1280        var state = 0;
1281        var like_field = $(this);
1282        if (!$(this).hasClass('player__likes_green')) {
1283            state = 1;
1284            $(this).addClass('player__likes_green');
1285        } else {
1286            $(this).removeClass('player__likes_green');
1287        }
1288        $.post('/ajax/rating_comment.php', {
1289            'id': id,
1290            rate: state
1291        }).done(function(data) {
1292            if (data.rating !== undefined && data.rating > -1) {
1293                like_field.html(data.rating);
1294            }
1295        });
1296        return false;
1297    }).on('click', '.loading-long-button-notify', function () {
1298		var a = $('body').find('#fixed-player audio');
1299		var data = {
1300			id: a.attr('data-fixed-id'),
1301		}
1302		var p = $('body').find('#fixed-player .loading-long-block');
1303		p.find('.loading-long-button-notify').remove();
1304		$.post('/ajax/loading-slow.php', data).done(function() {
1305			p.find('.loading-long-title').html('Благодарим за Вашу поддержку!');
1306		}).fail(function() {
1307			p.find('.loading-long-title').html('Благодарим за Вашу поддержку!');
1308		});
1309	
1310		return false;
1311    }).on('click', '.loading-long-button-reload', function () {
1312		document.location.reload();
1313		return false;
1314    }).on('click', '.loading-long-close', function () {
1315		slowLoadingClear(); 
1316		return false;
1317	});
1318    $(document).on('click', function(e) {
1319        var clickTarget = $(e.target);
1320        if (clickTarget.hasClass('modal-container_visible')) {
1321            $('.modal').removeClass('modal_visible');
1322            $('.modal-container').removeClass('modal-container_visible');
1323            $('body').removeClass('body-no-scroll');
1324        } else if (clickTarget.hasClass('modal-close')) {
1325            $('.modal').removeClass('modal_visible');
1326            $('.modal-container').removeClass('modal-container_visible');
1327            $('body').removeClass('body-no-scroll');
1328        }
1329    });
1330    $(document).keydown(function(e) {
1331        if (e.keyCode === 27) {
1332            $('.modal').removeClass('modal_visible');
1333            $('.modal-container').removeClass('modal-container_visible');
1334            $('body').removeClass('body-no-scroll');
1335        }
1336    });
1337    $('body').on('click', 'a', function() {
1338        if ($(this).hasClass('js-need-play')) {
1339            need_play_audio = true;
1340        }
1341		if($(this).hasClass('js-get-stories-list')){
1342			return false;
1343		}
1344		
1345        var block = $(this).closest('.accordion-block');
1346        if (block.length > 0 && $(block).find('.hidden-block').length > 0) {
1347            $(block).find('.hidden-block').toggle();
1348            return false;
1349        }
1350        if ($(this).closest('.player-mobile-menu__container').length > 0) {
1351            $('body').removeClass('body-no-scroll');
1352            $('.player-mobile-menu-page').removeClass('player-mobile-menu-page_visible');
1353        }
1354        if ($(this).hasClass('main-filter__link')) {
1355            return false;
1356        }
1357        if ($(this).attr('target') != '_blank') {
1358            var url = $(this).attr('href');
1359            if (url !== undefined) updatePage($(this).attr('href'));
1360        } else
1361            return true;
1362        return false;
1363    });
1364    window.onpopstate = function(event) {
1365        try {
1366            var root = location.protocol + '//' + location.host;
1367            var url = location.href.replace(root, '');
1368            if (typeof url != 'undefined') updatePage(url, true);
1369        } catch (e) {
1370            console.log(e);
1371        }
1372    };
1373    try {
1374		var fi = $('body').find('#fixed-player audio');
1375		var t = fi.attr('data-currentTime');
1376		if(typeof t !== 'undefined' && t > 0){
1377			var t = (new Date()).getTime();
1378			$(fi).attr('data-init-time', t + '');
1379			$(fi).attr('data-is-ended', '0');
1380			fi[0].addEventListener('error', errorEvent, false);
1381			fi[0].addEventListener('timeupdate', timeupdateEvent, false);
1382			fi[0].addEventListener('loadedmetadata', loadedmetadataEvent, false);
1383			fi[0].addEventListener('ended', endedEvent, false);
1384			// fi[0].load();
1385		}
1386        var audio_id_from_cookie = getCookie('audio_id');
1387        if (typeof audio_id_from_cookie !== 'undefined') {
1388            // var a = $('audio[data-id="' + audio_id_from_cookie + '"]');
1389            // if (a.length > 0) {
1390                // // audioPlay(a);
1391                // // start_from_cookie = 1;
1392            // }
1393        }
1394    } catch (e) {
1395        console.log(e);
1396    }
1397	
1398	
1399	$(window).scroll(function() {
1400		for(var i in window.load_stack){
1401			if (typeof window.load_stack[i] == 'function')
1402				window.load_stack[i]();
1403			delete window.load_stack[i];
1404		}
1405	});
1406	
1407	aj();
1408});
1409var fixedPlayer = document.getElementById('fixed-player');
1410var playerTimer = null;
1411try {
1412    var fixed = document.getElementById('player-mobile-menu');
1413    fixed.addEventListener('touchmove', function(e) {
1414        e.preventDefault();
1415    }, false);
1416} catch (e) {
1417    console.log(e);
1418}
1419
1420function preloadNext(audio) {
1421    try {
1422        var next_page = $('body').find('.prev-next-song__next');
1423        if (next_page.length < 1) {
1424            var fix_audio = $(fixedPlayer).find('audio');
1425            var fix_id = $(fix_audio).attr('data-fixed-id');
1426            var i = 0;
1427            do {
1428                i++;
1429                if (i > 10) break;
1430                var dubles = $('body').find('audio[data-id="' + fix_id + '"]');
1431                if (dubles.length > 1) {
1432                    $(dubles[1]).closest('.player-container').remove();
1433                }
1434            } while (dubles.length > 1);
1435            var songs = $('body').find('audio');
1436            for (var i = 0; i < songs.length; i++) {
1437                var id = $(songs[i]).attr('data-id');
1438                if (id === undefined) {
1439                    continue;
1440                }
1441                if (id == fix_id && (i + 1) < songs.length) {
1442                    break;
1443                }
1444            }
1445            if (i == songs.length - 2) {
1446                getAjaxNextPage();
1447            }
1448        }
1449    } catch (e) {
1450        console.log(e);
1451    }
1452    return;
1453    try {
1454        var next_page = $('body').find('.prev-next-song__next');
1455        if (next_page.length < 1) {
1456            var fix_audio = $(fixedPlayer).find('audio');
1457            var fix_id = $(fix_audio).attr('data-fixed-id');
1458            var songs = $('body').find('audio');
1459            for (var i = 0; i < songs.length; i++) {
1460                var id = $(songs[i]).attr('data-id');
1461                if (id === undefined) {
1462                    continue;
1463                }
1464                if (id == fix_id && (i + 1) < songs.length) {
1465                    if ($(songs[i + 1]).attr('data-fixed-id') != fix_id) {
1466                        $('body').find('.preload_audio').remove();
1467                    }
1468                    break;
1469                }
1470            }
1471        }
1472    } catch (e) {
1473        console.log(e);
1474    }
1475}
1476
1477function errorEvent(e) {
1478    console.log('error song');
1479    e.target.pause();
1480	deleteCookie('played');
1481    nextSong();
1482}
1483
1484function timeupdateEvent() {
1485	clearInterval(play_timer);
1486	play_warning = false;
1487
1488	var ct = $(this).attr('data-currentTime');
1489    if (typeof ct != 'undefined' && ct >0){
1490		$(this).removeAttr('data-currentTime');
1491		this.currentTime = Number(ct);
1492	}
1493	$('body').find('.loading-track').removeClass('loading-track');
1494    var p = this.currentTime / this.duration;
1495    var fix_id = $(this).attr('data-fixed-id');
1496    try {
1497        setCookie('audio_timeline', p.toFixed(2), {
1498            expires: 84600
1499        });
1500		setCookie('audio_time', this.currentTime, {
1501            expires: 84600
1502        });
1503		setCookie('audio_id', fix_id, {
1504            expires: 84600
1505        });
1506		setCookie('played', 1, {
1507            expires: 84600
1508        });
1509		clearInterval(my_interval);
1510    } catch (e) {
1511        console.log(e);
1512    }
1513    this.loop = $('body').hasClass('audio_loop');
1514    $(fixedPlayer).find('.track-controls__seek-bar').val(p);
1515    var player = $('audio[data-id="' + fix_id + '"]').closest('.player-container');
1516    $(player).find('.track-controls__seek-bar').val(p);
1517    $(player).find('.track-controls__time').html(secondsToTime(this.currentTime));
1518    $(fixedPlayer).find('.player__length').html(secondsToTime(this.currentTime));
1519	if(!this.paused && $(player).find('audio').length > 0) {
1520		$(player).find('audio')[0].currentTime = this.currentTime;
1521		$(fixedPlayer).find('.player__play-pause-btn').addClass('player__play-pause-btn_pause');
1522		$(player).find('.player__play-pause-btn').addClass('player__play-pause-btn_pause');
1523	}
1524}
1525
1526function loadedmetadataEvent() {
1527
1528    var fix_id = $(this).attr('data-fixed-id');
1529    var ct = $(this).attr('data-currentTime');
1530    try {
1531        var t = (new Date()).getTime();
1532        var a = $('body').find('audio[data-id="' + fix_id + '"]');
1533        var old_t = $(this).attr('data-init-time');
1534        // var old_t = $(a).attr('data-init-time');
1535		if (typeof old_t != 'undefined') {
1536            $(a).attr('data-inited-time', t);
1537			var src = $(this).attr('src');
1538			if(typeof src == 'undefined') {
1539				src = $(this).find('source:first-child').attr('src');
1540			}
1541            $.post('/ajax/log_audio.php', {
1542                'id': fix_id,
1543                't': t - old_t,
1544                'f': src,
1545                'is_new': 2
1546            });
1547			// if(t - old_t > 20000 || typeof jon_test != 'undefined') {
1548				// slowLoadingInit ();
1549			// }
1550        }
1551		if (typeof ct != 'undefined' && ct >0){
1552			this.currentTime = Number(ct);
1553		}
1554    } catch (e) {
1555        console.log(e);
1556    }
1557	$(this).removeAttr('onload');
1558	// $(this).removeAttr('data-currentTime');
1559    var p = this.currentTime / this.duration;
1560    $(fixedPlayer).find('.track-controls__seek-bar').val(p);
1561    var player = $('audio[data-id="' + fix_id + '"]').closest('.player-container');
1562    $(player).find('.track-controls__seek-bar').val(p);
1563    $(player).find('.track-controls__time').html(secondsToTime(this.currentTime));
1564    var initDuration = parseInt($(player).find('.player__length').attr('data-duration'));
1565    var newDuration = Math.floor(this.duration);
1566    $(fixedPlayer).find('.player__length').html(secondsToTime(this.currentTime));
1567    if (start_from_cookie && save_audio_to_cookie) {
1568        start_from_cookie = 0;
1569        var audio_timeline = getCookie('audio_timeline');
1570        if (audio_timeline != undefined) {
1571            setTimeline(parseFloat(audio_timeline));
1572        }
1573    }
1574}
1575
1576function endedEvent(e) {
1577    var fix_id = $(this).attr('data-fixed-id');
1578    try {
1579        var a = $('body').find('audio[data-id="' + fix_id + '"]');
1580        $(a).attr('data-is-ended', '1');
1581    } catch (e) {
1582        console.log(e);
1583    }
1584    if (e.target.duration > 0) {
1585        nextSong();
1586    }
1587}
1588
1589function canplaythroughEvent(e) {
1590    if (e.target.paused) {
1591       // e.target.play();
1592    }
1593}
1594
1595function audioPlay(audio) {
1596	slowLoadingClear ();
1597    testMSG('start player');
1598    var player = $(audio).closest('.player-container');
1599    var new_audio = audio;
1600    $(fixedPlayer).fadeIn(500);
1601
1602	var is_fixed = 1;
1603	var t = (new Date()).getTime();
1604
1605
1606    if ($(audio).closest('#fixed-player').length < 1) {
1607		deleteCookie('audio_timeline');
1608		deleteCookie('audio_time');
1609		deleteCookie('audio_id');
1610        $('body').find('.player-container').removeClass('active');
1611        $(player).addClass('active');
1612        var product_id = $(audio).attr('data-product-id');
1613        if (!$(audio).closest('.block-player').hasClass('active')) {
1614            $('body').find('.block-player').removeClass('active');
1615            $('body').find('.block-player[data-id="' + product_id + '"]').addClass('active');
1616        }
1617        var id = $(audio).attr('data-id');
1618        if (typeof id === 'undefined') {
1619            return;
1620        }
1621        var fix_audio = $(fixedPlayer).find('audio');
1622        var fix_id = $(fix_audio).attr('data-fixed-id');
1623		$(fix_audio).attr('data-init-time', t + '');
1624		$(fix_audio).attr('data-is-ended', '0');
1625
1626        if (id != fix_id) {
1627            fix_id = id;
1628            try {
1629                var i = 1;
1630                // $(fixedPlayer).find('audio').remove();
1631				new_audio = fix_audio;
1632                // new_audio = $(audio).clone(false).appendTo($(audio).parent());
1633                window.sounds[$(audio).attr('data-id')] = audio[0];
1634                // $(audio).attr('data-id', '').attr('data-fixed-id', $(audio).attr('data-id')).insertAfter($(fixedPlayer).find('.player-container .player'));
1635				$(new_audio).html($(audio).html());
1636                fix_audio = $(fixedPlayer).find('audio');
1637
1638				$(audio).attr('data-init-time', t + '');
1639                $(audio).attr('data-is-ended', '0');
1640                $(fix_audio[0]).attr('data-init-time', t + '');
1641                $(fix_audio[0]).attr('data-is-ended', '0');
1642                $(fix_audio[0]).addClass('need-play');
1643                $(fix_audio[0]).closest('.player-container').addClass('loading-track');
1644                // fix_audio[0].pause();
1645                $(fix_audio).attr('data-fixed-id', fix_id);
1646                $(fix_audio).attr('data-product-id', product_id);
1647                if ($(fix_audio).attr('preload') == undefined || $(fix_audio).attr('preload') == '') {
1648                    // $(fix_audio).attr('preload', 'metadata');
1649                }
1650                if (save_audio_to_cookie) {
1651                    setCookie('audio_id', fix_id, {
1652                        expires: 84600
1653                    });
1654                }
1655                // fix_audio[0].load();
1656                $(player).addClass('loading-track');
1657				// initInterval();
1658                try {
1659                    fix_audio[0].removeEventListener('error', errorEvent, false);
1660                    fix_audio[0].removeEventListener('timeupdate', timeupdateEvent, false);
1661                    fix_audio[0].removeEventListener('loadedmetadata', loadedmetadataEvent, false);
1662                    fix_audio[0].removeEventListener('ended', endedEvent, false);
1663                } catch (e) {
1664                    console.log(e);
1665                }
1666                fix_audio[0].addEventListener('error', errorEvent, false);
1667                fix_audio[0].addEventListener('timeupdate', timeupdateEvent, false);
1668                fix_audio[0].addEventListener('loadedmetadata', loadedmetadataEvent, false);
1669                fix_audio[0].addEventListener('ended', endedEvent, false);
1670                $(fixedPlayer).find('.player__track-name').html($(player).find('.player__track-name').html());
1671                $(fixedPlayer).find('.player__track-name').attr('href', $(player).find('.player__track-name').attr('href'));
1672                var volume = $(fixedPlayer).find('.track-controls__volume-control').val();
1673                var c_volume = getCookie('audio_volume');
1674                if (c_volume != undefined) {
1675                    volume = c_volume;
1676                }
1677                // fix_audio[0].volume = volume;
1678                $(player).find('.track-controls__volume-control').val(volume);
1679                $(fixedPlayer).find('.track-controls__volume-control').val(volume);
1680                $(fixedPlayer).find('.player__likes span').html(Number($($('body').find('.likes-button__counter')[0]).text()));
1681                $(fixedPlayer).find('.player__likes').attr('class', $(player).find('.player__likes').attr('class')).attr('data-id', id);
1682                $(fixedPlayer).find('.player__favorite').attr('class', $(player).find('.player__favorite').attr('class'));
1683                $(fixedPlayer).find('.player__download').attr('href', $(player).find('.player__download').attr('href'));
1684                if (window.matchMedia('(max-width: 767px)').matches) {
1685                    $('body').find('main .player__track-name-init').fadeIn();
1686                    $('body').find('main .player-container-bottom, .main .player__element_mobile').hide();
1687                    $(player).find('.player-container-bottom').slideDown();
1688                    $(player).find('.player__element_mobile').fadeIn();
1689                }
1690            } catch (e) {
1691                console.log(e);
1692            }
1693			is_fixed = 0;
1694        } else {
1695			
1696            // console.log(id);
1697			is_fixed = 1;
1698        }
1699    } else {
1700		is_fixed = 1;
1701        fix_audio = $(fixedPlayer).find('audio');
1702        fix_id = $(fix_audio).attr('data-fixed-id');
1703		$(fix_audio).attr('data-init-time', t + '');
1704		$(fix_audio).attr('data-is-ended', '0');
1705		
1706    }
1707	play_warning = false;
1708	clearInterval(play_timer);
1709	sub_file = false;
1710	play_timer = setInterval(function () {
1711		var old_t = $(fix_audio).attr('data-init-time');
1712		var t = (new Date()).getTime();    
1713		// console.log(t - old_t);
1714		var delta = Math.floor((t - old_t) / 1000);
1715		console.log(delta);
1716		if(delta % 15 == 14) {
1717			replayAudioSubDomain();
1718		}
1719		if(delta>2){
1720           jQuery(document).find('.loading-track').removeClass('loading-track');
1721            jQuery(document).find('.player__play-pause-btn_pause').removeClass('player__play-pause-btn_pause').removeClass('player__play-pause-btn_active');
1722        }
1723		if((delta > 20 || typeof jon_test != 'undefined') && !play_warning) {
1724			slowLoadingInit();
1725			// clearInterval(play_timer);
1726			play_warning = true;
1727		}
1728	},1000);
1729    try {
1730        // clearTimeout(playerTimer);
1731    } catch (e) {
1732        console.log(e);
1733    }
1734    // playerTimer = setTimeout(function() {
1735        // try {
1736            // var fix_audio = $(fixedPlayer).find('audio');
1737            // if (fix_audio[0].paused && $(fix_audio[0]).hasClass('need-play')) {
1738                // fix_audio[0].play();
1739            // }
1740            // $(fix_audio[0]).removeClass('need-play');
1741        // } catch (e) {}
1742    // }, 1000);
1743    if(is_fixed) {
1744		fix_audio[0].play();
1745	} else {
1746		try {
1747			fix_audio[0].removeEventListener('canplaythrough, loadeddata, canplay', canplaythroughEvent);
1748		} catch (e) {
1749			console.log(e);
1750		}
1751		fix_audio[0].addEventListener('canplaythrough, loadeddata, canplay', canplaythroughEvent);
1752		var data_audio  = {
1753			html:$(audio).html(), 
1754			// currentTime: audio[0].currentTime,
1755			target: audio,
1756		}
1757		if(typeof audio[0] != 'undefined' && typeof audio[0].currentTime != 'undefined') {
1758			data_audio.currentTime = audio[0].currentTime;
1759		}
1760		
1761		jsplayer.addTrack(data_audio);
1762		jsplayer.play();
1763		currentTimeCheck();
1764		$('body').find('.player__play-pause-btn').removeClass('player__play-pause-btn_pause');
1765		$('audio[data-id="' + fix_id + '"]').closest('.player-container').find('.player__play-pause-btn').addClass('player__play-pause-btn_pause');
1766		$(fixedPlayer).find('.player-container').find('.player__play-pause-btn').addClass('player__play-pause-btn_pause');
1767		preloadNext(new_audio);
1768	}
1769	
1770}
1771
1772function audioPause(audio) {
1773    try {
1774        var fix_audio = $(fixedPlayer).find('audio');
1775        $(fix_audio[0]).removeClass('need-play');
1776        fix_audio[0].pause();
1777        var id = $(fix_audio).attr('data-fixed-id');
1778        $('body').find('audio[data-id="' + id + '"]').closest('.player-container').find('.player__play-pause-btn').removeClass('player__play-pause-btn_pause');
1779        $(fixedPlayer).find('.player-container').find('.player__play-pause-btn').removeClass('player__play-pause-btn_pause');
1780        // deleteCookie('audio_id');
1781		deleteCookie('played');
1782    } catch (e) {}
1783}
1784
1785function getAjaxNextPage() {
1786    var pagination = $('body').find('.pagination__list');
1787    if (pagination.length > 0) {
1788        var next_page = $(pagination).attr('data-next-page');
1789        $(pagination).attr('data-next-page', '');
1790        if (next_page != '') {
1791            $.post(next_page, {
1792                'ajaxNextPage': 1
1793            }).done(function(response) {
1794                var old_page = next_page;
1795                try {
1796                    var page_wrapper = response.match(/<meta block="ajax_products">([\S\s]*)<meta block="ajax_products_end">/i);
1797                    next_page = response.match(/data-next-page="(.*?)"/i);
1798                    if (next_page === null) {
1799                        next_page = '';
1800                    } else {
1801                        next_page = next_page[1];
1802                    }
1803                    $('body').find('.pagination__list').attr('data-next-page', next_page);
1804                    if (page_wrapper !== null) {
1805                        var root = location.protocol + '//' + location.host;
1806                        var hisObj = {
1807                            'url': location.href
1808                        };
1809                        window.history.pushState(hisObj, '', (old_page == '/user/logout' ? root : root + old_page));
1810                        $('body').find('.pagination').remove();
1811                        $('body').find('.js-playlist').append(page_wrapper[1]);
1812                        adsenceInit();
1813                        symbolLimit();
1814                        contentInner();
1815                    }
1816                } catch (e) {
1817                    console.log(e);
1818                }
1819            });
1820        }
1821    }
1822}
1823
1824function nextSong() {
1825    var fix_id = $('body').find('.fixed-player audio').attr('data-fixed-id');
1826    try {
1827        var a = $('body').find('audio[data-id="' + fix_id + '"]');
1828        var t = $(a).attr('data-inited-time');
1829        var old_t = $(a).attr('data-init-time');
1830        if (old_t != undefined) {
1831            var t_next = (new Date()).getTime();
1832            if (t == undefined) {
1833                t = t_next;
1834            }
1835            var is_ended = $(a).attr('data-is-ended');
1836			var src = $(a).attr('src');
1837			if(typeof src == 'undefined') {
1838				src = $(a).attr('data-src');
1839			}
1840            $(a).attr('data-inited-time', t);
1841            $.post('/ajax/log_audio.php', {
1842                'id': fix_id,
1843                't': t - old_t,
1844                'f': src,
1845                'is_new': 2,
1846                'is_next': t_next - old_t,
1847                'is_ended': is_ended
1848            });
1849        }
1850    } catch (e) {
1851        console.log(e);
1852    }
1853    try {
1854        var next_page = $('body').find('.prev-next-song__next');
1855        if (next_page.length > 0) {
1856            var url = next_page.attr('href');
1857            updatePage(url);
1858            var audio = $('body').find('.player-container_main audio');
1859            if (audio.length > 0) {
1860                audioPlay(audio[0]);
1861            }
1862        } else {
1863            var fix_audio = $(fixedPlayer).find('audio');
1864            var fix_id = $(fix_audio).attr('data-fixed-id');
1865            var songs = $('body').find('audio');
1866            var played = false;
1867            for (var i = 0; i < songs.length; i++) {
1868                var id = $(songs[i]).attr('data-id');
1869                if (id === undefined) {
1870                    continue;
1871                }
1872                if (id == fix_id && (i + 1) < songs.length) {
1873                    if ($(songs[i + 1]).attr('data-fixed-id') != fix_id) {
1874                        audioPlay(songs[i + 1]);
1875                        played = 1;
1876                    }
1877                    break;
1878                }
1879            }
1880            if (!played && songs.length > 1) {
1881                audioPlay(songs[0]);
1882            }
1883        }
1884    } catch (e) {
1885        console.log(e);
1886    }
1887}
1888
1889function prevSong() {
1890    try {
1891        var prev_page = $('body').find('.prev-next-song__prev');
1892        if (prev_page.length > 0) {
1893            var url = prev_page.attr('href');
1894            updatePage(url);
1895            var audio = $('body').find('.player-container_main audio');
1896            if (audio.length > 0) {
1897                audioPlay(audio[0]);
1898            }
1899        } else {
1900            var fix_audio = $(fixedPlayer).find('audio');
1901            var fix_id = $(fix_audio).attr('data-fixed-id');
1902            var songs = $('body').find('audio');
1903            for (var i = songs.length - 1; i > -1; i--) {
1904                var id = $(songs[i]).attr('data-id');
1905                if (id === undefined) {
1906                    continue;
1907                }
1908                if (id == fix_id && (i - 1) > -1) {
1909                    audioPlay(songs[i - 1]);
1910                    break;
1911                }
1912            }
1913        }
1914    } catch (e) {
1915        console.log(e);
1916    }
1917}
1918
1919function setVolume(value) {
1920    var fix_audio = $(fixedPlayer).find('audio');
1921    var fix_id = $(fix_audio).attr('data-fixed-id');
1922    var player = $('audio[data-id="' + fix_id + '"]').closest('.player-container');
1923    value = parseFloat(value);
1924    fix_audio[0].volume = value;
1925    setCookie('audio_volume', value, {
1926        expires: 84600
1927    });
1928    $(fixedPlayer).find('.track-controls__volume-control').val(value);
1929    $(player).find('.track-controls__volume-control').val(value);
1930}
1931
1932function setTimeline(value) {
1933    var fix_audio = $(fixedPlayer).find('audio');
1934    var fix_id = $(fix_audio).attr('data-fixed-id');
1935    var player = $('audio[data-id="' + fix_id + '"]').closest('.player-container');
1936    value = parseFloat(value);
1937    fix_audio[0].currentTime = value * fix_audio[0].duration;
1938    $(fixedPlayer).find('.track-controls__seek-bar').val(value);
1939    $(player).find('.track-controls__seek-bar').val(value);
1940	$(player).find('audio')[0].currentTime = fix_audio[0].currentTime;
1941	try {
1942        setCookie('audio_timeline', value.toFixed(2), {
1943            expires: 84600
1944        });
1945		setCookie('audio_time', fix_audio[0].currentTime, {
1946            expires: 84600
1947        });
1948		setCookie('audio_id', fix_id, {
1949            expires: 84600
1950        });
1951		clearInterval(my_interval);
1952    } catch (e) {
1953        console.log(e);
1954    }
1955    	
1956}
1957
1958function updatePage(url, is_back) {
1959	document.location.href = url;
1960    if ($('body').hasClass('loading-page')) {
1961        return;
1962    }
1963    if (is_back === undefined) is_back = false;
1964    if (typeof url != 'undefined') {
1965        if (url.indexOf('http') === 0) {
1966            location.href = url;
1967            return;
1968        }
1969        var root = location.protocol + '//' + location.host;
1970        if (!is_back) {
1971            var hisObj = {
1972                'url': location.href
1973            };
1974            window.history.pushState(hisObj, '', (url == '/user/logout' ? root : root + url));
1975        }
1976        $('.header-fixed-menu').removeClass('header-fixed-menu_visible');
1977        $('.main-navigation').removeClass('main-navigation_visible');
1978        $('body').addClass('loading-page');
1979        $.ajax({
1980            'url': url,
1981            'type': 'GET',
1982            'async': true,
1983        }).done(function(response) {
1984			$('html, body').animate({
1985				scrollTop: 0
1986			}, 200);
1987            $('body').removeClass('loading-page');
1988            var page_wrapper = response.match(/<span class="start_page_content"><\/span>([\S\s]*)<span class="end_page_content"><\/span>/i);
1989            var page_title = response.match(/<title>([\S\s]*)<\/title>/i);
1990            if (page_wrapper !== null) {
1991                document.title = page_title[1];
1992                $('body').find('span.start_page_content').next()[0].outerHTML = page_wrapper[1];
1993                if (!url.match(/tags=/)) {
1994                    if (url.indexOf('#') > -1) {
1995                        // var obj = $('a[name="download"]');
1996                        var obj = $('a[data-name="download"]');
1997                    } 
1998                }
1999                if (page_wrapper[1].indexOf('g-recaptcha') > 0) {
2000                    try {
2001                        myCallBackCaptcha();
2002                    } catch (e) {
2003                        console.log(e);
2004                    }
2005                }
2006                try {
2007                    symbolLimit();
2008                    contentInner();
2009                    adsenceInit();
2010                } catch (e) {
2011                    console.log(e);
2012                }
2013				lazyLoad();
2014            }
2015            if (need_play_audio) {
2016                var audios = $('body').find('.player-block__inner-product').find('audio');
2017                if (audios.length > 0) {
2018                    $(audios[0]).closest('.player-container').find('.player__play-pause-btn').click();
2019                }
2020                need_play_audio = false;
2021            }
2022        }).fail(function() {
2023            $('body').removeClass('loading-page');
2024            var modalname = 'error_page';
2025            if (modalname.length !== 0) {
2026                $('body').addClass('body-no-scroll');
2027                $('.modal-container').addClass('modal-container_visible');
2028                $('.' + modalname + '-modal').addClass('modal_visible');
2029            }
2030        });
2031    }
2032}
2033
2034function secondsToTime(time) {
2035    var h = Math.floor(time / (60 * 60)),
2036        dm = time % (60 * 60),
2037        m = Math.floor(dm / 60),
2038        ds = dm % 60,
2039        s = Math.ceil(ds);
2040    if (s === 60) {
2041        s = 0;
2042        m = m + 1;
2043    }
2044    if (s < 10) {
2045        s = '0' + s;
2046    }
2047    if (m === 60) {
2048        m = 0;
2049        h = h + 1;
2050    }
2051    if (m < 10) {}
2052    var fulltime = '';
2053    if (h === 0) {
2054        fulltime = m + ':' + s;
2055    } else {
2056        fulltime = h + ':' + m + ':' + s;
2057    }
2058    return fulltime;
2059}
2060
2061function canplayEvent() {
2062    var id = $(this).attr('data-id');
2063    var duration = this.duration;
2064}
2065
2066function errorEvent2() {
2067    var id = $(this).attr('data-id');
2068    var duration = this.duration;
2069}
2070
2071function addListenerAudio(a) {
2072    try {
2073        a.removeEventListener('canplay', canplayEvent, false);
2074        a.removeEventListener('error', errorEvent2, false);
2075    } catch (e) {
2076        console.log(e);
2077    }
2078    a.addEventListener('canplay', canplayEvent, false);
2079    a.addEventListener('error', errorEvent2, false);
2080}
2081
2082function setMenuSong(player) {
2083    var info = $('body').find('.player-mobile-menu__container');
2084    var id = $(player).find('audio').attr('data-id');
2085    if ($(player).find('audio').attr('data-fixed-id') !== undefined) {
2086        id = $(player).find('audio').attr('data-fixed-id');
2087    }
2088    $(info).attr('data-id', id);
2089    $(info).find('.player-mobile-menu__track-name').html($(player).find('.player__track-name').html());
2090    $(info).find('.show-all-link_player-mobile-menu').attr('href', $(player).find('.player__track-name').attr('href'));
2091    $(info).find('.ws-likes-comments__comments').attr('href', $(player).find('.player__track-name').attr('href'));
2092    $(info).find('.player-mobile-menu__link-to-video').hide();
2093    $(info).find('.player-mobile-menu__link-to-lyrics').hide();
2094    $(info).find('.player-mobile-menu__link-to-notes').hide();
2095    $(info).find('.player__likes span').html($(player).find('.player__likes span').html()).parent().attr('data-id', id).parent().removeClass('ws-likes-comments__likes_liked');
2096    if ($(player).find('.player__likes').hasClass('player__likes_green')) {
2097        $(info).find('.player__likes').parent().addClass('ws-likes-comments__likes_liked');
2098    }
2099    $(info).find('.ws-comments span').html(0);
2100    if ($(player).find('.player__favorite').hasClass('block-player__item-favorite_in-favorites')) {
2101        $(info).find('.ws-add-to-play-list').addClass('block-player__item-favorite_in-favorites').html('<span>Удалить из плейлиста</span>');
2102    } else {
2103        $(info).find('.ws-add-to-play-list').removeClass('block-player__item-favorite_in-favorites').html('<span>Добавить в плейлист</span>');
2104    }
2105    $.post('/ajax/get_info.php', {
2106        'id': id
2107    }).done(function(data) {
2108        try {
2109            if (data.videos) {
2110                $(info).find('.player-mobile-menu__link-to-video').attr('href', data.url).show();
2111            }
2112            if (data.notes) {
2113                $(info).find('.player-mobile-menu__link-to-notes').attr('href', data.url).show();
2114            }
2115            if (data.text) {
2116                $(info).find('.player-mobile-menu__link-to-lyrics').attr('href', data.url).show();
2117            }
2118            if (data.comments) {
2119                $(info).find('.ws-comments span').html(data.comments);
2120            }
2121        } catch (e) {}
2122    });
2123}
2124
2125function autoplay() {
2126    var autoplay = $('body').find('audio[prop-autoplay="autoplay"]');
2127    if (autoplay.length > 0) {
2128        audioPlay($(autoplay));
2129    }
2130}
2131var cur_ind_offer = 0;
2132function getRandomInt(min, max) {
2133  return Math.floor(Math.random() * (max - min)) + min;
2134}
2135function rand_bottom_offer() {
2136	var n = offers_bottom.length - 1;
2137	cur_ind_offer++;
2138	if(cur_ind_offer > n) {
2139		cur_ind_offer = 0;
2140	}
2141	var item = offers_bottom[cur_ind_offer];
2142	$('.subplayer-link-mobile').attr('href', item.url).html(item.txt);
2143}
2144$(function() {
2145	if(typeof offers_bottom !== 'undefined' && offers_bottom.length > 0) {
2146		cur_ind_offer = getRandomInt(0, offers_bottom.length-1);
2147		rand_bottom_offer();
2148		setInterval(function() {
2149			rand_bottom_offer();
2150		}, 40000);
2151	}
2152});

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.