Ingeniería de Software Aplicados al Desarrollo Web
Icono RSS Icono E-mail Icono Inicio
  • Modificando el componente Podcast Suite de Joomla

    Publicado el 10 10America/Bogota Julio 10America/Bogota 2009 admin 3 comentarios

    Podcast Suite es un componente de Joomla para manejar Podcasting [El podcasting consiste en la creación de archivos de sonido (generalmente en formato mp3 o AAC, y en algunos casos el formato libre ogg) o de video (llamados videocasts o vodcasts) y su distribución mediante un sistema de sindicación que permita suscribirse y usar un programa que lo descarga de Internet para que el usuario lo escuche en el momento que quiera, generalmente en un reproductor portátil.]

    Podcast Suite nos provee de un componente el cual nos permite la administracion de nuestros archivos de audio, tambien nos ofrece un modulo para suscribirnos al canal y permitir que los usuarios vean los archivos de audio dispobibles, ademas, nos regala un pluging para insertar un reproductor flash en articulos y de esta forma publicitar los mp3 del sitio; y es en este plugin donde se centra la modificacion de este Post, pues puede que el reproductor no este acorde al estilo del sitio. La modificacion que realizaremos es la de colocar un parametro en el plugin, este parametro sera una lista desplegable con una lista de los reproductores flash disponibles asi que el primer paso es buscar los reproductores flash.

    Recurso 1
    Recurso 2

    Recurso 1 y 2 son enlaces a paginas con listas de reproductores, una vez tengamos los reproductores pasamos a modificar el codigo del plugin, podemos descargar podcast suite desde aca.  Debemos instalar el componente y el modulo es opcional.

    Primero editaremos el archivo llamado podcast.xml para agregar el parametro y decirle cuales archivo componen el plugin  asi que agregamos los reproductores flash de la siguiente forma:

    <filename>podcast/xspf_license.txt</filename>
    <filename>podcast/xspf_player_slim.swf</filename>
    <filename>podcast/dewplayer.swf</filename>
    <filename>podcast/player_mp3.swf</filename>
    <filename>podcast/player.swf</filename>
    

    Como podemos observar los reproductores flash los guardamos en la carpeta podcast del plugin, Hasta ahora no lo hemos instalado solo descomprimido y editando los archivos, uno vez terminemos crearemos un zip e instalaremos nuestro plugin modificado. Ahora la parte del parametro es la siguiente:

    <params>
    <param name="FlashPlayer" type="list" default="1" label="Flash_Player" description="Reproductor Flash para los Mp3"> <option value="podcast.swf">Default</option>
    <option value="player_mp3.swf">player_mp3</option>
    <option value="dewplayer.swf">dewplayer</option>
    </param>
    </params>
    

    antes de:

    foreach ($matches[2] as $id => $podcast) {
    

    Agregamos el siguiente codigo:

    $plugin =&JPluginHelper::getPlugin('content', 'podcast');
    $pluginParams = new JParameter( $plugin->params );
    

    El codigo anterior nos trae el valor del parametro, es decir, el reproductor que vamos ha usar.  Ahora modificaremos la funcion PodcastPlayer. Cambiamos:

    $player = new PodcastPlayer($podcastParams, $enclose, $row->title);
    

    por:

    $player = new PodcastPlayer($podcastParams, $enclose, $row->title, $pluginParams->get('FlashPlayer'));
    

    Hemos agregado un nuevo parametro al constructor del reproductor flash, este sera el swf escogido en el parametro del plugin. Ahora buscamos la clase PodcastPlayer [class PodcastPlayer] y en las variables privadas añadimos:

    private $reproductor = null;
    

    Ahora modificamos el constructor de:

    function __construct(&$podcastParams, $enclose, $title)
    

    A

    function __construct(&$podcastParams, $enclose, $title, $params)
    

    Hemos agregado el nuevo parametros $params y agregamos:

    $this->reproductor = $params;
    

    Con esto ya tenemos guardado en la variable $reproductor de la clase el nombre del swf del reproductor flash. Ahora en la funcion Player modificamos la siguiente linea:

    $playerURL = JURI::base() . 'plugins/content/podcast/xspf_player_slim.swf';
    

    por:

    $playerURL = JURI::base() . 'plugins/content/podcast/' . $this->reproductor;
    switch($this->reproductor){
    case "xspf_player_slim.swf":{
    $song = "song_url";
    break;
    }
    case "player_mp3.swf":{
    $song = "mp3";
    break;
    }
    case "dewplayer.swf":{
    $song = "mp3";
    break;
    }
    case "player.swf":{
    $song = "soundFile";
    break;
    }
    }
    

    Con eso terminamos las modificaciones en el codigo (El switch lo usamos por que cada reproductor tiene su forma de cargar el archivo mp3); Ahora pasamos a comprimir como zip la carpeta del plugin lo instalamos en Joomla, subimos un mp3 por medio del componente y luego creamos un articulo, para usar el plugin debemos seguir la siguiente sintaxis:

    {enclose name.mp3 }

    donde name es el nombre del archivo creado con el componente.

    Descargar el plugin desde la página de core

     

    3 responses to “Modificando el componente Podcast Suite de Joomla” Icono RSS


    ¿Y tú que opinas?