/**
 * Playlista
 *
 * Zarządzanie playlistą.
 *
 * @autor Tomasz Pietrzak
 */
objPlaylist = {

    // konfiguracja
    id : 'playlist-wrapper',

    speed    : 500,  // szybkość przewijania pomiędzy kanałami
    selected : 0,    // aktualnie wybrany kanał
    visibled : 6,    // liczba widzialnych kanałów
    count    : 8,    // liczba dostępnych kanałów
    size     : 139,  // szerokość pojedyńczego kanału

    // konfiguracja kanałów
    plahou : '/externals/xml/rds/plahou.html', // Kanał House
    plapro : '/externals/xml/rds/plapro.html', // Kanał Progressive House
    plaold : '/externals/xml/rds/plaold.html', // Kanał Oldskul
    plachi : '/externals/xml/rds/plachi.html', // Kanał Chic
    plarnb : '/externals/xml/rds/plarnb.html', // Kanał RnB

    // kanały lokalne
    bielskobiala : '/externals/xml/rds/bielskobiala.html',
    gizycko      : '/externals/xml/rds/gizycko.html',
    ilawa        : '/externals/xml/rds/ilawa.html',
    katowice     : '/externals/xml/rds/katowice.html',
    kielce       : '/externals/xml/rds/kielce.html',
    konin        : '/externals/xml/rds/konin.html',
    krakow       : '/externals/xml/rds/krakow.html',
    lodz         : '/externals/xml/rds/lodz.html',
    mragowo      : '/externals/xml/rds/mragowo.html',
    olsztyn      : '/externals/xml/rds/olsztyn.html',
    opole        : '/externals/xml/rds/opole.html',
    poznan       : '/externals/xml/rds/poznan.html',
    slupca       : '/externals/xml/rds/slupca.html',
    warszawa     : '/externals/xml/rds/warszawa.html',

    /**
     * Obsługa głownego playera
     */
    global : function(city){
        $('.playlist-player').click(function(){
            objPlaylist.popup('http://www.planeta.fm'+$(this).attr('href'));
            return false;
        });

        // pobranie rds'a dla miasta
        objPlaylist.loadfile($('#emission'), city);
    },

    /**
     * Zarządzanie kanałami
     */
    channel : function(){
        // kliknięcie w przycisk nawigacyjny
        $('#'+objPlaylist.id).find('.navigation a').click(function(){
            objPlaylist.move($(this).attr('class'));
            return false;
        });

        // kliknięcie w kanał
        $('#'+objPlaylist.id).find('.content a').click(function(){
            objPlaylist.popup($(this).attr('href'));
            return false;
        });

        // pobranie rdsów
        objPlaylist.rds();
    },

    /**
     * Pobieranie danych z rds'a
     */
    rds : function(){
        $('#'+objPlaylist.id).find('.content ul li a').each(function(){
            objPlaylist.loadfile($(this), $(this).attr('class'));
        });

        setTimeout(objPlaylist.rds, 30*1000);
    },

    /**
     * Odpalanie playerka
     */
    popup : function(url){
        window.open (url, 'popup', 'location=1,status=1,scrollbars=0,width=740,height=665');
    },

    /**
     * Animacja
     */
    move : function(direction){
        // ustawianie przyszłych współrzędnych
        switch(direction)
        {
            case 'prev':
                if( objPlaylist.selected > 0 )
                    objPlaylist.selected--;
                break;
            case 'next':
                if( objPlaylist.selected+objPlaylist.visibled < objPlaylist.count )
                    objPlaylist.selected++;
                break;
        }
        // animacja
        $('#'+objPlaylist.id+' .content ul').stop().animate({marginLeft: '-'+(objPlaylist.selected * objPlaylist.size)+'px'}, objPlaylist.speed);
    },

    /**
     * Wczytywanie danych z rds'a (format xml)
     */
    loadfile : function(self, name){
        $.ajax({
            url      : objPlaylist[name],
            type     : "GET",
            dataType : 'html',
            
            success: function(msg){
                $(self).find('span').html(msg);
            }
        });
    }
}

