/**
* @ngdoc service
* @name VideoStreamService
* @module s4c.services.VideoStreamService
*
* @description Componente para acesso a api do backend e/ou comunicação entre controllers
*
*
*/
(function () {
'use strict';
angular.module('s4c.services').factory(
'VideoStreamService', VideoStreamService);
VideoStreamService.$inject = [];
/**
* @method VideoStreamService
*/
function VideoStreamService() {
var service = {
open: open,
close: close,
closeAll: closeAll,
setPlayerOptions: setPlayerOptions
};
var players = [];
var playerOptions = {
};
/**
* @method setPlayerOptions
* @param {*} opts
*/
function setPlayerOptions(opts) {
playerOptions = opts;
}
/**
* @method open
* @param {*} divId
* @param {*} url
*/
function open(divId, url) {
document.getElementById(divId).src = url;
players[divId] = window.Streamedian.player(divId, playerOptions);
}
/**
* @method close
* @param {*} divId
*/
function close(divId) {
if (players[divId]) {
players[divId].destroy();
players[divId] = null;
}
}
/**
* @method closeAll
*/
function closeAll() {
for(var index in players){
if (!players[index]) {
continue;
}
players[index].destroy();
players[index] = null;
}
players = [];
}
return service;
}
}());