/**
 * это всё в отдельный файл
 */
      function FlvPlayer(p_url, p_id, p_name) {
          this.p_url  = p_url;
          this.p_id   = p_id;
          this.p_name = p_name;

          this.isLoaded = false;
          this.state = 'stoped';
          
          this.obj = new SWFObject('/mini_mp3_player.swf', p_name, "370", "20");
          this.obj.addParam("wmode", "transparent");
          this.obj.addVariable('p_url', p_url);
          this.obj.addVariable('p_id', p_id);
          this.obj.addVariable('p_name', p_name);
          this.obj.write(p_name);

          this.send = function(cmd) {
            sendFromJS( this.p_name, { p_command: cmd } );              
          }
      }

      FlvPlayer.prototype.setState = function(state){
        if(state == 'loaded') {
          this.isLoaded = true; 
        } else {
          this.state = state;
        } 
      };

      FlvPlayer.prototype.execute = function(command){
        this.send(command);           
      };

//PlayersContainer
      function FlvPlayers()
      {
         this.currentTrack = 0;
         this.players = new Array();
         this.neverPlayed = true;
      }
      
      FlvPlayers.prototype.add = function(player) {
        this.players[this.players.length] = player;
      }
      
      FlvPlayers.prototype.getByNumber = function(number) {
        return this.players[number];           
      }

      FlvPlayers.prototype.getByName = function(name) {
        for(var i in this.players) {
            if (this.players[i].getName() == name) {
              return this.players[i];
            }
        }
        return false;
      }

      FlvPlayers.prototype.eventRecieved = function(event) {
        //this.getByNumber(event.p_id).setState( event.p_event );
        
        if( event.p_event == 'loaded') {
          if( (event.p_id == 0) && (this.neverPlayed) ) {
            this.getByNumber(0).execute('play');
            this.neverPlayed = false;  
          }
        } else if( (event.p_event == 'stoped' )||(event.p_event == 'paused') ) {
          //this.currentTrack = false;

        } else if(event.p_event == 'finished' ) {
            if( ++this.currentTrack == this.players.length ) {
            	this.currentTrack = 0;
            }
            this.getByNumber(this.currentTrack).execute('play');
        } else if( event.p_event == 'playing' ) {
            if( this.currentTrack != event.p_id) {
            	this.getByNumber(this.currentTrack).execute('stop');
            } 
            this.currentTrack = event.p_id;
        }
      }
      
/** конец файла **/

