コード例 #1
0
 /**
  * method onEdit()
  * Executed whenever the user clicks at the edit button da datagrid
  */
 function onEdit($param)
 {
     $string = new StringsUtil();
     try {
         TTransaction::open('atividade');
         // open a transaction
         $logado = Pessoa::retornaUsuario();
         if (isset($param['key'])) {
             $key = $param['key'];
             // get the parameter $key
             $atividade = new Atividade($key);
             $criteria = new TCriteria();
             $newparam['order'] = 'id';
             $newparam['direction'] = 'asc';
             $criteria->setProperties($newparam);
             // order, offset
             $this->onComboTicket($criteria);
             $this->onSetarValoresCombo($atividade->ticket_id);
             // criar metodo de preenchimento de horas
             $HoraEntrada = new DateTime($atividade->hora_inicio);
             $HoraSaida = new DateTime($atividade->hora_fim);
             $diffHoras = $HoraSaida->diff($HoraEntrada)->format('%H:%I:%S');
             $horas = explode(':', $atividade->hora_fim);
             $atividade->qtde_horas = $horas[0];
             $atividade->qtde_minutos = $horas[1];
             TCombo::disableField('form_Atividade', 'qtde_horas');
             TCombo::disableField('form_Atividade', 'qtde_minutos');
             $atividade->tempo_atividade = $diffHoras;
             $ultimaAtividade = Atividade::retornaUltimaAtividade($atividade->colaborador_id);
             if (!$ultimaAtividade) {
                 $action = new TAction(array('AtividadeList', 'onReload'));
                 new TMessage('info', 'Nenhuma atividade cadastrada!', $action);
                 // success message
             }
             if ($key != $ultimaAtividade) {
                 TButton::disableField('form_Atividade', 'delete');
             }
             $atividade->data_atividade ? $atividade->data_atividade = $string->formatDateBR($atividade->data_atividade) : null;
             $colaborador = new Pessoa($atividade->colaborador_id);
             $atividade->colaborador_nome = $colaborador->pessoa_nome;
             if ($logado->pessoa_codigo != $atividade->colaborador_id) {
                 TButton::disableField('form_Atividade', 'save');
                 TButton::disableField('form_Atividade', 'delete');
             }
             TButton::disableField('form_Atividade', 'atividade');
             $this->form->setData($atividade);
             // fill the form
         } else {
             $object = new Atividade();
             $object->colaborador_id = $logado->pessoa_codigo;
             $object->colaborador_nome = $logado->pessoa_nome;
             $this->form->setData($object);
         }
         TTransaction::close();
         // close the transaction
     } catch (Exception $e) {
         new TMessage('error', '<b>Error</b> ' . $e->getMessage());
         // shows the exception error message
         TTransaction::rollback();
         // undo all pending operations
     }
 }