////////////////////////////////////////////////////////
/////////// Funções Gerenciamento Streaming ////////////
////////////////////////////////////////////////////////

// Função para executar a ação de ligar todos os streamings/autodjs da revenda
function ligar_streamings_autodjs_acao( porta, tipo ) {
	  
  var http = new Ajax();
  http.open("GET", "/admin/funcoes-ajax/ligar_streamings_autodjs/"+porta+"/"+tipo+"" , true);
  http.send(null);
  delete http;
}

// Função para ligar todos os streamings/autodjs da revenda
function ligar_streamings() {
	
  var lista_streamings = document.getElementById("lista_streamings").value;
  
  if(lista_streamings) {
	  
  document.getElementById("local-status-acoes").innerHTML = '<div class="alert alert-info text-center" role="alert"><img src="/img/ajax-loader.gif" /></div>';
  $("#local-status-acoes").show();
  
  array_lista_streamings = lista_streamings.split("|");
	
  for(var cont = 0; cont < array_lista_streamings.length; cont++) {
	  
	  var porta = array_lista_streamings[cont];
	  ligar_streamings_autodjs_acao( porta, 'streaming' );
  }
  
  setTimeout(function() { 
    window.location.reload(); 
    }, 30000);
  }
}

// Função para ligar todos os streamings/autodjs da revenda
function ligar_autodjs() {
	
  var lista_autodjs = document.getElementById("lista_autodjs").value;
  
  if(lista_autodjs) {
	  
  document.getElementById("local-status-acoes").innerHTML = '<div class="alert alert-info text-center" role="alert"><img src="/img/ajax-loader.gif" /></div>';
  $("#local-status-acoes").show();
  
  array_lista_autodjs = lista_autodjs.split("|");
	
  for(var cont = 0; cont < array_lista_autodjs.length; cont++) {
	  
	  var porta = array_lista_autodjs[cont];
	  ligar_streamings_autodjs_acao( porta, 'autodj' );
  }
  
  setTimeout(function() { 
    window.location.reload(); 
    }, 30000);
  }
}

// Função para bloquear o streaming
function bloquear_streaming( porta ) {

  document.getElementById("local-status-acoes").innerHTML = '<div class="alert alert-info text-center" role="alert"><img src="/img/ajax-loader.gif" /></div>';
  $("#local-status-acoes").show();
  
  var http = new Ajax();
  http.open("GET", "/admin/funcoes-ajax/bloquear_streaming/"+porta , true);
  http.onreadystatechange = function() {
	
  if(http.readyState == 4) {
  
	resultado = http.responseText;
	
	document.getElementById("local-status-acoes").innerHTML = resultado;
	$('#' + $.escapeSelector(porta)).addClass("table-danger");
	$("#local-status-acoes").delay(15000).fadeOut(300);
	
  }
  
  }
  http.send(null);
  delete http;
}

// Função para desbloquear o streaming
function desbloquear_streaming( porta ) {

  document.getElementById("local-status-acoes").innerHTML = '<div class="alert alert-info text-center" role="alert"><img src="/img/ajax-loader.gif" /></div>';
  $("#local-status-acoes").show();
  
  var http = new Ajax();
  http.open("GET", "/admin/funcoes-ajax/desbloquear_streaming/"+porta , true);
  http.onreadystatechange = function() {
	
  if(http.readyState == 4) {
  
	resultado = http.responseText;
	
	document.getElementById("local-status-acoes").innerHTML = resultado;
	$('#' + $.escapeSelector(porta)).removeClass("table-danger");
	$("#local-status-acoes").delay(15000).fadeOut(300);	
	
  }
  
  }
  http.send(null);
  delete http;
}

// Função para remover o streaming
function remover_streaming( porta ) {

  if(window.confirm("Pt-BR: Deseja realmente remover?\nEn-US: Confirme exclusion?\nES: Deseas realmente borrar?")) {

  document.getElementById("local-status-acoes").innerHTML = '<div class="alert alert-info text-center" role="alert"><img src="/img/ajax-loader.gif" /></div>';
  $("#local-status-acoes").show();

  var http = new Ajax();
  http.open("GET", "/admin/funcoes-ajax/remover_streaming/"+porta , true);
  http.onreadystatechange = function() {
	
  if(http.readyState == 4) {
  
	resultado = http.responseText;
	
	document.getElementById("local-status-acoes").innerHTML = resultado;	
	$('#' + $.escapeSelector(porta)).remove();
	$("#local-status-acoes").delay(15000).fadeOut(300);
	
  }
  
  }
  http.send(null);
  delete http;
}
}

// Função para alterar senha de um streaming
function alterar_senha_streaming( porta ) {
  
  var nova_senha = prompt('Informe a nova senha:');
	
  if(nova_senha != "" && nova_senha != null) {

  document.getElementById("local-status-acoes").innerHTML = '<div class="alert alert-info text-center" role="alert"><img src="/img/ajax-loader.gif" /></div>';
  $("#local-status-acoes").show();
  
  var http = new Ajax();
  http.open("GET", "/admin/funcoes-ajax/alterar_senha_streaming/"+porta+"/"+nova_senha , true);
  http.onreadystatechange = function() {
	
  if(http.readyState == 4) {
  
	resultado = http.responseText;
	
	document.getElementById("local-status-acoes").innerHTML = resultado;
	$("#local-status-acoes").delay(15000).fadeOut(300);	
	
  }
  
  }
  http.send(null);
  delete http;
  }
}

// Função para carregar o status de uma lista de streamings
function status_streaming( porta ) {
  
  if(porta) {
	  
  var http = new Ajax();
  http.open("GET", "/admin/funcoes-ajax/status_streaming/"+porta , true);
  http.onreadystatechange = function() {
	
  if(http.readyState == 4) {
	  
	resultado = http.responseText;
  
	document.getElementById("status_"+porta).innerHTML = resultado;
	
  }
  
  }
  http.send(null);
  delete http;
  }
}

////////////////////////////////////////////////////////
//////////// Funções Gerenciamento Revenda /////////////
////////////////////////////////////////////////////////

// Função para bloquear revenda
function bloquear_revenda( codigo ) {

  document.getElementById("local-status-acoes").innerHTML = '<div class="alert alert-info text-center" role="alert"><img src="/img/ajax-loader.gif" /></div>';
  $("#local-status-acoes").show();
  
  var http = new Ajax();
  http.open("GET", "/admin/funcoes-ajax/bloquear_revenda/"+codigo , true);
  http.onreadystatechange = function() {
	
  if(http.readyState == 4) {
  
	resultado = http.responseText;
	
	document.getElementById("local-status-acoes").innerHTML = resultado;
	$('#' + $.escapeSelector(codigo)).addClass("table-danger");
	$("#local-status-acoes").delay(15000).fadeOut(300);	
	
  }
  
  }
  http.send(null);
  delete http;
}

// Função para desbloquear revenda
function desbloquear_revenda( codigo ) {

  document.getElementById("local-status-acoes").innerHTML = '<div class="alert alert-info text-center" role="alert"><img src="/img/ajax-loader.gif" /></div>';
  $("#local-status-acoes").show();
  
  var http = new Ajax();
  http.open("GET", "/admin/funcoes-ajax/desbloquear_revenda/"+codigo , true);
  http.onreadystatechange = function() {
	
  if(http.readyState == 4) {
  
	resultado = http.responseText;
	
	document.getElementById("local-status-acoes").innerHTML = resultado;
	$('#' + $.escapeSelector(codigo)).removeClass("table-danger");
	$("#local-status-acoes").delay(15000).fadeOut(300);	
	
  }
  
  }
  http.send(null);
  delete http;
}

// Função para remover revenda
function remover_revenda( codigo ) {

  if(window.confirm("Pt-BR: Continua?\nEn-US: Continue?\nES: Continuar?")) {

  document.getElementById("local-status-acoes").innerHTML = '<div class="alert alert-info text-center" role="alert"><img src="/img/ajax-loader.gif" /></div>';
  $("#local-status-acoes").show();
  
  var http = new Ajax();
  http.open("GET", "/admin/funcoes-ajax/remover_revenda/"+codigo , true);
  http.onreadystatechange = function() {
	
  if(http.readyState == 4) {
  
	resultado = http.responseText;
	
	document.getElementById("local-status-acoes").innerHTML = resultado;	
	$('#' + $.escapeSelector(codigo)).remove();
	$("#local-status-acoes").delay(15000).fadeOut(300);
	
  }
  
  }
  http.send(null);
  delete http;
  }
}

// Função para alterar senha de uma revenda
function alterar_senha_revenda( codigo ) {
  
  var nova_senha = prompt('Informe a nova senha:');
	
  if(nova_senha != "" && nova_senha != null) {

  document.getElementById("local-status-acoes").innerHTML = '<div class="alert alert-info text-center" role="alert"><img src="/img/ajax-loader.gif" /></div>';
  $("#local-status-acoes").show();
  
  var http = new Ajax();
  http.open("GET", "/admin/funcoes-ajax/alterar_senha_revenda/"+codigo+"/"+nova_senha , true);
  http.onreadystatechange = function() {
	
  if(http.readyState == 4) {
  
	resultado = http.responseText;
	
	document.getElementById("local-status-acoes").innerHTML = resultado;
	$("#local-status-acoes").delay(15000).fadeOut(300);	
	
  }
  
  }
  http.send(null);
  delete http;
  }
}

////////////////////////////////////////////////////////
/////////// Funções Gerenciamento Servidor /////////////
////////////////////////////////////////////////////////

// Função para ligar os streamings do servidor
function ligar_streamings_autodjs_servidor( servidor, tipo ) {

  document.getElementById("local-status-acoes").innerHTML = '<div class="alert alert-info text-center" role="alert"><img src="/img/ajax-loader.gif" /></div>';
  $("#local-status-acoes").show();
  
  var http = new Ajax();
  http.open("GET", "/admin/funcoes-ajax/ligar_streamings_autodjs_servidor/"+servidor+"/"+tipo+"" , true);
  http.onreadystatechange = function() {
	
  if(http.readyState == 4) {
  
	resultado = http.responseText;
	
	document.getElementById("local-status-acoes").innerHTML = resultado;
	$("#local-status-acoes").delay(15000).fadeOut(300);
	
  }
  
  }
  http.send(null);
  delete http;
}

// Função para sincronizar streaming no servidor AAC+
function sincronizar_aacplus_servidor( codigo ) {

  document.getElementById("local-status-acoes").innerHTML = '<div class="alert alert-info text-center" role="alert"><img src="/img/ajax-loader.gif" /></div>';
  $("#local-status-acoes").show();
  
  var http = new Ajax();
  http.open("GET", "/admin/funcoes-ajax/sincronizar_aacplus/"+codigo , true);
  http.onreadystatechange = function() {
	
  if(http.readyState == 4) {
  
	resultado = http.responseText;

	document.getElementById("local-status-acoes").innerHTML = resultado;
	$("#local-status-acoes").delay(15000).fadeOut(300);	
	
  }
  
  }
  http.send(null);
  delete http;
}

// Função para sincronizar as playlists do streaming no servidor
function sincronizar_playlists_servidor( codigo ) {

  document.getElementById("local-status-acoes").innerHTML = '<div class="alert alert-info text-center" role="alert"><img src="/img/ajax-loader.gif" /></div>';
  $("#local-status-acoes").show();
  
  var http = new Ajax();
  http.open("GET", "/admin/funcoes-ajax/sincronizar_playlists/"+codigo , true);
  http.onreadystatechange = function() {
	
  if(http.readyState == 4) {
	  
	resultado = http.responseText;
  
	document.getElementById("local-status-acoes").innerHTML = resultado;
	$("#local-status-acoes").delay(15000).fadeOut(300);	
	
  }
  
  }
  http.send(null);
  delete http;
}


// Função para remover uma dica rápida
function remover_pp( codigo ) {

  if(window.confirm("Pt-BR: Continua?\nEn-US: Continue?\nES: Continuar?")) {

  document.getElementById("local-status-acoes").innerHTML = '<div class="alert alert-info text-center" role="alert"><img src="/img/ajax-loader.gif" /></div>';
  $("#local-status-acoes").show();
  
  var http = new Ajax();
  http.open("GET", "/admin/funcoes-ajax/remover_pp/"+codigo , true);
  http.onreadystatechange = function() {
	
  if(http.readyState == 4) {
  
	resultado = http.responseText;
	
	document.getElementById("local-status-acoes").innerHTML = resultado;	
	$('#' + $.escapeSelector(codigo)).remove();
	$("#local-status-acoes").delay(15000).fadeOut(300);
	
  }
  
  }
  http.send(null);
  delete http;
  }
}

// Função para ativar/desativar manutenção em um servidor
function ativar_desativar_manutencao( codigo ) {

  document.getElementById("local-status-acoes").innerHTML = '<div class="alert alert-info text-center" role="alert"><img src="/img/ajax-loader.gif" /></div>';
  $("#local-status-acoes").show();
  
  var http = new Ajax();
  http.open("GET", "/admin/funcoes-ajax/ativar_desativar_manutencao/"+codigo , true);
  http.onreadystatechange = function() {
	
  if(http.readyState == 4) {
  
	resultado = http.responseText;
	
	document.getElementById("local-status-acoes").innerHTML = resultado;
	$("#local-status-acoes").delay(15000).fadeOut(300);	
	
  }
  
  }
  http.send(null);
  delete http;
}

// Função para mudar o status de exibição de um aviso
function alterar_status_aviso( codigo ) {

  document.getElementById("local-status-acoes").innerHTML = '<div class="alert alert-info text-center" role="alert"><img src="/img/ajax-loader.gif" /></div>';
  $("#local-status-acoes").show();
  
  var http = new Ajax();
  http.open("GET", "/admin/funcoes-ajax/alterar_status_aviso/"+codigo , true);
  http.onreadystatechange = function() {
	
  if(http.readyState == 4) {
  
	resultado = http.responseText;
	
	document.getElementById("local-status-acoes").innerHTML = resultado;
	$("#local-status-acoes").delay(15000).fadeOut(300);
	
  }
  
  }
  http.send(null);
  delete http;
}

// Função para remover um aviso
function remover_aviso( codigo ) {

  if(window.confirm("Pt-BR: Continua?\nEn-US: Continue?\nES: Continuar?")) {

  document.getElementById("local-status-acoes").innerHTML = '<div class="alert alert-info text-center" role="alert"><img src="/img/ajax-loader.gif" /></div>';
  $("#local-status-acoes").show();
  
  var http = new Ajax();
  http.open("GET", "/admin/funcoes-ajax/remover_aviso/"+codigo , true);
  http.onreadystatechange = function() {
	
  if(http.readyState == 4) {
  
	resultado = http.responseText;
	
	document.getElementById("local-status-acoes").innerHTML = resultado;	
	$('#' + $.escapeSelector(codigo)).remove();
	$("#local-status-acoes").delay(15000).fadeOut(300);
	
  }
  
  }
  http.send(null);
  delete http;
}
}

// Função para remover um tutorial
function remover_tutorial( codigo ) {

  if(window.confirm("Pt-BR: Continua?\nEn-US: Continue?\nES: Continuar?")) {

  document.getElementById("local-status-acoes").innerHTML = '<div class="alert alert-info text-center" role="alert"><img src="/img/ajax-loader.gif" /></div>';
  $("#local-status-acoes").show();
  
  var http = new Ajax();
  http.open("GET", "/admin/funcoes-ajax/remover_tutorial/"+codigo , true);
  http.onreadystatechange = function() {
	
  if(http.readyState == 4) {
  
	resultado = http.responseText;
	
	document.getElementById("local-status-acoes").innerHTML = resultado;	
	$('#' + $.escapeSelector(codigo)).remove();
	$("#local-status-acoes").delay(15000).fadeOut(300);
	
  }
  
  }
  http.send(null);
  delete http;
  }
}

// Função para remover uma requisição de app android
function remover_app_android( codigo ) {

  if(window.confirm("Pt-BR: Continua?\nEn-US: Continue?\nES: Continuar?")) {

  document.getElementById("local-status-acoes").innerHTML = '<div class="alert alert-info text-center" role="alert"><img src="/img/ajax-loader.gif" /></div>';
  $("#local-status-acoes").show();
  
  var http = new Ajax();
  http.open("GET", "/admin/funcoes-ajax/remover_app_android/"+codigo , true);
  http.onreadystatechange = function() {
	
  if(http.readyState == 4) {
  
	resultado = http.responseText;
	
	document.getElementById("local-status-acoes").innerHTML = resultado;	
	$('#' + $.escapeSelector(codigo)).remove();
	$("#local-status-acoes").delay(15000).fadeOut(300);
	
  }
  
  }
  http.send(null);
  delete http;
  }
}

// Função para limpar logs
function manutencao_limpar_logs( tipo ) {

  if(window.confirm("Pt-BR: Continua?\nEn-US: Continue?\nES: Continuar?")) {

  document.getElementById("local-status-acoes").innerHTML = '<div class="alert alert-info text-center" role="alert"><img src="/img/ajax-loader.gif" /></div>';
  $("#local-status-acoes").show();
  
  var http = new Ajax();
  http.open("GET", "/admin/funcoes-ajax/manutencao_limpar_logs/"+tipo , true);
  http.onreadystatechange = function() {
	
  if(http.readyState == 4) {
  
	resultado = http.responseText;
	
	document.getElementById("local-status-acoes").innerHTML = resultado;
	$("#local-status-acoes").delay(15000).fadeOut(300);
	
  }
  
  }
  http.send(null);
  delete http;
  }
}

// Função para otimizar db
function otimizar_db( tipo ) {

  if(window.confirm("Pt-BR: Continua?\nEn-US: Continue?\nES: Continuar?")) {

  document.getElementById("local-status-acoes").innerHTML = '<div class="alert alert-info text-center" role="alert"><img src="/img/ajax-loader.gif" /></div>';
  $("#local-status-acoes").show();
  
  var http = new Ajax();
  http.open("GET", "/admin/funcoes-ajax/otimizar_db/"+tipo , true);
  http.onreadystatechange = function() {
	
  if(http.readyState == 4) {
  
	resultado = http.responseText;
	
	document.getElementById("local-status-acoes").innerHTML = resultado;
	$("#local-status-acoes").delay(15000).fadeOut(300);
	
  }
  
  }
  http.send(null);
  delete http;
  }
}

// Função para limpar estatisticas
function limpar_estatisticas( periodo ) {

  if(window.confirm("Pt-BR: Continua?\nEn-US: Continue?\nES: Continuar?")) {

  document.getElementById("local-status-acoes").innerHTML = '<div class="alert alert-info text-center" role="alert"><img src="/img/ajax-loader.gif" /></div>';
  $("#local-status-acoes").show();
  
  var http = new Ajax();
  http.open("GET", "/admin/funcoes-ajax/limpar_estatisticas/"+periodo , true);
  http.onreadystatechange = function() {
	
  if(http.readyState == 4) {
  
	resultado = http.responseText;
	
	document.getElementById("local-status-acoes").innerHTML = resultado;
	$("#local-status-acoes").delay(15000).fadeOut(300);
	
  }
  
  }
  http.send(null);
  delete http;
  }
}

// Função para admin/revenda acessar painel de streaming
function acessar_painel_streaming( porta ) {
	
  document.getElementById("local-status-acoes").innerHTML = '<div class="alert alert-info text-center" role="alert"><img src="/img/ajax-loader.gif" /></div>';
  $("#local-status-acoes").show();
  
  var http = new Ajax();
  http.open("GET", "/admin/funcoes-ajax/acessar_painel_streaming/"+porta , true);
  http.onreadystatechange = function() {
	
  if(http.readyState == 4) {
  
	resultado = http.responseText;
	
	window.location = "/login-autentica-admin/"+resultado+"";
	
  }
  
  }
  http.send(null);
  delete http;
}

// Rotina AJAX
function Ajax() {
var req;

try {
 req = new ActiveXObject("Microsoft.XMLHTTP");
} catch(e) {
 try {
	req = new ActiveXObject("Msxml2.XMLHTTP");
 } catch(ex) {
	try {
	 req = new XMLHttpRequest();
	} catch(exc) {
	 alert("Esse browser não tem recursos para uso do Ajax");
	 req = null;
	}
 }
}

return req;
}