/**
* @ Author : iFiky , 780537@gmail.com
* @ version : 2008.9.20 @ Dj97.Com
*/
if (top.location != location) top.location.href = location.href;

var curr_id = 0, curr_i = 0, id_index = 1, play_control = 0, N = url_ids.length, dance_type = '', dance_url = '', dance_name = '';
var d_names = Array(), d_types = Array(), d_urls = Array();

init_dance(url_ids, url_ids.length);

function server( listen_url ){
    $("dj97player").innerHTML = "<object id='Dj97_Player' width='332' height='66' classid='CLSID:6BF52A52-394A-11D3-B153-00C04F79FAA6' type='application/x-oleobject'><param name='URL' value='"+listen_url+"'><param name='Album' value='水晶Dj网,www.dj97.com'><param name='balance' value='0'><param name='currentPosition' value='0'><param name='defaultFrame' value=''><param name='playCount' value='1'><param name='autoStart' value='-1'><param name='currentMarker' value='0'><param name='invokeURLs' value='-1'><param name='baseURL' value=''><param name='volume' value='100'><param name='mute' value='0'><param name='uiMode' value='full'><param name='stretchToFit' value='0'><param name='windowlessVideo' value='0'><param name='enabled' value='-1'><param name='enableContextMenu' value='0'><param name='fullScreen' value='0'><param name='SAMIStyle' value=''><param name='SAMILang' value=''><param name='SAMIFilename' value=''><param name='captioningID' value=''><param name='BufferingTime' value='5'><embed type='audio/x-oleobject' flename='mp' style='width:332px; height:66px' codebase='http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab#Version=5,1,52,701' playcount='100' src='"+listen_url+"' enablecontextmenu='0'></embed></object>";
};

function init_dance(_ids, _length){
    if( id_index < _length ){
        var _id = _ids[id_index++];
        var s = document.createElement('script');
        s.type = 'text/javascript';
        s.src = 'm/'+ _id +'/i.js';
        document.getElementsByTagName('head')[0].appendChild(s);
        s.onreadystatechange = function(){
            if(this.readyState && (this.readyState == 'complete' || this.readyState == 'loaded') ){
                try{
                    d_names[_id] = eval('n'+_id);
                    d_types[_id] = eval('t'+_id);
                    d_urls[_id] = eval('u'+_id);
                    update_list(_id);
                    if( 0 == curr_id ) do_play(1);
                    if(id_index == _length) pre_next();
                }finally{
                    init_dance(_ids, _length);
                }
            }
        }
        s.onload = function(){
            try{
                d_names[_id] = eval('n'+_id);
                d_types[_id] = eval('t'+_id);
                d_urls[_id] = eval('u'+_id);
                update_list(_id);
                if( 0 == curr_id ) do_play(1);
                if(id_index == _length) pre_next();
            }finally{
                init_dance(_ids, _length);
            }
        }
    }
};

function pre_next() {
    var pre_id = ( 1 >= curr_i ) ? N - 1 :  curr_i - 1;
    var next_id = ( N - 1 <= curr_i ) ? 1 : curr_i + 1;
    $('_pre').innerHTML = '上一首：<a href="javascript:do_play('+ pre_id +')">'+ d_names[url_ids[pre_id]] +'</a>';
    $('_next').innerHTML = '下一首：<a href="javascript:do_play('+ next_id +')">'+ d_names[url_ids[next_id]] +'</a>';
};

function update_list(_id){
    var k = (id_index < 10) ? '0' + (id_index - 1) : id_index -1 ;
    var li = document.createElement('li');
    li.className = (_id == curr_id) ? 'selected' : '';
    li.setAttribute('id', 'd_' + _id);
    li.onmouseout = function(){ if(this.className != 'selected') this.className='out'; };
    li.onmouseover = function(){ if(this.className != 'selected') this.className='over'; };
    li.innerHTML ='<span><a id="del_'+ (id_index - 1) +'" href="#none" onclick="del_play('+ (id_index - 1) +')" title="删除">√</a></span>' + k + ' <a href="javascript:do_play('+ (id_index - 1) +')">'+d_names[_id]+'</a>';
    $('LPlay_list').appendChild(li);
};

function get_url( d_url ){
	if('undefined'==typeof(UUAuthCode)){
		setTimeout('get_url()',100);
		return;
	}
    dance_url = 'http://dj.dj97.com/' + d_url + '?' + UUAuthCode;
};

function do_play( _id ){
    var d_id = url_ids[_id];
    dance_type = d_types[d_id];
    curr_i = _id;
    dance_name = $('_name').innerHTML = $('comment_title').innerHTML = d_names[d_id];
    document.title = '连播( ' + d_names[d_id] + ' ) - 水晶Dj网 Http://Www.Dj97.Com';
    get_url( d_urls[d_id] );
    server(dance_url);
    if( 0 == curr_id ) curr_id = d_id;
    $('d_' + curr_id).className = '';
    curr_id = d_id;
    $('d_' + curr_id).className = 'selected';
    pre_next();
    $('user_action').innerHTML = '<li class="long"><a href="/down/'+ d_id +'" class="download" target="down">下载<span id="fav_times" class="tF"></span></a><a href="../../view/dancedown.php?id=1" target="vdown" class="view" title="查看下载此舞曲的会员"></a></li><li><a href="#none" onclick="open_comment('+ d_id +')" class="comment">查看评论</a></li><li class="mr0"><a href="#none" onclick="copy_url()" class="copy">发给聊友</a></li><li class="long"><a href="#none" onclick="open_fav('+ d_id +', '+ dance_type +')" class="fav">收藏<span id="fav_times" class="tF"></span></a><a href="../../view/dancefav.php?id='+ d_id +'" target="vfav" class="view" title="查看收藏此舞曲的会员"></a></li><li><a href="#none" onclick="open_feedback(\'t=2&id='+ d_id +'\')" class="feedback">舞曲报错</a></li><li class="mr0"><a href="../../common/sms.htm?'+ d_id +'" target="sms" class="sms">彩铃</a></li>';

    $('dance_fav_2').innerHTML = '<a href="#none" onclick="open_fav('+ d_id +', '+ dance_type +')">收藏舞曲</a>';
    $('good').onclick=function(){ up_down(d_id, 'good'); }
    $('bad').onclick=function(){ up_down(d_id, 'bad'); }
    $('good_times').innerHTML = '';
    $('good_rate_text').innerHTML = '';
    $("good_rate").style.width='0%';
    $('bad_times').innerHTML = '';
    $('bad_rate_text').innerHTML = '';
    $("bad_rate").style.width='0%';

    if( 0 != curr_id && 0 < $('f_comment').style.pixelHeight ){
        $('f_comment').setAttribute('src', '');
        $('f_comment').style.pixelHeight = 0;
    }
    $('frame_title').onclick=function(){ open_comment(d_id); }

    if((_id - 1) * 31 < $('LPlay_list').scrollTop)
        $('LPlay_list').scrollTop = ( _id - 1) * 31 ;
    if(_id * 31 >= $('LPlay_list').scrollTop + $('LPlay_list').style.pixelHeight - 3)
        $('LPlay_list').scrollTop =  _id * 31 - $('LPlay_list').style.pixelHeight + 34;

    chk_play();
};

function del_play(_id){
    if( '删除' == $('del_'+_id).getAttribute('title') ){
        $('del_'+_id).setAttribute('title','恢复');
        $('del_'+_id).innerHTML='×';
		$('del_'+_id).style.color='#26b100';
    }else{
        $('del_'+_id).setAttribute('title','删除');
        $('del_'+_id).innerHTML='√';
		$('del_'+_id).style.color='#f8942d';
    }
};

function do_next(){
    if( 2 == play_control) { var pi = curr_i; }
    else{
        var pi = (1 == play_control) ? Math.floor(Math.random() * (N-1)) : curr_i;
        var pt = $('del_'+pi).getAttribute('title');
        do{
            pi =  pi + 1 > N - 1 ? 1 : pi + 1;
            pt = $('del_'+pi).getAttribute('title');
        }while('删除' != pt)
    }
    do_play( pi );
};

function do_pre(){
    if( 2 == play_control) { var pi = curr_i; }
    else{
        var pi = (1 == play_control) ? Math.floor(Math.random() * (N-1)) : curr_i;
        var pt = $('del_'+pi).getAttribute('title');
        do{
            pi =  pi - 1 < 1 ? N - 1 : pi - 1;
            pt = $('del_'+pi).getAttribute('title');
        }while('删除' != pt)
    }
    do_play( pi );
};

function unique_array(arr) {
	var flag = {};
	var index=0;
	while(index < arr.length) {
		if(!!flag[arr[index]]) {
			arr.splice(index, 1);
			continue;
		}
		flag[arr[index]] = true;
		++index;
	}
	return arr;
};

function chk_play(){
    setTimeout('chk_play()', 1000);
    if($('Dj97_Player').PlayState==1){ do_next(); }
    //update list...
    var new_ids = get_cookie('LPlay_list');
    if( '' == new_ids || null == new_ids ) return;
    url_ids = unique_array(url_ids.concat(new_ids.split('_')));
    N = url_ids.length;
    init_dance(url_ids, N);
    SetCookie('LPlay_list', '', null, "/", DomainUrl, false);
};

function p_control(){
    $('dance_list').style.display = 'none';
    $('LPlay_list').style.display = '';
    $('list_button').innerHTML = '&nbsp;<a href="javascript:do_pre()">上一首</a> | <a href="javascript:do_next()">下一首</a>';
    $('list_do').innerHTML = '<label for="p0" class="pointer" onclick="play_control=0"><input type="radio" name="p" id="p0" value="0" checked/>顺序</label> <label for="p1" class="pointer" onclick="play_control=1"><input type="radio" name="p" id="p1" value="1"/>随机</label> <label for="p2" class="pointer" onclick="play_control=2"><input type="radio" name="p" id="p2" value="2"/>单曲循环</label>&nbsp;';
    $('p'+play_control).checked = true;
};

function p_button(){
    $('LPlay_list').style.display = 'none';
    $('dance_list').style.display = '';
    $('list_button').innerHTML = '<input type="button" name="all" onclick="clk(\'all\', \'dance_list\')" class="ico b_all" />&nbsp;<input type="button" name="un" onclick="clk(\'un\', \'dance_list\')" class="ico b_un" />&nbsp;<input type="button" name="play" onclick="clk(\'play\', \'dance_list\')" class="ico b_play" />&nbsp;<input type="button" name="add" onclick="clk(\'add\', \'dance_list\')" class="ico b_add" />';
};

function set_tab2(_current, n){
    for(i=1; i<=n; i++){ $('title_' + i).className = (i == _current) ? 'ico this' : ''; }
    switch( _current ){
         case 1 : p_control(); break;
         case 2 : p_button(); get_dance(); break;
         case 3 : p_button(); get_top(dance_type); break;
     }
};
set_tab2(1,3);
SetCookie('LPlay_open', 1, null, "/", DomainUrl, false);
SetCookie("open_player", "Y", null, "/", DomainUrl, false);
