Lançado Adianti Framework 7.6!
Clique aqui para saber mais
Desabilitar TDate num FieldList No código abaixo consigo desabilitar as colunas do FieldList, porém os campos TDate, ficam com os botões de calendário habilitado, conforme imagem em anexo. Alguém já teve esse problema? E outra dica seria como desabilitar o botão de incluir do FieldList. É para que nada seja modificado numa alteração cujo processo está Encerrado. ...
DA
Desabilitar TDate num FieldList  
No código abaixo consigo desabilitar as colunas do FieldList, porém os campos TDate, ficam com os botões de calendário habilitado, conforme imagem em anexo. Alguém já teve esse problema? E outra dica seria como desabilitar o botão de incluir do FieldList. É para que nada seja modificado numa alteração cujo processo está Encerrado.

  1. <?php
  2.  $items  ProcessoAdvogado::where('processo_id''='$key)->load();
  3.                
  4.                if ($items)
  5.                {
  6.                    $this->fieldlist->addHeader();
  7.                    
  8.                    foreach($items  as $item )
  9.                    {
  10.                        $detail = new stdClass;
  11.                        $detail->list_advogado_id $item->advogado_id;
  12.                        $detail->list_inicio $item->inicio;
  13.                        $detail->list_final $item->final;
  14.                        $row $this->fieldlist->addDetail($detail);
  15.                        
  16.                        if ($object->situacao == '1')
  17.                        {
  18.                        $row->del($row->get(count($row->getChildren())-1));
  19.                        
  20.                        $row->get(1)->get(0)->setEditable(false); 
  21.                        $row->get(2)->get(0)->setEditable(false); 
  22.                        $row->get(3)->get(0)->setEditable(false); 
  23.                       
  24.                       
  25.                        }
  26.                    }
  27.                    
  28.                    $this->fieldlist->addCloneAction();
  29.                   
  30.                }
  31.                else
  32.                {
  33.                    $this->onClear($param);
  34.                }
  35. ?>

Curso completo Meu Negócio Pronto
Use para si, ou transforme em um negócio: Inclui aulas e códigos-fontes
Gestor de conteúdo (SITE) + Loja Virtual (E-Commerce) + Emissor de Notas para infoprodutos


Meu negócio pronto Quero me inscrever agora!

Comentários (4)


DA

Enquanto escrevia veio uma idéia com relação ao botão de inserir, fiz a modificação e ficou resolvido condicionei a inclusão do addCloneAction() apenas quando não estivesse encerrado, ficou conforme o código abaixo. Agora do botão do calendário sem chances.

  1. <?php
  2.  $items  ProcessoAdvogado::where('processo_id''='$key)->load();
  3.                
  4.                if ($items)
  5.                {
  6.                    $this->fieldlist->addHeader();
  7.                    
  8.                    foreach($items  as $item )
  9.                    {
  10.                        $detail = new stdClass;
  11.                        $detail->list_advogado_id $item->advogado_id;
  12.                        $detail->list_inicio $item->inicio;
  13.                        $detail->list_final $item->final;
  14.                        $row $this->fieldlist->addDetail($detail);
  15.                        
  16.                        if ($object->situacao == '1')
  17.                        {
  18.                        $row->del($row->get(count($row->getChildren())-1));
  19.                        $row->get(1)->get(0)->setEditable(false); 
  20.                        $row->get(2)->get(0)->setEditable(false); 
  21.                        $row->get(3)->get(0)->setEditable(false); 
  22.                       
  23.                       
  24.                        }
  25.                    }
  26.                    
  27.                                  
  28.                }
  29.                else
  30.                {
  31.                    $this->onClear($param);
  32.                }
  33.                
  34.                if ($object->situacao == '1')
  35.                {
  36.                 $this->areas_id->setEditable(FALSE);
  37.                 $this->status_id->setEditable(FALSE);
  38.                 $this->vara_id->setEditable(FALSE);
  39.                 $this->juiz_id->setEditable(FALSE);
  40.                 $this->numero->setEditable(FALSE);
  41.                 $this->insercao->setEditable(FALSE);
  42.                 $this->ajuizamento->setEditable(FALSE);
  43.                 $this->parteadversa->setEditable(FALSE);
  44.                 $this->assunto->setEditable(FALSE);
  45.                 $this->polo->setEditable(FALSE);
  46.                 $this->observacao->setEditable(FALSE);
  47.                 $this->judicial->setEditable(FALSE);
  48.                 $this->estrategia->setEditable(FALSE);
  49.                 $this->despachar->setEditable(FALSE);
  50.                 $this->contrato_id->setEditable(FALSE);
  51.                 $this->cliente_id->setEditable(FALSE);
  52.                 $this->situacao->setEditable(FALSE);
  53.                 $this->encerramento->setEditable(FALSE);
  54.                }
  55.                 else
  56.                {
  57.                 $this->fieldlist->addCloneAction();   
  58.                }
  59. ?>
MC

Data - TDate::disableField($form_name, $field)
Time - TTime::disableField($form_name, $field)
DA

Olá, Marco

Acho que esse comando não funciona para o TDate dentro de um FieldList.

Tentei de acordo com o que passou, validei no livro também e não funcionou.

Grato pela ajuda.
DA

Boa Noite, pessoal

Para quem tiver um problema parecido com o meu, dei uma fuçada no manual da Api do Framework e o TDate tem a função setOption com o parametro 'datesDisabled', foi o que resolveu meu problema, os botões não ficam marcados como desabilitados porém o calendário não é mais chamado. Fica a dica.

  1. <?php
  2.                        $row->get(1)->get(0)->setEditable(false); 
  3.                        $row->get(2)->get(0)->setEditable(false); 
  4.                        $row->get(2)->get(0)->setOption('datesDisabled',true); 
  5.                        $row->get(3)->get(0)->setEditable(false); 
  6.                        $row->get(3)->get(0)->setOption('datesDisabled',true); 
  7. ?>