function __construct() { parent::__construct(); //cria os containers $this->form_requisicao = new TForm('form_requisicao'); $this->form_requisicao->class = 'tform'; $this->form_itens = new TForm('form_itens'); $this->form_itens->class = 'tform'; $table_requisicao = new TTable(); $table_requisicao->width = '100%'; $table_itens = new TTable(); $table_itens->width = '100%'; //empacota os dados $this->form_requisicao->add($table_requisicao); $this->form_itens->add($table_itens); //campos da requisicao; $numeroSRP = new TSeekButton('numeroSRP'); $nome = new TEntry('nome'); $numeroProcessoOrigem = new TEntry('numeroProcessoOrigem'); $uasg = new TEntry('uasg'); $validadeAta = new TEntry('validade'); $numeroProcesso = new TEntry('numeroProcesso'); $emissao = new TDate('emissao'); //campos do itens $numeroItem = new TSeekButton('numeroItem'); $item_id = new THidden('item_id'); $descricaoSumaria = new TEntry('descricaoSumaria'); $valorUnitario = new TEntry('valorUnitario'); $quantidade = new TEntry('quantidade'); $prazoEntrega = new TEntry('prazoEntrega'); $justificativa = new TEntry('justificativa'); $addItem = new TButton('addItem'); $save = new TButton('save'); $new = new TButton('new'); $list = new TButton('list'); //ações dos campos $numeroSRP->setAction(new TAction(array(new SrpSeekRequisicao(), 'onReload'))); $numeroProcesso->setExitAction(new TAction(array($this, 'onExitNumeroProcesso'))); $emissao->setExitAction(new TAction(array($this, 'onExitEmissao'))); $numeroItem->setAction(new TAction(array(new ItemSeekRequisicao(), 'onReload'))); $addItem->setAction(new TAction(array($this, 'onAddItem')), 'Adicionar'); $addItem->setImage('fa:plus-square-o'); $save->setAction(new TAction(array($this, 'onSave')), 'Salvar'); $save->setImage('ico_save.png'); $new->setAction(new TAction(array($this, 'onEdit')), 'Novo'); $new->setImage('ico_new.png'); $list->setAction(new TAction(array('RequisicaoList', 'onReload')), 'Voltar para listagem'); $list->setImage('ico_datagrid.png'); //$onProductChange = new TAction(array($this, 'onProductChange')); //$item_id->setExitAction($onProductChange); $quantidade->setExitAction(new TAction(array($this, 'onValidaQuantidade'))); //validadores $numeroSRP->addValidation('Nº SRP', new TRequiredValidator()); $emissao->addValidation('Emissão', new TRequiredValidator()); $numeroItem->addValidation('Item', new TRequiredValidator()); $valorUnitario->addValidation('Preço', new TRequiredValidator()); $quantidade->addValidation('Quantidade', new TRequiredValidator()); $quantidade->addValidation('Quantidade', new TMinValueValidator(), array(1)); $quantidade->addValidation('Quantidade', new TMaxLengthValidator(), array(11)); $justificativa->addValidation('Justificativa', new TRequiredValidator()); $justificativa->addValidation('Justificativa', new TMaxLengthValidator(), array(100)); $prazoEntrega->addValidation('Prazo de entrega', new TRequiredValidator()); $prazoEntrega->addValidation('Prazo de entrega', new TMaxLengthValidator(), array(20)); $numeroProcesso->addValidation('Nº Processo', new TRequiredValidator()); $numeroProcesso->addValidation('Nº Processo', new TMaxLengthValidator(), array(30)); //outras propriedades $descricaoSumaria->setEditable(false); $nome->setEditable(false); $numeroProcessoOrigem->setEditable(false); $uasg->setEditable(false); $validadeAta->setEditable(false); $valorUnitario->setEditable(false); $numeroSRP->setSize(80); $numeroSRP->setMaxLength(10); $emissao->setProperty('style', 'margin-right: 0px;', false); $nome->setSize(300); $nome->setProperty('style', 'margin-right: 10px', false); $numeroProcessoOrigem->setSize(160); $uasg->setSize(70); $validadeAta->setSize(85); $numeroProcesso->setMaxLength(30); $numeroProcesso->setTip('Número do processo gerado no SIGA'); $numeroItem->setSize(60); $numeroItem->setMaxLength(11); $descricaoSumaria->setSize(490); $descricaoSumaria->setProperty('style', 'margin-right: 10px', false); $prazoEntrega->setSize(90); $justificativa->setSize(400); $justificativa->setMaxLength(100); $emissao->setSize(90); $emissao->setMask('dd/mm/yyyy'); $emissao->setValue(date('d/m/Y')); $validadeAta->setMask('dd/mm/yyyy'); $quantidade->class = 'frm_number_only'; $quantidade->setMaxLength(11); $prazoEntrega->setValue('60 Dias'); $prazoEntrega->setMaxLength(20); //$addItem->setProperty('style', 'margin: 0 0 10px 10px;', false); $row = $table_requisicao->addRow(); $row->class = 'tformtitle'; // CSS class $cell = $row->addCell(new TLabel('Requisição de quantitativo')); $cell->colspan = 4; $row = $table_requisicao->addRow(); $row->addCell(new TLabel('Nº SRP:'))->width = '150px'; $row->addCell($numeroSRP); $row->addCell(new TLabel('Nome Licitação:'))->width = '150px'; $row->addCell($nome); $table_requisicao->addRowSet(new TLabel('Proc. Orig:'), $numeroProcessoOrigem, new TLabel('UASG:'), $uasg); $table_requisicao->addRowSet(new TLabel('Validade da Ata:'), $validadeAta, new TLabel('Nº Processo:'), $numeroProcesso); $table_requisicao->addRowSet(new TLabel('Data Emissão:'), $emissao); $row = $table_itens->addRow(); $row->class = 'tformtitle'; // CSS class $cell = $row->addCell(new TLabel('Itens')); $cell->colspan = 4; $row = $table_itens->addRow(); $row->addCell(new TLabel('Item:')); $box = new THBox(); $box->add($numeroItem); $box->add($descricaoSumaria)->style = 'width : 75%;display:inline-block;'; $row->addCell($box); //->style = 'width : 85%'; $table_itens->addRowSet($item_id); $table_itens->addRowSet(new TLabel('Preço:'), $valorUnitario); $table_itens->addRowSet(new TLabel('Quantidade:'), $quantidade); $table_itens->addRowSet(new TLabel('Prazo de entrega:'), $prazoEntrega); $table_itens->addRowSet(new TLabel('Justificativa:'), $justificativa); $row = $table_itens->addRow(); $row->class = 'tformaction'; $row->addCell($addItem)->colspan = 2; //$table_itens->addRowSet($addItem); parent::include_css('app/resources/custom-table.css'); $this->datagrid = new TDataGrid(); $this->datagrid->style = 'width: 100%'; $this->datagrid->class = 'tdatagrid_table customized-table'; $this->datagrid->setHeight(175); $this->datagrid->makeScrollable(); $this->datagrid->disableDefaultClick(); $GnumeroItem = new TDataGridColumn('numeroItem', 'Item', 'center', 50); $GdescricaoSumaria = new TDataGridColumn('descricaoSumaria', 'Descrição', 'left', 230); $Gquantidade = new TDataGridColumn('quantidade', 'Quantidade', 'right', 110); $GvalorUnitario = new TDataGridColumn('valorUnitario', 'Preço', 'right', 110); $Gtotal = new TDataGridColumn('total', 'Total', 'right', 160); //transformers $GvalorUnitario->setTransformer(array($this, 'formatValor')); $Gtotal->setTransformer(array($this, 'formatValor')); $edit = new TDataGridAction(array($this, 'onEditItem')); $edit->setLabel('Editar'); $edit->setImage('ico_edit.png'); $edit->setField('numeroItem'); $delete = new TDataGridAction(array($this, 'onDeleteItem')); $delete->setLabel('Deletar'); $delete->setImage('ico_delete.png'); $delete->setField('numeroItem'); $this->datagrid->addAction($edit); $this->datagrid->addAction($delete); $this->datagrid->addColumn($GnumeroItem); $this->datagrid->addColumn($GdescricaoSumaria); $this->datagrid->addColumn($Gquantidade); $this->datagrid->addColumn($GvalorUnitario); $this->datagrid->addColumn($Gtotal); $this->datagrid->createModel(); $this->form_requisicao->setFields(array($numeroSRP, $nome, $numeroProcessoOrigem, $uasg, $validadeAta, $numeroProcesso, $emissao, $new, $save, $list)); $this->form_itens->setFields(array($item_id, $numeroItem, $descricaoSumaria, $valorUnitario, $quantidade, $prazoEntrega, $justificativa, $addItem)); $hbox = new THBox(); $hbox->add($save); $hbox->add($new); $hbox->add($list); $table_grid = new TTable(); $table_grid->style = 'width: 100%;border-spacing: 0px;'; $table_grid->addRowSet($this->datagrid); $row = $table_grid->addRow(); $row->class = 'tformaction'; // CSS class $row->addCell($hbox)->colspan = 2; $vbox = new TVBox(); $vbox->add($this->form_requisicao); $vbox->add($this->form_itens); $vbox->add($table_grid); $vbox->add(new TLabel(' ')); parent::add($vbox); }
/** * Add a multi-cell content to a table cell * @param $cells Each argument is a row cell */ public function addMultiCell() { $wrapper = new THBox(); $args = func_get_args(); if ($args) { foreach ($args as $arg) { $wrapper->add($arg); } } $this->addCell($wrapper); }
/** * Add a form field * @param $label Field Label * @param $objects Array of Objects * @param $required Boolean TRUE if required */ public function addQuickFields($label, $objects, $required = FALSE) { if (empty($this->currentRow) or $this->fieldPositions % $this->fieldsByRow == 0) { // add the field to the container $this->currentRow = $this->table->addRow(); } $row = $this->currentRow; if ($required) { $label_field = new TLabel($label . '(*)'); $label_field->setFontColor('#FF0000'); } else { $label_field = new TLabel($label); } $row->addCell($label_field); $hbox = new THBox(); foreach ($objects as $object) { parent::addField($object); $object->setLabel($label); $hbox->add($object); } $row->addCell($hbox); $this->fieldPositions++; return $row; }
/** * Class constructor * Creates the page, the form and the listing */ public function __construct() { parent::__construct(); // Cria o form $this->form = new TForm('form_search_Funcionalidade'); $this->form->class = 'tform'; // cria a tabela $table = new TTable(); $table->style = 'width:100%'; $table->addRowSet(new TLabel('Consulta Funcionalidades'), '')->class = 'tformtitle'; // adiciona a tabela no form $this->form->add($table); // cria os campos de pesquisa do form $nome = new TEntry('nome'); $nome->setValue(TSession::getValue('Funcionalidade_nome')); $nome->setSize(500); $control = new TEntry('classe'); $control->setValue(TSession::getValue('Funcionalidade_control')); $control->setSize(500); // adiciona linha para os campos de filtro $row = $table->addRowSet(new TLabel('Nome: '), $nome); $row = $table->addRowSet(new TLabel('Classe de Controle: '), $control); // cria dois botoes de acao para o form $find_button = new TButton('find'); $new_button = new TButton('new'); // define as acoes dos botoes $find_button->setAction(new TAction(array($this, 'onSearch')), 'Buscar'); $find_button->setImage('ico_find.png'); $new_button->setAction(new TAction(array('FuncionalidadeForm', 'onEdit')), 'Novo'); $new_button->setImage('ico_new.png'); // define quais sao os campos do form $this->form->setFields(array($nome, $control, $find_button, $new_button)); $container = new THBox(); $container->add($find_button); $container->add($new_button); //$container->style = "float: right"; $row = $table->addRow(); $row->class = 'tformaction'; $cell = $row->addCell($container); $cell->colspan = 2; parent::include_css('app/resources/custom-table.css'); // cria o datagrid $this->datagrid = new TDataGrid(); $this->datagrid->style = 'width: 100%'; $this->datagrid->class = 'tdatagrid_table customized-table'; $this->datagrid->setHeight(320); // cria as colunas do datagrid $id = new TDataGridColumn('id', 'ID', 'right'); $nome = new TDataGridColumn('nome', 'Nome', 'left'); $classe = new TDataGridColumn('classe', 'Classe de Controle', 'left'); // adiciona as colunas ao datagrid $this->datagrid->addColumn($id); $this->datagrid->addColumn($nome); $this->datagrid->addColumn($classe); // cria as acoes das colunas do datagrid $order_id = new TAction(array($this, 'onReload')); $order_id->setParameter('order', 'id'); $id->setAction($order_id); $order_nome = new TAction(array($this, 'onReload')); $order_nome->setParameter('order', 'nome'); $nome->setAction($order_nome); $order_classe = new TAction(array($this, 'onReload')); $order_classe->setParameter('order', 'classe'); $classe->setAction($order_classe); // edicao inline $nome_edit = new TDataGridAction(array($this, 'onInlineEdit')); $nome_edit->setField('id'); $nome->setEditAction($nome_edit); $classe_edit = new TDataGridAction(array($this, 'onInlineEdit')); $classe_edit->setField('id'); $classe->setEditAction($classe_edit); // cria 2 acoes do datagrid $action1 = new TDataGridAction(array('FuncionalidadeForm', 'onEdit')); $action1->setLabel('Editar'); $action1->setImage('ico_edit.png'); $action1->setField('id'); $action2 = new TDataGridAction(array($this, 'onDelete')); $action2->setLabel('Excluir'); $action2->setImage('ico_delete.png'); $action2->setField('id'); // adiciona as acoes ao datagrid $this->datagrid->addAction($action1); $this->datagrid->addAction($action2); // cria o modelo do datagrid $this->datagrid->createModel(); // cria o navegador de paginas $this->pageNavigation = new TPageNavigation(); $this->pageNavigation->setAction(new TAction(array($this, 'onReload'))); $this->pageNavigation->setWidth($this->datagrid->getWidth()); // cria a estrutura da pagina usando tabela $table = new TTable(); $table->style = 'width: 80%'; $table->addRow()->addCell(new TXMLBreadCrumb('menu.xml', __CLASS__)); $table->addRow()->addCell($this->form); $table->addRow()->addCell($this->datagrid); $table->addRow()->addCell($this->pageNavigation); // adiciona a tabela $table dentro da pagina parent::add($table); }
/** * Show the widget at the screen */ public function show() { $wrapper = new TElement('div'); $wrapper->{'mtf_name'} = $this->getName(); // include the needed libraries and styles if ($this->fields) { $table = new TTable(); $mandatory = array(); // mandatory $fields = array(); $i = 0; if ($this->orientation == 'horizontal') { $row_label = $table->addRow(); $row_field = $table->addRow(); } foreach ($this->fields as $name => $obj) { if ($this->orientation == 'vertical') { $row = $table->addRow(); $row_label = $row; $row_field = $row; } $label = new TLabel($obj->text); if ($obj->mandatory) { $label->setFontColor('red'); } $row_label->addCell($label); $row_field->addCell($obj->field); $mandatory[] = $obj->mandatory; $fields[] = $name; $post_fields[$name] = 1; $sizes[$name] = $obj->size; $obj->field->setName($this->name . '_' . $name); if (in_array(get_class($obj->field), array('TComboCombined', 'Adianti\\Widget\\Form\\TComboCombined'))) { $aux_name = $obj->field->getTextName(); $aux_full_name = $this->name . '_' . $aux_name; $mandatory[] = 0; $obj->field->setTextName($aux_full_name); $fields[] = $aux_name; $post_fields[$aux_name] = 1; // invert sizes $sizes[$aux_name] = $obj->size; $sizes[$name] = 20; $i++; } $i++; } $wrapper->add($table); } // check whether the widget is non-editable if (parent::getEditable()) { // create three buttons to control the MultiField $add = new TButton("{$this->name}btnStore"); $add->setLabel(AdiantiCoreTranslator::translate('Register')); //$add->setName("{$this->name}btnStore"); $add->setImage('ico_save.png'); $add->addFunction("mtf{$this->name}.addRowFromFormFields()"); $del = new TButton("{$this->name}btnDelete"); $del->setLabel(AdiantiCoreTranslator::translate('Delete')); $del->setImage('ico_delete.png'); $can = new TButton("{$this->name}btnCancel"); $can->setLabel(AdiantiCoreTranslator::translate('Cancel')); $can->setImage('ico_close.png'); $hbox_buttons = new THBox(); $hbox_buttons->{'style'} = 'margin-top:3px;margin-bottom:3px'; $hbox_buttons->add($add); $hbox_buttons->add($del); $hbox_buttons->add($can); $wrapper->add($hbox_buttons); } // create the MultiField Panel $panel = new TElement('div'); $panel->{'class'} = "multifieldDiv"; $input = new THidden($this->name); $panel->add($input); // create the MultiField DataGrid Header $table = new TTable(); $table->{'class'} = 'multifield'; $table->{'id'} = "{$this->name}mfTable"; $head = new TElement('thead'); $table->add($head); $row = new TTableRow(); $head->add($row); // fill the MultiField DataGrid if ($this->fields) { foreach ($this->fields as $obj) { $c = $obj->text; if (in_array(get_class($obj->field), array('TComboCombined', 'Adianti\\Widget\\Form\\TComboCombined'))) { $cell = $row->addCell('ID'); $cell->{'width'} = '20px'; $cell->{'class'} = 'multifield_header'; } $cell = $row->addCell($c); $cell->{'width'} = $obj->size . 'px'; $cell->{'class'} = 'multifield_header'; } } $body_height = $this->height - 34; $body = new TElement('tbody'); $body->{'style'} = "height: {$body_height}px"; $body->{'class'} = 'tmultifield_scrolling'; $table->add($body); if ($this->objects) { foreach ($this->objects as $obj) { if (isset($obj->id)) { $row = new TTableRow(); $row->dbId = $obj->id; $body->add($row); } else { $row = new TTableRow(); $body->add($row); } if ($fields) { foreach ($fields as $name) { $cellValue = is_null($obj->{$name}) ? '' : $obj->{$name}; $original = $cellValue; if (is_array(json_decode($cellValue))) { $content = json_decode($cellValue); $rows = array(); foreach ($content as $_row) { $rows[] = implode(':', array_values(get_object_vars($_row))); } $cellValue = implode(',', $rows); $cell = $row->addCell($cellValue); $cell->{'data'} = htmlspecialchars($original); } else { $cell = $row->addCell($cellValue); $cell->{'data'} = $cellValue; } if (isset($sizes[$name])) { $cell->style = 'width:' . $sizes[$name] . 'px;'; } } } } } $panel->add($table); $wrapper->add($panel); $wrapper->show(); echo '<script type="text/javascript">'; echo "var mtf{$this->name};"; echo "mtf{$this->name} = new MultiField('{$this->name}mfTable',{$this->width},{$this->height});\n"; $s = implode("','", $fields); echo "mtf{$this->name}.formFieldsAlias = Array('{$s}');\n"; $sfields = implode("','{$this->name}_", $fields); echo "mtf{$this->name}.formFieldsName = Array('{$this->name}_{$sfields}');\n"; echo "mtf{$this->name}.formPostFields = Array();\n"; if ($post_fields) { foreach ($post_fields as $col => $value) { echo "mtf{$this->name}.formPostFields['{$col}'] = '{$value}';\n"; } } $mdr_array = implode(',', $mandatory); echo "mtf{$this->name}.formFieldsMandatory = [{$mdr_array}];\n"; echo "mtf{$this->name}.mandatoryMessage = '" . AdiantiCoreTranslator::translate('The field ^1 is required') . "';\n"; echo "mtf{$this->name}.storeButton = document.getElementsByName('{$this->name}btnStore')[0];\n"; echo "mtf{$this->name}.deleteButton = document.getElementsByName('{$this->name}btnDelete')[0];\n"; echo "mtf{$this->name}.cancelButton = document.getElementsByName('{$this->name}btnCancel')[0];\n"; echo "mtf{$this->name}.inputResult = document.getElementsByName('{$this->name}')[0];\n"; echo '</script>'; }
function __construct() { parent::__construct(); parent::include_css('app/resources/custom-table.css'); //cria o formulario $this->form = new TForm('SrpFormView'); $this->form->class = 'tform'; //$this->form->style = 'max-width: 500px'; $table = new TTable(); $table->width = '100%'; $this->form->add($table); $row = $table->addRow(); $row->class = 'tformtitle'; $row->addCell(new TLabel('Listagem de Itens da SRP'))->colspan = 2; //cria os campos do formulário $id = new TEntry('id'); $numeroSRP = new TEntry('numeroSRP'); $numeroIRP = new TEntry('numeroIRP'); $numeroProcesso = new TEntry('numeroProcesso'); $nome = new TEntry('nome'); $uasg = new TEntry('uasg'); $validade = new TDate('validade'); $natureza = new TEntry('natureza'); // define os tamanhos $id->setSize(70); $numeroSRP->setSize(90); $numeroIRP->setSize(90); $numeroProcesso->setSize(120); $nome->setSize(350); $uasg->setSize(70); $validade->setSize(90); $natureza->setSize(200); //desabilitando os campos $id->setEditable(false); $numeroSRP->setEditable(false); $numeroIRP->setEditable(false); $numeroProcesso->setEditable(false); $nome->setEditable(false); $uasg->setEditable(false); $validade->setEditable(false); $natureza->setEditable(false); // adiciona uma linha para cada campo no formulario $table->addRowSet(new TLabel('id:'), $id); $table->addRowSet(new TLabel('Nº SRP:'), $numeroSRP); $table->addRowSet(new TLabel('Nº IRP:'), $numeroIRP); $table->addRowSet(new TLabel('Proc. Orig.:'), $numeroProcesso); $table->addRowSet(new TLabel('Nome:'), $nome); $table->addRowSet(new TLabel('UASG:'), $uasg); $table->addRowSet(new TLabel('Validade:'), $validade); $table->addRowSet(new TLabel('Natureza:'), $natureza); $this->form->setFields(array($id, $numeroSRP, $numeroIRP, $numeroProcesso, $nome, $uasg, $validade, $natureza)); //criar a datagrid $this->datagrid = new TDataGrid(); $this->datagrid->class = 'tdatagrid_table customized-table'; $this->datagrid->makeScrollable(); $this->datagrid->disableDefaultClick(); $this->datagrid->setHeight(180); //criar as colunas da datagrid $GnumeroItem = new TDataGridColumn('numeroItem', 'Nº Item', 'left', 50); $GdescricaoSumaria = new TDataGridColumn('descricaoSumaria', 'Descrição Sumária', 'left', 400); $GquantidadeEstimada = new TDataGridColumn('quantidadeDisponivel', 'Qtd. Estimada', 'right', 100); $GquantidadeDisponivel = new TDataGridColumn('estoqueDisponivel', 'Qtd. Disponível', 'right', 100); $GunidadeMedida = new TDataGridColumn('unidadeMedida', 'Unidade', 'left', 50); $GvalorUnitario = new TDataGridColumn('valorUnitario', 'Valor Unit.', 'right', 70); // add the columns to the DataGrid $this->datagrid->addColumn($GnumeroItem); $this->datagrid->addColumn($GdescricaoSumaria); $this->datagrid->addColumn($GquantidadeEstimada); $this->datagrid->addColumn($GquantidadeDisponivel); $this->datagrid->addColumn($GunidadeMedida); $this->datagrid->addColumn($GvalorUnitario); /* $viewDetalhe = new TDataGridAction(array($this, 'onShowDetail')); $viewDetalhe->setLabel('Detalhes'); $viewDetalhe->setImage('ico_view.png'); $viewDetalhe->setField('id'); $this->datagrid->addAction($viewDetalhe); */ // cria o modelo no datagrid $this->datagrid->createModel(); $back_button = new TButton('back'); $back_button->setAction(new TAction(array('SrpList', 'onReload')), 'Voltar'); $back_button->setImage('ico_back.png'); $this->form->addField($back_button); $buttons_box = new THBox(); $buttons_box->add($back_button); // add a row for the form action $row = $table->addRow(); $row->class = 'tformaction'; // CSS class $row->addCell($buttons_box)->colspan = 2; // cria o container da pagina $container = TVBox::pack($this->form, $this->datagrid); parent::add($container); }
/** * Class constructor * Creates the page, the form and the listing */ public function __construct() { parent::__construct(); parent::include_css('app/resources/custom-table.css'); // creates the form $this->form = new TForm('form_search_Campus'); $this->form->class = 'tform'; // CSS class // creates a table $table = new TTable(); $table->width = '100%'; // add a row for the form title $table->addRowSet(new TLabel('Consulta Câmpus'), '')->class = 'tformtitle'; // CSS class $this->form->add($table); // create the form fields $nome = new TEntry('nome'); $nome->setValue(TSession::getValue('s_nome')); $uasg = new TEntry('uasg'); $uasg->setValue(TSession::getValue('s_uasg')); $sigla = new TEntry('sigla'); $sigla->setValue(TSession::getValue('s_sigla')); // define the sizes $nome->setSize(500); $uasg->setSize(100); $sigla->setSize(150); // add one row for each form field $table->addRowSet(new TLabel('Nome:'), $nome); $table->addRowSet(new TLabel('UASG:'), $uasg); $table->addRowSet(new TLabel('Sigla:'), $sigla); $this->form->setFields(array($nome, $uasg, $sigla)); // keep the form filled during navigation with session data $this->form->setData(TSession::getValue('Campus_filter_data')); // create two action buttons to the form $find_button = TButton::create('find', array($this, 'onSearch'), 'Buscar', 'ico_find.png'); $new_button = TButton::create('new', array('CampusForm', 'onEdit'), 'Novo', 'ico_new.png'); $this->form->addField($find_button); $this->form->addField($new_button); $buttons_box = new THBox(); $buttons_box->add($find_button); $buttons_box->add($new_button); // add a row for the form action $row = $table->addRow(); $row->class = 'tformaction'; // CSS class $row->addCell($buttons_box)->colspan = 2; // creates a Datagrid $this->datagrid = new TDataGrid(); $this->datagrid->style = 'width: 100%'; $this->datagrid->class = 'tdatagrid_table customized-table'; $this->datagrid->setHeight(320); // creates the datagrid columns $id = new TDataGridColumn('id', 'ID', 'right'); $nome = new TDataGridColumn('nome', 'Nome', 'left'); $uasg = new TDataGridColumn('uasg', 'UASG', 'left'); $sigla = new TDataGridColumn('sigla', 'Sigla', 'left'); // add the columns to the DataGrid $this->datagrid->addColumn($id); $this->datagrid->addColumn($nome); $this->datagrid->addColumn($uasg); $this->datagrid->addColumn($sigla); // creates the datagrid column actions $order_id = new TAction(array($this, 'onReload')); $order_id->setParameter('order', 'id'); $id->setAction($order_id); $order_nome = new TAction(array($this, 'onReload')); $order_nome->setParameter('order', 'nome'); $nome->setAction($order_nome); $order_uasg = new TAction(array($this, 'onReload')); $order_uasg->setParameter('order', 'uasg'); $uasg->setAction($order_uasg); $order_sigla = new TAction(array($this, 'onReload')); $order_sigla->setParameter('order', 'sigla'); $sigla->setAction($order_sigla); // inline editing $nome_edit = new TDataGridAction(array($this, 'onInlineEdit')); $nome_edit->setField('id'); $nome->setEditAction($nome_edit); /* $uasg_edit = new TDataGridAction(array($this, 'onInlineEdit')); $uasg_edit->setField('id'); $uasg->setEditAction($uasg_edit); $sigla_edit = new TDataGridAction(array($this, 'onInlineEdit')); $sigla_edit->setField('id'); $sigla->setEditAction($sigla_edit); */ // creates two datagrid actions $action1 = new TDataGridAction(array('CampusForm', 'onEdit')); $action1->setLabel(_t('Edit')); $action1->setImage('ico_edit.png'); $action1->setField('id'); $action2 = new TDataGridAction(array($this, 'onDelete')); $action2->setLabel(_t('Delete')); $action2->setImage('ico_delete.png'); $action2->setField('id'); // add the actions to the datagrid $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()); $container = new TTable(); //$container->style = 'width: 80%'; $container->addRow()->addCell(new TXMLBreadCrumb('menu.xml', __CLASS__)); $container->addRow()->addCell($this->form); $container->addRow()->addCell($this->datagrid); $container->addRow()->addCell($this->pageNavigation); // add the container inside the page parent::add($container); }
/** * Construtor * * Criação da listagem de grupos */ public function __construct() { parent::__construct(); parent::include_css('app/resources/custom-table.css'); // Cria o form $this->form = new TForm('form_search_Grupo'); $this->form->class = 'tform'; // cria a tabela $table = new TTable(); $table->style = 'width:100%'; //cria o titulo $table->addRowSet(new TLabel('Consulta Grupos'), '')->class = 'tformtitle'; // Adiciona a tabela no form $this->form->add($table); // Cria os campos para filtro $nome = new TEntry('nome'); $nome->setValue(TSession::getValue('s_nome')); $nome->setSize(300); $sigla = new TEntry('sigla'); $sigla->setValue(TSession::getValue('s_sigla')); $sigla->setSize(100); // Adiciona linha na tabela para inserir o campos $row = $table->addRow(); $row->addCell(new TLabel('Nome: ')); $row->addCell($nome); $row = $table->addRow(); $row->addCell(new TLabel('Sigla: ')); $row->addCell($sigla); // cria os dois botoes de ações do form $find_button = new TButton('find'); $new_button = new TButton('new'); // define o botao de acao $find_button->setAction(new TAction(array($this, 'onSearch')), 'Buscar'); $find_button->setImage('ico_find.png'); $new_button->setAction(new TAction(array('GrupoForm', 'onEdit')), 'Novo'); $new_button->setImage('ico_new.png'); $container = new THBox(); $container->add($find_button); $container->add($new_button); $row = $table->addRow(); $row->class = 'tformaction'; $cell = $row->addCell($container); $cell->colspan = 2; // define qual é os campos do form $this->form->setFields(array($nome, $sigla, $find_button, $new_button)); // cria o datagrid $this->datagrid = new TDataGrid(); $this->datagrid->style = 'width: 100%'; $this->datagrid->class = 'tdatagrid_table customized-table'; $this->datagrid->setHeight(320); // cria as colunas do datagrid $id = new TDataGridColumn('id', 'ID', 'center'); $nome = new TDataGridColumn('nome', 'Nome', 'center'); $sigla = new TDataGridColumn('sigla', 'Sigla', 'center'); // adiciona as colunas ao datagrid $this->datagrid->addColumn($id); $this->datagrid->addColumn($nome); $this->datagrid->addColumn($sigla); // cria as acoes das colunas do datagrid (quando clica no titulo do grid) $order_id = new TAction(array($this, 'onReload')); $order_id->setParameter('order', 'id'); $id->setAction($order_id); $order_nome = new TAction(array($this, 'onReload')); $order_nome->setParameter('order', 'nome'); $nome->setAction($order_nome); $order_sigla = new TAction(array($this, 'onReload')); $order_sigla->setParameter('order', 'sigla'); $sigla->setAction($order_sigla); // edição em linha $nome_edit = new TDataGridAction(array($this, 'onInlineEdit')); $nome_edit->setField('id'); $nome->setEditAction($nome_edit); $sigla_edit = new TDataGridAction(array($this, 'onInlineEdit')); $sigla_edit->setField('id'); $sigla->setEditAction($sigla_edit); // cria duas acoes do datagrid $action1 = new TDataGridAction(array('GrupoForm', 'onEdit')); $action1->setLabel('Editar'); $action1->setImage('ico_edit.png'); $action1->setField('id'); $action2 = new TDataGridAction(array($this, 'onDelete')); $action2->setLabel('Excluir'); $action2->setImage('ico_delete.png'); $action2->setField('id'); // adiciona as acoes ao datagrid $this->datagrid->addAction($action1); $this->datagrid->addAction($action2); // cria o modelo do datagrid $this->datagrid->createModel(); // cria o navegador de paginas $this->pageNavigation = new TPageNavigation(); $this->pageNavigation->setAction(new TAction(array($this, 'onReload'))); $this->pageNavigation->setWidth($this->datagrid->getWidth()); // cria a estrutura da tela usando tabelas $container = new TTable(); //$container->style = 'width: 80%'; $container->addRow()->addCell(new TXMLBreadCrumb('menu.xml', __CLASS__)); $container->addRow()->addCell($this->form); $container->addRow()->addCell($this->datagrid); $container->addRow()->addCell($this->pageNavigation); // add the container inside the page parent::add($container); }
/** * Class constructor * Creates the page and the registration form */ function __construct() { parent::__construct(); // Cria o form $this->form = new TForm('form_Usuario'); $this->form->class = 'tform'; // creates the table container $table = new TTable(); $table->style = 'width: 100%'; $table->addRowSet(new TLabel('Usuário'), '', '', '')->class = 'tformtitle'; // adiciona a tabela no form $this->form->add($table); $frame_grupos = new TFrame(NULL, 280); $frame_grupos->setLegend('Grupos'); $frame_grupos->style .= ';margin: 4px'; $frame_funcionalidades = new TFrame(NULL, 280); $frame_funcionalidades->setLegend('Funcionalidades'); $frame_funcionalidades->style .= ';margin: 15px'; // cria os campos de pesquisa do form $id = new TEntry('id'); $nome = new TEntry('nome'); $prontuario = new TEntry('prontuario'); $password = new TPassword('senha'); $repassword = new TPassword('resenha'); $email = new TEntry('email'); $multifield_funcionalidades = new TMultiField('funcionalidades'); $funcionalidade_id = new TDBSeekButton('funcionalidade_id', 'saciq', 'form_Usuario', 'Funcionalidade', 'nome', 'funcionalidades_id', 'funcionalidades_nome'); $funcionalidade_nome = new TEntry('funcionalidade_nome'); $grupos = new TDBCheckGroup('grupos', 'saciq', 'Grupo', 'id', 'nome'); //$frontpage_id = new TDBSeekButton('frontpage_id', 'saciq', 'form_Usuario', 'Funcionalidade', 'nome', 'frontpage_id', 'frontpage_nome'); //$frontpage_nome = new TEntry('frontpage_nome'); $scroll = new TScroll(); $scroll->setSize(290, 230); $scroll->add($grupos); $frame_grupos->add($scroll); $frame_funcionalidades->add($multifield_funcionalidades); // define the sizes $id->setSize(100); $nome->setSize(350); $prontuario->setSize(150); $password->setSize(150); $repassword->setSize(150); $email->setSize(250); $multifield_funcionalidades->setHeight(140); // outros $id->setEditable(false); $funcionalidade_nome->setEditable(false); $email->setProperty('autocomplete', 'off'); // validations $nome->addValidation('Nome', new TRequiredValidator()); $prontuario->addValidation('Prontuário', new TRequiredValidator()); $email->addValidation('Email', new TEmailValidator()); $nome->addValidation('Nome', new TMaxLengthValidator(), array(60)); $prontuario->addValidation('Prontuário', new TMaxLengthValidator(), array(60)); $email->addValidation('Email', new TMaxLengthValidator(), array(60)); $funcionalidade_id->setSize(50); $funcionalidade_nome->setSize(200); // configuracoes multifield $multifield_funcionalidades->setClass('Funcionalidade'); $multifield_funcionalidades->addField('id', 'ID', $funcionalidade_id, 60, true); $multifield_funcionalidades->addField('nome', 'Nome', $funcionalidade_nome, 250); $multifield_funcionalidades->setOrientation('horizontal'); // add a row for the field id $table->addRowSet(new TLabel('ID:'), $id, new TLabel('Nome: '), $nome); $table->addRowSet(new TLabel('Prontuário: '), $prontuario, new TLabel('Email: '), $email); $table->addRowSet(new TLabel('Senha: '), $password, new TLabel('Confirmação <br>da senha: '), $repassword); $row = $table->addRow(); $cell = $row->addCell($frame_grupos); $cell->colspan = 2; $cell = $row->addCell($frame_funcionalidades); $cell->colspan = 2; // create an action button (save) $save_button = new TButton('save'); $save_button->setAction(new TAction(array($this, 'onSave')), 'Salvar'); $save_button->setImage('ico_save.png'); // create an new button (edit with no parameters) $new_button = new TButton('new'); $new_button->setAction(new TAction(array($this, 'onEdit')), 'Novo'); $new_button->setImage('ico_new.png'); $list_button = new TButton('list'); $list_button->setAction(new TAction(array('UsuarioList', 'onReload')), 'Voltar para a listagem'); $list_button->setImage('ico_datagrid.png'); // define the form fields $this->form->setFields(array($id, $nome, $prontuario, $password, $repassword, $multifield_funcionalidades, $grupos, $email, $save_button, $new_button, $list_button)); $buttons = new THBox(); $buttons->add($save_button); $buttons->add($new_button); $buttons->add($list_button); $row = $table->addRow(); $row->class = 'tformaction'; $cell = $row->addCell($buttons); $cell->colspan = 4; $container = new TTable(); //$container->style = 'width: 80%'; $container->addRow()->addCell(new TXMLBreadCrumb('menu.xml', 'UsuarioList')); $container->addRow()->addCell($this->form); // add the form to the page parent::add($container); }
/** * Class constructor * Creates the page, the form and the listing */ public function __construct() { parent::__construct(); parent::include_css('app/resources/custom-table.css'); // Cria o form $this->form = new TForm('form_search_Usuario'); $this->form->class = 'tform'; // cria a tabela $table = new TTable(); $table->style = 'width:100%'; $table->addRowSet(new TLabel('Consulta Usuários'), '')->class = 'tformtitle'; // adiciona a tabela no form $this->form->add($table); // cria os campos de pesquisa do form //$id = new TEntry('id'); //$id->setValue(TSession::getValue('Usuario_id')); $nome = new TEntry('nome'); $nome->setValue(TSession::getValue('Usuario_nome')); $nome->setSize(300); // add a row for the filter field //$table->addRowSet(new TLabel('ID:'), $id); $table->addRowSet(new TLabel('Nome: '), $nome); // cria dois botoes de acao para o form $find_button = new TButton('find'); $new_button = new TButton('new'); // define as acoes dos botoes $find_button->setAction(new TAction(array($this, 'onSearch')), 'Buscar'); $find_button->setImage('ico_find.png'); $new_button->setAction(new TAction(array('UsuarioForm', 'onEdit')), 'Novo'); $new_button->setImage('ico_new.png'); // add a row for the form actions $container = new THBox(); $container->add($find_button); $container->add($new_button); $row = $table->addRow(); $row->class = 'tformaction'; $cell = $row->addCell($container); $cell->colspan = 2; // define wich are the form fields $this->form->setFields(array($nome, $find_button, $new_button)); // creates a DataGrid $this->datagrid = new TDataGrid(); $this->datagrid->setHeight(320); $this->datagrid->class = 'tdatagrid_table customized-table'; $this->datagrid->style = 'width: 100%'; // creates the datagrid columns $id = new TDataGridColumn('id', 'ID', 'right'); $nome = new TDataGridColumn('nome', 'Nome', 'left'); $prontuario = new TDataGridColumn('prontuario', 'Prontuario', 'left'); $email = new TDataGridColumn('email', 'Email', 'left'); // add the columns to the DataGrid $this->datagrid->addColumn($id); $this->datagrid->addColumn($nome); $this->datagrid->addColumn($prontuario); $this->datagrid->addColumn($email); // creates the datagrid column actions $order_id = new TAction(array($this, 'onReload')); $order_id->setParameter('order', 'id'); $id->setAction($order_id); $order_nome = new TAction(array($this, 'onReload')); $order_nome->setParameter('order', 'nome'); $nome->setAction($order_nome); // inline editing $nome_edit = new TDataGridAction(array($this, 'onInlineEdit')); $nome_edit->setField('id'); $nome->setEditAction($nome_edit); // creates two datagrid actions $action1 = new TDataGridAction(array('UsuarioForm', 'onEdit')); $action1->setLabel('Editar'); $action1->setImage('ico_edit.png'); $action1->setField('id'); $action2 = new TDataGridAction(array($this, 'onDelete')); $action2->setLabel('Excluir'); $action2->setImage('ico_delete.png'); $action2->setField('id'); // add the actions to the datagrid $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', __CLASS__)); $table->addRow()->addCell($this->form); $table->addRow()->addCell($this->datagrid); $table->addRow()->addCell($this->pageNavigation); // add the table inside the page parent::add($table); }
/** * Class constructor * Creates the page, the form and the listing */ public function __construct() { parent::__construct(); // creates the form $this->form = new TForm('form_search_Requisicao'); $this->form->class = 'tform'; // CSS class // creates a table $table = new TTable(); $table->width = '100%'; $this->form->add($table); // add a row for the form title $row = $table->addRow(); $row->class = 'tformtitle'; // CSS class $row->addCell(new TLabel('Consulta Requisicao'))->colspan = 2; // create the form fields $numeroProcesso = new TEntry('numeroProcesso'); // define the sizes $numeroProcesso->setSize(200); $numeroProcesso->setMaxLength(30); $numeroProcesso->setTip('Número do processo gerado no SIGA'); // add one row for each form field $table->addRowSet(new TLabel('Nº do Processo:'), $numeroProcesso); $this->form->setFields(array($numeroProcesso)); // keep the form filled during navigation with session data $this->form->setData(TSession::getValue('Requisicao_filter_data')); // create two action buttons to the form $find_button = TButton::create('find', array($this, 'onSearch'), 'Buscar', 'ico_find.png'); $new_button = TButton::create('new', array('RequisicaoForm', 'onEdit'), 'Novo', 'ico_new.png'); $this->form->addField($find_button); $this->form->addField($new_button); $buttons_box = new THBox(); $buttons_box->add($find_button); $buttons_box->add($new_button); // add a row for the form action $row = $table->addRow(); $row->class = 'tformaction'; // CSS class $row->addCell($buttons_box)->colspan = 2; // creates a Datagrid parent::include_css('app/resources/custom-table.css'); $this->datagrid = new TDataGrid(); $this->datagrid->class = 'tdatagrid_table customized-table'; $this->datagrid->setHeight(320); // creates the datagrid columns $id = new TDataGridColumn('id', 'ID', 'right', 80); $srp = new TDataGridColumn('numeroSRP', 'Nº SRP', 'left', 100); $numeroProcesso = new TDataGridColumn('numeroProcesso', 'Nº do processo', 'left', 250); $data = new TDataGridColumn('emissao', 'Data', 'left', 100); $id->setTransformer(array($this, 'rowFormat')); // add the columns to the DataGrid $this->datagrid->addColumn($id); $this->datagrid->addColumn($srp); $this->datagrid->addColumn($numeroProcesso); $this->datagrid->addColumn($data); // creates two datagrid actions $action1 = new TDataGridAction(array('RequisicaoForm', 'onEdit')); //$action1 = new TDataGridAction(array($this, 'onCheckValidadeSRP')); $action1->setLabel('Editar'); $action1->setImage('ico_edit.png'); $action1->setField('id'); $action1->setDisplayCondition(array($this, 'onDisplayConditionEdit')); $action2 = new TDataGridAction(array($this, 'onDelete')); $action2->setLabel('Excluir'); $action2->setImage('ico_delete.png'); $action2->setField('id'); $actAprovar = new TDataGridAction(array($this, 'onQuestionAprovarRequisicao')); $actAprovar->setLabel('Aprovar Requisição'); $actAprovar->setImage('fa:check fa-fw'); $actAprovar->setField('id'); $actAprovar->setDisplayCondition(array($this, 'onDisplayConditionEdit')); // add the actions to the datagrid $this->datagrid->addAction($action1); $this->datagrid->addAction($action2); $this->datagrid->addAction($actAprovar); // 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()); //limpar a sessao com detalhes de itens e requisicao TSession::delValue('requisicao_itens'); TSession::delValue('SRP_id'); TSession::delValue('form_requisicao'); // create the page container //$container = TVBox::pack($this->form, $this->datagrid, $this->pageNavigation); $container = new TTable(); $container->addRow()->addCell(new TXMLBreadCrumb('menu.xml', __CLASS__)); $container->addRow()->addCell($this->form); $container->addRow()->addCell($this->datagrid); $container->addRow()->addCell($this->pageNavigation); parent::add($container); }
function __construct() { parent::__construct(); $this->form = new TForm('doc_cessao_form'); $this->form->style = 'width : 500px;'; $this->form->class = 'tform'; $table = new TTable(); $table->width = '100%'; $this->form->add($table); $row = $table->addRow(); $row->class = 'tformtitle'; // CSS class $row->addCell(new TLabel('Gerar Documentos da Cessão'))->colspan = 2; // cria os campos do formulário $memorando = new TEntry('memorando'); //$cidade = new TEntry('cidade'); $emissao = new TDate('emissao'); $campusID = new TEntry('campusID'); //TDBSeekButton('campusID', 'saciq', 'doc_cessao_form', 'Campus', 'nome', 'campusID', 'campusNome'); $campusNome = new TEntry('campusNome'); $gerente = new TEntry('gerente'); $diretor = new TEntry('diretor'); $cessao_id = new THidden('cessao_id'); // define the sizes $memorando->setSize(300); //$cidade->setSize(200); $emissao->setSize(90); $emissao->setProperty('style', 'margin-right : 0px'); $campusID->setSize(50); $campusID->setEditable(false); $campusNome->setSize(226); $campusNome->setEditable(false); $gerente->setSize(300); $diretor->setSize(300); //mascara $emissao->setMask('dd/mm/yyyy'); $emissao->setValue(date('d/m/Y')); //validadores $memorando->addValidation('Memorando', new TRequiredValidator()); $memorando->addValidation('Memorando', new TMaxLengthValidator(), array(70)); $emissao->addValidation('Emissão', new TRequiredValidator()); $campusID->addValidation('Destino', new TRequiredValidator()); $gerente->addValidation('Gerente Administrativo(a)', new TRequiredValidator()); $gerente->addValidation('Gerente Administrativo(a)', new TMaxLengthValidator(), array(70)); $diretor->addValidation('Diretor(a) Geral', new TRequiredValidator()); $diretor->addValidation('Diretor(a) Geral', new TMaxLengthValidator(), array(70)); $memorando->setTip('Descrição do Memorando que aparecerá no início do documento.'); $gerente->setTip('Nome do gerente em exercício'); $diretor->setTip('Nome do diretor geral em exercício'); $value = TSession::getValue('doc_cessao_form_cessao_id'); if (isset($value)) { $cessao_id->setValue($value); } // add one row for each form field $table->addRowSet(new TLabel('Memorando:'), $memorando); //$table->addRowSet(new TLabel('Cidade:'), $cidade); $table->addRowSet(new TLabel('Emissão:'), $emissao); //$table->addRowSet(new TLabel('Destino:'), $destino); //$row = $table->addRow(); $box = new THBox(); $box->add($campusID); $box->add($campusNome)->style = 'width: 75%; display : inline-block;'; //$row->addCell($box)->colspan = 2; $table->addRowSet(new TLabel('Destino:'), $box); $table->addRowSet(new TLabel('Gerente Administrativo(a):'), $gerente); $table->addRowSet(new TLabel('Diretor(a):'), $diretor); $table->addRowSet($cessao_id); $this->form->setFields(array($memorando, $emissao, $campusID, $campusNome, $gerente, $diretor, $cessao_id)); // keep the form filled during navigation with session data $this->form->setData(TSession::getValue('Cessao_filter_data')); // create two action buttons to the form $generate_button = TButton::create('generate', array($this, 'onGenerate'), 'Gerar', 'fa:file-pdf-o'); $back_button = TButton::create('back', array('DocCessaoList', 'onReload'), 'Voltar', 'ico_back.png'); //$new_button = TButton::create('new', array('CessaoForm', 'onEdit'), 'Novo', 'ico_new.png'); $this->form->addField($generate_button); $this->form->addField($back_button); $buttons_box = new THBox(); $buttons_box->add($generate_button); $buttons_box->add($back_button); // add a row for the form action $row = $table->addRow(); $row->class = 'tformaction'; // CSS class $row->addCell($buttons_box)->colspan = 2; // create the page container //$container = TVBox::pack($this->form); parent::add($this->form); }
/** * Class constructor * Creates the page and the registration form */ function __construct() { parent::__construct(); // creates the table container $table = new TTable(); $table->style = 'width:100%'; $frame_funcionalidades = new TFrame(); $frame_funcionalidades->setLegend('Funcionalidades'); // Cria o form $this->form = new TForm('form_Grupo'); $this->form->class = 'tform'; // add the notebook inside the form $this->form->add($table); $table->addRowSet(new TLabel('Grupo'), '')->class = 'tformtitle'; // cria os campos de pesquisa do form $id = new TEntry('id'); $nome = new TEntry('nome'); $sigla = new TEntry('sigla'); $this->list1 = new TSortList('list1'); $this->list2 = new TSortList('list2'); $this->list1->setSize(300, 200); $this->list2->setSize(300, 200); $this->list1->connectTo($this->list2); $this->list2->connectTo($this->list1); /* $multifield = new TMultiField('programs'); $program_id = new TDBSeekButton('program_id', 'saciq', 'form_Grupo', 'Funcionalidade', 'nome', 'programs_id', 'programs_nome'); $program_nome = new TEntry('program_nome'); $frame_programs->add($multifield); $multifield->setHeight(140); $multifield->setClass('Funcionalidade'); $multifield->addField('id', 'ID', $program_id, 100, true); $multifield->addField('nome', 'Funcionalidade', $program_nome, 250); $multifield->setOrientation('horizontal'); */ // define the sizes //$program_id->setSize(70); $id->setSize(100); $nome->setSize(400); $sigla->setSize(150); // validations $nome->addValidation('Nome', new TRequiredValidator()); $sigla->addValidation('Sigla', new TRequiredValidator()); $nome->addValidation('Nome', new TMaxLengthValidator(), array(45)); $sigla->addValidation('Sigla', new TMaxLengthValidator(), array(10)); // outras propriedades $id->setEditable(false); //$program_nome->setEditable(false); // add a row for the field id $table->addRowSet(new TLabel('ID:'), $id); $table->addRowSet(new TLabel('Nome: '), $nome); $table->addRowSet(new TLabel('Sigla:'), $sigla); // add a row for the field nome //$row = $table->addRow(); //$cell = $row->addCell($frame_programs); //$cell->colspan = 2; $vbox1 = new TVBox(); $vbox1->add(new TLabel('<b>Disponível</b>')); $vbox1->add($this->list1); $vbox2 = new TVBox(); $vbox2->add(new TLabel('<b>Selecionado</b>')); $vbox2->add($this->list2); $hbox = new THBox(); $hbox->add($vbox1); $hbox->add($vbox2); $frame_funcionalidades->add($hbox); $row = $table->addRow(); $cell = $row->addCell($frame_funcionalidades); $cell->colspan = 2; // create an action button (save) $save_button = new TButton('save'); $save_button->setAction(new TAction(array($this, 'onSave')), 'Salvar'); $save_button->setImage('ico_save.png'); // create an new button (edit with no parameters) $new_button = new TButton('new'); $new_button->setAction(new TAction(array($this, 'onEdit')), 'Novo'); $new_button->setImage('ico_new.png'); $list_button = new TButton('list'); $list_button->setAction(new TAction(array('GrupoList', 'onReload')), 'Voltar para a listagem'); $list_button->setImage('ico_datagrid.png'); // define the form fields $this->form->setFields(array($id, $nome, $sigla, $this->list1, $this->list2, $save_button, $new_button, $list_button)); $buttons = new THBox(); $buttons->add($save_button); $buttons->add($new_button); $buttons->add($list_button); $container = new TTable(); //$container->width = '80%'; $container->addRow()->addCell(new TXMLBreadCrumb('menu.xml', 'GrupoList')); $container->addRow()->addCell($this->form); $row = $table->addRow(); $row->class = 'tformaction'; $cell = $row->addCell($buttons); $cell->colspan = 2; // add the form to the page parent::add($container); }
/** * Class constructor * Creates the page, the form and the listing */ public function __construct() { parent::__construct(); // creates the form $this->form = new TForm('form_Desaprovar_Cessao'); $this->form->class = 'tform'; // CSS class // creates a table $table = new TTable(); $table->width = '100%'; $this->form->add($table); // add a row for the form title $row = $table->addRow(); $row->class = 'tformtitle'; // CSS class $row->addCell(new TLabel('Desaprovar Cessao'))->colspan = 2; // create the form fields $numeroCessao = new TEntry('numeroCessao'); $numeroCessao->setTip('Número do processo gerado no SIGA'); // define the sizes $numeroCessao->setSize(200); // add one row for each form field $table->addRowSet(new TLabel('Nº da Cessão:'), $numeroCessao); $this->form->setFields(array($numeroCessao)); // keep the form filled during navigation with session data $this->form->setData(TSession::getValue('Cessao_filter_data')); // create two action buttons to the form $find_button = TButton::create('find', array($this, 'onSearch'), 'Buscar', 'ico_find.png'); //$new_button = TButton::create('new', array('CessaoForm', 'onEdit'), 'Novo', 'ico_new.png'); $this->form->addField($find_button); //$this->form->addField($new_button); $buttons_box = new THBox(); $buttons_box->add($find_button); //$buttons_box->add($new_button); // add a row for the form action $row = $table->addRow(); $row->class = 'tformaction'; // CSS class $row->addCell($buttons_box)->colspan = 2; // creates a Datagrid parent::include_css('app/resources/custom-table.css'); $this->datagrid = new TDataGrid(); $this->datagrid->class = 'tdatagrid_table customized-table'; $this->datagrid->setHeight(320); $this->datagrid->makeScrollable(); $this->datagrid->disableDefaultClick(); // creates the datagrid columns $id = new TDataGridColumn('id', 'ID', 'right', 80); $srp = new TDataGridColumn('numeroSRP', 'Nº SRP', 'left', 100); $numeroCessao = new TDataGridColumn('numeroCessao', 'Nº da Cessão', 'left', 250); $data = new TDataGridColumn('emissao', 'Data', 'left', 100); // add the columns to the DataGrid $this->datagrid->addColumn($id); $this->datagrid->addColumn($srp); $this->datagrid->addColumn($numeroCessao); $this->datagrid->addColumn($data); // creates two datagrid actions $action1 = new TDataGridAction(array($this, 'onQuestionAprovarCessao')); $action1->setLabel('Desaprovar Cessao'); $action1->setImage('fa:history fa-fw'); $action1->setField('id'); // add the actions to the datagrid $this->datagrid->addAction($action1); // create the datagrid model $this->datagrid->createModel(); //limpar a sessao com detalhes de itens e cessao TSession::delValue('cessao_itens'); TSession::delValue('SRP_id'); TSession::delValue('form_cessao'); // create the page container //$container = TVBox::pack( $this->form, $this->datagrid); $container = new TTable(); $container->addRow()->addCell(new TXMLBreadCrumb('menu.xml', __CLASS__)); $container->addRow()->addCell($this->form); $container->addRow()->addCell($this->datagrid); //$container->addRow()->addCell($this->pageNavigation); parent::add($container); }
/** * Class constructor * Creates the page, the form and the listing */ public function __construct() { parent::__construct(); parent::include_css('app/resources/custom-table.css'); // creates the form $this->form = new TForm('form_search_Subelemento'); $this->form->class = 'tform'; // CSS class // creates a table $table = new TTable(); $table->width = '100%'; $this->form->add($table); // add a row for the form title $row = $table->addRow(); $row->class = 'tformtitle'; $row->addCell(new TLabel('Consulta SubElemento'))->colspan = 2; //$table->addRowSet( new TLabel('Consulta SubElemento') ,'')->class = 'tformtitle'; // CSS class // create the form fields $descricao = new TEntry('descricao'); // define the sizes $descricao->setSize(350); // add one row for each form field $table->addRowSet(new TLabel('Descrição:'), $descricao); $this->form->setFields(array($descricao)); // keep the form filled during navigation with session data $this->form->setData(TSession::getValue('Subelemento_filter_data')); // create two action buttons to the form $find_button = TButton::create('find', array($this, 'onSearch'), _t('Find'), 'ico_find.png'); $this->form->addField($find_button); $buttons_box = new THBox(); $buttons_box->add($find_button); // add a row for the form action $row = $table->addRow(); $row->class = 'tformaction'; // CSS class $row->addCell($buttons_box)->colspan = 2; // creates a Datagrid $this->datagrid = new TDataGrid(); $this->datagrid->style = 'width: 100%'; $this->datagrid->class = 'tdatagrid_table customized-table'; $this->datagrid->setHeight(320); // creates the datagrid columns $id = new TDataGridColumn('id', 'ID', 'right', 100); $descricao = new TDataGridColumn('descricao', 'Descrição', 'left'); // add the columns to the DataGrid $this->datagrid->addColumn($id); $this->datagrid->addColumn($descricao); // creates the datagrid column actions $order_id = new TAction(array($this, 'onReload')); $order_id->setParameter('order', 'id'); $id->setAction($order_id); $order_descricao = new TAction(array($this, 'onReload')); $order_descricao->setParameter('order', 'descricao'); $descricao->setAction($order_descricao); // 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()); // create the page container $container = new TTable(); //$container->style = 'width: 80%'; $container->addRow()->addCell(new TXMLBreadCrumb('menu.xml', __CLASS__)); $container->addRow()->addCell($this->form); $container->addRow()->addCell($this->datagrid); $container->addRow()->addCell($this->pageNavigation); parent::add($container); }
/** * Show the widget at the screen */ public function show() { $wrapper = new TElement('div'); $wrapper->{'mtf_name'} = $this->getName(); // include the needed libraries and styles if ($this->fields) { $table = new TTable(); $mandatories = array(); // mandatory $fields = array(); $i = 0; if ($this->orientation == 'horizontal') { $row_label = $table->addRow(); $row_field = $table->addRow(); } foreach ($this->fields as $name => $obj) { if ($this->orientation == 'vertical') { $row = $table->addRow(); $row_label = $row; $row_field = $row; } $label = new TLabel($obj->text); if ($obj->mandatory) { $label->setFontColor('red'); } $row_label->addCell($label); $row_field->addCell($obj->field); $mandatories[] = $obj->mandatory; $fields[] = $name; $post_fields[$name] = 1; $sizes[$name] = $obj->size; $obj->field->setName($this->name . '_' . $name); if (in_array(get_class($obj->field), array('TComboCombined', 'Adianti\\Widget\\Form\\TComboCombined'))) { $aux_name = $obj->field->getTextName(); $aux_full_name = $this->name . '_' . $aux_name; $mandatories[] = 0; $obj->field->setTextName($aux_full_name); $fields[] = $aux_name; $post_fields[$aux_name] = 1; // invert sizes $sizes[$aux_name] = $obj->size; $sizes[$name] = 20; $i++; } $i++; } $wrapper->add($table); } // check whether the widget is non-editable if (parent::getEditable()) { // create three buttons to control the MultiField $add = new TButton("{$this->name}btnStore"); $add->setLabel(AdiantiCoreTranslator::translate('Register')); $add->setImage('fa:angle-double-down'); $add->addFunction("multifields['{$this->name}'].addRowFromFormFields()"); $del = new TButton("{$this->name}btnDelete"); $del->setLabel(AdiantiCoreTranslator::translate('Delete')); $del->setImage('fa:trash'); $can = new TButton("{$this->name}btnCancel"); $can->setLabel(AdiantiCoreTranslator::translate('Cancel')); $can->setImage('fa:times-circle'); $hbox_buttons = new THBox(); $hbox_buttons->{'style'} = 'margin-top:3px;margin-bottom:3px'; $hbox_buttons->add($add); $hbox_buttons->add($del); $hbox_buttons->add($can); $wrapper->add($hbox_buttons); } // create the MultiField Panel $panel = new TElement('div'); $panel->{'class'} = "multifieldDiv"; $input = new THidden($this->name); $panel->add($input); // create the MultiField DataGrid Header $table = new TTable(); $table->{'class'} = 'multifield'; $table->{'id'} = "{$this->name}mfTable"; $head = new TElement('thead'); $table->add($head); $row = new TTableRow(); $head->add($row); // fill the MultiField DataGrid if ($this->fields) { foreach ($this->fields as $obj) { $c = $obj->text; if (in_array(get_class($obj->field), array('TComboCombined', 'Adianti\\Widget\\Form\\TComboCombined'))) { $cell = $row->addCell('ID'); $cell->{'width'} = '20px'; $cell->{'class'} = 'multifield_header'; } $cell = $row->addCell($c); $cell->{'width'} = $obj->size . 'px'; $cell->{'class'} = 'multifield_header'; } } $body_height = $this->height - 34; $body = new TElement('tbody'); $body->{'style'} = "height: {$body_height}px"; $body->{'class'} = 'tmultifield_scrolling'; $table->add($body); if ($this->objects) { foreach ($this->objects as $obj) { if (isset($obj->id)) { $row = new TTableRow(); $row->dbId = $obj->id; $body->add($row); } else { $row = new TTableRow(); $body->add($row); } if ($fields) { foreach ($fields as $name) { $cellValue = is_null($obj->{$name}) ? '' : $obj->{$name}; $original = $cellValue; if (is_array(json_decode($cellValue))) { $content = json_decode($cellValue); $rows = array(); foreach ($content as $_row) { $rows[] = implode(':', array_values(get_object_vars($_row))); } $cellValue = implode(',', $rows); $cell = $row->addCell($cellValue); $cell->{'data'} = htmlspecialchars($original); } else { $cell = $row->addCell($cellValue); $cell->{'data'} = $cellValue; } if (isset($sizes[$name])) { $cell->style = 'width:' . $sizes[$name] . 'px;'; } } } } } $panel->add($table); $wrapper->add($panel); $wrapper->show(); $fields_json = json_encode($fields); $mandatories_json = json_encode($mandatories); TScript::create(" tmultifield_start( '{$this->name}', {$fields_json}, {$mandatories_json}, {$this->width},{$this->height} ) "); }
/** * Class constructor * Creates the page and the registration form */ function __construct() { parent::__construct(); // creates the form $this->form = new TForm('form_Campus'); $this->form->class = 'tform'; // CSS class //$this->form->style = 'width: 500px'; // add a table inside form $table = new TTable(); $table->width = '100%'; $this->form->add($table); // add a row for the form title $row = $table->addRow(); $row->class = 'tformtitle'; // CSS class $row->addCell(new TLabel('Cadastro de Câmpus'))->colspan = 2; // create the form fields $id = new TEntry('id'); $nome = new TEntry('nome'); $uasg = new TEntry('uasg'); $sigla = new TEntry('sigla'); $id->setEditable(FALSE); // define the sizes $id->setSize(50); $nome->setSize(400); $uasg->setSize(150); $sigla->setSize(100); // validations $nome->addValidation('Nome', new TRequiredValidator()); $uasg->addValidation('UASG', new TRequiredValidator()); $sigla->addValidation('Sigla', new TRequiredValidator()); $nome->addValidation('Nome', new TMaxLengthValidator(), array(50)); $uasg->addValidation('UASG', new TMaxLengthValidator(), array(10)); $sigla->addValidation('Sigla', new TMaxLengthValidator(), array(3)); // add one row for each form field $table->addRowSet(new TLabel('ID:'), $id); $table->addRowSet($label_nome = new TLabel('Nome:'), $nome); //$label_nome->setFontColor('#FF0000'); $table->addRowSet($label_uasg = new TLabel('UASG:'), $uasg); //$label_uasg->setFontColor('#FF0000'); $table->addRowSet($label_sigla = new TLabel('Sigla:'), $sigla); //$label_sigla->setFontColor('#FF0000'); $this->form->setFields(array($id, $nome, $uasg, $sigla)); // create the form actions $save_button = TButton::create('save', array($this, 'onSave'), 'Salvar', 'ico_save.png'); $new_button = TButton::create('new', array($this, 'onEdit'), 'Novo', 'ico_new.png'); $back_button = TButton::create('back', array('CampusList', 'onReload'), 'Voltar para a listagem', 'ico_datagrid.png'); $this->form->addField($save_button); $this->form->addField($new_button); $this->form->addField($back_button); $buttons_box = new THBox(); $buttons_box->add($save_button); $buttons_box->add($new_button); $buttons_box->add($back_button); // add a row for the form action $row = $table->addRow(); $row->class = 'tformaction'; // CSS class $row->addCell($buttons_box)->colspan = 2; $container = new TTable(); //$container->style = 'width: 80%'; $container->addRow()->addCell(new TXMLBreadCrumb('menu.xml', 'CampusList')); $container->addRow()->addCell($this->form); parent::add($container); }