Add files via upload

This commit is contained in:
Luis Gutierrez Lopez 2022-01-13 14:50:06 +01:00 committed by GitHub
parent 807849d847
commit 7dc3902f72
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
7 changed files with 155 additions and 0 deletions

7
Leeme.txt Normal file
View file

@ -0,0 +1,7 @@
LEEME.TXT
1) La lista de urls de stramings de radio se puede obtener en: "http://fmstream.org/index.php?c=E&o=top"
2) Hay que incluir en el fichero radio.js en formato Array las emisoras que deseemos
(posteriormente se incluirá como fichero externo para facilitar la carga)
3) El directorio logos es donde se deja el logotipo de cada emisora.
Si no hay logotipo indicar en el array como logo la imagen "vacio.jpg"

BIN
logos/kissfm.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 KiB

BIN
logos/logo.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.7 KiB

BIN
logos/los40principales.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 6 KiB

BIN
logos/vacio.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 KiB

44
radio.html Normal file
View file

@ -0,0 +1,44 @@
<!DOCTYPE html>
<html lang="es">
<head>
<title>Emisoras de Radio</title>
<meta charset="utf-8">
<link rel="icon" href="./logos/logo.png">
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.4.1/css/bootstrap.min.css">
</head>
<body>
<div class="container">
<div class="row">
<div class="col-xs-8">
<p>
<h3><span class="glyphicon glyphicon-music"> </span> <span id="NombreEmisora">EMISORA</span></h3>
<img id="LogoEmisora" src="./logos/vacio.jpg" width="300px" height="168px"><br>
<audio id="UrlEmisora" autoplay controls src="">Audio no disponible</audio>
<br>
<!-- Controles de Emisora -->
<h2>
<a href="#" onclick="Retroceder()">
<span class="glyphicon glyphicon-backward"></span>
</a>
<a id="BotonPlay" href="#" onclick="AlternarPlay()">
<span class="glyphicon glyphicon-play-circle"></span>
</a>
<a id="BotonPause" href="#" hidden onclick="AlternarPlay()">
<span class="glyphicon glyphicon-pause"></span>
</a>
<a href="#" onclick="Avanzar()">
<span class="glyphicon glyphicon-forward"></span>
</a>
</h2>
</p>
</div>
<div class="col-xs-4">
<p id="ListaEmisoras">
... lista de emisoras ...
</p>
</div>
</div>
</div>
<script src="./radio.js"></script>
</body>
</html>

104
radio.js Normal file
View file

@ -0,0 +1,104 @@
/*
-----------------------------------------------
Programa: radio.js
Autor: Luis G.L. (luisgulo@gmail.com)
Version: 1.0
MAIN - PROGRAMA PRINCIPAL
Se inicia automaticamente en la carga del html
-----------------------------------------------
*/
// Variables globales
let PosEmisora = 0;
let Sonando = false;
let r="./logos/"; // Ruta de logotipos
// Array para gestion Emisoras
const eNombre = [];
const eUrl = [];
const eImg = [];
// LLamada a funciones para inicializar la Radio
CargarArray();
EmisoraActiva();
// ----- Fin del programa principal -----------------------------------------
// ----- FUNCIONES ----------------------------------------------------------
function Avanzar() {
// Incrementamos en uno la posicion de la emisora
// Revisamos 'desbordamiento' de la posicion y recargamos la emisora activa
PosEmisora++;
if (PosEmisora >= eNombre.length ) {
PosEmisora = 0;
};
EmisoraActiva();
};
function Retroceder() {
// Retrocedemos en uno la posicion de la emisora
// Revisamos 'desbordamiento' de la posicion y recargamos la emisora activa
PosEmisora = PosEmisora - 1;
if (PosEmisora < 0 ) {
PosEmisora = eNombre.length - 1;
};
EmisoraActiva();
};
function AlternarPlay() {
// Ocultar/Mostrar los botones de Play-Pause
// Ademas debemos para o iniciar el sonido
if (Sonando) {
Sonando=false;
document.getElementById("BotonPlay").hidden=false;
document.getElementById("BotonPause").hidden=true;
document.getElementById("UrlEmisora").pause();
}
else {
Sonando=true;
document.getElementById("BotonPlay").hidden=true;
document.getElementById("BotonPause").hidden=false;
document.getElementById("UrlEmisora").play();
};
};
function CargarArray() {
// Cargar en memoria la lista de Emisoras deseadas
eNombre[0]="Kiss FM";
eUrl[0]="http://kissfm.kissfmradio.cires21.com/kissfm.mp3";
eImg[0]="kissfm.jpg";
eNombre[1]="Los 40 Principales";
eUrl[1]="http://23543.live.streamtheworld.com/LOS40.mp3";
eImg[1]="los40principales.jpg";
};
function ImprimirEmisoras() {
// Imprimir en el html en la columna 2 la lista de emisoras
let texto="";
l = document.getElementById("ListaEmisoras");
l.innerHTML=texto;
// bucle recorrer array emisoras
for (let i=0; i < eNombre.length; i++) {
// La emisora activa se muestra en color diferente (azul) y con icono de altavoz
// Hacemos que emisoras no activas sean clicables
if (i == PosEmisora) {
l.innerHTML += '<span id="0" style="color:blue"> ' + eNombre[i] + ' </span>' + ' &nbsp; &nbsp; <span id="1" style="color:blue" class="glyphicon glyphicon-volume-up"></span><br>';
} else {
l.innerHTML += '<span id="0" style="color:black" onclick="CambiarEmisora(' + i + ')"> ' + eNombre[i] + ' </span><br>';
};
};
};
function CambiarEmisora(nuevaEmisora) {
PosEmisora = nuevaEmisora;
EmisoraActiva();
};
function EmisoraActiva() {
// Actualizar en el html la emisora activa
document.getElementById("NombreEmisora").innerHTML=eNombre[PosEmisora];
document.getElementById("UrlEmisora").src=eUrl[PosEmisora];
document.getElementById("LogoEmisora").src= r + eImg[PosEmisora];
ImprimirEmisoras();
};