/** * Class constructor * Creates the page, the form and the listing */ public function __construct() { parent::__construct(); // creates the form $this->form = new TForm('form_FreqServList'); $this->form->class = 'tform'; // creates a table $table = new TTable(); $table->style = 'width:100%'; $table->addRowSet(new TLabel('Frequência'), '')->class = 'tformtitle'; // add the table inside the form $this->form->add($table); // create the form fields //$id = new TEntry('ID'); //$id->setValue(TSession::getValue('Frequencia_id')); $servidor_id = new TDBSeekButton('servidor_id', 'lacenrh', 'form_FreqServList', 'Servidor', 'servidor', 'servidor_id', 'servidor_nome'); $servidor_id->setValue(TSession::getValue('Frequencia_servidor_id')); $servidor_nome = new TEntry('servidor_nome'); $servidor_nome->setValue(TSession::getValue('Frequencia_servidor_nome')); $diames = new TDate('Data'); $diames->setValue(TSession::getValue('Frequencia_diames')); //$id->setSize(40); $servidor_id->setSize(40); $servidor_nome->setSize(300); $diames->setSize(100); $diames->setMask('dd/mm/yyyy'); // add rows for the filter fields //$row=$table->addRowSet(new TLabel(('ID') . ': '), $id); $row = $table->addRowSet(new TLabel('Servidor' . ': '), $servidor_id); $row = $table->addRowSet(new TLabel('Nome' . ': '), $servidor_nome); $row = $table->addRowSet(new TLabel('Data' . ': '), $diames); //$row=$table->addRowSet(new TLabel(('Unidade') . ': '), $unidade); // create two action buttons to the form $find_button = new TButton('find'); $clear_button = new Tbutton('clear'); $new_button = new TButton('new'); // define the button actions $find_button->setAction(new TAction(array($this, 'onSearch')), _t('Find')); $find_button->setImage('fa:search fa-lg'); $clear_button->setAction(new TAction(array($this, 'onClear')), 'Limpar'); $clear_button->setImage('fa:undo red fa-lg'); $new_button->setAction(new TAction(array('FrequenciaServidorForm', 'onEdit')), _t('New')); $new_button->setImage('fa:plus-square green fa-lg'); // define wich are the form fields $this->form->setFields(array($servidor_id, $servidor_nome, $diames, $find_button, $clear_button, $new_button)); $container = new THBox(); $container->add($find_button); $container->add($clear_button); $container->add($new_button); $row = $table->addRow(); $row->class = 'tformaction'; $cell = $row->addCell($container); $cell->colspan = 2; // creates a DataGrid $this->datagrid = new TDataGrid(); $this->datagrid->style = 'width: 100%'; $this->datagrid->setHeight(320); // creates the datagrid columns $servidor_nome = new TDataGridColumn('servidor_nome', 'Nome', 'left', 200); $diames = new TDataGridColumn('diames', 'Data', 'center', 50); $entrada = new TDataGridColumn('entrada', 'Entrada', 'center', 40); $intervalo_inicio = new TDataGridColumn('intervalo_inicio', 'Saída', 'center', 50); $intervalo_fim = new TDataGridColumn('intervalo_fim', 'Entrada', 'center', 50); $saida = new TDataGridColumn('saida', 'Saída', 'center', 50); $ausencia_desc = new TDataGridColumn('ausencia_desc', 'Ausência', 'left'); // add the columns to the DataGrid $this->datagrid->addColumn($servidor_nome); $this->datagrid->addColumn($diames); $this->datagrid->addColumn($entrada); $this->datagrid->addColumn($intervalo_inicio); $this->datagrid->addColumn($intervalo_fim); $this->datagrid->addColumn($saida); $this->datagrid->addColumn($ausencia_desc); $order_servidor_nome = new TAction(array($this, 'onReload')); $order_servidor_nome->setParameter('order', 'servidor_nome'); $servidor_nome->setAction($order_servidor_nome); $order_diames = new TAction(array($this, 'onReload')); $order_diames->setParameter('order', 'diames'); $diames->setAction($order_diames); // inline editing $servidor_entrada_edit = new TDataGridAction(array($this, 'onInlineEdit')); $servidor_entrada_edit->setField('id'); $entrada->setEditAction($servidor_entrada_edit); $servidor_intervalo_inicio_edit = new TDataGridAction(array($this, 'onInlineEdit')); $servidor_intervalo_inicio_edit->setField('id'); $intervalo_inicio->setEditAction($servidor_intervalo_inicio_edit); $servidor_intervalo_fim_edit = new TDataGridAction(array($this, 'onInlineEdit')); $servidor_intervalo_fim_edit->setField('id'); $intervalo_fim->setEditAction($servidor_intervalo_fim_edit); $servidor_saida_edit = new TDataGridAction(array($this, 'onInlineEdit')); $servidor_saida_edit->setField('id'); $saida->setEditAction($servidor_saida_edit); // creates two datagrid actions $action1 = new TDataGridAction(array('FrequenciaServidorForm', 'onEdit')); $action1->setLabel(_t('Edit')); $action1->setImage('fa:pencil-square-o blue'); $action1->setField('id'); $action2 = new TDataGridAction(array($this, 'onDelete')); $action2->setLabel(_t('Delete')); $action2->setImage('fa:trash-o red'); $action2->setField('id'); $action3 = new TDataGridAction(array('FrequenciaServidorForm', 'onFrequencia')); $action3->setLabel('Informação'); $action3->setImage('fa:info-circle blue'); $action3->setField('id'); // add the actions to the datagrid $this->datagrid->addAction($action3); $this->datagrid->addAction($action1); $this->datagrid->addAction($action2); // create the datagrid model $this->datagrid->createModel(); // creates the page navigation $this->pageNavigation = new TPageNavigation(); $this->pageNavigation->setAction(new TAction(array($this, 'onReload'))); $this->pageNavigation->setWidth($this->datagrid->getWidth()); // creates the page structure using a table $table = new TTable(); $table->style = 'width: 80%'; $table->addRow()->addCell(new TXMLBreadCrumb('menu.xml', 'FrequenciaServidorList')); $table->addRow()->addCell($this->form); $table->addRow()->addCell($this->datagrid); $table->addRow()->addCell($this->pageNavigation); // add the table inside the page parent::add($table); }