<?php
require_once("admin/inc/protecao-final.php");

$total_avisos_ativos = mysqli_num_rows(mysqli_query($conexao,"SELECT * FROM avisos WHERE area = 'streaming'"));
$checar_status_aviso = mysqli_num_rows(mysqli_query($conexao,"SELECT * FROM avisos_desativados WHERE area = 'streaming' AND login = '".$dados_stm["login"]."'"));
$total_avisos_exibir = ($total_avisos_ativos > $checar_status_aviso) ? $total_avisos_ativos-$checar_status_aviso : 0;

if(isset($_FILES["logo"])) {

// Faz upload da logo
// Conexão SSH
$ssh = new SSH();
$ssh->conectar($dados_servidor["ip"],$dados_servidor["porta_ssh"]);
$ssh->autenticar("root",code_decode($dados_servidor["senha"],"D"));

$ssh->executar("mkdir -v /home/streaming/".$dados_stm["login"]."");
$ssh->enviar_arquivo($_FILES["logo"]["tmp_name"],"/home/streaming/".$dados_stm["login"]."/logo-watermark.png",0600);

$qualidade_1080p = (strpos($dados_stm["transcoder_qualidades"], '1080p') !== false) ? "true" : "false";
$qualidade_720p = (strpos($dados_stm["transcoder_qualidades"], '720p') !== false) ? "true" : "false";
$qualidade_360p = (strpos($dados_stm["transcoder_qualidades"], '360p') !== false) ? "true" : "false";
$qualidade_240p = (strpos($dados_stm["transcoder_qualidades"], '240p') !== false) ? "true" : "false";
$qualidade_160p = (strpos($dados_stm["transcoder_qualidades"], '160p') !== false) ? "true" : "false";

$conteudo_transcoder_wowza = '<?xml version="1.0" encoding="UTF-8" ?>
<Root version="1">
  <Transcode>
    <Description>Transcoder para '.$dados_stm["login"].'</Description>
    <Encodes>

      <Encode>
        <Enable>'.$qualidade_1080p.'</Enable>
        <Name>1080p</Name>
        <StreamName>mp4:${SourceStreamName}_1080p</StreamName>
        <Video>
          <Codec>H.264</Codec>
          <Implementation>default</Implementation>
          <GPUID>-1</GPUID>
          <FrameSize>
            <FitMode>fit-height</FitMode>
            <Width>1920</Width>
            <Height>1080</Height>
          </FrameSize>
          <Profile>main</Profile>
          <Bitrate>1952000</Bitrate>
          <KeyFrameInterval>
            <FollowSource>false</FollowSource>
            <Interval>60</Interval>
          </KeyFrameInterval>
          <Overlays>
            <Overlay>
              <Enable>true</Enable>
              <Name>Logo</Name>
              <Index>0</Index>
              <ImagePath>/home/streaming/'.$dados_stm["login"].'/logo-watermark.png</ImagePath>
              <CheckForUpdates>true</CheckForUpdates>
              <Opacity>100</Opacity>
              <Location>
                <X>10</X>
                <Y>10</Y>
                <Width>${ImageWidth}</Width>
                <Height>${ImageHeight}</Height>
                <Align>'.$_POST["posicao"].'</Align>
              </Location>
            </Overlay>
          </Overlays>
          <Parameters>
          </Parameters>
        </Video>
        <Audio>
          <Codec>PassThru</Codec>
          <Bitrate>96000</Bitrate>
          <Parameters>
          </Parameters>
        </Audio>
        <Properties>
        </Properties>
      </Encode>

      <Encode>
        <Enable>'.$qualidade_720p.'</Enable>
        <Name>720p</Name>
        <StreamName>mp4:${SourceStreamName}_720p</StreamName>
        <Video>
          <Codec>H.264</Codec>
          <Implementation>default</Implementation>
          <GPUID>-1</GPUID>
          <FrameSize>
            <FitMode>fit-height</FitMode>
            <Width>1280</Width>
            <Height>720</Height>
          </FrameSize>
          <Profile>main</Profile>
          <Bitrate>1300000</Bitrate>
          <KeyFrameInterval>
            <FollowSource>false</FollowSource>
            <Interval>60</Interval>
          </KeyFrameInterval>
          <Overlays>
            <Overlay>
              <Enable>true</Enable>
              <Name>Logo</Name>
              <Index>0</Index>
              <ImagePath>/home/streaming/'.$dados_stm["login"].'/logo-watermark.png</ImagePath>
              <CheckForUpdates>true</CheckForUpdates>
              <Opacity>100</Opacity>
              <Location>
                <X>10</X>
                <Y>10</Y>
                <Width>${ImageWidth}</Width>
                <Height>${ImageHeight}</Height>
                <Align>'.$_POST["posicao"].'</Align>
              </Location>
            </Overlay>
          </Overlays>
          <Parameters>
          </Parameters>
        </Video>
        <Audio>
          <Codec>PassThru</Codec>
          <Bitrate>96000</Bitrate>
          <Parameters>
          </Parameters>
        </Audio>
        <Properties>
        </Properties>
      </Encode>

      <Encode>
        <Enable>true</Enable>
        <Name>'.$qualidade_360p.'</Name>
        <StreamName>mp4:${SourceStreamName}_360p</StreamName>
        <Video>
          <Codec>H.264</Codec>
          <Implementation>default</Implementation>
          <GPUID>-1</GPUID>
          <FrameSize>
            <FitMode>fit-height</FitMode>
            <Width>640</Width>
            <Height>360</Height>
          </FrameSize>
          <Profile>main</Profile>
          <Bitrate>928000</Bitrate>
          <KeyFrameInterval>
            <FollowSource>false</FollowSource>
            <Interval>60</Interval>
          </KeyFrameInterval>
          <Overlays>
            <Overlay>
              <Enable>true</Enable>
              <Name>Logo</Name>
              <Index>0</Index>
              <ImagePath>/home/streaming/'.$dados_stm["login"].'/logo-watermark.png</ImagePath>
              <CheckForUpdates>true</CheckForUpdates>
              <Opacity>100</Opacity>
              <Location>
                <X>10</X>
                <Y>10</Y>
                <Width>${ImageWidth}</Width>
                <Height>${ImageHeight}</Height>
                <Align>'.$_POST["posicao"].'</Align>
              </Location>
            </Overlay>
          </Overlays>
          <Parameters>
          </Parameters>
        </Video>
        <Audio>
          <Codec>PassThru</Codec>
          <Bitrate>96000</Bitrate>
          <Parameters>
          </Parameters>
        </Audio>
        <Properties>
        </Properties>
      </Encode>

      <Encode>
        <Enable>true</Enable>
        <Name>'.$qualidade_240p.'</Name>
        <StreamName>mp4:${SourceStreamName}_240p</StreamName>
        <Video>
          <Codec>H.264</Codec>
          <Implementation>default</Implementation>
          <GPUID>-1</GPUID>
          <FrameSize>
            <FitMode>fit-height</FitMode>
            <Width>360</Width>
            <Height>240</Height>
          </FrameSize>
          <Profile>baseline</Profile>
          <Bitrate>350000</Bitrate>
          <KeyFrameInterval>
            <FollowSource>false</FollowSource>
            <Interval>60</Interval>
          </KeyFrameInterval>
          <Overlays>
            <Overlay>
              <Enable>true</Enable>
              <Name>Logo</Name>
              <Index>0</Index>
              <ImagePath>/home/streaming/'.$dados_stm["login"].'/logo-watermark.png</ImagePath>
              <CheckForUpdates>true</CheckForUpdates>
              <Opacity>100</Opacity>
              <Location>
                <X>10</X>
                <Y>10</Y>
                <Width>${ImageWidth}</Width>
                <Height>${ImageHeight}</Height>
                <Align>'.$_POST["posicao"].'</Align>
              </Location>
            </Overlay>
          </Overlays>
          <Parameters>
          </Parameters>
        </Video>
        <Audio>
          <Codec>PassThru</Codec>
          <Bitrate>96000</Bitrate>
          <Parameters>
          </Parameters>
        </Audio>
        <Properties>
        </Properties>
      </Encode>

      <Encode>
        <Enable>true</Enable>
        <Name>'.$qualidade_160p.'</Name>
        <StreamName>mp4:${SourceStreamName}_160p</StreamName>
        <Video>
          <Codec>H.264</Codec>
          <Implementation>default</Implementation>
          <GPUID>-1</GPUID>
          <FrameSize>
            <FitMode>fit-height</FitMode>
            <Width>284</Width>
            <Height>160</Height>
          </FrameSize>
          <Profile>baseline</Profile>
          <Bitrate>200000</Bitrate>
          <KeyFrameInterval>
            <FollowSource>false</FollowSource>
            <Interval>60</Interval>
          </KeyFrameInterval>
          <Overlays>
            <Overlay>
              <Enable>true</Enable>
              <Name>Logo</Name>
              <Index>0</Index>
              <ImagePath>/home/streaming/'.$dados_stm["login"].'/logo-watermark.png</ImagePath>
              <CheckForUpdates>true</CheckForUpdates>
              <Opacity>100</Opacity>
              <Location>
                <X>10</X>
                <Y>10</Y>
                <Width>${ImageWidth}</Width>
                <Height>${ImageHeight}</Height>
                <Align>'.$_POST["posicao"].'</Align>
              </Location>
            </Overlay>
          </Overlays>
          <Parameters>
          </Parameters>
        </Video>
        <Audio>
          <Codec>PassThru</Codec>
          <Bitrate>96000</Bitrate>
          <Parameters>
          </Parameters>
        </Audio>
        <Properties>
        </Properties>
      </Encode>
    </Encodes>
    <Properties>
    </Properties>
  </Transcode>
</Root>
';

$handle_transcoder_wowza = fopen("temp/".$dados_stm["login"]."_transcoder.xml" ,"w");
fwrite($handle_transcoder_wowza, $conteudo_transcoder_wowza);
fclose($handle_transcoder_wowza);
  
$ssh->enviar_arquivo("temp/".$dados_stm["login"]."_transcoder.xml","/usr/local/WowzaStreamingEngine/transcoder/templates/".$dados_stm["login"].".xml",0777);

@unlink("temp/".$dados_stm["login"]."_transcoder.xml");

$ssh->executar("/usr/bin/java -cp /usr/local/WowzaMediaServer JMXCommandLine -jmx service:jmx:rmi://localhost:8084/jndi/rmi://localhost:8085/jmxrmi -user admin -pass admin shutdownAppInstance ".$dados_stm["login"]."");

$ssh->executar("/usr/bin/java -cp /usr/local/WowzaMediaServer JMXCommandLine -jmx service:jmx:rmi://localhost:8084/jndi/rmi://localhost:8085/jmxrmi -user admin -pass admin startAppInstance  ".$dados_stm["login"]."");

// Cria o sessão do status das ações executadas e redireciona.
$_SESSION["status_acao"] = status_acao("Configuração alterada com sucesso.","ok");

header("Location: /configuracoes-watermark");
exit();

}

?>
<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
  <title>Streaming <?php echo $dados_stm["login"]; ?></title>
  <link rel="stylesheet" href="/inc/materialdesignicons.min.css">
  <link rel="stylesheet" href="/inc/font-awesome.min.css">
  <link rel="stylesheet" href="/inc/vendor.bundle.base.css">
  <link rel="stylesheet" href="/inc/vendor.bundle.addons.css">  
  <?php if($dados_stm["tema_dark"] == "sim") { ?>
  <link rel="stylesheet" href="/inc/theme-dark.css">
  <?php } else { ?>
  <link rel="stylesheet" href="/inc/theme.css">
  <?php } ?>
  <link rel="shortcut icon" href="/img/favicon.ico" />
  <script type="text/javascript" src="/inc/ajax-streaming.js"></script>
  <script type="text/javascript" src="/inc/javascript.js"></script>
</head>
<body>
  <div class="container-scroller">
    <nav class="navbar col-lg-12 col-12 p-0 fixed-top d-flex flex-row">
      <div class="text-center navbar-brand-wrapper d-flex align-items-center justify-content-center">
        <?php if($dados_revenda["url_logo"]) { ?>
        <a class="navbar-brand brand-logo" href="/dashboard"><img id="logo" src="<?php echo $dados_revenda["url_logo"]; ?>" title="Painel" height="60" border="0"></a>
        <?php } else { ?>
        <a class="navbar-brand brand-logo" href="/dashboard"><span>Painel Streaming</span></a>
        <?php } ?>
        <a class="navbar-brand brand-logo-mini" href="/dashboard"><i class="fa fa-video-camera text-muted"></i></a>
      </div>
      <div class="navbar-menu-wrapper d-flex align-items-center justify-content-end justify-content-lg-start">
        <button class="navbar-toggler navbar-toggler align-self-center" type="button" data-toggle="minimize">
          <span class="mdi mdi-menu text-icones"></span>
        </button>
        <ul class="navbar-nav navbar-nav-right">
          <li class="nav-item nav-profile dropdown show">
            <a class="nav-link dropdown-toggle" href="#" data-toggle="dropdown" id="profileDropdown" aria-expanded="true">
              <i class="fa fa-power-off f-18 text-icones" data-toggle="tooltip" data-placement="bottom" title="<?php echo $lang['lang_botao_titulo_ligar']; ?>/<?php echo $lang['lang_botao_titulo_desligar']; ?>"></i>
            </a>
            <div class="dropdown-menu dropdown-menu-right navbar-dropdown" aria-labelledby="profileDropdown">
              <a class="dropdown-item text-success" href="javascript:ligar_streaming('<?php echo $login_code; ?>');"> <?php echo $lang['lang_botao_titulo_ligar']; ?> Streaming</a>
              <a class="dropdown-item text-warning" href="javascript:reiniciar_streaming('<?php echo $login_code; ?>');"> <?php echo $lang['lang_botao_titulo_reiniciar']; ?> Streaming</a>
            </div>
          </li>
          <li class="nav-item dropdown">
            <a class="nav-link count-indicator dropdown-toggle d-flex align-items-center justify-content-center" id="notificationDropdown" href="#" data-toggle="dropdown" aria-expanded="false">
              <i class="mdi mdi-bell f-22 text-icones" data-toggle="tooltip" data-placement="bottom" title="<?php echo $lang['lang_info_pagina_informacoes_tab_avisos']; ?>"></i>
              <?php if($total_avisos_exibir > 0) { ?><span class="count bg-success"><?php echo $total_avisos_exibir; ?></span><?php } ?>           
            </a>
            <div class="dropdown-menu dropdown-menu-right navbar-dropdown preview-list" aria-labelledby="notificationDropdown">
              <a class="dropdown-item">
                <p class="mb-0 font-weight-normal float-left"><?php echo $lang['lang_info_pagina_informacoes_tab_avisos']; ?></p>
              </a>
              <div class="dropdown-divider"></div>
              <?php carregar_avisos_streaming($conexao,$dados_stm["porta"],$dados_servidor["codigo"]); ?>
            </div>
          </li>
          <li class="nav-item">
            <a class="nav-link" href="/sair"><i class="mdi mdi-logout f-22 text-icones" data-toggle="tooltip" data-placement="bottom" title="Sair/logout"></i></a>
          </li>
          <li>
            <button type="button" class="btn btn-info" id="status-streaming" onClick="status_streaming('<?php echo $login_code; ?>');" style="margin: 10px;min-width: 150px; min-height: 40px"><i class="fa fa-refresh"></i></button>
          </li>
        </ul>
        <button class="navbar-toggler navbar-toggler-right d-lg-none align-self-center" type="button" data-toggle="offcanvas">
          <span class="mdi mdi-menu text-icones"></span>
        </button>
      </div>
    </nav>
    <div class="container-fluid page-body-wrapper">
      <?php require_once("menu.php"); ?>
      <!-- partial -->
      <div class="main-panel">
        <form method="post" action="/configuracoes-watermark" name="transcoder" style="padding:0px; margin:0px" enctype="multipart/form-data">
        <div class="content-wrapper">
          <div id="local-status-acoes"><?php echo $_SESSION['status_acao'];unset($_SESSION['status_acao']); ?></div>
          <div class="row">            

            <div class="col-lg-12">
              <div class="card">
                  <div class="card-header">
                    <header>Transcoder Watermark</header>
                  </div>
                <div class="card-body">
                    <?php if($dados_stm["transcoder"] == 'sim' && $dados_stm["transcoder_instalado"] == 'nao') { ?>
                      <center>O transcoder n&atilde;o esta instalado, voc&ecirc; deve instalar ele antes de configurar a mmarca d'&aacute;gua em seu streaming.<br><br><button type="button" class="btn btn-info" onClick="window.location = '/configuracoes-transcoder/instalar';">Instalar</button><br><br></center>
                    <?php } ?>
                    <?php if($dados_stm["transcoder"] == 'sim' && $dados_stm["transcoder_instalado"] == 'sim') { ?>
                <table width="100%" border="0" align="center" cellpadding="0" cellspacing="0">
                      <tr>
                        <td width="160" height="35" align="left"><strong>Logo</strong></td>
                        <td align="left" class="texto_padrao_pequeno">
                          <input type="file" name="logo" class="input" style="width: 100%" /><br /><code>Somente PNG fundo transparente</code>
                        </td>
                      </tr>
                      <tr>
                        <td width="160" height="80" align="left"><strong>Posi&ccedil;&atilde;o</strong></td>
                        <td align="left">
                        <table style="background-color:#FFFFFF; border:#CCCCCC 1px solid;">
                <tbody><tr>
                                        <td width="40" align="center">
                                          <input type="radio" name="posicao" value="left,top">
                                        </td>
                                <td width="40" align="center" class="text-center">
                <input type="radio" name="posicao" value="hcenter,top">
                                        </td>
                                <td width="40" align="center" class="text-right">
                <input type="radio" name="posicao" value="right,top">
                                        </td>
                                      </tr>
                                      <tr>
                                        <td width="40" align="center">
                                          <input type="radio" name="posicao" value="left,vcenter">
                                        </td>
                                      <td width="40" align="center" class="text-center">
                              <input type="radio" name="posicao" value="hcenter,vcenter">
                                        </td>
                                      <td width="40" align="center" class="text-right">
                              <input type="radio" name="posicao" value="right,vcenter">
                                        </td>
                              </tr>
                                      <tr>
                                        <td width="40" align="center">
                                          <input type="radio" name="posicao" value="left,bottom">
                                        </td>
                                      <td width="40" align="center" class="text-center">
                              <input type="radio" name="posicao" value="hcenter,bottom">
                                        </td>
                                      <td width="40" align="center" class="text-right">
                              <input type="radio" name="posicao" value="right,bottom">
                                        </td>
                              </tr>
                                    </tbody></table>
                        </td>
                      </tr>
                      <tr>
                        <td height="50" colspan="2" align="right"><button type="button" class="btn btn-info" onClick="document.transcoder.submit();"><?php echo $lang['lang_botao_titulo_alterar_config']; ?></button></td>
                     </tr>
                    </table>
                <?php } ?>
                </div>
              </div>
            </div>

          </div>
        </div>
      </form>
      </div>
      <!-- modal -->
      <div class="modal fade" id="avisos" tabindex="-1" role="dialog" aria-hidden="true">
        <div class="modal-dialog" role="document">
            <div class="modal-content">
                <div class="modal-header">
                    <h5 class="modal-title"><?php echo $lang['lang_info_pagina_informacoes_tab_avisos']; ?></h5>
                    <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button>
                </div>
                <div class="modal-body" id="avisos-conteudo"><img src="/img/ajax-loader.gif" align="center" /></div>
            </div>
        </div>
        </div>
                
        <div class="modal fade" id="log-sistema" tabindex="-1" role="dialog" aria-hidden="true">
        <div class="modal-dialog modal-dialog-centered" role="document">
            <div class="modal-content">
                <div class="modal-body" id="log-sistema-conteudo" style="text-align:center"><img src="/img/ajax-loader.gif" /></div>
            </div>
        </div>
      </div>
    </div>
  </div>
  <script src="/inc/vendor.bundle.base.js"></script>
  <script src="/inc/vendor.bundle.addons.js"></script>
  <script src="/inc/theme.js"></script>
  <script>
  status_streaming('<?php echo $login_code; ?>');
  setInterval("status_streaming('<?php echo $login_code; ?>')",60000);
  </script>
</body>
</html>