var controller = new MTVNPlayerController('embeddedPlayer','onPlayerLoadedembeddedPlayer');
var playerembeddedPlayer;
var vidListembeddedPlayer = new Array();
var incrPosembeddedPlayer = 0;
var startIndexembeddedPlayer = 0;
var currentPosembeddedPlayer = 0;
var videoIsAdembeddedPlayer = false;
var hpvpMaxembeddedPlayer = 0;
var hpvpInitembeddedPlayer = true;
var autoRefreshembeddedPlayer = true;
function onPlayerLoadedembeddedPlayer(controller){
    playerembeddedPlayer = controller.player;
    playerembeddedPlayer.addEventListener('METADATA','onMetaDataembeddedPlayer');
    playerembeddedPlayer.addEventListener('PLAYLIST_COMPLETE','onPlaylistCompleteembeddedPlayer');
    playerembeddedPlayer.addEventListener('MEDIA_ENDED','mediaEndedembeddedPlayer');
    playerembeddedPlayer.addEventListener('STATE_CHANGE','onStateChangeembeddedPlayer');
}
function checkStartIndex() {
    if (startIndexembeddedPlayer > 0 && startIndexembeddedPlayer < hpvpMaxembeddedPlayer) {
        playIndex(startIndexembeddedPlayer);
        currentPosembeddedPlayer = startIndexembeddedPlayer;
        startIndexembeddedPlayer = 0; //clean
        return true;
    }
    return false;
}
function onMetaDataembeddedPlayer( metadata ){
    if(checkStartIndex()) {
        return;
    }
    videoIsAdembeddedPlayer = metadata.isAd;
}
function onStateChangeembeddedPlayer(state){
    if (state == "playing") {
        hpvpInitembeddedPlayer = false;
    }
}
function addToVidArray(arg) {
    addToVidArrayembeddedPlayer(arg);
}
function addToVidArrayembeddedPlayer(arg) {
    vidListembeddedPlayer.push(arg);
    incrPosembeddedPlayer = incrPosembeddedPlayer + 1;
}
function setCurrentPos(arg) {
    setCurrentPosembeddedPlayer(arg)
}
function setCurrentPosembeddedPlayer(arg) {
    currentPosembeddedPlayer = incrPosembeddedPlayer;
}
function setHpvpMax(arg) {
    setHpvpMaxembeddedPlayer(arg);
}
function setHpvpMaxembeddedPlayer(arg) {
    hpvpMaxembeddedPlayer = arg;
}
function onPlaylistCompleteembeddedPlayer(){
    if (countNew != 0) {
        if (vidListembeddedPlayer.length == 0) {
            if (autoRefreshembeddedPlayer) {
                playerembeddedPlayer.playIndex(0);
                unHighlightembeddedPlayer();
                highlightembeddedPlayer(0);
            }
        }
    }
}
function mediaEndedembeddedPlayer() {
    if (!videoIsAdembeddedPlayer) {
        if (vidListembeddedPlayer.length > 1) {
            if (autoRefreshembeddedPlayer) {
                //document.getElementById('embeddedPlayer').style.display = "none";
                currentPosembeddedPlayer++;
                if (currentPosembeddedPlayer >= vidListembeddedPlayer.length) {
                    currentPosembeddedPlayer = 0;
                }
                myPlayIndex(currentPosembeddedPlayer);
            //window.location.href = vidListembeddedPlayer[currentPosembeddedPlayer];
            }
        }
        // coming from stand alone player
        if (vidListembeddedPlayer.length == 0) {
            if (autoRefreshembeddedPlayer) {
                var index = parseInt(playerembeddedPlayer.getPlaylist().index) + 1;
                unHighlightembeddedPlayer();
                highlightembeddedPlayer(index);
            }
        }
    }
}

function myPlayIndex(index) {
    // if first time playing then let ad run
    // only applies when autoPlay is false
    currentPosembeddedPlayer = index;
    if (hpvpInitembeddedPlayer) {
        videoIsAdembeddedPlayer = false;
        hpvpInitembeddedPlayer = false;
    }
    unHighlightembeddedPlayer();
    highlightembeddedPlayer(index);
    
    var id = vidListembeddedPlayer[index];
    var so = new SWFObject("http://media.mtvnservices.com/mgid:uma:video:mtv.de:" + id,
        "embeddedPlayer", "100%", "100%", "10.0.0", "#000000");
    so.addVariable("autoPlay",true);
    so.addParam("wmode","transparent");
    so.addParam("menu",false);
    so.addParam("swliveconnect",true);
    so.addParam("allowscriptaccess","always");
    so.addParam("enablejavascript",true);
    so.addParam("allowfullscreen",true);
    so.addParam("quality","high");
    so.addParam("bgcolor","#000000");
    so.addParam("name","embeddedPlayer");
    so.addParam("id","embeddedPlayer");
    so.addParam("style","");
    so.write("embeddedPlayer");

    var metaRequest = new Request.HTML({
        'url': '/videos/track_meta/' + id, 
        'update': 'player_meta'
    }).get();

    Exo_AdReload.update('BannerGroup');
}

function playIndex(index){
    // if first time playing then let ad run
    // only applies when autoPlay is false
    if (hpvpInitembeddedPlayer) {
        videoIsAdembeddedPlayer = false;
        hpvpInitembeddedPlayer = false;
    }
    if (!videoIsAdembeddedPlayer) {
        unHighlightembeddedPlayer();
        playerembeddedPlayer.playIndex(index);
        highlightembeddedPlayer(index);
    }
}
function highlightembeddedPlayer(index) {
    var div = document.getElementById("holder" + index);
    var currentClass = div.className;
    div.className = currentClass + " playlist-active";
    var playlist = document.getElementById("episode-list-play");
    if (playlist) playlist.scrollTo(0, div.offsetTop);
}
function unHighlightembeddedPlayer() {
    var i = 0;
    while (document.getElementById("holder" + i)) {
        document.getElementById("holder" + i).className = document.getElementById("holder" + i).className.replace(/\bplaylist-active\b/,'');
        i++;
    }
}

