Вход Регистрация
Файл: sys/static/js/ds-player.js
Строк: 155
<?php
var AudioPlayer = new Audio(); 
var 
AudioCurrentHash ""
var 
AudioCurrentUniquie ""
window.pageTitle document.title

function 
setPlayerSeeked(e) {
    if (!
AudioPlayer.currentTime) {
        return ;
    }

    var 
event event || window.event;
    var 
position event.offsetX 100 / $(e).width();
    var 
seek AudioPlayer.duration 100 position;
    
AudioPlayer.currentTime seek;
}

function 
getTimeString(sec
{
    if (!
sec) return '0:00'

    
sec Math.floor(sec); 

    var 
Math.floor(sec 60);
    
sec -= (60); 

    if (
sec 10sec '0' sec;
    var 
strtime ':' sec

    return 
strtime
}

function 
AudioPlayerPause() {
    $(
'.dpl').removeClass('ds-playing'); 
    
document.title window.pageTitle
}

function 
AudioPlayerStop() {
    $(
'.dpl-progress-bar').css('width''0%'); 
    $(
'.dpl-progress-loaded').css('width''0%'); 
    $(
'.dpl').removeClass('ds-playing'); 
    $(
'.dpl-time').text('0:00'); 
    
document.title window.pageTitle
}

jQuery(function($) {

    
// Play audio in click Progess bar
    
$(document).on('click''.dpl-progress', function() {
        var 
parent = $(this).parents('.dpl');
        if (!
parent.hasClass('ds-playing')) {
            $(
parent).find('.dpl-toggle').click(); 
        }
    });

    
// Toggle Player
    
$(document).on('click''.dpl-toggle', function() {
        var 
parent = $(this).parents('.dpl');
        var 
hash parent.attr('data-hash'); 
        var 
uniquie parent.attr('data-uniquie'); 
        var 
src parent.attr('data-src'); 

        if (
hash != AudioCurrentHash) {
            
AudioPlayerStop(); 
            
AudioPlayer.src src
            
AudioPlayer.play(); 

            if (
AudioCurrentHash == "") {
                var 
currentPlay getCookie('playerData'); 

                if (
currentPlay) {
                    var 
data JSON.parse(currentPlay); 
                    if (
hash == data.hash) {
                        
AudioPlayer.currentTime data.currentTime
                    }
                }
            }

            
AudioCurrentHash hash
            
AudioCurrentUniquie uniquie
            
parent.addClass('player-preload'); 

            
document.title parent.attr('data-title'); 
        
            $(
'.dpl[data-god="1"]').attr({
                
'data-hash'hash
            }).
find('.dpl-title').text(parent.attr('data-title')); 

            $(
".dpl").clone().appendTo(".player-playlist");
        }

        else if (!
AudioPlayer.paused) {
            
AudioPlayer.pause(); 
        } else {
            
AudioPlayer.play(); 
        }
    }); 

    
// Change volume player
    
$(document).on('click''.dpl-volume', function(e) {
        var 
event event || window.event;
        var 
event.offsetX
        var 
width = $(this).width(); 
        var 
volume 100 width

        if (
volume >= 95) {
            
volume 100
        }
        if (
volume <= 5) {
            
volume 0
        }

        
AudioPlayer.volume = (volume 100); 
        $(
'.dpl-volume-bar').css('width'volume '%'); 
    }); 

    
// Progress Bar and Timing
    
AudioPlayer.addEventListener('timeupdate', function () {

        var 
players = $(document).find('.dpl[data-hash="' AudioCurrentHash '"]'); 
        
players.each(function(ip) {
            if (!$(
p).hasClass('ds-playing')) {
                $(
p).addClass('ds-playing')
            }
        })

        
setCookie('playerData'JSON.stringify({
            
hashAudioCurrentHash
            
currentTimeAudioPlayer.currentTime
        }), 
1); 

        
// Time string playing 
        
var curtime getTimeString(AudioPlayer.currentTime);
        $(
'.dpl[data-hash="' AudioCurrentHash '"] .dpl-time').text(curtime);

        
// Progress Playing audio 
        
var progress 100 AudioPlayer.currentTime AudioPlayer.duration
        $(
'.dpl[data-hash="' AudioCurrentHash '"] .dpl-progress-bar').css('width'progress '%'); 

        
// Buffer Loaded 
        
if (AudioPlayer.buffered.length) {
            var 
buffered 100 AudioPlayer.buffered.end(0) / AudioPlayer.duration
            $(
'.dpl[data-hash="' AudioCurrentHash '"] .dpl-progress-loaded').css('width'buffered '%');             
        }
    });

    
// Playing Player
    
AudioPlayer.addEventListener('playing', function () {
        var 
parent = $('.dpl[data-hash="' AudioCurrentHash '"]');
        var 
hash parent.attr('data-hash'); 
        
parent.addClass('ds-playing').removeClass('player-preload'); 
    });

    
// Pause Player
    
AudioPlayer.addEventListener('pause', function () {
        
AudioPlayerPause(); 
    });

    
// Ended audio 
    
AudioPlayer.addEventListener('ended', function () {
        
AudioPlayerStop(); 

        var 
is_current false
        $(
document).find('.dpl').each(function(indexelem) {
            var 
hash = $(elem).attr('data-hash');
            var 
uniquie = $(elem).attr('data-uniquie');

            if (
is_current) {
                $(
'.dpl[data-uniquie="' uniquie '"]').find('.dpl-toggle').click(); 
                
is_current false
            }
            
            else if (
uniquie == AudioCurrentUniquie) {
                
is_current true
            }
        }); 
    });
});
?>
Онлайн: 0
Реклама