﻿
var mpUndefined = 0;
var mpStopped = 1;
var mpPaused = 2;
var mpPlaying = 3;
var mpScanForword = 4;
var mpScanReverse = 5;
var mpBuffering = 6;
var mpWaiting = 7;
var mpMediaEnded = 8;
var mpTransitioning = 9;
var mpReady = 10;
var mpReconnection = 11;

//播放相关  
var player;
var container;
var isplaying = 0;
var ismute = false;
var oldvol = 0;

var statebar = document.getElementById("statebar");
var file = "mms://pub1.qmoon.net/911pop?cccode=cc1276";
var nowradioid = 0;
var nowradioname = "体育台";
var defstatestr = "青檬音乐台正在直播";

//音量相关
var x, theImg, baseLeft;
var Maxvol, Minvol;
Maxvol = 51;
Minvol = 0;
cur = 51;

//状态相关
var tempstatestr = "正在播放...";
var playinginfo = "";
var cmdstate = "直播";
var getqustr = "";

//时间相关
var diff = 0;
var now;
var timer;

var changeradio;

function GetBrowserType() {
    if (window.navigator.userAgent.indexOf("MSIE") >= 1) {
        return 1;
    }
    else {
        if (window.navigator.userAgent.indexOf("Firefox") >= 1) {
            return 2;
        }
        else {
            return 3;
        }
    }
}

function NewEvent(obj, eventstr, func) {
    eval("document.getElementById('" + obj + "')." + eventstr + "=" + func);
}
//状态条
function dochangeradio() {
    var d = new Date();
    var hours = d.getHours();
    var day = d.getDay();

    if (day >= 0 && day <= 6) {
        if (hours >= 12 && nowradioid==0) {
            window.location.href = window.location.href
            clearInterval(changeradio);
        }
        if (hours < 12 && nowradioid==2) {
            window.location.href = window.location.href
            clearInterval(changeradio);
        }
    }
}

//取得节目
//function makeRequest(radioid) {
//    if (nowradioid != 0) {

//        document.writeln("<script charset=\"UTF-8\" type=\"text\/javascript\" src=\"http://www.911pop.com/qmoonplayer/getProgInfo2.aspx?radioid=" + nowradioid + "\"><\/script>");
//    }

//}
function initradio() {
    //播放条代码		
    var d = new Date();
    var hours = d.getHours();
    var day = d.getDay();
    if (day >= 0 && day <= 6) {

        if (hours >= 12) {
            //alert("体育台");
            isplaying = 1;
            nowradioid = 2;
            file = "mms://pub1.qmoon.net/audio?cccode=cc1276";
            nowradioname = "体育台";
            defstatestr = "青檬体育台正在播送";
        }
        if (hours < 12) {
            //alert("音乐台");
            isplaying = 1;
            nowradioid = 0;
            file = "mms://pub1.qmoon.net/911pop?cccode=cc1276";
            nowradioname = "音乐台";
            defstatestr = "青檬音乐台正在直播";
           //statebar.innerHTML = "点击收听(下午12:00-24:00播送)";
        }
    }

    document.body.onunload = "DoStop()";
    container = document.getElementById("radiocontainer");

    if (!(GetBrowserType() == 1)) {
        if (isplaying == 1) {
            create_embed();
        }
    }
    else {

        var str = "<object id=\"player1\"  width=\"0\" height=\"0\" classid=\"CLSID:6BF52A52-394A-11d3-B153-00C04F79FAA6\"><param name=\"url\" value=\"" + file + "\"/><param name=\"volume\" value=\"100\"/><param name=\"AutoStart\" value=\"" + isplaying + "\"></object>";
        container.innerHTML = str;
        player = document.getElementById("player1");

    }
    //播放按钮
    NewEvent("btnplay", "onclick", function (e) {
            if (isplaying == 1) {
                document.getElementById("playstate").src = "images/song1.gif";
                DoStop();
            }
            else {
                document.getElementById("playstate").src = "images/song.gif";
                DoPlay();
            }
    });
    NewEvent("btnmsg", "onclick", function (e) {
        sendmsg();
    });



    initstateimages();

    changeradio = setInterval("dochangeradio()", 10000);
}

function getEvent() //同时兼容ie和ff的写法 
{
    if (document.all) return window.event;
    func = getEvent.caller;
    while (func != null) {
        var arg0 = func.arguments[0];
        if (arg0) {
            if ((arg0.constructor == Event || arg0.constructor == MouseEvent) || (typeof (arg0) == "object" && arg0.preventDefault && arg0.stopPropagation)) {
                return arg0;
            }
        }
        func = func.caller;
    }
    return null;
}
function DoStop() {

    if (!(GetBrowserType() == 1)) {
        isplaying = 0;
        player.parentNode.removeChild(player);
        initstateimages();
    }
    else {
        player.controls.stop();

    }
}


function DoPlay() {

    if (!(GetBrowserType() == 1)) {
        isplaying = 1;
        create_embed();
        initstateimages();

    }
    else {
        player.controls.play();
        document.getElementById("btnplay").src = stop.src;
    }
}





function create_embed() {
    var str = "<object id=\"player1\" width=\"0\" height=\"0\" type=\"application/x-mplayer2\"><param name=\"filename\" value=\"" + file + "\"/><param id='radiovolumn' name=\"volume\" value=\"100\"/></object>";
    container.innerHTML += str;
    player = document.getElementById("player1");

}



function GetMousePos() {
    var e = getEvent();
    var left = 0;
    var top = 0;
    if (!(GetBrowserType() == 1)) {
        return { x: e.pageX, y: e.pageY };
    } else {
        return { x: e.clientX, y: e.clientY };

    }
}

//设置音量	  
function SetVolume(volValue) {
    //alert(volValue)

    if (!(GetBrowserType() == 1)) {
        player.volume = volValue;
    }
    else {
        player.settings.volume = volValue;
    }
}

function GetVolume() {
    //alert(volValue)

    if (!(GetBrowserType() == 1)) {
        return player.volume;
    }
    else {
        return player.settings.volume;
    }
}

function SetMute() {
    if (isplaying) {
        if (!(GetBrowserType() == 1)) {
            ismute = !ismute;
            if (ismute) {
                oldvol = GetVolume();

                SetVolume(0)
            } else {
                SetVolume(oldvol);
            }

        } else {

            player.settings.Mute = !(player.settings.Mute);
            ismute = player.settings.Mute;
        }


        if (ismute) {
            document.getElementById("btnMute").src = Voice.src;
        } else {
            document.getElementById("btnMute").src = Voice1.src;
        }
    }
}


function move() {
    // alert(getEvent().button); 
    var key;

    if (!(GetBrowserType() == 1)) {
        key = (isplaying == 1) && (!ismute);
    }
    else {
        key = getEvent().button == 1 && (isplaying == 1) && (!ismute);
    }



    if (key) {
        left = temp1 + getEvent().clientX - x - baseLeft



        if ((left <= Maxvol) && (left >= Minvol)) {
            theImg.style.left = left + "px";
        }
        else
            if (left > Maxvol)
                theImg.style.left = Maxvol + "px"
            else
                theImg.style.left = Minvol + "px"
            return false
        }


    }

    function enddrag() {

        //这里设置音量
        //alert(123);
        if (isplaying == 1) {
            cur = getPosition(theImg).x - baseLeft;
            //alert(cur)
            cur = Math.floor((cur) / (Maxvol - Minvol) * (100));
            SetVolume(cur);
            // alert(cur);

            document.onmousemove = null;
        }

    }


    function begindrag(Elm) {
        //if (!document.all)
        //  return
        if (isplaying == 0)
            return
        temp1 = getPosition(Elm).x
        // alert(temp1);
        theImg = Elm
        x = GetMousePos().x;


        baseLeft = getPosition(theImg.parentNode).x;
        // alert(baseLeft)
        //  alert(x)
        document.onmousemove = move
    }

    function getPosition(e) {
        var left = 0;
        var top = 0;

        while (e.offsetParent) {
            // alert(e.offsetParent);
            left += e.offsetLeft;
            top += e.offsetTop;
            e = e.offsetParent;
        }
        left += e.offsetLeft;
        top += e.offsetTop;
        return { x: left, y: top };
    }

    //SetVolume(100);//初始化音量	  
    //******************************

    function RadioSate(lNewState) {
        isplaying = 0;
        switch (lNewState) {
            case mpPlaying:
                isplaying = 1;
                if (playinginfo == "")
                { tempstatestr = defstatestr; }
                else {
                    tempstatestr = playinginfo;
                }
                break;
            case mpBuffering:
                isplaying = 1;
                tempstatestr = "缓冲...";
                break;
            case mpTransitioning:

                tempstatestr = "正连接到" + "" + "...";
                break;
            case mpPaused:

                tempstatestr = "暂停直播";
                break;
            case mpStopped:
                tempstatestr = "点击收听(下午12:00-24:00播送)";
                break;
            case mpReconnection:
                tempstatestr = "重新连接...";
                break;
            case mpMediaEnded:
                tempstatestr = "停止直播";
                break;
            case mpUndefined:
                tempstatestr = "连接超时";
                break;

        }

        initstateimages();

        //alert(statebar);]

        //statebar.innerHTML=tempstatestr;
        //alert(lNewState);
    }

    function initstateimages() {

        if (isplaying == 1) {
            document.getElementById("btnplay").src = stop.src;
            //document.getElementById("stateimg").src=playimg.src;
            //	setstatebar();


        } else {
            document.getElementById("btnplay").src = play.src;
            //document.getElementById("stateimg").src=stopimg.src;

        }

    }

    function sendmsg() {
        var msgname = document.getElementById("textNickName");
        var msgcontent = document.getElementById("textMSG");
        if (msgname.value == '' || msgname.value == '你的昵称') {
            alert('请输入你的昵称');
            msgname.focus();
            return;
        }
        if (msgcontent.value == '' || msgcontent.value == '留言成功!' || msgcontent.value == '想说的话') {
            alert('请输入纸条内容');
            msgcontent.focus();
            return;
        }

        if (msgcontent.length > 400) {
            alert('纸条内容请在400字内');
            msgcontent.focus();
            return;
        }

        //alert(msgname )
        var msgsrc = "http://qmoon.rbc.cn/iradio/services/sendmsg.asmx/sendnewmsg2?radio=" + encodeURI(nowradioname) + "&name=" + encodeURI(msgname.value + "@" + webtitle) + "&content=" + encodeURI(msgcontent.value) + "";
        var msg = document.getElementById("msg");
        msg.src = msgsrc;
        msg.style.display = "none";
        //document.body.appendChild(msg);	
        msgcontent.value = ("留言成功!");
    }

    var timeout0, timeout1, timeout2

    function alertContents(http_request2, radioid) {

        // var timeout=eval("timeout" + radioid );
        if (http_request2.readyState == 4) {
            if (http_request2.status == 200) {

                var str = http_request2.responseText;
                commandText(str, radioid);
            }
        }
    }

    function getmaxlentext(str, len) {
        if (str.toString().length > len) {
            return "<span title='" + str + "'>" + str.toString().substring(0, len) + "</span>";

        }
        else {
            return str;
        }
    }

    function lenofstring(str) {
        return str.replace(/[^\x00-\xff]/g, '**').length;

    }
    function Qmoon_gequ(gequtext) {

        var gequinput = gequtext.split("||");
        if (gequinput[5] == "false" || cmdstate == "录播") {
            getqustr = "";
        }
        else {
            getqustr = "" + gequinput[0] + "《" + gequinput[1] + "》" + "";
            if (lenofstring(getqustr) > 25 && GetBrowserType() == 1) {
                getqustr = "<marquee onmouseover='this.stop()' scrolldelay=200 onmouseout='this.start()' width='85px'>" + getqustr + "</marquee>";
            }
            getqustr = "正在播放：" + getqustr
        }

        //setstatebar();
        document.getElementById("gequbar").innerHTML = getqustr;

    }

    function showtime2() {
        var hours = now.getHours();
        var minutes = now.getMinutes();
        var seconds = now.getSeconds();
        var month = now.getMonth();
        var day = now.getDate();
        month++;
        document.getElementById("labtime").innerHTML = "" + ((month < 10) ? "0" + month : month) + " : " + ((day < 10) ? "0" + day : day) + " : " + ((hours < 10) ? "0" + hours : hours) + " : " + ((minutes < 10) ? "0" + minutes : minutes) + " : " + ((seconds < 10) ? "0" + seconds : seconds) + " ";
        now = new Date(now.getTime() + 1000);

    }
    function showtime() {
    }

    function showtime3() {
        var d = new Date();
        var now = new Date(d - diff);
        if (isNaN(now)) {
            var hours = d.getHours();
            var minutes = d.getMinutes();
            var seconds = d.getSeconds();
            document.getElementById("labtime").innerHTML = "" + ((hours < 10) ? "0" + hours : hours) + ":" + ((minutes < 10) ? "0" + minutes : minutes) + ":" + ((seconds < 10) ? "0" + seconds : seconds) + " ";
            document.getElementById('div123').style.width = minutes * 4.13 + "px";
            setTimeout("showtime()", 1000);
        }
        else {
            var hours = now.getHours();
            var minutes = now.getMinutes();
            var seconds = now.getSeconds()
            document.getElementById("labtime").innerHTML = "" + ((hours < 10) ? "0" + hours : hours) + ":" + ((minutes < 10) ? "0" + minutes : minutes) + ":" + ((seconds < 10) ? "0" + seconds : seconds) + " ";
            // document.getElementById('div123').style.width=minutes*2.91+"px";       
            setTimeout("showtime()", 1000);
        }
    }
