Lançado Adianti Framework 7.6!
Clique aqui para saber mais
Dificuldade em susbstituição variaveis THtmlRenderer Olá pessoa, Estou tendo dificuldade em setar valores nas variáveis do template usando THtmlRenderer, especificamente em combos e componete de calendario (TDate). Alguém sabe como resolver isto. segue fonte das paginas. ...
RB
Dificuldade em susbstituição variaveis THtmlRenderer  
Olá pessoa,

Estou tendo dificuldade em setar valores nas variáveis do template usando THtmlRenderer, especificamente em combos e componete de calendario (TDate).

Alguém sabe como resolver isto. segue fonte das paginas.

  1. <?php
  2. class FuncinarioForm extends TPage
  3. {
  4.     /**
  5.      * Constructor method
  6.      */
  7.     public function __construct()
  8.     {
  9.         parent::__construct();
  10.         
  11.         // create the HTML Renderer
  12.         $this->html = new THtmlRenderer('app/view/FuncionarioRender.html');
  13.         
  14.         try
  15.         {
  16.             // look for customer 1
  17.             TTransaction::open('db');
  18.             $pessoa = new PessoaVinculo(381);
  19.             // define replacements for the main section
  20.             $replace = array();
  21.             $replace['nome']  = $pessoa->pessoa->fisica->nome;
  22.             $replace['cpf']   = $pessoa->pessoa->fisica->cpf;
  23.             $replace['rg']   = $pessoa->pessoa->fisica->rg;
  24.             $replace['data_nascimento'] = TDate::date2br($pessoa->pessoa->fisica->data_nascimento);
  25.             $replace['estado_civil_id'] = $pessoa->pessoa->fisica->estado_civil_id;
  26.             $replace['estado_civil'] = $pessoa->pessoa->fisica->estado_civil_id;
  27.             
  28.             // replace the main section variables
  29.             $this->html->enableSection('main'$replace);
  30.             
  31.             // wrap the page content using vertical box
  32.             $vbox = new TVBox;
  33.             $vbox->style 'width: 100%';
  34.             $vbox->add(new TXMLBreadCrumb('menu.xml'__CLASS__));
  35.             $vbox->add($this->html);
  36.     
  37.             parent::add($vbox);            
  38.             TTransaction::close();
  39.         }
  40.         catch (Exception $e)
  41.         {
  42.             new TMessage('error'$e->getMessage());
  43.         }
  44.     }
  45.     
  46.     /**
  47.      * Send data
  48.      */
  49.     public static function onSend($param)
  50.     {
  51.         echo '<pre>';
  52.         print_r($param);
  53.         echo '</pre>';
  54.     } 
  55. }
  56. ?>

<!--[main]--> <div class="container"> <form class="needs-validation" novalidate> <div class="form-group"> <div class="form-group"> <div class="media"> <img class="mr-1 img-fluid img-thumbnail" src="app/images/photos/user.jpg" style="width:90px;height: 116px;padding:2px;"alt="Imagem de exemplo genérica"> <div class="media-body"> <div class="form-row"> <div class="col"> <label class="col-form-label form-control-sm red">'_t{Name}'</label> <input type="text" class="form-control form-control-sm" placeholder="Nome" value="{$nome}" required> </div> </div> <div class="form-row"> <div class="col"> <label class="col-form-label form-control-sm red">Nascimento</label> <input type="date" class="form-control form-control-sm" placeholder="Data de Nascimento" value="{$data_nascimento}" required> </div> <div class="col"> <label for="estado_civil_id" class="col-form-label form-control-sm">Estado Cívil</label> <select id="estado_civil_id" class="form-control form-control-sm"> <option selected>Selecione...</option> <option value= "{estado_civil_id}">"{estado_civil_id}"</option> </select> </div> <div class="col"> <label for="genero_id" class="col-sm-2 col-form-label form-control-sm">Genero</label> <select id="genero_id" class="form-control form-control-sm"> <option selected>Selecione...</option> <option value="{genero_id}">"{genero_id}"</option> </select> </div> </div> </div> </div> </div> <div class="form-group"> <div class="form-row"> <div class="col"> <label for="CPF" class="col-form-label form-control-sm">CPF</label> <input name="cpf" id = "cpf" type="text" class="form-control form-control-sm is-valid" placeholder="CPF" value="{$cpf}" required> <div class="invalid-tooltip"> Por favor, informe um cpf válido. </div> </div> <div class="col"> <label for="RG" class="col-form-label form-control-sm">RG</label> <input name="rg" type="text" class="form-control form-control-sm" placeholder="RG" value="{$rg}" required> </div> <div class="col"> <label for="genero" class="col-sm-2 col-form-label form-control-sm">Etnia</label> <select id="genero" class="form-control form-control-sm"> <option selected>Selecione...</option> <option value="1">Branco</option> <option value="1">Preto</option> </select> </div> </div> </div> <div class="form-group"> <label for="Contato" class="col-form-label">Contato</label> <div class="form-row"> <div class="col col-md-1"> <label for="ddi" class="col-sm-2 col-form-label form-control-sm">DDI</label> <input type="text" class="form-control form-control-sm" name = "ddi" id="ddi" placeholder="ddi" value="{$ddi}" required> </div> <div class="col col-md-1"> <label for="ddd" class="col-sm-1 col-form-label form-control-sm">DDD</label> <input type="text" class="form-control form-control-sm" name = "ddd" id="logradouro" placeholder="ddd" value="{$ddd}" required> </div> <div class="col col-md-5"> <label for="telefone" class="col-sm-1 col-form-label form-control-sm">Telefone</label> <input type="text" class="form-control form-control-sm" name = "telefone" id="telefone" placeholder="Telefone" value="{$telefone}" required> </div> <div class="col col-md-5"> <label for="celeular" class="col-sm-1 col-form-label form-control-sm">Celular</label> <input type="text" class="form-control form-control-sm" name = "telefone" id="celular" placeholder="Celular" value="{$celular}" required> </div> </div> <div class="form-row"> <div class="col col-md-6"> <label for="email" class="col-sm-2 col-form-label form-control-sm">Email</label> <input type="text" class="form-control form-control-sm" name = "email" id="email" placeholder="E-Mail" value="{$email}" required> </div> <div class="col col-md-6"> <label for="Site" class="col-sm-2 col-form-label form-control-sm">Site</label> <input type="text" class="form-control form-control-sm" name = "site" id="site" placeholder="Site" value="{$site}" required> </div> </div> </div> <div class="form-group"> <label for="Contato" class="col-form-label" >Endereço</label> <div class="form-row"> <div class="col col-md-2"> <label for="Cep" class="col-sm-2 col-form-label form-control-sm">Cep</label> <input type="text" class="form-control form-control-sm" name = "cep" id="cep" placeholder="Logradouro" value="{$cep}" required> </div> <div class="col col-md-8"> <label for="logradouro" class="col-sm-2 col-form-label form-control-sm">Logradouro</label> <input type="text" class="form-control form-control-sm" name = "logradouro" id="logradouro" placeholder="Logradouro" value="{$logradouro}" required> </div> <div class="col col-md-2"> <label for="numero" class="col-sm-2 col-form-label form-control-sm">Número</label> <input type="text" class="form-control form-control-sm" name = "numero" id="logradouro" placeholder="Número" value="{$numero}" required> </div> </div> <div class="form-row"> <div class="col col-md-3"> <label for="Bairro" class="col-sm-2 col-form-label form-control-sm">Bairro</label> <input type="text" class="form-control form-control-sm" name = "bairro" id="bairro" placeholder="Bairro" value="{$bairro}" required> </div> <div class="col col-md-3"> <label for="Cidade" class="col-sm-2 col-form-label form-control-sm">Cidade</label> <input type="text" class="form-control form-control-sm" name = "cidade" id="cidade" placeholder="Cidade" value="{$cidade}" required> </div> <div class="col col-md-1"> <label for="UF" class="col-sm-2 col-form-label form-control-sm">UF</label> <input type="text" class="form-control form-control-sm" name = "uf" id="uf" placeholder="UF" value="{$uf}" required> </div> <div class="col col-md-5"> <label for="complemento" class="col-sm-2 col-form-label form-control-sm">Complemento</label> <input type="text" class="form-control form-control-sm" name = "complemento" id="uf" placeholder="Complemento" value="{$complemento}" required> </div> </div> </div> </div> <button type="submit" class="btn btn-primary">Enviar</button> </div> </form> <script> // Exemplo de JavaScript inicial para desativar envios de formulário, se houver campos inválidos. (function() { 'use strict'; window.addEventListener('load', function() { // Pega todos os formulários que nós queremos aplicar estilos de validação Bootstrap personalizados. var forms = document.getElementsByClassName('needs-validation'); // Faz um loop neles e evita o envio var validation = Array.prototype.filter.call(forms, function(form) { form.addEventListener('submit', function(event) { if (form.checkValidity() === false) { event.preventDefault(); event.stopPropagation(); } form.classList.add('was-validated'); }, false); }); }, false); })(); </script> <!--[/main]-->



Pacotão Dominando o Adianti Framework 7
O material mais completo de treinamento do Framework.
Curso em vídeo aulas + Livro completo + Códigos fontes do projeto ERPHouse.
Conteúdo Atualizado! Versão 7.4


Dominando o Adianti 7 Quero me inscrever agora!

Comentários (1)


NR

Uma combo pode ter vários "<option>" e será exibido o que estiver com o atributo "selected" definido. Você está definindo esse atributo para "<option selected>Selecione...</option>", então essa será a opção selecionada da combo.

Sobre as datas, tente informar em formato americano.

Mais informações:
https://developer.mozilla.org/pt-BR/docs/Web/HTML/Element/Input/data
https://developer.mozilla.org/pt-BR/docs/Web/HTML/Element/select</option>