program cinevox;
uses svplus;

const
tamprog = 2103;

var
i : integer;
script : array[1..tamprog] of string = (
'chama @autoinstala',
'dir troca $dirscript',
'chama @autonotas',
'*----------------------------*',
'*Cinevox - programa de acesso ao portal Cine Brasil para usuários de Dosvox (www.cinebrasil.net.br);',
'*Autor da versão 2.0 em Scriptvox: Fabiano Ferreira - em Janeiro de 2025;',
'*Autor da versão 1.0 em Python: Carlos Christian - em Janeiro de 2025;',
'*----------------------------*',
'',
'*--*Definição de constantes',
'seja $versao "3.0"',
'seja $pagina 1',
'',
'*Chama as rotinas',
'chama @inicia',
'chama @menuescolheconteudo',
'*----------------------------*',
'*--*Inicia o programa',
'@inicia',
'seja $titjan "Cinevox - início"',
'titulo $titjan',
'',
'tela limpa',
'fundo 0',
'cor 15',
'',
'tela @1,5',
'chama @conectaaocinebrasil',
'mensagem "som\cvabre"',
'Escreve mudo "CineVox  versão "$versao',
'escreve ""',
'mensagem "som\cvintro"',
'fala $versao',
'chama @dizquantosonline',
'retorna',
'',
'*--*Menu para escolher que conteúdo deseja assistir',
'@menuescolheconteudo',
'tela limpa',
'Escreve mudo "CINEVOX"',
'Escreve mudo ""',
'seja $titjan "Cinevox - Menu de conteúdos"',
'titulo $titjan',
'Escreve mudo  "Escolha o que você quer assistir."',
'Escreve mudo "Use setas para selecionar."',
'Escreve mudo  " Enter confirma, Esc sai do programa."',
'mensagem "som\cvesccon"',
'',
'menu cria 1 1 20 4',
'',
'menu adiciona "Filmes"',
'menu adiciona "Séries"',
'menu adiciona "Novelas"',
'menu adiciona "Últimos assistidos"',
'menu adiciona "Ler notificações do Cine Brasil"',
'existeprog "cinevox_mon.exe" x',
'se x = 0 menu adiciona "Ligar notificação automática"',
'se x = 1 menu adiciona "Desligar notificação automática"',
'',
'@fixomenuescolheconteudo',
'menu executa $numconteudo $letconteudo $texconteudo',
'se $letconteudo = "#13"',
'menu termina',
'mensagem "som\ef01"',
'se $numconteudo = 1 chama @menuescgenfilme',
'se $numconteudo = 2 chama @menuescgenserie',
'se $numconteudo = 3 chama @menuescnovela',
'se $numconteudo = 4 chama @ultimosassistidos',
'se $numconteudo = 5 chama @lenotas',
'se $numconteudo = 6 chama @autonotas',
'senão',
'se $letconteudo = "#27"',
'chama @finaliza',
'desvia @fixomenuescolheconteudo',
'fim se',
'desvia @menuescolheconteudo',
'',
'*--*Manda sinal de conectado ao servidor do cine brasil;',
'@conectaaocinebrasil',
'tela limpa',
'Escreve mudo "Conectando ao Cine Brasil"',
'seja $recurso "/conectar "',
'seja $baseurl "162.220.14.188"',
'seja $porta 6000',
'seja $metodo "POST "',
'seja $useragent "Cinevox"',
'seja $versao_http "HTTP/1.1"',
'internet inicia',
'conecta #0 $baseurl $porta',
'',
'escreve #0 $metodo $recurso $versao_http',
'escreve #0 "Host: "$baseurl',
'escreve #0 "User-Agent: "$useragent',
'escreve #0 "Accept: */*"',
'escreve #0 "Connection: Close"',
'escreve #0 ""',
'le #0 r',
'copia r r 10 12',
'se r = 200',
'Escreve mudo "Conectado',
'senão',
'Escreve mudo "Conexão não pôde ser registrada."',
'Escreve mudo "Erro: "r',
'fim se',
'fecha #0',
'internet termina',
'executa "cinevox_con.exe"',
'retorna',
'*--*Mostra quantos usuários estão ativos',
'@dizquantosonline',
'seja $obtemquantosonline 1',
'seja $recurso "/contador.json "',
'seja $metodo "GET "',
'seja $porta 443',
'',
'chama @enviapedido',
'seja r trim r',
'seja t tamanho r',
'copia r r 24 t',
'',
'Escreve "No momento, há "r" usuários conectados ao Cine Brasil."',
'seja $obtemquantosonline 0',
'retorna',
'*--*Menu para escolher o gênero da série',
'@menuescgenserie',
'seja $pagina 1',
'Escreve mudo "Aguarde"',
'seja $recurso "/api/v1/listargeneroserie"',
'seja $metodo "GET "',
'chama @enviapedido',
'se $status_http <> 200 desvia @erro_http',
'utf8paraansi r',
'',
'seja $listadegeneros ""',
'',
'seja p pos "id_genero" r',
'enquanto p > 0',
'soma p 11',
'seja t tamanho r',
'copia r r p t',
'seja p pos "," r',
'subtrai p 1',
'copia i r 1 p',
'seja p pos "nome_genero" r',
'soma p 14',
'seja t tamanho r',
'copia r r p t',
'seja p pos """" r',
'subtrai p 1',
'copia n r 1 p',
'',
'concatena $listadegeneros n',
'concatena $listadegeneros "="',
'concatena $listadegeneros i',
'concatena $listadegeneros ";"',
'',
'soma p 2',
'seja t tamanho r',
'copia r r p t',
'seja p pos "id_genero" r',
'fim enquanto',
'',
'seja $titjan "Cinevox - Escolha o gênero da série"',
'titulo $titjan',
'tela limpa',
'Escreve mudo "CINEVOX"',
'escreve mudo ""',
'Escreve mudo "Escolha o gênero da série."',
'Escreve mudo ""',
'Escreve mudo "Use setas para selecionar."',
'Escreve mudo " Enter confirma, Esc volta ao menu anterior."',
'mensagem "som\cvescgenser"',
'Escreve ""',
'menu cria 1 1 30 60',
'seja l $listadegeneros',
'seja p pos "=" l',
'enquanto p > 0',
'subtrai p 1',
'copia $umgenero l 1 p',
'menu adiciona $umgenero',
'seja p pos ";" l',
'soma p 1',
'seja t tamanho l',
'copia l l p t',
'seja p pos "=" l',
'fim enquanto',
'',
'@fixomenuescgenserie',
'menu executa $numgenero $letgenero $textgenero',
'se $letgenero = "#0#61"',
'seja $buscando 1',
'seja $buscanaoencontrada 0',
'tela limpa',
'escreve "Digite o termo a pesquisar"',
'le $abuscar',
'se $abuscar = "" desvia @fixomenuescgenserie',
'menu termina',
'chama @menuescserie',
'seja $buscando 0',
'desvia @menuescgenserie',
'senão',
'se $letgenero = "#13"',
'seja $buscando 0',
'mensagem "som\ef01"',
'menu termina',
'chama @menuescserie',
'desvia @menuescgenserie',
'senão',
'se $letgenero = "#27"',
'mensagem "som\ef02"',
'menu termina',
'retorna',
'fim se',
'desvia @fixomenuescgenserie',
'',
'*--*Menu para escolher a série que deseja assistir',
'@menuescserie',
'tela limpa',
'se $pagina = 0',
'seja $pagina 1',
'seja $buscanaoencontrada 0',
'desvia @fixomenuescserie',
'fim se',
'Escreve mudo "Aguarde"',
'seja l $listadegeneros',
'seja $recurso "/api/v1/listarserie"',
'seja $metodo "GET "',
'se $buscando = 1seja $tipochamada 7',
'se $buscando = 0seja $tipochamada 4',
'chama @enviapedido',
'se $status_http <> 200',
'bipa',
'se $pagina > 1 subtrai $pagina 1',
'se $buscando = 1 escreve "Sua busca não retornou resultado"',
'se $buscando = 1 seja $buscanaoencontrada 1',
'se $buscando = 1 seja $abuscar ""',
'se $buscando = 1retorna',
'se $buscando = 0 desvia @menuescserie',
'fim se',
'utf8paraansi r',
'seja $tipochamada 0',
'seja $listadeseries ""',
'',
'seja p pos "id_serie" r',
'enquanto p > 0',
'soma p 10',
'seja t tamanho r',
'copia r r p t',
'seja p pos "," r',
'subtrai p 1',
'copia i r 1 p',
'seja p pos "nome_serie" r',
'soma p 13',
'seja t tamanho r',
'copia r r p t',
'seja p pos """" r',
'subtrai p 1',
'copia n r 1 p',
'',
'concatena $listadeseries n',
'concatena $listadeseries "="',
'concatena $listadeseries i',
'concatena $listadeseries ";"',
'',
'soma p 2',
'seja t tamanho r',
'copia r r p t',
'seja p pos "id_serie" r',
'fim enquanto',
'',
'seja $titjan "Cinevox - Escolha a série"',
'titulo $titjan',
'',
'Escreve mudo "Página "$pagina"."',
'mensagem "som\cvpag"',
'fala $pagina',
'Escreve ""',
'Escreve mudo "Escolha a série."',
'Escreve mudo ""',
'Escreve mudo "Use setas para selecionar."',
'',
'Escreve mudo "Teclas p e a avança e recua página, respectivamente."',
'Escreve mudo  "Enter escolhe a série, esc volta ao menu anterior."',
'mensagem "som\cvescser"',
'Escreve ""',
'menu cria 1 1 30 10',
'seja $qtdseries 0',
'seja l $listadeseries',
'seja p pos "=" l',
'enquanto p > 0',
'subtrai p 1',
'copia $umaserie l 1 p',
'menu adiciona $umaserie',
'soma $qtdseries 1',
'seja p pos ";" l',
'soma p 1',
'seja t tamanho l',
'copia l l p t',
'seja p pos "=" l',
'fim enquanto',
'@fixomenuescserie',
'menu executa $numserie $letserie $texserie',
'se $letserie = "#13"',
'mensagem "som\ef01"',
'menu termina',
'chama @selecserie',
'desvia @menuescserie',
'senão',
'se $letserie = "p"',
'se $qtdseries < 10 desvia @fixomenuescserie',
'soma $pagina 1',
'desvia  @menuescserie',
'senão',
'se $letserie = "a"',
'subtrai $pagina 1',
'desvia @menuescserie',
'senão',
'',
'se $letserie = "#27"',
'mensagem "som\ef02"',
'menu termina',
'retorna',
'fim se',
'desvia @fixomenuescserie',
'',
'*--*Mostra detalhes e permite reproduzir o filme escolhido',
'@selecserie',
'tela limpa',
'Escreve ""',
'Escreve mudo "Aguarde"',
'seja $tipochamada 5',
'seja l $listadeseries',
'seja $recurso "/api/v1/listarserie"',
'seja $metodo "GET "',
'chama @enviapedido',
'se $status_http <> 200 desvia @erro_http',
'utf8paraansi r',
'seja $tipochamada 0',
'chama @obtemdetalhesserie',
'',
'Escreve mudo "Detalhes da série."',
'Escreve mudo "Use setas para ler."',
'Escreve mudo "Enter lista os episódios de uma temporada, esc volta ao menu anterior"',
'Escreve ""',
'mensagem "som\cvdetser"',
'menu cria 1 1 80 6',
'menu adiciona $nomedaserie',
'menu adiciona $generodaserie',
'menu adiciona $anolancaserie',
'menu adiciona $sensuraserie',
'menu adiciona $quemquandoposserie',
'menu adiciona $linguaserie',
'menu adiciona $qtemps',
'menu adiciona $sinopseserie',
'',
'@fixomenudetalhesserie',
'seja $titjan "Cinevox - detalhes de "',
'concatena $titjan $texserie',
'titulo $titjan',
'',
'menu executa $numdetserie $letdetserie $texdetserie',
'se $letdetserie = "#13"',
'mensagem "som\ef01"',
'menu termina',
'chama @qualtempserie',
'desvia @selecserie',
'senão',
'se $letdetserie = "#27"',
'mensagem "som\ef02"',
'menu termina',
'retorna',
'fim se',
'desvia @fixomenudetalhesserie',
'',
'*--*Escolhe uma temporada da série selecionada para mostrar os episódios',
'*Se for apenas uma temporada, já mostra direto os episódios',
'@qualtempserie',
'tela limpa',
'se $maxtemp > 1',
'Escreve ""',
'Escreve mudo "Que temporada deseja assistir?"',
'Escreve mudo "Digite um valor entre 1 e "$maxtemp',
'mensagem "som\cvqtemp"',
'fala "1"',
'mensagem "som\cve"',
'fala $maxtemp',
'le $otemp',
'se $otemp = "" retorna',
'se $otemp > $maxtemp escreve mudo "Valor inválido."',
'se $otemp > $maxtemp  mensagem "som\cvvalinv"',
'se $otemp > $maxtemp desvia @qualtempserie',
'se $otemp < 1 escreve "Valor inválido.""',
'se $otemp < 1 desvia @qualtempserie',
'senão',
'seja $otemp 1',
'fim se',
'chama @mostraepstempserie',
'retorna',
'',
'*--*Mostra a lista de episódios de uma série e permite reproduzir um episódio escolhido',
'@mostraepstempserie',
'tela limpa',
'Escreve ""',
'Escreve mudo "Aguarde"',
'seja l $listadeseries',
'',
'seja $recurso "/api/v1/listartemporada"',
'seja $metodo "GET "',
'seja $tipochamada 6',
'chama @enviapedido',
'se $status_http <> 200 desvia @erro_http',
'utf8paraansi r',
'seja $tipochamada 0',
'seja $listadeepisodios ""',
'',
'menu cria 1 1 30 50',
'',
'seja p pos "titulo"":" r',
'enquanto p > 0',
'soma p 9',
'seja t tamanho r',
'copia r r p t',
'seja p pos """" r',
'subtrai p 1',
'copia $titepisodio r 1 p',
'concatena $listadeepisodios $titepisodio',
'menu adiciona $titepisodio',
'concatena $listadeepisodios "="',
'soma p 2',
'seja t tamanho r',
'copia r r p t',
'seja p pos "link_episodio" r',
'soma p 16',
'seja t tamanho r',
'copia r r p t',
'seja p pos """" r',
'subtrai p 1',
'copia $linkepisodio r 1 p',
'concatena $listadeepisodios $linkepisodio',
'concatena $listadeepisodios ";"',
'seja p pos "titulo"":" r',
'fim enquanto',
'',
'seja $titjan "Cinevox - escolha o episódio"',
'titulo $titjan',
'Escreve mudo "Escolha o episódio que deseja assistir."',
'Escreve mudo ""',
'Escreve mudo "Use setas para selecionar."',
'Escreve mudo "Enter reproduz o episódio selecionado, esc volta ao menu anterior."',
'mensagem "som\cvescepi"',
'@fixomenumostraepstempserie',
'menu executa $numepisodio $letepisodio $texepisodio',
'se $letepisodio = "#13"',
'mensagem "som\ef03"',
'seja l $listadeepisodios',
'seja p pos $texepisodio l',
'seja t tamanho l',
'copia l l p t',
'seja p pos "=" l',
'soma p 1',
'seja t tamanho l',
'copia l l p t',
'seja p pos ";" l',
'subtrai p 1',
'copia l l 1 p',
'seja $linkconteudo l',
'*chama @guardaassistido',
'Escreve mudo "Iniciando reprodução do episódio."',
'Escreve mudo "Para ajuda, pressione f1."',
'mensagem "som\cvinicrepepi"',
'chama @reproduzconteudo',
'senão',
'se $letepisodio = "#27"',
'mensagem "som\ef02"',
'menu termina',
'retorna',
'fim se',
'desvia @fixomenumostraepstempserie',
'',
'*--*Obtem os detalhes da serie selecionada',
'@obtemdetalhesserie',
'seja l r',
'*Pega o nome da serie',
'seja $nomedaserie "Nome da série: "',
'seja p pos "nome_serie" l',
'soma p 13',
'seja t tamanho l',
'copia l l p t',
'seja p pos """" l',
'subtrai p 1',
'copia l l 1 p',
'concatena $nomedaserie l',
'',
'*Pega o ano de lançamento da serie',
'seja $anolancaserie "Ano de lançamento: "',
'seja l r',
'seja p pos "ano_lancamento" l',
'soma p 16',
'seja t tamanho l',
'copia l l p t',
'seja p pos "," l',
'subtrai p 1',
'copia l l 1 p',
'concatena $anolancaserie l',
'',
'*Pega a data de postagem da série',
'seja $datapostaserie ""',
'seja l r',
'seja p pos "data_postagem" l',
'soma p 16',
'seja t tamanho l',
'copia l l p t',
'seja p pos """" l',
'subtrai p 1',
'copia l l 1 p',
'concatena $datapostaserie l',
'',
'*Pega a sinopse da série',
'seja $sinopseserie "Sinopse: "',
'seja l r',
'seja p pos "sinopse" l',
'soma p 10',
'seja t tamanho l',
'copia l l p t',
'seja p pos """,""" l',
'subtrai p 1',
'copia l l 1 p',
'substitui l "\""" """"',
'substitui l "\n" " "',
'concatena $sinopseserie l',
'',
'*Pega a classificação de sensura da série',
'seja $sensuraserie "Sensura: "',
'seja l r',
'seja p pos "classificacao_indicativa" l',
'soma p 27',
'seja t tamanho l',
'copia l l p t',
'seja p pos """" l',
'subtrai p 1',
'copia l l 1 p',
'concatena $sensuraserie l',
'',
'*pega o número de temporadas da série',
'seja $qtemps "Número de temporadas: "',
'seja l r',
'seja p pos "quantidade_temporada" l',
'soma p 22',
'seja t tamanho l',
'copia l l p t',
'seja p pos "," l',
'subtrai p 1',
'copia l l 1 p',
'concatena $qtemps l',
'seja $maxtemp l',
'',
'*Pega o idioma da série',
'seja $linguaserie "Idioma original: "',
'seja l r',
'seja p pos "idioma_original" l',
'soma p 18',
'seja t tamanho l',
'copia l l p t',
'seja p pos """" l',
'subtrai p 1',
'copia l l 1 p',
'concatena $linguaserie l',
'',
'*Pega o gênero da série',
'seja $generodaserie "Gênero: "',
'seja l r',
'seja p pos """genero"":{" l',
'soma p 25',
'seja t tamanho l',
'copia l l p t',
'seja p pos """" l',
'subtrai p 1',
'copia l l 1 p',
'concatena $generodaserie l',
'',
'*pega o nome de quem postou a série',
'seja $quemposserie ""',
'seja l r',
'seja p pos "usuarios" l',
'soma p 27',
'seja t tamanho l',
'copia l l p t',
'seja p pos """" l',
'subtrai p 1',
'copia l l 1 p',
'concatena $quemposserie l',
'',
'*Monta a informação de postagem, incluindo quem postou, a data e a hora',
'seja $quemquandoposserie "Postado por: "',
'concatena $quemquandoposserie $quemposserie',
'concatena $quemquandoposserie " em "',
'concatena $quemquandoposserie $datapostaserie',
'retorna',
'',
'*--*Menu para escolher o gênero do filme',
'@menuescgenfilme',
'tela limpa',
'seja $buscando 0',
'seja $pagina 1',
'Escreve mudo "Aguarde"',
'seja $recurso "/api/v1/listargenerofilme"',
'seja $metodo "GET "',
'chama @enviapedido',
'se $status_http <> 200 desvia @erro_http',
'utf8paraansi r',
'',
'seja $listadegeneros ""',
'seja p pos "id_genero" r',
'enquanto p > 0',
'soma p 11',
'seja t tamanho r',
'copia r r p t',
'seja p pos "," r',
'subtrai p 1',
'copia i r 1 p',
'seja p pos "nome_genero" r',
'soma p 14',
'seja t tamanho r',
'copia r r p t',
'seja p pos """" r',
'subtrai p 1',
'copia n r 1 p',
'',
'concatena $listadegeneros n',
'concatena $listadegeneros "="',
'concatena $listadegeneros i',
'concatena $listadegeneros ";"',
'',
'soma p 2',
'seja t tamanho r',
'copia r r p t',
'seja p pos "id_genero" r',
'fim enquanto',
'',
'seja $titjan "Cinevox - Escolha o gênero do filme"',
'titulo $titjan',
'',
'Escreve mudo "Escolha o gênero do filme."',
'Escreve mudo ""',
'Escreve mudo "Use setas para selecionar."',
'Escreve mudo " Enter confirma, Esc volta ao menu anterior."',
'mensagem "som\cvescgenfil"',
'Escreve ""',
'menu cria 1 1 30 60',
'seja l $listadegeneros',
'seja p pos "=" l',
'enquanto p > 0',
'subtrai p 1',
'copia $umgenero l 1 p',
'menu adiciona $umgenero',
'seja p pos ";" l',
'soma p 1',
'seja t tamanho l',
'copia l l p t',
'seja p pos "=" l',
'fim enquanto',
'',
'@fixomenuescgenfilme',
'menu executa $numgenero $letgenero $textgenero',
'se $letgenero = "#0#61"',
'seja $buscando 1',
'seja $buscanaoencontrada 0',
'escreve "Digite o termo a pesquisar"',
'le $abuscar',
'se $abuscar = "" desvia @menuescgenfilme',
'menu termina',
'chama @menuescfilme',
'seja $buscando 0',
'desvia @menuescgenfilme',
'senão',
'se $letgenero = "#13"',
'seja $buscando 0',
'mensagem "som\ef01"',
'menu termina',
'chama @menuescfilme',
'desvia @menuescgenfilme',
'senão',
'se $letgenero = "#27"',
'mensagem "som\ef02"',
'menu termina',
'retorna',
'fim se',
'desvia @fixomenuescgenfilme',
'',
'*--*Menu para escolher o filme que deseja assistir',
'@menuescfilme',
'tela limpa',
'se $pagina = 0',
'seja $pagina 1',
'desvia @fixomenuescfilme',
'fim se',
'Escreve mudo "Aguarde"',
'seja l $listadegeneros',
'seja $recurso "/api/v1/listarfilme"',
'seja $metodo "GET "',
'se $buscando = 1seja $tipochamada 3',
'se $buscando = 0seja $tipochamada 1',
'chama @enviapedido',
'se $status_http <> 200',
'se $buscando = 1 escreve "Sua busca não retornou resultado"',
'bipa',
'se $pagina > 1 subtrai $pagina 1',
'se $buscando = 1 seja $buscanaoencontrada 1',
'se $buscando = 1 retorna',
'se $buscando = 0 desvia @menuescfilme',
'fim se',
'',
'utf8paraansi r',
'seja $tipochamada 0',
'seja $listadefilmes ""',
'seja p pos "id_filme" r',
'enquanto p > 0',
'soma p 10',
'seja t tamanho r',
'copia r r p t',
'seja p pos "," r',
'subtrai p 1',
'copia i r 1 p',
'seja p pos "nome_filme" r',
'soma p 13',
'seja t tamanho r',
'copia r r p t',
'seja p pos """" r',
'subtrai p 1',
'copia n r 1 p',
'',
'concatena $listadefilmes n',
'concatena $listadefilmes "="',
'concatena $listadefilmes i',
'concatena $listadefilmes ";"',
'',
'soma p 2',
'seja t tamanho r',
'copia r r p t',
'seja p pos "id_filme" r',
'fim enquanto',
'',
'seja $titjan "Cinevox - Escolha o filme"',
'titulo $titjan',
'',
'Escreve mudo "Página "$pagina"."',
'mensagem "som\cvpag"',
'fala $pagina',
'Escreve ""',
'Escreve mudo "Escolha o filme."',
'Escreve mudo ""',
'Escreve mudo "Use setas para selecionar."',
'Escreve mudo "Teclas p e a avança e recua página, respectivamente."',
'Escreve mudo "Enter escolhe o filme, esc volta ao menu anterior."',
'mensagem "som\cvescfil"',
'Escreve ""',
'menu cria 1 1 30 10',
'seja $qtdfilmes 0',
'seja l $listadefilmes',
'seja p pos "=" l',
'enquanto p > 0',
'soma $qtdfilmes 1',
'subtrai p 1',
'copia $umfilme l 1 p',
'menu adiciona $umfilme',
'seja p pos ";" l',
'soma p 1',
'seja t tamanho l',
'copia l l p t',
'seja p pos "=" l',
'fim enquanto',
'',
'@fixomenuescfilme',
'menu executa $numfilme $letfilme $texfilme',
'se $letfilme = "#13"',
'mensagem "som\ef01"',
'menu termina',
'chama @selecfilme',
'desvia @menuescfilme',
'senão',
'se $letfilme = "p"',
'se $qtdfilmes = 1 desvia @fixomenuescfilme',
'soma $pagina 1',
'desvia @menuescfilme',
'senão',
'se $letfilme = "a"',
'subtrai $pagina 1',
'desvia @menuescfilme',
'senão',
'',
'se $letfilme = "#27"',
'mensagem "som\ef02"',
'menu termina',
'retorna',
'fim se',
'desvia @fixomenuescfilme',
'',
'*--*Mostra detalhes e permite reproduzir o filme escolhido',
'@selecfilme',
'Escreve ""',
'Escreve mudo "Aguarde"',
'seja $tipochamada 2',
'seja l $listadefilmes',
'seja $recurso "/api/v1/listarfilme"',
'seja $metodo "GET "',
'chama @enviapedido',
'se $status_http <> 200 desvia @erro_http',
'utf8paraansi r',
'seja $tipochamada 0',
'chama @obtemdetalhesfilme',
'',
'Escreve mudo "Detalhes do filme."',
'Escreve mudo "Use setas para ler."',
'Escreve mudo "Enter reproduz o filme, esc volta ao menu anterior."',
'Escreve ""',
'mensagem "som\cvdetfil"',
'tela limpa',
'menu cria 1 1 80 6',
'menu adiciona $nomedofilme',
'menu adiciona $generodofilme',
'menu adiciona $anolancafilme',
'menu adiciona $sensurafilme',
'menu adiciona $quemquandoposfilme',
'menu adiciona $linguafilme',
'menu adiciona $sinopsefilme',
'',
'@fixomenudetalhesfilme',
'seja $titjan "Cinevox - detalhes de "',
'concatena $titjan $texfilme',
'titulo $titjan',
'',
'menu executa $numdetfilme $letdetfilme $texdetfilme',
'se $letdetfilme = "#13"',
'mensagem "som\ef03"',
'seja $linkconteudo $linkfilme',
'*chama @guardaassistido',
'Escreve ""',
'Escreve mudo "Iniciando reprodução do filme."',
'Escreve mudo "Para ajuda, pressione f1."',
'mensagem "som\cvinicrepfil"',
' chama @reproduzconteudo',
'senão',
'se $letdetfilme = "s"',
' chama @salvafilme',
'senão',
'se $letdetfilme = "#3"',
'chama @copiadetfilmeclipboard',
'senão',
'se $letdetfilme = "a"',
'chama @gravadetalhesfilmenoarquivo',
'senão',
'se $letdetfilme = "#27"',
'mensagem "som\ef02"',
'menu termina',
'retorna',
'fim se',
'desvia @fixomenudetalhesfilme',
'',
'*--*Obtem os detalhes do filme selecionado',
'@obtemdetalhesfilme',
'seja l r',
'',
'*Pega o nome do Filme',
'seja $nomedofilme "Nome do filme: "',
'seja p pos "nome_filme" l',
'soma p 13',
'seja t tamanho l',
'copia l l p t',
'seja p pos """" l',
'subtrai p 1',
'copia l l 1 p',
'concatena $nomedofilme l',
'',
'*Pega o ano de lançamento do filme',
'seja $anolancafilme "Ano de lançamento: "',
'seja l r',
'seja p pos "ano_lancamento" l',
'soma p 16',
'seja t tamanho l',
'copia l l p t',
'seja p pos "," l',
'subtrai p 1',
'copia l l 1 p',
'concatena $anolancafilme l',
'',
'*Pega a data de postagem do filme',
'seja $datapostafilme ""',
'seja l r',
'seja p pos "data_postagem" l',
'soma p 16',
'seja t tamanho l',
'copia l l p t',
'seja p pos """" l',
'subtrai p 1',
'copia l l 1 p',
'concatena $datapostafilme l',
'',
'*Pega a sinopse do filme',
'seja $sinopsefilme "Sinopse: "',
'seja l r',
'seja p pos "sinopse" l',
'soma p 10',
'seja t tamanho l',
'copia l l p t',
'seja p pos """,""" l',
'subtrai p 1',
'copia l l 1 p',
'substitui l "\""" """"',
'substitui l "\n" " "',
'concatena $sinopsefilme l',
'',
'*Pega a classificação de sensura do filme',
'seja $sensurafilme "Sensura: "',
'seja l r',
'seja p pos "classificacao_indicativa" l',
'soma p 27',
'seja t tamanho l',
'copia l l p t',
'seja p pos """" l',
'subtrai p 1',
'copia l l 1 p',
'concatena $sensurafilme l',
'',
'*pega a URL do filme',
'seja $linkfilme ""',
'seja l r',
'seja p pos "link_filme" l',
'soma p 13',
'seja t tamanho l',
'copia l l p t',
'seja p pos """" l',
'subtrai p 1',
'copia l l 1 p',
'concatena $linkfilme l',
'',
'*Pega o idioma do filme',
'seja $linguafilme "Idioma original: "',
'seja l r',
'seja p pos "idioma_original" l',
'soma p 18',
'seja t tamanho l',
'copia l l p t',
'seja p pos """" l',
'subtrai p 1',
'copia l l 1 p',
'concatena $linguafilme l',
'',
'*Pega o gênero do filme',
'seja $generodofilme "Gênero: "',
'seja l r',
'seja p pos "genero" l',
'soma p 24',
'seja t tamanho l',
'copia l l p t',
'seja p pos """" l',
'subtrai p 1',
'copia l l 1 p',
'concatena $generodofilme l',
'',
'*pega o nome de quem postou o filme',
'seja $quemposfilme ""',
'seja l r',
'seja p pos "usuario" l',
'soma p 26',
'seja t tamanho l',
'copia l l p t',
'seja p pos """" l',
'subtrai p 1',
'copia l l 1 p',
'concatena $quemposfilme l',
'',
'*Monta a informação de postagem, incluindo quem postou, a data e a hora',
'seja $quemquandoposfilme "Postado por: "',
'concatena $quemquandoposfilme $quemposfilme',
'concatena $quemquandoposfilme " em "',
'concatena $quemquandoposfilme $datapostafilme',
'retorna',
'',
'*--*Lista as novelas disponiveis',
'@menuescnovela',
'tela limpa',
'se $pagina = 0',
'seja $pagina 1',
'desvia @fixomenuescnovela',
'fim se',
'',
'Escreve mudo "Aguarde"',
'',
'seja $recurso "/api/v1/listarnovela"',
'seja $metodo "GET "',
'chama @enviapedido',
'se $status_http <> 200 desvia @erro_http',
'utf8paraansi r',
'',
'seja $listadenovelas ""',
'seja p pos "id_novela" r',
'enquanto p > 0',
'soma p 11',
'seja t tamanho r',
'copia r r p t',
'seja p pos "," r',
'subtrai p 1',
'copia i r 1 p',
'seja p pos "nome_novela" r',
'soma p 14',
'seja t tamanho r',
'copia r r p t',
'seja p pos """" r',
'subtrai p 1',
'copia n r 1 p',
'',
'concatena $listadenovelas n',
'concatena $listadenovelas "="',
'concatena $listadenovelas i',
'concatena $listadenovelas ";"',
'',
'soma p 2',
'seja t tamanho r',
'copia r r p t',
'seja p pos "id_novela" r',
'fim enquanto',
'',
'seja $titjan "Cinevox - Escolha a novela"',
'titulo $titjan',
'',
'Escreve mudo "Página "$pagina"."',
'mensagem "som\cvpag"',
'fala $pagina',
'Escreve mudo""',
'Escreve mudo "Escolha a novela."',
'Escreve mudomudo ""',
'Escreve mudo  "Use setas para selecionar."',
'Escreve mudo  "As teclas p e a, avança e recua página, respectivamente."',
'Escreve mudo  "Enter escolhe a novela, esc volta ao menu anterior."',
'mensagem "som\cvescnov"',
'Escreve ""',
'menu cria 1 1 30 10',
'seja $qtdnovelas 0',
'seja l $listadenovelas',
'seja p pos "=" l',
'enquanto p > 0',
'soma $qtdnovelas 1',
'subtrai p 1',
'copia $umanovela l 1 p',
'menu adiciona $umanovela',
'seja p pos ";" l',
'soma p 1',
'seja t tamanho l',
'copia l l p t',
'seja p pos "=" l',
'fim enquanto',
'',
'@fixomenuescnovela',
'menu executa $numnovela $letnovela $texnovela',
'se $letnovela = "#13"',
'mensagem "som\ef01"',
'menu termina',
'chama @selecnovela',
'desvia @menuescnovela',
'senão',
'se $letnovela = "p"',
'se $qtdnovelas = 1 desvia @fixomenuescnovela',
'soma $pagina 1',
'desvia @menuescnovela',
'senão',
'se $letnovela = "a"',
'subtrai $pagina 1',
'desvia @menuescnovela',
'senão',
'',
'se $letnovela = "#27"',
'mensagem "som\ef02"',
'menu termina',
'retorna',
'fim se',
'desvia @fixomenuescnovela',
'',
'*--*Trabalha com a novela selecionada',
'@selecnovela',
'seja l $listadenovelas',
'seja $tipochamada 8',
'seja $recurso "/api/v1/listarnovela"',
'',
'seja $metodo "GET "',
'chama @enviapedido',
'se $status_http <> 200 desvia @erro_http',
'utf8paraansi r',
'seja $tipochamada 0',
'chama @obtemdetalhesnovela',
'',
'Escreve mudo"Detalhes da novela."',
'Escreve mudo "Use setas para ler."',
'Escreve mudo "Enter permite escolher um capítulo para assistir, esc volta ao menu anterior."',
'Escreve mudo ""',
'mensagem "som\cvdetnov"',
'tela limpa',
'menu cria 1 1 80 6',
'menu adiciona $nomedanovela',
'menu adiciona $anolancanovela',
'menu adiciona $qtscapsnovela',
'menu adiciona $fontenovela',
'menu adiciona $sinopsenovela',
'',
'@fixomenudetalhesnovela',
'seja $titjan "Cinevox - detalhes de "',
'concatena $titjan $texnovela',
'titulo $titjan',
'',
'menu executa $numdetnovela $letdetnovela $texdetnovela',
'se $letdetnovela = "#13"',
'chama @obtemlinkcapitulonovela',
'se $qcapassistir = "" retorna',
'mensagem "som\ef03"',
'*chama @guardaassistido',
'Escreve ""',
'Escreve  "Iniciando reprodução da novela."',
'mensagem "som\cvinicrepnov"',
' chama @reproduzconteudo',
'senão',
'se $letdetnovela = "#27"',
'mensagem "som\ef02"',
'menu termina',
'retorna',
'fim se',
'desvia @fixomenudetalhesnovela',
'retorna',
'',
'*--*Obtem o link de um determinado capítulo da novela',
'@obtemlinkcapitulonovela',
'',
'Escreve mudo "Que capítulo deseja assistir?"',
'Escreve mudo "Digite um valor entre 1 e "$maxcapsnovela',
'mensagem "som\cvqcapnov"',
'fala "1"',
'mensagem "som\cve"',
'fala $maxcapsnovela',
'le $qcapassistir',
'',
'se $qcapassistir = "" retorna',
'se $qcapassistir > $maxcapsnovela',
'Escreve mudo "Valor inválido"',
'mensagem "som\cvvalinv"',
'desvia @obtemlinkcapitulonovela',
'senão',
'se $qcapassistir < 1',
' escreve mudo "Valor inválido."',
'mensagem "som\cvvalinv"',
'desvia @obtemlinkcapitulonovela',
'fim se',
'seja z $qcapassistir',
'seja k $pagina',
'',
'se $qcapassistir > 50',
'seja $pagina 0',
'enquanto $qcapassistir > 0',
'subtrai $qcapassistir 50',
'soma $pagina 1',
'fim enquanto',
'soma $qcapassistir 50',
'fim se',
'',
'seja l $listadenovelas',
'seja $tipochamada 9',
'seja $recurso "/api/v1/listarcapitulonovela"',
'seja $metodo "GET "',
'chama @enviapedido',
'se $status_http <> 200 desvia @erro_http',
'utf8paraansi r',
'seja $tipochamada 0',
'seja $pagina k',
'',
'*Procura  o capítulo desejado',
'repete w $qcapassistir',
'seja p pos "id_capitulo" r',
'soma p 1',
'seja t tamanho r',
'copia r r p t',
'fim repete',
'',
'seja p pos "link_capitulo" r',
'soma p 16',
'seja t tamanho r',
'copia r r p t',
'',
'seja p pos """" r',
'subtrai p 1',
'copia r r 1 p',
'seja $linkconteudo r',
'seja $qcapassistir z',
'retorna',
'',
'*--*Obtem detalhes da novela selecionada',
'@obtemdetalhesnovela',
'*Pega o nome da novela',
'seja l r',
'seja $nomedanovela "Novela: "',
'seja p pos "nome_novela" l',
'soma p 14',
'seja t tamanho l',
'copia l l p t',
'seja p pos """" l',
'subtrai p 1',
'copia l l 1 p',
'concatena $nomedanovela l',
'',
'*Pega a quantidade de capítulos disponíveis',
'seja l r',
'seja $qtscapsnovela "Quantidade de capítulos disponíveis: "',
'seja p pos "quantidade_capitulo" l',
'soma p 21',
'seja t tamanho l',
'copia l l p t',
'seja p pos "," l',
'subtrai p 1',
'copia l l 1 p',
'concatena $qtscapsnovela l',
'seja $maxcapsnovela l',
'',
'*Pega o ano de lançamento da novela',
'seja l r',
'seja $anolancanovela "Ano de lançamento: "',
'seja p pos "ano_lancamento" l',
'soma p 16',
'seja t tamanho l',
'copia l l p t',
'seja p pos "," l',
'subtrai p 1',
'copia l l 1 p',
'concatena $anolancanovela l',
'',
'*Pega a sinopse da novela',
'seja l r',
'seja $sinopsenovela "Sinopse: "',
'seja p pos "sinopse_novela" l',
'soma p 17',
'seja t tamanho l',
'copia l l p t',
'seja p pos """,""" l',
'subtrai p 1',
'copia l l 1 p',
'substitui l "\""" """"',
'substitui l "\n" " "',
'concatena $sinopsenovela l',
'',
'*Pega a fonte da novela',
'seja l r',
'Seja $fontenovela "Fonte: "',
'seja p pos "fonte_novela" l',
'soma p 15',
'seja t tamanho l',
'copia l l p t',
'',
'seja p pos """" l',
'subtrai p 1',
'copia l l 1 p',
'concatena $fontenovela l',
'retorna',
'',
'*--*Executa quando http retorna diferente de 200',
'@erro_http',
'Escreve "Erro: "$status_http',
'seja $mensagem_de_erro r',
'le #1 r',
'checa $nadaparaler',
'enquanto $nadaparaler = 0',
'concatena $mensagem_de_erro r',
'le #1 r',
'checa $nadaparaler',
'fim enquanto',
'utf8paraansi $mensagem_de_erro',
'escreve $mensagem_de_erro',
'transfere de $mensagem_de_erro',
'Escreve ""',
'retorna',
'*termina mudo',
'',
'*--*Envia pedido ao servidor',
'@enviapedido',
'se $host = "" seja $host "www.cinebrasil.net.br"',
'',
'seja $versao_http " HTTP/1.1"',
'',
'internet inicia',
'se $porta = "" seja $porta 443',
'se $porta <> 443',
'conecta #1 $host $porta',
'senão',
'conecta ssl #1 $host $porta',
'fim se',
'',
'escreve #1 $metodo $recurso $versao_http',
'escreve #1 "User-Agent: Cinevox"',
'escreve #1 "Host: "$host',
'escreve #1 "Accept: */*"',
'escreve #1 "Connection: Close"',
'Se $tipochamada = 1',
'seja $dadospost "{""id_genero"":"',
'seja $procgenero $textgenero',
'concatena $procgenero "="',
'seja p pos $procgenero l',
'seja t tamanho l',
'copia l l p t',
'seja p pos "=" l',
'soma p 1',
'seja t pos ";" l',
'subtrai t 1',
'copia i l p t',
'concatena $dadospost i',
'concatena $dadospost ",""pagina"":"',
'concatena $dadospost $pagina',
'concatena $dadospost ",""ordem"":""asc"",""limit"":10}"',
'escreve #1 "Content-Type: Application/json"',
'seja $tamdadospost tamanho $dadospost',
'escreve #1 "Content-length: "$tamdadospost',
'escreve #1 ""',
'escreve #1 $dadospost',
'senão',
'Se $tipochamada = 2',
'seja $dadospost "{""id_filme"":"',
'seja $procfilme $texfilme',
'concatena $procfilme "="',
'seja p pos $procfilme l',
'seja t tamanho l',
'copia l l p t',
'seja p pos "=" l',
'soma p 1',
'seja t pos ";" l',
'subtrai t 1',
'copia i l p t',
'concatena $dadospost i',
'concatena $dadospost "}"',
'escreve #1 "Content-Type: Application/json"',
'seja $tamdadospost tamanho $dadospost',
'escreve #1 "Content-length: "$tamdadospost',
'escreve #1 ""',
'escreve #1 $dadospost',
'senão',
'se $tipochamada = 3',
'seja $dadospost "{""nome_filme"":"""',
'concatena $dadospost $abuscar',
'concatena $dadospost """,""pagina"":"',
'concatena $dadospost $pagina',
'concatena $dadospost "}"',
'escreve #1 "Content-Type: Application/json"',
'ansiparautf8 $dadospost',
'seja $tamdadospost tamanho $dadospost',
'escreve #1 "Content-length: "$tamdadospost',
'escreve #1 ""',
'escreve #1 $dadospost',
'senão',
'Se $tipochamada = 4',
'seja $dadospost "{""id_genero"":"',
'seja $procgenero $textgenero',
'concatena $procgenero "="',
'seja p pos $procgenero l',
'seja t tamanho l',
'copia l l p t',
'seja p pos "=" l',
'soma p 1',
'seja t pos ";" l',
'subtrai t 1',
'copia i l p t',
'concatena $dadospost i',
'concatena $dadospost ",""pagina"":"',
'concatena $dadospost $pagina',
'concatena $dadospost "}"',
'escreve #1 "Content-Type: Application/json"',
'seja $tamdadospost tamanho $dadospost',
'escreve #1 "Content-length: "$tamdadospost',
'escreve #1 ""',
'escreve #1 $dadospost',
'senão',
'Se $tipochamada = 5',
'seja $dadospost "{""id_serie"":"',
'seja $procserie $texserie',
'concatena $procserie "="',
'seja p pos $procserie l',
'seja t tamanho l',
'copia l l p t',
'seja p pos "=" l',
'soma p 1',
'seja t pos ";" l',
'subtrai t 1',
'copia i l p t',
'concatena $dadospost i',
'concatena $dadospost "}"',
'escreve #1 "Content-Type: Application/json"',
'seja $tamdadospost tamanho $dadospost',
'escreve #1 "Content-length: "$tamdadospost',
'escreve #1 ""',
'escreve #1 $dadospost',
'senão',
'Se $tipochamada = 6',
'seja $dadospost "{""id_serie"":"',
'seja $procserie $texserie',
'concatena $procserie "="',
'seja p pos $procserie l',
'seja t tamanho l',
'copia l l p t',
'seja p pos "=" l',
'soma p 1',
'seja t pos ";" l',
'subtrai t 1',
'copia i l p t',
'concatena $dadospost i',
'concatena $dadospost "}"',
'escreve #1 "Content-Type: Application/json"',
'seja $tamdadospost tamanho $dadospost',
'escreve #1 "Content-length: "$tamdadospost',
'escreve #1 ""',
'escreve #1 $dadospost',
'escreve #1 ""',
'le #1 r',
'seja $status_http r',
'copia $status_http $status_http 10 12',
'se $status_http <> 200 desvia @erro_http',
'',
'le #1 r',
'enquanto r <> ""',
'le #1 r',
'fim enquanto',
'le #1 r',
'fecha #1',
'',
'repete z $otemp',
'seja p pos "id_temporada" r',
'soma p 1',
'seja t tamanho r',
'copia r r p t',
'fim repete',
'seja t tamanho r',
'copia r r 14 t',
'seja p pos "," r',
'subtrai p 1',
'copia r r 1 p',
'seja $idtemporada r',
'',
'seja $recurso "/api/v1/listarepisodio"',
'conecta ssl #1 $host $porta',
'escreve #1 $metodo $recurso $versao_http',
'escreve #1 "User-Agent: Cinevox"',
'escreve #1 "Host: "$host',
'escreve #1 "Accept: */*"',
'escreve #1 "Connection: Close"',
'',
'seja $dadospost "{""id_temporada"":"',
'concatena $dadospost $idtemporada',
'concatena $dadospost "}"',
'escreve #1 "Content-Type: Application/json"',
'seja $tamdadospost tamanho $dadospost',
'escreve #1 "Content-length: "$tamdadospost',
'escreve #1 ""',
'escreve #1 $dadospost',
'senão',
'se $tipochamada = 7',
'seja $dadospost "{""nome_serie"":"""',
'concatena $dadospost $abuscar',
'concatena $dadospost """,""pagina"":"',
'concatena $dadospost $pagina',
'concatena $dadospost "}"',
'escreve #1 "Content-Type: Application/json"',
'ansiparautf8 $dadospost',
'seja $tamdadospost tamanho $dadospost',
'escreve #1 "Content-length: "$tamdadospost',
'escreve #1 ""',
'escreve #1 $dadospost',
'senão',
'se $tipochamada = 8',
'seja $dadospost "{""id_novela"":"',
'seja $procnovela $texnovela',
'concatena $procnovela "="',
'seja p pos $procnovela l',
'seja t tamanho l',
'copia l l p t',
'seja p pos "=" l',
'soma p 1',
'seja t pos ";" l',
'subtrai t 1',
'copia i l p t',
'concatena $dadospost i',
'concatena $dadospost ",""pagina"":"',
'concatena $dadospost $pagina',
'concatena $dadospost "}"',
'escreve #1 "Content-Type: Application/json"',
'ansiparautf8 $dadospost',
'seja $tamdadospost tamanho $dadospost',
'escreve #1 "Content-length: "$tamdadospost',
'escreve #1 ""',
'escreve #1 $dadospost',
'senão',
'se $tipochamada = 9',
'seja $dadospost "{""id_novela"":"',
'seja $procnovela $texnovela',
'concatena $procnovela "="',
'seja p pos $procnovela l',
'seja t tamanho l',
'copia l l p t',
'seja p pos "=" l',
'soma p 1',
'seja t pos ";" l',
'subtrai t 1',
'copia i l p t',
'concatena $dadospost i',
'concatena $dadospost ",""pagina"":"',
'concatena $dadospost $pagina',
'concatena $dadospost "}"',
'escreve #1 "Content-Type: Application/json"',
'ansiparautf8 $dadospost',
'seja $tamdadospost tamanho $dadospost',
'escreve #1 "Content-length: "$tamdadospost',
'escreve #1 ""',
'escreve #1 $dadospost',
'fim se',
'escreve #1 ""',
'le #1 r',
'seja $status_http r',
'copia $status_http $status_http 10 12',
'le #1 r',
'enquanto r <> ""',
'le #1 r',
'fim enquanto',
'le #1 r',
'se $obtemquantosonline  = 1',
'enquanto não r *=* "quantidade_usuarios"',
'le #1 r',
'fim enquanto',
'fim se',
'fecha #1',
'internet termina',
'retorna',
'',
'*--*Reproduz o conteúdo escolhido',
'@reproduzconteudo',
'tela limpa',
'seja $titjan "Cinevox - reproduzindo: "',
'se $numconteudo = 1',
'concatena $titjan $texfilme',
'senão',
'se $numconteudo = 2',
'concatena $titjan $texserie',
'concatena $titjan " - "',
'concatena $titjan "Temporada "',
'concatena $titjan $otemp',
'concatena $titjan ", "',
'concatena $titjan $texepisodio',
'senão',
'se $numconteudo = 3',
'concatena $titjan $texnovela',
'concatena $titjan " - "',
'concatena $titjan "Capítulo "',
'concatena $titjan $qcapassistir',
'fim se',
'',
'titulo $titjan',
'seja $player "mpv\mpv.exe --save-position-on-quit=yes """',
'concatena $player $linkconteudo',
'concatena $player """ --title=""Cinevox - Reproduzindo: "',
'se $numconteudo = 1',
'concatena $player $texfilme',
'senão',
'se $numconteudo = 2',
'concatena $player $texserie',
'concatena $player " - "',
'concatena $player "Temporada "',
'concatena $player $otemp',
'concatena $player ", "',
'concatena $player $texepisodio',
'senão',
'se $numconteudo = 3',
'concatena $player $texnovela',
'concatena $player " - "',
'concatena $player "Capítulo "',
'concatena $player $qcapassistir',
'fim se',
'',
'concatena $player """"',
'executa $player',
'espera 1',
'retorna',
'',
'*--*Sai do programa',
'@finaliza',
'Escreve mudo "Confirma saída?',
'mensagem "som\cvconfsai"',
'le mudo $opcao &',
'se $opcao = "s"',
'mensagem "som\ef05"',
'Escreve mudo "Até mais!"',
'mensagem "som\cvtchau"',
'*chama @desligamon',
'termina mudo',
'senão',
'se $opcao = "n"',
'retorna',
'senão',
'desvia @finaliza',
'fim se',
'',
'*--*Liga ou desliga a notificação automática;',
'@autonotas',
'existeprog "cinevox_mon.exe" x',
'se x = 0 chama @ligamon',
'se x = 1 chama @desligamon',
'retorna',
'',
'@ligamon',
'executa "cinevox_mon.exe"&',
'retorna',
'',
'@desligamon',
'seja $comando "cmd /c taskkill /f /im cinevox_mon.exe"',
'executa $comando &&',
'retorna',
'',
'*--*Mostra as notificações de publicações do Cine Brasil;',
'@lenotas',
'tela limpa',
'seja $novalinha crlf',
'seja $arqnotas "temp\cvnotas"',
'remove $arqnotas &',
'seja $host "162.220.14.188"',
'seja $recurso "/notificacoes"',
'seja $metodo "GET "',
'seja $porta 6001',
'chama @enviapedido',
'se $status_http <> 200 desvia @erro_http',
'utf8paraansi r',
'seja $porta ""',
'seja $host ""',
'',
'abre #1 $arqnotas &',
'*Pega o título da nota',
'seja p pos "mensagem"":""" r',
'enquanto p > 0',
'soma p 13',
'seja t tamanho r',
'copia r r p t',
'seja l r',
'seja p pos """,""" l',
'subtrai p 1',
'copia l l 1 p',
'seja p pos "\n" l',
'subtrai p 1',
'copia l l 1 p',
'substitui l "\""" """"',
'seja $titulonotas l',
'seja $titulonotas trim $titulonotas',
'concatena $titulonotas " - em "',
'',
' *Pega a mensagem da nota',
'seja l r',
'seja p pos """,""" l',
'subtrai p 1',
'copia l l 1 p',
'substitui l "\n" $novalinha',
'substitui l "\""" """"',
'seja $mensagemnotas l',
'',
'*Pega a data de postagem da nota',
'seja p pos "dataHora"":""" r',
'soma p 11',
'seja t tamanho r',
'copia r r p t',
'seja l r',
'seja p pos """" l',
'subtrai p 1',
'copia l l 1 p',
'chama @convertedatahora',
'concatena $titulonotas $data',
'concatena $titulonotas " "',
'concatena $titulonotas $hora',
'escreve #1 "***"$titulonotas',
'escreve #1 $mensagemnotas',
'escreve #1 "/"',
'seja $titulonotas ""',
'seja p pos "mensagem"":""" r',
'',
'fim enquanto',
'fecha #1',
'',
'Escreve mudo "Notificações. Use as setas para ler os títulos das notas"',
'Escreve mudo "Enter abre a nota selecionada, esc volta ao menu anterior"',
'mensagem "som\cvlenotas"',
'menu cria 1 1 30 50',
'abre #1 $arqnotas',
'le #1 l',
'checa c',
'enquanto c = 0',
'se l =* "***"',
'seja t tamanho l',
'copia l l 4 t',
'menu adiciona l',
'fim se',
'le #1 l',
'checa c',
'fim enquanto',
'fecha #1',
'',
'@fixomenulenotas',
'menu executa $numnotas $letnotas $texnotas',
'se $letnotas = "#13"',
'*Define o tipo de conteúdo',
'se $texnotas =* "Novo filme disponível!" seja $tipoconteudo "filme"',
'se $texnotas =* "Nova série disponível!" seja $tipoconteudo "série"',
'se $texnotas =* "Série atualizada:" seja $tipoconteudo "série atualizada"',
'se $tipoconteudo = "série" seja $texserie $texnotas',
'',
'mensagem "som\ef07"',
'Escreve mudo "Lendo notificação.""',
'Escreve mudo "Use setas para ler, enter reproduz o conteúdo referente a essa nota, Esc volta ao menu anterior."',
'mensagem "som\cvleno"',
'menu termina',
'chama @abrenotaselec',
'desvia @lenotas',
'senão',
'se $letnotas = "#27"',
'mensagem "som\ef02"',
'menu termina',
'tela limpa',
'retorna',
'fim se',
'desvia @fixomenulenotas',
'',
'@abrenotaselec',
'abre #1 $arqnotas',
'seja $aprocurar "***"',
'concatena $aprocurar $texnotas',
'le #1 l',
'enquanto l <> $aprocurar',
'le #1 l',
'fim enquanto',
'seja p pos "!" l',
'seja t tamanho l',
'soma p 2',
'copia l l p t',
'seja p pos "." l',
'subtrai p 1',
'copia l l 1 p',
'seja $abuscar l',
'',
'se $tipoconteudo = "filme"',
'seja $texfilme l',
'senão',
'se $tipoconteudo = "série"',
'seja $texserie l',
'fim se',
'seja $numconteudo 1',
'menu cria 1 1 60 20',
'le #1 l',
'enquanto não l = "/"',
'seja l trim l',
'se l =* "Temporada "',
'seja p pos " " l',
'soma p 1',
'seja t tamanho l',
'copia $otemp l p t',
'fim se',
'se l <> "" menu adiciona l',
'le #1 l',
'fim enquanto',
'fecha #1',
'seja $numtexnota 1',
'@fixomenuabrenotaselec',
'menu executa $numtexnota $lettexnota $textexnota',
'se $lettexnota = "#13"',
'se $tipoconteudo = "série" menu termina',
'chama @repcontnota',
'se $tipoconteudo = "filme" desvia @fixomenuabrenotaselec',
'se $tipoconteudo = "série" desvia @abrenotaselec',
'senão',
'se $lettexnota = "s"',
'se $tipoconteudo <> "filme" desvia @fixomenuabrenotaselec',
'seja $buscando 1',
'seja $recurso "/api/v1/listarfilme"',
' seja $tipochamada 3',
'seja $metodo "GET "',
'chama @enviapedido',
'se $status_http <> 200 desvia @fixomenuabrenotaselec',
'seja $numconteudo 1',
' chama @obtemdetalhesfilme',
'seja $linkconteudo $linkfilme',
'chama @salvafilme',
'desvia @fixomenuabrenotaselec',
'senão',
'se $lettexnota = "#3"',
'se $tipoconteudo <> "filme" desvia @fixomenuabrenotaselec',
'seja $buscando 1',
'seja $recurso "/api/v1/listarfilme"',
' seja $tipochamada 3',
'seja $metodo "GET "',
'chama @enviapedido',
'se $status_http <> 200 desvia @fixomenuabrenotaselec',
'seja $numconteudo 1',
'utf8paraansi r',
' chama @obtemdetalhesfilme',
'chama @copiadetfilmeclipboard',
'desvia @fixomenuabrenotaselec',
'senão',
'se $lettexnota = "a"',
'se $tipoconteudo <> "filme" desvia @fixomenuabrenotaselec',
'seja $buscando 1',
'seja $recurso "/api/v1/listarfilme"',
' seja $tipochamada 3',
'seja $metodo "GET "',
'chama @enviapedido',
'se $status_http <> 200 desvia @fixomenuabrenotaselec',
'seja $numconteudo 1',
'utf8paraansi r',
' chama @obtemdetalhesfilme',
'chama @gravadetalhesfilmenoarquivo',
'desvia @fixomenuabrenotaselec',
'senão',
'se $lettexnota = "#27"',
'mensagem "som\ef02"',
'tela limpa',
'seja $buscando 0',
'seja $abuscar ""',
' retorna',
'fim se',
'desvia @fixomenuabrenotaselec',
'',
'*--*Reproduz o conteúdo da notificação selecionada',
'@repcontnota',
'seja $buscando 1',
'se $tipoconteudo = "filme"',
'seja $recurso "/api/v1/listarfilme"',
' seja $tipochamada 3',
'senão',
'se $tipoconteudo = "série"',
' seja $recurso "/api/v1/listarserie"',
' seja $tipochamada 7',
'senão',
'se $tipoconteudo = "série atualizada"',
' seja $recurso "/api/v1/listarserie"',
'seja $tipochamada 7',
'fim se',
'',
'seja $metodo "GET "',
'chama @enviapedido',
'se $status_http <> 200 desvia @fixomenuabrenotaselec',
'',
'se $tipoconteudo = "filme"',
'seja $numconteudo 1',
' chama @obtemdetalhesfilme',
'seja $linkconteudo $linkfilme',
'',
'Escreve mudo "Iniciando reprodução do filme."',
'Escreve mudo "Para ajuda, pressione f1."',
'mensagem "som\cvinicrepfil"',
'chama @reproduzconteudo',
'senão',
'se $tipoconteudo = "série"',
'seja $numconteudo 2',
'chama @obtemdetalhesserie',
'chama @prepdadosserie',
'chama @qualtempserie',
'senão',
'se $tipoconteudo = "série atualizada"',
'seja $numconteudo 2',
'chama @obtemdetalhesserie',
'chama @prepdadosserie',
' seja $recurso "/api/v1/listartemporada"',
'chama @enviapedido',
'chama @mostraepstempserie',
'fim se',
'retorna',
'',
'@prepdadosserie',
'seja p pos "id_serie" r',
'soma p 10',
'seja t tamanho r',
'copia r r p t',
'seja $id_serie r',
'seja p pos "," $id_serie',
'subtrai p 1',
'copia $id_serie $id_serie 1 p',
'',
'seja $texserie $nomedaserie',
'seja p pos ":" $texserie',
'soma p 2',
'seja t tamanho $texserie',
'copia $texserie $texserie p t',
'utf8paraansi $texserie',
'seja $listadeseries ""',
'concatena $listadeseries $texserie',
'concatena $listadeseries "="',
'concatena $listadeseries $id_serie',
'concatena $listadeseries ";"',
'retorna',
'@convertedatahora',
'seja $data ""',
'copia $ano l 1 4',
'copia $mes l 6 7',
'copia $dia l 9 10',
'copia $hora l 12 19',
'concatena $data $dia',
'concatena $data "/"',
'concatena $data $mes',
'concatena $data "/"',
'concatena $data $ano',
'retorna',
'',
'*---------------------------*',
'*--*Instalação automática de scripts;',
'@autoinstala',
'*--*Obtem o diretório do perfil de usuário',
'seja $arqlog "result.log"',
'seja $obtemuserprofile "obtemuserprofile.bat"',
'',
'remove $obtemuserprofile &',
'abre #1 $obtemuserprofile &',
'escreve #1 "@echo off"',
'escreve #1 "chcp 1252"',
'escreve #1 "echo %userprofile%>"$arqlog" 2>&1"',
'escreve #1 "exit"',
'fecha #1',
'',
'seja $comando $obtemuserprofile',
'executa $comando &&',
'espera 1',
'seja $esperacmd 0',
'existeprog "cmd.exe" x',
'enquanto x = 1',
'se $esperacmd = 20 desvia @para_de_esperar_cmd',
'soma $esperacmd 1',
'espera ms 500',
'existeprog "cmd.exe" x',
'fim enquanto',
'@para_de_esperar_cmd',
'*abandona o loop e continua executando.',
'',
'busca b $arqlog',
'enquanto b = ""',
'espera ms 500',
'busca b $arqlog',
'fim enquanto',
'',
'abre #1 $arqlog',
'le #1 $userprofile',
'fecha #1',
'seja $userprofile trim $userprofile',
'remove $arqlog',
'remove $obtemuserprofile',
'',
'seja $scriptdir $userprofile',
'concatena $scriptdir "\cinevox.dir"',
'busca b $scriptdir',
'se b = ""',
'busca $dirscript dir',
'',
'abre #1 $scriptdir &',
'escreve #1 $dirscript',
'fecha #1',
'chama @cria_reg_dosvox_ini',
'senão',
'abre #1 $scriptdir',
'le #1 $dirscript',
'fecha #1',
'fim se',
'retorna',
'',
'*--*Cria uma entrada no dosvox.ini para facilitar a abertura do programa.',
'@cria_reg_dosvox_ini',
'Escreve "Criando entrada no Dosvox.ini."',
'Escreve "Da próxima vez, você poderá abrir o cinevox pressionando r, /, c"',
'seja $arqatu $dirscript',
'concatena $arqatu "\script.atu"',
'remove $arqatu &',
'abre #1 $arqatu &',
'escreve #1 "[PROGREDE]"',
'Escreve #1 "Rede22=/,[REDEOUTROS],-RDOUTROS,Outros utilitários de rede"',
'escreve #1 ""',
'escreve #1 "[REDEOUTROS]"',
'escreve #1 "Rede11=C,"$dirscript"\CINEVOX.EXE,-REDEAD,Assistir conteúdos audiodescritos"',
'fecha #1',
'chama @obtemdirdosvox',
'seja $comando $dirdosvox',
'concatena $comando "\atuvox.exe """',
'concatena $comando $arqatu',
'concatena $comando """"',
'executa $comando &',
'espera 1',
'existeprog "atuvox.exe" x',
'enquanto x = 1',
'espera ms 500',
'existeprog "atuvox.exe" x',
'fim enquanto',
'espera 1',
'remove $arqatu &',
'retorna',
'',
'*--*Obtem o diretório padrão de instalação do Dosvox;',
'@obtemdirdosvox',
'seja $dosvoxini $userprofile',
'concatena $dosvoxini "\appdata\roaming\dosvox\dosvox.ini"',
'abre #1 $dosvoxini',
'le #1 $dirdosvox',
'enquanto não $dirdosvox =* "PGMDOSVOX="',
'le #1 $dirdosvox',
'fim enquanto',
'fecha #1',
'seja t tamanho $dirdosvox',
'copia $dirdosvox $dirdosvox 11 t',
'retorna',
'',
'*--*Permite selecionar os últimos conteúdos assistidos',
'@ultimosassistidos',
'escreve "A função de últimos assistidos será implementada em breve."',
'retorna',
'seja $ua "temp\ua"',
'abre #1 $ua',
'menu cria 1 1 60 30',
'le #1 l',
'checa c',
'enquanto c = 0',
'menu adiciona l',
'le #1 l',
'le #1 l',
'checa c',
'fim enquanto',
'fecha #1',
'',
'@fixomenuultimosassistidos',
'menu executa $nua $lua $tua',
'desvia @fixomenuultimosassistidos',
'',
'retorna',
'',
'*--*Guarda o conteúdo assistido',
'@guardaassistido',
'*seja $ua "temp\ua"',
'*abre #1 $ua &',
'*se $numconteudo = 1',
'*escreve #1 "Filme: "$texfilme',
'*senão',
'*se $numconteudo = 2',
'*Escreve #1 "Série: "$texserie", temporada "$otemp", "$texepisodio',
'*fim se',
'*escreve #1 $linkconteudo',
'*fecha #1',
'*retorna',
'',
'*--*Salva o filme',
'@salvafilme',
'seja $dirfilmepadrao "downloads\filmes\"',
'seja $nomearqfilme $dirfilmepadrao',
'concatena $nomearqfilme $texfilme',
'concatena $nomearqfilme ".MP3"',
'',
'Escreve mudo "Salvando o filme, aguarde"',
'mensagem "som\cvbaifil"',
'trazdarede $linkfilme $nomearqfilme 0 "" "cinevox" x',
'se x = 0',
'escreve mudo "Filme baixado com sucesso."',
'escreve mudo "Salvo em cinevox\downloads\filmes"',
'mensagem "som\cvfilsal"',
'senão',
'Escreve mudo "Erro ao tentar baixar este conteúdo."',
'mensagem "som\cversal"',
'fim se',
'retorna',
'',
'@copiadetfilmeclipboard',
'seja $infofilme ""',
'seja $novalinha crlf',
'concatena  $infofilme $nomedofilme',
'concatena $infofilme $novalinha',
'concatena $infofilme  $generodofilme',
'concatena $infofilme $novalinha',
'concatena $infofilme $anolancafilme',
'concatena $infofilme $novalinha',
'concatena $infofilme $sensurafilme',
'concatena $infofilme $novalinha',
'concatena $infofilme  $quemquandoposfilme',
'concatena $infofilme $novalinha',
'concatena $infofilme $linguafilme',
'concatena $infofilme $novalinha',
'concatena $infofilme $sinopsefilme',
'transfere de $infofilme',
'bipa 1',
'Escreve mudo "Informações copiadas para a área de transferência"',
'mensagem "som\cvinfocopclip"',
'retorna',
'',
'@gravadetalhesfilmenoarquivo',
'seja $dirsinopsefilmepadrao "sinopses\filmes\"',
'seja $nomearqsinopsefilme $dirsinopsefilmepadrao',
'concatena $nomearqsinopsefilme $texfilme',
'concatena $nomearqsinopsefilme ".txt"',
'busca b $nomearqsinopsefilme',
'se b <> "" remove $nomearqsinopsefilme',
'abre #1 $nomearqsinopsefilme &',
'escreve #1 $nomedofilme',
'escreve #1 $generodofilme',
'escreve #1 $anolancafilme',
'escreve #1 $sensurafilme',
'escreve #1 $quemquandoposfilme',
'escreve #1 $linguafilme',
'escreve #1 $sinopsefilme',
'fecha #1',
'escreve mudo "Informações salvas em arquivo, na pasta cinevox\sinopses\filmes"',
'mensagem "som\cvtxtsinofil"',
'retorna');

begin
inicializa ('cinevox');
for i := 1 to tamprog do
carregascript(script[i],i);
processa;
end.
