(function(n,t){var r=t.isRussian,h,i;r?moment.locale("ru"):moment.locale("en");var e=n("#timer"),o=n("#duration"),c=n("#selectedPlaylist"),l=n("#playlistFiles"),f=n("#playBtn"),a=n("#stopBtn"),u=n("#pauseBtn"),v=n("#prevBtn"),y=n("#nextBtn"),p=n("#volumeSlider"),s=n("#progressSlider"),w=r?"Анг":"Eng",b=r?"Рус":"Rus";u.hide();h=function(){this.playlist=[];this.index=0};h.prototype={setPlaylist:function(t){var u=this;(u.reset(),t.length!==0)&&(u.playlist=t,u.index=0,u.playlist.forEach(function(t,u){var f=t.file,s=r?f.TitleRussian:f.Title,h=u===0?" active":"",c=f.IsEnglish===!0?w:b,e=n('
<\/div>'),o=n('
'+s+'<\/span>'+c+"<\/span><\/div>"),l=n('<\/i><\/a>');e.append(o);e.append(l);e.appendTo("#playlistFiles");o.click(function(t){t.preventDefault();n(this).parent().addClass("active").siblings().removeClass("active");i.player.skipTo(u)})}))},play:function(t){var i=this,r;i.playlist.length!==0&&(t=typeof t=="number"?t:i.index,r=i.playlist[t],r.howl||i.createHowl(r),r.howl.play(),f.hide(),u.show(),i.index=t,n("[id^=audioTrack]").removeClass("active"),n("#audioTrack"+t).addClass("active"))},createHowl:function(n){var t=this;n.howl=new Howl({src:[n.file.FileUrl],html5:!0,onplay:function(){o.text(t.formatTime(Math.round(n.howl.duration())));requestAnimationFrame(t.step.bind(t));f.hide();u.show()},onload:function(){o.text(t.formatTime(Math.round(n.howl.duration())))},onend:function(){t.skip("next")},onpause:function(){},onstop:function(){}})},pause:function(){var n=this,t=n.playlist[n.index].howl;t.pause();f.show();u.hide()},skip:function(n){var i=this,t;if(i.stop(),t=0,n==="prev"){if(t=i.index-1,t<0)return}else if(t=i.index+1,t>=i.playlist.length)return;i.skipTo(t)},skipTo:function(n){var t=this,i;t.index===n?(i=t.playlist[n],i.howl&&i.howl.playing()||t.play(n)):(t.stop(),t.play(n))},volume:function(n){var t=this;Howler.volume(n)},seek:function(n){var t=this,i,r;t.playlist.length!==0&&(i=t.playlist[t.index].howl,i&&(r=i.duration()*n,i.seek(r),e.text(t.formatTime(Math.round(r)))))},step:function(){var n=this;if(n.playlist.length!==0){var t=n.playlist[n.index].howl,i=t.seek()||0,r=i/t.duration()||0;e.text(n.formatTime(Math.round(i)));s.slider("value",r);t.playing()&&requestAnimationFrame(n.step.bind(n))}},formatTime:function(n){var t=Math.floor(n/60)||0,i=n-t*60||0;return t+":"+(i<10?"0":"")+i},stop:function(){var n=this;n.playlist.length!==0&&(n.playlist[n.index].howl&&n.playlist[n.index].howl.stop(),s.slider("value",0),e.text("0:00"),f.show(),u.hide())},reset:function(){var n=this;n.playlist.length!==0&&(n.stop(),l.empty(),o.text("0:00"),n.playlist.forEach(function(n){n.howl&&n.howl.unload()}),n.playlist=[],n.index=0)}};i={playlistCollectionId:t.PlaylistCollectionId,playlists:t.Playlists,currPlaylistIndex:t.Playlists.length>0?0:-1,startRange:moment(t.StartTimeRange),endRange:moment(t.EndTimeRange),currentMonth:moment(t.EndTimeRange),player:new h,setPlaylistFiles:function(n){var i=this,t=[];n.forEach(function(n){t.push({file:n,howl:null})});i.player.setPlaylist(t)},moveToMonth:function(t){var i=this,r,u;i.currentMonth.month()!==t&&(i.currentMonth.month(t),n("#months .btn").removeClass("active"),n(this).addClass("active"),n("#playlistCol").empty(),i.setMonthLabel(),i.player.reset(),i.currPlaylistIndex=-1,r=i.currentMonth.year(),u=i.currentMonth.month(),n.ajax({type:"POST",url:"/Umbraco/Surface/AudioSurface/GetMonthPlaylists/",data:"colId="+i.playlistCollectionId+"&y="+r+"&m="+u,cache:!1,dataType:"json",success:function(n){i.playlists=n;i.displayPlaylists();i.getCurrentPlaylistFiles("YearSelector")},error:function(){}}))},setMonthLabel:function(){var i=this,t=moment.months(i.currentMonth.month());t=t.charAt(0).toUpperCase()+t.slice(1);t=i.currentMonth.year()+" "+t;n("#selectedMonth").text(t)},enforceRange:function(){var i=this,t;if(n("#months .btn").each(function(){n(this).prop("disabled",!1)}),i.startRange.year()===i.currentMonth.year())for(t=0;ti.endRange.month();t--)n("#months button[data-val='"+t+"']").prop("disabled",!0)},displayPlaylists:function(){var t=this,i,u,f;if(typeof t.playlists!="undefined"&&t.playlists!==null&&t.playlists.length>0){for(t.currPlaylistIndex=0,i=0;i'+f+" "+moment(u.Timestamp).format("YYYY-MM-DD")+"<\/a>").appendTo("#playlistCol");n("#playlistCol a").first().addClass("active");t.setSelectedPlaylist()}},getCurrentPlaylistFiles:function(n){var t=this;typeof t.playlists!="undefined"&&t.playlists!==null&&t.playlists.length>0&&t.getPlaylistFiles(t.playlists[t.currPlaylistIndex].Id,n)},getPlaylistFiles:function(t,i){var r=this;r.player.reset();n.ajax({type:"POST",url:"/Umbraco/Surface/AudioSurface/GetPlaylistFiles/",data:"id="+t,cache:!1,dataType:"json",success:function(t){if(r.setPlaylistFiles(t),i==="Player")n("html, body").animate({scrollTop:n("#audioPlayerGroup").offset().top-80},1e3);else if(i==="YearSelector"){var u=n("#yearAndDate").offset().top;n("html, body").animate({scrollTop:u-100},500)}},error:function(){}})},prevYear:function(){var t=this;t.currentMonth.year()<=t.startRange.year()||(t.currentMonth.subtract(1,"year"),n("#yearLabel").text(t.currentMonth.year()),t.enforceRange())},nextYear:function(){var t=this;t.currentMonth.year()>=t.endRange.year()||(t.currentMonth.add(1,"year"),n("#yearLabel").text(t.currentMonth.year()),t.enforceRange())},loadPlaylist:function(n){var t=this;n!==t.currPlaylistIndex&&(t.currPlaylistIndex=n,t.setSelectedPlaylist(),t.getCurrentPlaylistFiles("Player"))},setSelectedPlaylist:function(){var t=this,n,i,u;t.playlists.length!==0&&(n=t.playlists[t.currPlaylistIndex],i=moment(n.Timestamp).format("YYYY-MM-DD"),u=r===!0?n.TitleRussian+" "+i:n.Title+" "+i,c.html(u))},init:function(){var i=this;n("#yearLabel").text(i.currentMonth.year());n("#months button[data-val='"+i.currentMonth.month()+"']").addClass("active");i.enforceRange();i.displayPlaylists();i.setPlaylistFiles(t.Files)}};i.init();f.click(function(){i.player.play()});a.click(function(){i.player.stop()});u.click(function(){i.player.pause()});v.click(function(){i.player.skip("prev")});y.click(function(){i.player.skip("next")});s.slider({orientation:"horizontal",value:0,min:0,max:1,range:"min",animate:!1,step:.001,slide:function(n,t){i.player.seek(t.value)}});p.slider({orientation:"horizontal",value:1,min:0,max:1,range:"min",animate:!0,step:.01,slide:function(n,t){i.player.volume(t.value)}});n("#months .btn").click(function(t){var r=parseInt(n(this).attr("data-val"));i.moveToMonth(r);t.preventDefault()});n("#prevYear").click(function(){i.prevYear()});n("#nextYear").click(function(){i.nextYear()});n(document).on("click","#playlistCol a",function(t){t.preventDefault();n(this).addClass("active").siblings().removeClass("active");var r=parseInt(n(this).attr("data-index"));i.loadPlaylist(r)})})(jQuery,options);