en | fr  | Contact  | Print  | Share

FrameBeurk File

Fmbk/Module/Zeek/_js/moduleZeek.js.php

//FrameBeurk V0.65 Copyright ToolOscope 2016. Licence CeCILL-C.
// javascript du module Zeek

//stockage de la playlist et de l'index du morceau courant (pour la balise audio)
var ZeekPlayerListe = [];
var ZeekPlayerListeIndex = 0;

//détection de la gestion de flash
function Zeek_detectFlash()  {
    if (navigator.mimeTypes.length > 0) {
        return navigator.mimeTypes["application/x-shockwave-flash"] && navigator.mimeTypes["application/x-shockwave-flash"].enabledPlugin != null;
    } else if (window.ActiveXObject) {
        try {
            new ActiveXObject("ShockwaveFlash.ShockwaveFlash");
            return true;
        } catch(oError) {
            return false;
        }
    } else {
        return false;
    }
}
var flashEnabled = Zeek_detectFlash();
try {
    var mp3audioEnabled = !! (document.getElementById("mp3audioplayer").canPlayType && document.getElementById("mp3audioplayer").canPlayType("audio/mpeg;"));
    /* alert("mpeg=" + document.getElementById("mp3audioplayer").canPlayType("audio/mpeg;") + "; ogg="
     + document.getElementById("mp3audioplayer").canPlayType("audio/ogg")); */
} catch(e) {
    var mp3audioEnabled = false;
}
    if (flashEnabled) {
        document.getElementById("divFlash").style.display='';
        document.getElementById("divAudio").style.display='none';
        document.getElementById("mp3flashplayer").addEventListener("complete", completeFunc, false);

    } else if (mp3audioEnabled) {
        document.getElementById("divFlash").style.display='none';
        document.getElementById("divAudio").style.display='';
    } else {
        document.getElementById("divFlash").style.display='none';
        document.getElementById("divAudio").style.display='none';
        document.getElementById("playerMorceau").innerHTML='Sorry, no mp3 player detected on your browser';
    }


//fonction player appelée en direct    
function Zeek_playmp3(filename) {
    if (flashEnabled) {
        var myDivPlayer = document.getElementById("divFlash");
        var myInnerHTML = '<object id="mp3flashplayer" type="application/x-shockwave-flash" data="<?php echo Beurk_cheminRessource(); ?>/Zeek/dewplayer-multi.swf" width="240px" height="20px">'
            + '<param name="movie" value="<?php echo Beurk_cheminRessource(); ?>/Zeek/dewplayer-multi.swf" />'
            + '<param id="mp3flashparam" name="flashvars" value="autostart=true&mp3=' + escape(filename) + '" />'
            + '<param name="wmode" value="transparent" />'
            + '</object>';
        //alert(myInnerHTML);
        myDivPlayer.innerHTML = myInnerHTML;
                        
    } else if (mp3audioEnabled) {    
        var myDivPlayer = document.getElementById("divAudio");
        var myInnerHTML = '<audio id="mp3audioplayer" controls>'
            + '<source id="mp3audioparam" src="' + filename + '" type="audio/mpeg">'
            + '</audio>';
        myDivPlayer.innerHTML = myInnerHTML;
        
        var myPlayer = document.getElementById("mp3audioplayer");
        myPlayer.play();
    } else {
        window.open(escape(filename));
    }
}

//fonction player appelée en amélioration
function zeek_play(element, evt) {
    if (element.hasAttribute("data-play")) {
        tabData = element.getAttribute("data-play").split("/");    // extraction des données de la div et du bbcode
        if (tabData[0]) {
            filename = tabData[0];
            Zeek_playmp3(filename);
        }
    }
}

function Zeek_playmp3list(filearray) {
    if (flashEnabled) {
        var myDivPlayer = document.getElementById("divFlash");
        var myInnerHTML = '<object id="mp3flashplayer" type="application/x-shockwave-flash" data="<?php echo Beurk_cheminRessource(); ?>/Zeek/dewplayer-multi.swf" width="240px" height="20px">'
            + '<param name="movie" value="<?php echo Beurk_cheminRessource(); ?>/Zeek/dewplayer-multi.swf" />'
            + '<param id="mp3flashparam" name="flashvars" value="javascriptCallbackFunction=onJavaScriptBridgeCreated&autostart=true&autoreplay=1&mp3=';

        for(var i= 0; i < filearray.length; i++)
            myInnerHTML += ((i>0) ? '|' : '' ) + escape(filearray[i]);
        
        myInnerHTML += '" />'
        + '<param name="wmode" value="transparent" />'
        + '</object>';
        //alert(myInnerHTML);
        myDivPlayer.innerHTML = myInnerHTML;
                        
    } else if (mp3audioEnabled) {
        //stocke la liste
        ZeekPlayerListe = filearray;
        ZeekPlayerListeIndex = 0;
        
        //déclenche le 1er morceau
        Zeek_playmp3(filearray[0]);
        
        //planifie le prochain
        if (ZeekPlayerListe.length > 1) {
            var myPlayer = document.getElementById("mp3audioplayer");
            myPlayer.addEventListener('ended', Zeek_playnextmp3, false );
        }
    } else {
        window.open(escape(filearray[0]));
    }
}

// fonction uniquement appelée par le player Audio
function Zeek_playnextmp3() {
    //alert ("nextOne : " + ZeekPlayerListeIndex + '/' + ZeekPlayerListe.length);
    if (ZeekPlayerListeIndex < ZeekPlayerListe.length - 1) {
        //déclenche le morceau suivant
        var myPlayer = document.getElementById("mp3audioplayer");
        myPlayer.src = ZeekPlayerListe[++ZeekPlayerListeIndex];
        myPlayer.play();
    }
}

// développement toujours en cours... alpha version
function onJavaScriptBridgeCreated(playerId) {
alert('onJavaScriptBridgeCreated');
var player = document.getElementById(playerId);
player.addEventListener("complete", "completeFunc");
}

function completeFunc() {
alert('completeFunc');
}


© 2010-2015 by ToolOscope SASU. © 2016-2018 by Arnaud De Rette. All rights reserved