/**
 * home,genre,album
 *
 */

document.domain='1ting.com';

$(document).ready(
    function(){

        var Dict = Dict || window;
        Dict.get = function(k){
            return this['_'+k];
        };
        Dict.set = function(k,v){
            this['_'+k] = v;
        };

        var is = $('#btn-items');
        var bs = $('#btn-search');
        var val = bs.val();

        window.callback_play_list = function(a){
            Dict.set('called',a);
        }

        is.find('a').each(function(){
            $(this).click(function(){
                bs.val(this.innerHTML);
                is.toggle();
                return false;
            });
        });

        bs.click(function(){
            is.toggle().find('a').each(function(){
                    $(this).parent().attr('className',$(this).text()==bs.val()?'current':'');
            });
        });

        var fns = {select:function(selector,o){
                        if(typeof selector !=='string'){
                            selector = '#song-list input[name=checked]';
                        }
                        if(o){
                            var b = o.checked;
                        }else{
                            var b = this.checked;
                        }
                        $(selector).each(function(){
                            this.checked = b;
                        });
                    },
                    play:function(s){
                        var vs = fns['check'](s);
                        vs.length>0 ? window.open('http://www.1ting.com/p_'+vs.join('_')+'.html','_1ting') : alert('请选择歌曲！');
                    },
                    fav:function(s){
                        var vs = fns['check'](s);
                        vs.length>0 ? window.tobox('http://box.1ting.com/service/addToFavorite.jsp?t=1&rID='+vs.join(','),'_box') : alert('请选择歌曲！');
                    },
                    add:function(s,o){
                        var vs = fns['check'](s);
                        if(vs.length>0){
                            try{
                                var fl =(function(n){
                                if (navigator.appName.indexOf("Microsoft") != -1) {
                                     return window[n];
                                 } else {
                                     return document[n];
                                 }
                                })('play_list_send');
                                fl.add_to_play_list(vs);
                            }catch(e){
                                Dict.set('called',e.message);
                            }
                        }else{
                            Dict.set('called','请选择歌曲！');
                        }
                    },
                    check:function(selector){
                        var vs = [];
                        if(typeof selector !=='string'){
                            selector = '#song-list input[name=checked]';
                        }

                        $(selector).each(function(){
                            if(this.checked){
                                vs.push(this.value);
                            }
                        });
                        return vs;
                    }
                };

        $('input[type=text]').each(function(i){
            $(this).one('click',function(){this.value=''});
        });

        $('#song-list tbody tr').mouseover(function(){
            $(this).css('background','#EAFAFF');
        }).mouseout(function(){
            $(this).css('background','#fff');
        });

        $('a.jfav').each(function(i){
            $(this).click(function(){
                window.tobox(this.href,'_box');
                return false;
            });
        });
        //推荐 add 10:28 2009-11-24 @coolmoo
        $('a.jtj').each(function(i){
            $(this).click(function(){
                window.tobox(this.href,'_box');
                return false;
            });
        });
        //推荐 End
        var explain = $('#explain');
        if(explain.get(0)){
            var oh = explain.height();
            explain.css('height','auto');
            var mh = explain.height();
            explain.css('height',oh+'px');
            $('.open span').click(function(){
                var nh = explain.height();
                explain.animate({height:nh==oh?mh:oh+'px'}, 500);
                $('.open span').toggle();
                return false;
            });
        }

        var artists = $('li.simple');
        if (artists.size()>0){
            $('#jopen').click(function(){
                $('#meun').show();
            });

            $(document).click(function(e){
                if((e.target||srcElement).parentNode != $('#jopen').get(0)){
                    $('#meun').hide();
                }
            });

            $('#jclose').click(function(){
                $('#meun').hide();
            });

            window.jartists = [];

            artists.each(function(){
                var p = this.parentNode.parentNode;
                var c = this.parentNode;
                window.jartists.push(p.parentNode)
                $(this).click(function(){
                    $(c).removeClass('tagb');
                    $(p).next().show().next().hide().end();
                }).next().click(function(){
                    $(c).addClass('tagb');
                    $(p).next().hide().next().show().find('img').each(function(){
                        this.src = this.getAttribute('lazy');
                    }).end();
                });
            });

            $('#jkeyboard a').each(function(i){
                $(this).click(function(){
                    $('#meun').hide();
                    if(window.jartists[i]){
                        $('.jartist').hide();
                        $('.simple').show();
                        $(window.jartists[i]).addClass('jashow').show();
                        window.jaopened = true;
                    }else{
                        $('.jartist').removeClass('jashow').show();
                        $('.word_list').show();
                        $('.simple').hide();
                        $('.pic_list').hide();
                    }
                    $('a.now').removeClass('now');
                    $(this).addClass('now');
                    return false;
                });
            });
        }

        var faq = $('.faq');
        if(faq.get(0)){
            faq.click(function(){
                $('div.about').show();
            });
            $('div.close a').click(function(){
                $('div.about').hide();
                return false;
            });

            var us =[];
            var ul = $('ul.row ul.has');
            var im = $('ul.row h3 img.has');

            function close_all(j){
                ul.each(function(i){
                    us[i]=this;
                    if(i !==j){this.style.display='none';}
                });
                im.each(function(i){
                    if(i !== j){
                        toggle(this,false);
                    };
                });
            }

            function toggle(o,b){
                o.src= b ?'/v5/images/genre/open.gif':'/v5/images/genre/close.gif';
                o.alt = b ?'点击收回':'点击展开';
            }

            function open_all(j){
                ul.each(function(i){
                    us[i]=this;
                    this.style.display='';
                });
                im.each(function(i){
                    toggle(this,1);
                });
            }

            ul.each(function(i){
                us[i]=this;
                this.style.display='none';
            }).end();

            im.each(function(i){
                $(this).click(function(){
                    toggle(this,this.src.indexOf('close.gif') !=-1);
                    $(us[i]).toggle('fast');
                });
            }).end();
            
            $('ul.tags li').each(function(i){
                $(this).click(function(){
                    if(i==0){
                        open_all();
                        $(this).attr('className','simple').next().attr('className','all');
                    }else{
                        close_all();
                        $(this).attr('className','simple').prev().attr('className','all');
                    }
                });
            });

            /*<genre>*/
            var linkmap = {};
            var indexes = '@';
            function before(i){
                var s = i;
                var b = i;
                while(s >= i){
                    s = indexes.indexOf('@',b--);
                }

                return s+1;
            }

            function after(i){
                var s = indexes.indexOf('@',i);
                return s;
            }
            
            $('#genre_s_form').submit(function(){
                if (indexes.length < 2) {
                    $('ul.row a').each(function() {
                        var c = this.innerHTML.toLowerCase();
                        linkmap[c] = this.getAttribute('href');
                        indexes += c + '@';
                    });
                }
                var k = $.trim($('#genre_s_key').val());
                k = k.replace('音乐','');
                if (k.length > 0) {
                    k = k.toLowerCase().replace('@', '');

                    var i = indexes.indexOf(k);
                    if (i != -1) {
                        window.location.href=(linkmap[indexes.substring(before(i), after(i))]);
                        return false;
                    }
                }
                return false;
            });
            /*</genre>*/
        }
        
        /*s4h*/
        var jsubmit = function(){

        }
        $('#frm-search').submit(function(){
            var qs = {'歌曲':'song','专辑':'album','歌手':'singer','歌词':'lyric','铃声':'ring','全部':'all'};
            var k = $.trim($('li.search_key input').val());
            var d = $.trim($('#btn-search').val());
            if(k.length>0&& k !='在此输入' && qs[d]){
               $(this).attr('action', 'http://so.1ting.com/'+qs[d]+'.do');
               return true; 
            }else{
                return false;
            }
        });
        /*home*/
        if($('a.tab').size()>0){
            (function(){
                var ts = Math.ceil($('#scv_inner .div_c').each(function(){
                            $(this).mouseover(function(){
                                resetStyle();
                                this.className='div_b';
                            });
                        }).size()/5);

                var step = $("#scv_spe").width()/2;
                var scvin = $("#scv_inner").css({'left':'0px'});
                var ti = 0;

                function resetStyle(){
                    var c = $('div.div_b').get(0);
                    if(c){
                        c.className='div_s';
                    }
                }

                function getStep(b){
                    if(!b){
                        return (++ti)*step+'px';
                    }else{
                        return (--ti)*step+'px';
                    }
                }

                $('#prev').click(function(){
                    if(ti<0){
                        resetStyle();
                        scvin.animate({left: getStep(false)}, 1000 );
                    }
                    return false;
                });

                $('#next').click(function(){
                    if(ti+ts>0){
                        scvin.animate({left: getStep(true)}, 1000 );
                        resetStyle();
                    }
                    return false;
                });
            })();

            $('a.tab').each(function(){
                $(this).click(function(){
                    var id = this.getAttribute('for');
                    var prefix = id.replace(/\d+$/,'');

                    for (var i=1; i<4;i++ ){
                        var c = prefix+i;
                        if (c!==id){
                            $('#'+prefix).attr('checked',false);
                            $('#'+c).hide().find('input[type=checkbox]').attr('checked',false);
                        }
                    }

                    $(this.parentNode.parentNode).find('.now').removeClass('now');
                    $(this.parentNode).addClass('now');

                    Dict.set(prefix,id);
                    Dict.set('current','#'+id);
                    $('#'+id).show();
                    return false;
                });
            });

            if(parseInt($.browser.version) < 7 && $.browser.msie){
                $('div.user b').each(function(){
                    $(this).mouseover(function(){
                        $(this).removeClass('c').addClass('b');
                    });

                    $(this.parentNode).mouseout(function(){
                        $(this.lastChild).removeClass('b').addClass('c');
                    });
                });
            }

            (function(){

                var td = $('#scv_container .album_n').size();
                var ts = Math.ceil(td/4);
                var step = $("#scv_wrapper").width();
                var scvin = $("#scv_container").css({'left':'0px'});
                var ti = 0;

                function getStep(b){
                    if(!b){
                        return (++ti)*step;
                    }else{
                        return (--ti)*step;
                    }
                }

                $('#btnprev').click(function(){
                    if(ti<0){
                        scvin.animate({left: getStep(false)+'px'}, 1000 );
                    }
                    return false;
                });

                $('#btnnext').click(function(){
                    if(ti+ts>1){
                        var c = Math.max(getStep(true),-(step/4*(td-4)));
                        scvin.animate({left: c+'px'}, 1000 );
                    }else{
                        ti = 0;
                        scvin.animate({left: '0px'}, 1000 );
                    }
                    return false;
                });

            })();
        }

        $('input.btn').each(function() {
            var k = this.getAttribute('name');
            var prefix = this.getAttribute('for');
            var id = prefix?prefix + 1:'song-list';
            if(k === 'add'){
                $(this).mousedown(function() {
                    id = Dict.get(prefix) || id;
                    fns[k]('#' + id + ' input[type=checkbox]', this);
                }).mouseup(function(){
                    switch (Dict.get('called').constructor)
                    {
                        case Array:
                            window.open('http://www.1ting.com/p_'+Dict.get('called').join('_')+'.html','_1ting');
                            break;
                        case Boolean:
                            alert('添加到列表!');
                            break;
                        case String:
                            alert(Dict.get('called'));
                            break;
                    }
                });
            }else{
                $(this).click(function() {
                    id = Dict.get(prefix) || id;
                    fns[k]('#' + id + ' input[type=checkbox]', this);
                });
            }
        });
        //全选 按钮事件 add 10:40 2009-11-24 @coolmoo
        $("#all").unbind();//反绑定 fns[select]事件
        $('#all').click(function(){
	        $('#song-list input[name=checked]').each(function(){
	        	this.checked=this.checked?false:true;
	       	});
        });
        //全选 按钮事件 End
    }
);

