var hostname = "7yin.com";
//document.domain = (location.hostname).replace("www.","");
document.domain = hostname;
/*
*chain play base on window media player
*v 0.1.1.1 beta
*author:Ian Lee<http://liguangming.com/>
*/
var userAgent = navigator.userAgent.toLowerCase();
var platform = navigator.platform.toLowerCase();
var PLAY_TAB_ID = 1;
var PLAY_LIST_LENGTH = {};
var PLAY_MODE_NORMAL = 0;
var PLAY_MODE_RANDOM = 1;
var PLAY_MODE_SINGLE = 2;
var PLAY_MODE_CACHE = 2;
var PLAY_MODE = 0;
var PLAY_APPEND = false;
var PLAY_FIRST_LOAD = true;
var PLAY_CACHE ={};
var MEDIA_HOST = '';
var WEB_HOST = "http://www." + hostname;
var BOX_HOST = "http://box." + hostname;
var THEME_HOST = WEB_HOST;
var JSON_HOST = WEB_HOST;
var PLAY_INPUT={'song-id':0,'singer-name':1,
    'singer-url':2,'song-name':3,'song-url':4,
    'album-name':5,'album-url':6,'song-media':7,
    'geci-url':8,'down-url':9,
    'singer-id':10
};
var yt_util = {
    browser:{
        version: (userAgent.match(/.+(?:rv|it|ra|ie)[\/: ]([\d.]+)/) || [])[1],
        chrome: /chrome/.test(userAgent),
        opera: /opera/.test(userAgent),
        msie: /msie/.test(userAgent) && !/opera/.test(userAgent),
        safari: /webkit/.test(userAgent) && !/(chrom)/.test(userAgent),
        mozilla: /mozilla/.test(userAgent) && !/(compatible|webkit)/.test(userAgent)
    },
    
    platform:{
        win32: /win32/.test(platform),
        linux: /linux/.test(platform),
        mac: /macppc|macintel|iphone|ipod/.test(platform)
    },

    $:function(el) {
        if (typeof el == 'string') {
            return document.getElementById(el);
        }else{
            return this;
        }
    },

    style:function(el,attr,val) {
        if (typeof el == 'string') {
            el = document.getElementById(el);
        }else if(typeof el == 'object'){
        
        }
        if(typeof val == 'undefined'){
            return el.style[attr];
        }else{
            el.style[attr] = val;
            return this;
        }
    },

    attr:function(el,name,val) {
        if (typeof el == 'string') {
            el = document.getElementById(el);
        }else if(typeof el == 'object'){
        
        }
        if(typeof val == 'undefined'){
            return el.getAttribute(name);
        }else{
            el.setAttribute(name,val);
            return this;
        }
    },

    player:function() {
        this.element = {};
        this.nodes = {};
        this.tabid = 0;
        this.human = 0;
        this.playnum = 0;
        this.buffering = false;
        this.kit = null;
        this.list = [];
        var my = this;

        this.init = function(kit) {
            my.kit = kit;
            if (yt_util.browser.chrome || yt_util.platform.linux) {
                var int$a = window.setInterval(function(){
                    if(my.time() + 3 >= my.duration() && my.duration() > 10){
                            OnDSPlayStateChangeEvt(8);
                            window.clearInterval(int$a);
                        }else{
                            OnDSPlayStateChangeEvt(my.kit.playState);
                        }
                },1000);
            } else {
                if (yt_util.browser.msie) {
                    my.kit.attachEvent("PlayStateChange", function() {
                        OnDSPlayStateChangeEvt(my.kit.playState);
                    });
                }
                var int$a = window.setInterval(function(){
                    if(my.time() + 1 >= my.duration() && my.duration() > 10){
                        yt_timer(8);
                        window.clearInterval(int$a);
                    }
                },1000);
            }
            return my;
        };

        this.start = function(element) {
            my.stop();

            if (my.tabid != PLAY_TAB_ID){my.nodes = yt_util.$('list-'+PLAY_TAB_ID).getElementsByTagName('li');my.tabid = PLAY_TAB_ID;}
            if (typeof element =='object'){
                my.element = element;
            }else if (typeof element =='number'){
                if (my.nodes.length == 0){my.play();return false;}
                my.element = element = my.nodes[element];
            }
            my.set('inputs',my.element.getElementsByTagName('INPUT'));
			//var tempplayurl;
			var server=WmaUrl1;
//				if (my.get('download')=="WmaUrl1"){
//					server=WmaUrl1;
//					}
//				else if(my.get('download')=="WmaUrl2"){
//					server=WmaUrl2;
//					}
            if (yt_util.browser.msie) {
							my.kit.url = server + my.get('song-media');
				//my.kit.url = (my.get('song-media').replace("WmaUrl2", WmaUrl2));
            } else {
                try {
					var tempplayurl = server + my.get('song-media');
                    if(yt_util.platform.win32 && yt_util.browser.opera){
                        yt_util.$('MediaWrapper').innerHTML = '<embed id="MyPlayer" type="'+(navigator.mimeTypes['application/x-ms-wmp']?'application/x-ms-wmp':'application/x-mplayer2')+'" src="'+ tempplayurl +'" url="'+ tempplayurl +'" width="311" height="64" autostart="1" volume="100" playcount="10000" showcontrols="1" showpositioncontrols="0" showaudiocontrols="1" showtracker="1" showstatusbar="1" /></embed>';
                    }else{
                        my.kit.URL = my.kit.src = tempplayurl;
                    }
                } catch(e) {
                    alert(e.message);
                }
            }

            yt_util.$("info").innerHTML = '<li class="song_name"><h1><a href="' +
                                                    my.get('song-url') + '" target=c _blank><h1>歌曲：' +
                                                    my.get('song-name') +
                                                    '</a><span><a href="/cailing.htm?' +
                                                    my.get('song-name') +
                                                    '" target="_blank"><img src="/images/player/ring.gif" width="68" height="19" alt=""/></a></span></h1></li><li class="singer_name"><h2>歌手：<a href="' +
                                                    my.get('singer-url') +
                                                    '" target="_blank">' +
                                                    my.get('singer-name') +
                                                    '</a></h2></li><li class="album"><h3>专辑：<a href="' +
                                                    my.get('album-url') +
                                                    '" target="_blank">' +
                                                    my.get('album-name') + '</a></li>';

            my.style();
            my.play();
            my.mark();
            my.human = 0;

          

            //yt_util.$("favorite-url").setAttribute('href', my.get('favorite'));
            //yt_util.$("favorite-url").onclick = function(){ 
            //   showiframe(250, 200, yt_util.$("favorite-url").href);
	    //		   return false;
            //};

			if (!PLAY_FIRST_LOAD) {
				yt_util.$("lrc_box").src='/lyric/'+my.get('song-id')+'.Htm';
				yt_util.$("favorite-url").setAttribute('href', '/user/addmusic.asp?MusicID='+my.get('song-id')+'&MusicName='+my.get('song-name')+'&NclassID='+my.get('singer-id')+'&Nclass='+my.get('singer-name'));
				//yt_util.$("lrc-url").setAttribute('src', WEB_HOST+'/lrc/'+my.get('singer-id')+'/'+my.get('song-id')+'.htm');
				//yt_util.$("download-url").setAttribute('href', '/down.htm?'+my.get('song-name'));
				
				//////////////////////////////////////////////////////////////////////////////////////////////////////
				
				yt_util.$("geci-url").setAttribute('href', my.get('geci-url'));
				yt_util.$("down-url").setAttribute('href', my.get('down-url'));				
				
				//////////////////////////////////////////////////////////////////////////////////////////////////////
				
				yt_util.$("player_ring").setAttribute('src', '/otherhtml/down/sms.htm?'+my.get('song-name'));
				//yt_util.$("comment-url").setAttribute('src', WEB_HOST+'songid='+my.get('song-id'));
				yt_util.$("error-check").setAttribute('href', '/songwordsadd.asp?id='+my.get('song-id'));
				setCookie(my.get('song-id'));
				yt_util.$("plmusic").innerHTML=my.get('song-name');
				yt_util.$("erradd").href='/err.asp?id='+my.get('song-id');
				yt_util.$("dg").href='http://union.dangdang.com/transfer/transfer.aspx?from=P-130033&backurl=http://search.dangdang.com/search.aspx?key='+my.get('song-name');
				yt_util.$("jcomment").src='/ajax/plist.asp?id='+my.get('song-id');
				//yt_util.$("player_ring").setAttribute('src', WEB_HOST+'/click/player_ring.htm?musicname='+window.encodeURIComponent(my.get('song-name'))+'&singername='+window.encodeURIComponent(my.get('singer-name')));
				//yt_util.$("player_center").setAttribute('src', WEB_HOST+'/click/player_center.htm?songname='+window.encodeURIComponent(my.get('song-name'))+'&singername='+window.encodeURIComponent(my.get('singer-name')));
				//yt_util.$("player_center").setAttribute('src', WEB_HOST+'/click/player_center.htm?songname='+escape(my.get('song-name'))+'&singername='+window.encodeURIComponent(my.get('singer-name')));
				
			}

			PLAY_FIRST_LOAD = false;

            var els = document.getElementsByTagName('b');
            for (var j = 0; j < els.length; j++)
            {
                if ('song-name' == els[j].getAttribute('for')) {
                    els[j].innerHTML = my.get('song-name').substring(0,14);
                }
            }
            //trackSong(my.get('song-id'));

            return my;
        };

        this.play = function() {
            try {
                if(yt_util.platform.linux){
                    my.kit.Play();
                }else{
                    my.kit.controls.play();
                }
            } catch(e) {

            }
        };

        this.next = function() {
            my.human = 1;
            var s = yt_util.browser.msie?my.element.nextSibling:my.element.nextObject();
            if(s){
                my.start(s);
            }else{
                if (PLAY_APPEND) {
                    PLAY_APPEND = false;
                    my.start(my.playnum + 1);
                } else {
                    my.start(0);
                }
            }
        };

        this.hit = function(element) {
            my.human = 1;
            my.start(element);
        };

        this.previous = function() {
            my.human = 1;
            var s = yt_util.browser.msie?my.element.previousSibling:my.element.previousObject();
            if(!s){
                my.start(my.nodes.length-1);
            }else{
                my.start(s);
            }
        };

        this.stop = function() {
            try {
                if(yt_util.platform.linux){
                    my.kit.Stop();
                }else{
                    my.kit.controls.stop();
                }
            } catch(e) {

            }
        };

        this.pause = function() {
            try {
                if(yt_util.platform.linux){
                    my.kit.Pause();
                }else{
                    my.kit.controls.pause();
                }
            } catch(e) {

            }
        };
        
        this.time = function() {
            try {
                if(yt_util.platform.linux){
                    return my.kit.getTime();
                }else{
                    return my.kit.controls.currentPosition;
                }
            } catch(e) {
                return 0;
            }
        };

        this.duration = function() {
            try {
                if(yt_util.platform.linux){
                    return my.kit.getDuration();
                }else{
                    return my.kit.currentMedia.duration;
                }
            } catch(e) {
                return 0;
            }
        };

        this.random = function() {
            if (my.tabid != PLAY_TAB_ID){my.nodes = yt_util.$('list-'+PLAY_TAB_ID).getElementsByTagName('li');}
            my.start(Math.floor(Math.random() * my.nodes.length));
        };

        this.style = function() {
            try {
                for (var i = 0; i<my.nodes.length;i++) {
                    if (my.nodes[i] == my.element) {
                        my.nodes[i].className = 'jhover';
                        my.playnum = i;
                    } else {
                        my.nodes[i].className = '';
                    }
                }
            } catch(e) {}
        };

        this.mark = function(){
            var t = yt_util.cookie.get('EVER');
            var si = my.get('song-id');
            var o = {}, r = [];
            if (typeof t =='string'){
                try{
                    var arr = t.match(/(\d+)/g);
                    r = arr.uniq();
                    
                    if(r.length>50){
                        r = r.slice(r.length - 49 ,r.length-1);
                    }

                    if(parseInt(si) == si){
                        r.push(si);
                    }
                    yt_util.cookie.set('EVER',r.join('_'),24*7);
                }catch(e){
                    yt_util.cookie.set('EVER',si,24*7);
                }
            }
        };

        this.set = function(k,v){
            my[k] = v;
            return my;
        };
        
        this.get = function(k){
            return my.inputs[PLAY_INPUT[k]].value;
        };

        this.mode = function(k){
            PLAY_MODE = k;
            return my;
        };
    },

    json:function() {
        var my = this;
        this.cached = {history:''};

        this.cache = function(key,z) {
            if (typeof z == 'string'){
                var arr = z.split('_');
            }else if (typeof z == 'object'){
                var arr = z;
            }
            r =  arr.uniq()
                    .filter(function(x,y,z){
                        var c = parseInt(x); 
                        if(c == x && !isNaN(c)){
                            z[y] = c;
                            return true;
                        }
                    })
                    .sort(function compare(a,b){return a-b;})
                    .join('');
            if(my.cached[key] == r){
                return true;
            }else{
                my.cached[key] = r;
                return false;
            }
        };

        this.load = function(file) {
            if(typeof file =='boolean'){
                return false;
            }
            var html_doc = document.getElementsByTagName('head')[0];
            var js = document.createElement('script');
            js.setAttribute('type', 'text/javascript');
            js.setAttribute('src', file);
            js.setAttribute('id', 'yt_xjs');
            if (yt_util.$('yt_xjs')) {
                html_doc.replaceChild(js, yt_util.$('yt_xjs'));
            } else {
                html_doc.appendChild(js);
            }
        };

        this.require = function(file) {
            var html_doc = document.getElementsByTagName('head')[0];
            var js = document.createElement('script');
            js.setAttribute('type', 'text/javascript');
            js.setAttribute('src', file);
            js.setAttribute('id', 'ytc_xjs');
            if (yt_util.$('ytc_xjs')) {
                html_doc.replaceChild(js, yt_util.$('ytc_xjs'));
            } else {
                html_doc.appendChild(js);
            }
        };

        this.search = function(z) {
			PLAY_APPEND = false;
            yt_util.$('q').className ='input_style q-1';
            z = z.replace(/\s+^/g, '').replace(/\s+$/g, '');
            my.load(WEB_HOST+'/Process/player_searchmusic.html?m=' + z);	//n='+Math.random()+'&      encodeURIComponent(z))
			// &prefix=var%20yt_json=&suffix=;yt_render(3);yt_tab.change(3);yt_search();
        };

        this.build = function(z,tid) {
            if(my.cached[tid] && tid !=2){
                return false;
            }else{
                my.cached[tid] = true;
            }
            if (typeof z == 'string'){
                var arr = z.split('_');
            }else if (typeof z == 'object'){
                var arr = z;
            }
	    //alert(JSON_HOST+'/json/player_'+tid+'_option.htm?' +arr.uniq().join('_'));
            //return 'http://127.0.0.1/Inc/player.asp?p='+tid+'&id=' +arr.uniq().join('_');
            //return JSON_HOST+'/json.aspx?ids=' +arr.uniq().join('_')+'&prefix=var%20yt_json={results:&suffix=};yt_render('+tid+');';
            //r = arr.uniq().filter(function(x,y,z){z[y] = 'songId:'+x;return true}).join(' OR ');

        };

        this.history = function(){
            var z = yt_util.cookie.get('EVER');
            if(z){
                var a = z.split('_').reverse();
                if(my.cache('history',a)){
                    return;
                }
                my.load(my.build(a,2));
            }
        };

        this.addsong = function(id){
            my.load(JSON_HOST+'/json/player_1_option?' + id);
        };

        this.commend = function(i){
            yt_recommend();
            if(!yt_commend[i]){return;}
            my.load(my.build(yt_commend[i], i));
        };


    },

    cookie:{
        set:function(name, value, hours) {
            var expire = "";
            if (hours != null) {
                expire = new Date((new Date()).getTime() + hours * 3600000);
                expire = "; expires=" + expire.toGMTString();
            }
            document.cookie = name + "=" + encodeURIComponent(value) + "; domain=666ccc.com;path=/" + expire;
        },

        get:function(name) {
            var cookieValue = "";
            var search = name + "=";
            if (document.cookie.length > 0) {
                var offset = document.cookie.indexOf(search);
                if (offset != -1) {
                    offset += search.length;
                    var end = document.cookie.indexOf(";", offset);
                    if (end == -1) end = document.cookie.length;
                    cookieValue = decodeURIComponent(document.cookie.substring(offset, end));
                }
            }
            return cookieValue;
        },

        refresh:function(name){
            try{
                this.set('PIN',this.get('PIN'),24);
            }catch(e){				
            }
        }
    },

    tab:function(t){
        this.total = t;
        var my = this;
        this.init =function(t){
            my.total = t;
        };

        this.change=function(oid){
            PLAY_TAB_ID = oid;
            for (var i = 1; i<=my.total; i++)
            {
                if(i==oid){
                    yt_util.$('tab-'+i).className = 'now';
                    yt_util.$('list-'+i).style.display = '';
                }else{
                    yt_util.$('tab-'+i).className = '';
                    yt_util.$('list-'+i).style.display = 'none';
                }
            }
            /*suck*/
            
        };

        this.append = function(){
        
        };
    }
};

var wmpst = 0;
function yt_timer(playState){
    if (playState == 8) {
        var duration = Math.abs(Math.floor((yt_pl.time() - wmpst) / yt_pl.duration() * 100));
        if (!isNaN(duration) && duration >1){
            // yitingtracker.set('tid', 12).set('time', duration).timer(yitingtracker.id = yt_pl.get('song-id'));
            wmpst = 0;
        }
    }
}

function OnDSPlayStateChangeEvt(playState){
    if (playState == 8 && yt_pl.human == 0) {
        var int$b = window.setInterval(
            function(){
                switch(PLAY_MODE){
                    case PLAY_MODE_NORMAL:
                    default:
                        yt_pl.next();
                        break;
                    case PLAY_MODE_SINGLE:
                        if(yt_util.browser.msie){yt_pl.play();}
                        break;
                    case PLAY_MODE_RANDOM:
                        yt_pl.random();
                        break;
                }
                window.clearInterval(int$b);
            }, 100);
    }
}

function unloadPlayer(){
	yt_util.cookie.set("PLAYING", "OFF", 24);
	window.clearInterval(checkPlaylist);
}

window.onbeforeunload = function() {
    try{
        if(yt_pl.time() > 0)yt_timer(8);
		unloadPlayer();
    }catch(e){}
};

function yt_render(oid) {
    var ul = '',j = 1;
    var total = yt_json.results.length;

    for (var i =0;i<total;i++){
        ul += '<li rel="'+yt_json.results[i].songId+'" ondblclick="yt_append(this);"><input type="checkbox" name="song" value="'+yt_json.results[i].songId+'" /><input type="hidden" value="'+yt_json.results[i].singerName+'"/><input type="hidden" value="'+yt_json.results[i].singerUrl+'"/><input type="hidden" value="'+yt_json.results[i].songName+'"/><input type="hidden" value="'+yt_json.results[i].playerUrl+'"/><input type="hidden" value="'+yt_json.results[i].albumName+'"/><input type="hidden" value="'+yt_json.results[i].albumUrl+'"/><input type="hidden" value="'+yt_json.results[i].songPath+yt_json.results[i].songFileName+'"/><input type="hidden" value="'+yt_json.results[i].geciUrl+'"/><input type="hidden" value="'+yt_json.results[i].downUrl+'"/><input type="hidden" value="'+yt_json.results[i].albumId+'"/><a href="#" onclick="yt_append(this.parentNode);return false;" title="歌曲:'+yt_json.results[i].songName.replace(/<[^>]+>/g,"")+'">'+yt_json.results[i].songName+'</a> - <a href="'+yt_json.results[i].singerUrl+'" title="歌手:'+yt_json.results[i].singerName.replace(/<[^>]+>/g,"")+'" target="_blank">'+yt_json.results[i].singerName+'</a></li>';
    }
    if(PLAY_APPEND){
        yt_util.$('list-'+oid).innerHTML += ul;
    }else{
        yt_util.$('list-'+oid).innerHTML = ul;
    }
}

function yt_selected(){
    var ts = yt_util.$('list-'+PLAY_TAB_ID).getElementsByTagName('INPUT');
    var ds = [];
    for (var i =0;i<ts.length;i++){
        var el = ts[i];
        if('checkbox' == el.type && el.checked && el.name =='song'){
            ds.push(el.value);
        }
    }
    return ds;
}

function yt_select(){
    var ts = yt_util.$('list-'+PLAY_TAB_ID).getElementsByTagName('INPUT');
    for (var i =0;i<ts.length;i++){
        var el = ts[i];
        if('checkbox' == el.type && el.name =='song'){
            el.checked = true;
        }
    }
}

//function yt_favorite(){
    //var sd = yt_selected();
    //if(sd.length > 0){
    //    window.open(BOX_HOST+'/userbox/addsong?'+sd.join('_'),'_box');
   // }
//}

//function yt_favorite_list(){
   // var ts = yt_util.$('list-'+PLAY_TAB_ID).getElementsByTagName('INPUT');
   // var ds = [];
   // for (var i =0;i<ts.length;i++){
      //  var el = ts[i];
      //  if('checkbox' == el.type && el.name =='song'){
        //    ds.push(el.value);
       // }
   // }
   // if(ds.length > 0){
		//showiframe(250, 200, BOX_HOST+'/userbox/addsong?'+ds.join('_'));
        //yt_util.attr('_box','src',BOX_HOST+'/userbox/addsong?'+ds.join('_'))
   // }
//}

function yt_append_list(){
    var cs = yt_util.$('list-1');
    var ts = yt_util.$('list-'+PLAY_TAB_ID).getElementsByTagName('INPUT');
    var ds = [];
    for (var i =0;i<ts.length;i++){
        var el = ts[i];
        if('checkbox' == el.type && el.checked && el.name =='song'){
            ds.push(el.parentNode);
        }
    }

    for (var i=0;i<ds.length;i++){
        var el = ds[i];
        if(!yt_util.$('p-'+el.getAttribute('rel'))){
            el.id ='p-'+el.getAttribute('rel');
            cs.appendChild(el);
        }
    }
	alert('添加到我的列表成功');
	yt_tab.change(1)
	yt_current()
}



function yt_history(){
    yt_util.style('btn-favorite','display','none')
        .style('btn-delete','display','none')
        .style('btn-append','display','')
        .style('btn-select','display','');
}

function yt_recommend(){
    yt_util.style('btn-favorite','display','none')
        .style('btn-delete','display','none')
        .style('btn-append','display','')
        .style('btn-select','display','');
}

function yt_current(){
    yt_util.style('btn-favorite','display','none')
        .style('btn-delete','display','')
        .style('btn-append','display', 'none')
        .style('btn-select','display','');
}

function yt_download(){
    var sd = yt_selected();
    if(sd.length > 0){
        
    }
}

function yt_delete(){
    var ps = yt_util.$('list-'+PLAY_TAB_ID);
    var ts = ps.getElementsByTagName('INPUT');
    var ds = [],ns = [];
    for (var i = 0;i<ts.length;i++){
        var el = ts[i];
        if('checkbox' == el.type && el.name =='song'){
            yt_pl.playnum = -1;
            if(el.checked){ds.push(el.parentNode);}else{ns.push(el.value)}
        }
    }
    
    if(PLAY_TAB_ID == 2){
        yt_util.cookie.set('EVER',ns.length > 0?ns.join('_'):'',24*7);
    }
    
    for (var i=0;i<ds.length;i++){
        ps.removeChild(ds[i]);
    }
}

function yt_append(o){
    if(PLAY_TAB_ID == 13){
        var ps = yt_util.$('list-1');
        if(yt_util.$('p-'+o.getAttribute('rel'))){
            alert('already in play list!');
            return false;
        }
        
        o.id = 'p-'+o.getAttribute('rel');
        o.ondblclick =function(){
            yt_pl.hit(this);
        };
        o.getElementsByTagName('A')[0].onclick =function(){
            yt_pl.hit(this.parentNode);
        };
        ps.appendChild(o);
        alert('OK');
    }else{
        yt_pl.hit(o);
    }
}

function yt_mode(o,m,x,y){
    PLAY_MODE = m;
    //yt_util.style('mode-list','height','16px').style('mode-current','display','').attr('mode-current','src',o);
	yt_util.$(o).className="ms";
	yt_util.$("m_"+x).className="";
	yt_util.$("m_"+y).className="";
    return false;
}

if(!Array.prototype.uniq){
    Array.prototype.uniq=function(){
        var arr = this;
        var o = {}, r = [];
        for (var k = 0; k < arr.length; k++) {o[arr[k]] = arr[k];}
        for (k in o) {r.push(o[k]);}
        return r;
    };
};

if(!Array.prototype.filter){
    Array.prototype.filter=function(callback,elm){
        var r=[],i=0,j=this.length;
        if(!elm){while(i<j){if(callback(this[i],i++,this))
            r.push(this[i-1]);
        }} else {while(i<j){if(callback.apply(elm,[this[i],i++,this]))
            r.push(this[i-1]);
        }}
        return r;
    }
};

if(!String.prototype.trim){
    String.prototype.trim = function()  
    {  
        return this.replace(/(\s+)/,'').replace(/(\s+)$/,'');  
    };
}

if(typeof(HTMLElement) != "undefined"){
    
    HTMLElement.prototype.nextObject = function() {
        var n = this;
        do n = n.nextSibling;
            while (n && n.nodeType != 1);
        return n;
    };

    HTMLElement.prototype.previousObject = function() {
        var p = this;
        do p = p.previousSibling;
            while (p && p.nodeType != 1);
        return p;
    };

    HTMLElement.prototype.contains=function(obj){
        while(obj!=null&&typeof(obj.tagName)!="undefind"){
                if(obj==this)return true;
                obj=obj.parentNode;
        　　}
        return false;
    };
}

var kit = {
    client:function(){
        if (screen.width<900){
            yt_util.$('main').style.width = screen.width+'px';
        }
    },

    box:{
        els:[],
        init:function(){
            var un = yt_util.cookie.get('KMusic');
            if(un && un.length > 1){
                yt_js.box();
            }            
        }
    }
};




var yt_pl = new yt_util.player();
var yt_js = new yt_util.json();
var yt_tab = new yt_util.tab(6);
yt_util.cookie.set("PIN", hostname, 3);
yt_util.cookie.set("PLAYING","ON", 24);
var checkPlaylist = window.setInterval(function() {
	var thissongid, tempsource;
	var mark = "_", resultplaylist = "";
	var addplaylist = yt_util.cookie.get("PLAYLIST");
    if (addplaylist != "") {
		var templaylist = addplaylist.split(mark);
		for (var i = 0; i < templaylist.length; i++) {
			thissongid = templaylist[i];
			tempsource = yt_util.$("list-1");
			if (tempsource) {
				if (tempsource.innerHTML.indexOf("value=" + thissongid) == -1) {
					resultplaylist += thissongid + mark;
				}
			}
		}
		if (resultplaylist != "") {
			yt_js.addsong(resultplaylist);
			PLAY_APPEND = true;
		} yt_util.cookie.set("PLAYLIST", "", 24);
    }
}, 1000);


function SetCookie(name, value)
{
	var expdate = new Date();
	var argv = SetCookie.arguments;
	var argc = SetCookie.arguments.length;
	var expires = (argc > 2) ? argv[2] : null;
	var path = (argc > 3) ? argv[3] : null;
	var domain = (argc > 4) ? argv[4] : null;
	var secure = (argc > 5) ? argv[5] : false;
	if(expires!=null) expdate.setTime(expdate.getTime() + ( expires * 1000 ));
	document.cookie = name + "=" + escape (value) +((expires == null) ? "" : ("; expires="+ expdate.toGMTString()))+((path == null) ? "" : ("; path=" + path)) +((domain == null) ? "" : ("; domain=" + domain))+((secure == true) ? "; secure" : "");
}



getCookie=function(name)
{
	var oRegex=new RegExp(name+'=([^;]+)','i');
var oMatch=oRegex.exec(document.cookie);
if(oMatch&&oMatch.length>1)return unescape(oMatch[1]);
else return '';
};
setCookie=function(id)
{
	var strCookie="*yycms*"+id;
var Cookie_info=getCookie("YYHistory");
var deal_Cookie=Cookie_info;
if(Cookie_info!=null){Cookie_info=Cookie_info.split("*yycms*");
if(Cookie_info.length>=36)var N=34;
else 
var N=Cookie_info.length-2;
for(var i=0;i<=N;i++)if(Cookie_info[i].indexOf(id)!=-1)deal_Cookie=deal_Cookie.replace(strCookie,"");}strCookie+=deal_Cookie;
var exp=new Date();exp.setTime(exp.getTime()+3600000000);document.cookie="YYHistory="+strCookie+";path=/; expires="+exp.toGMTString();};
/*
if (window.addEventListener) { 
	window.addEventListener("unload", unloadPlayer, false); 
} else if (document.addEventListener) { 
	document.addEventListener("unload", unloadPlayer, false);
} else if (window.attachEvent) { 
	window.attachEvent("onunload", unloadPlayer);
}
*/
