/** * Class constructor * Creates the page and the registration form */ function __construct() { parent::__construct(); // security check if (TSession::getValue('logged') !== TRUE) { throw new Exception(_t('Not logged')); } // security check TTransaction::open('changeman'); if (Member::newFromLogin(TSession::getValue('login'))->role_mnemonic !== 'ADMINISTRATOR' and Member::newFromLogin(TSession::getValue('login'))->role_mnemonic !== 'MANAGER') { throw new Exception(_t('Permission denied')); } TTransaction::close(); // creates a table $table = new TTable(); // creates the form $this->form = new TForm('form_Document'); $this->form->add($this->notebook); $this->form->class = 'tform'; $this->form->add($table); $table->addRowSet(new TLabel(_t('Document')), '')->class = 'tformtitle'; // create the form fields $id = new TEntry('id'); $id_project = new TDBCombo('id_project', 'changeman', 'Project', 'id', 'description'); $title = new TEntry('title'); $content = new THtmlEditor('content'); $id->setEditable(FALSE); // define the sizes $id->setSize(100); $id_project->setSize(200); $title->setSize(200, 40); $content->setSize(680, 350); $table->addRowSet(new TLabel('ID:'), $id); $table->addRowSet(new TLabel(_t('Project') . ': '), $id_project); $table->addRowSet(new TLabel(_t('Title') . ': '), $title); $hbox = new THBox(); $hbox->style = 'margin: 10px'; $hbox->add($content); $row = $table->addRow(); $row->addCell($lbl = new TLabel(_t('Content') . ': ')); $lbl->setFontStyle('b'); $row = $table->addRow(); $cell = $row->addCell($hbox); $cell->colspan = 3; // create an action button (save) $save_button = new TButton('save'); // define the button action $save_button->setAction(new TAction(array($this, 'onSave')), _t('Save')); $save_button->setImage('ico_save.png'); // define wich are the form fields $this->form->setFields(array($id, $id_project, $title, $content, $save_button)); $table->addRowSet($save_button, '')->class = 'tformaction'; $container = new TTable(); $container->addRow()->addCell($this->form); // add the form to the page parent::add($container); }
/** * Class constructor * Creates the page */ function __construct() { parent::__construct(); // create the form $this->form = new TForm(); $this->form->class = 'tform'; // creates the form field container $table = new TTable(); $table->width = '100%'; $this->form->add($table); // title row $table->addRowSet(new TLabel('Automatic selections'), '')->class = 'tformtitle'; // create the form fields // parameters (name, database, model, key, value) $radio = new TDBRadioGroup('radio', 'samples', 'Category', 'id', 'name'); $check = new TDBCheckGroup('check', 'samples', 'Category', 'id', 'name'); $combo = new TDBCombo('combo', 'samples', 'Category', 'id', 'name'); $select = new TDBSelect('select', 'samples', 'Category', 'id', 'name'); $search = new TDBMultiSearch('search', 'samples', 'Category', 'id', 'name'); $autocomp = new TDBEntry('autocomplete', 'samples', 'Category', 'name'); $search->setMinLength(3); $search->setOperator('like'); //default data: $radio->setValue(2); $check->setValue(array(1, 3)); $combo->setValue(2); $select->setValue(array(1, 3)); $search->setValue(array(99 => 'Predefined')); $radio->setLayout('horizontal'); $check->setLayout('horizontal'); $combo->setSize(160); $select->setSize(200, 70); $search->setSize(300, 70); // add the fields to the table $table->addRowSet(new TLabel('TDBRadioGroup:'), $radio); $table->addRowSet(new TLabel('TDBCheckGroup:'), $check); $table->addRowSet(new TLabel('TDBCombo:'), $combo); $table->addRowSet(new TLabel('TDBSelect:'), $select); $table->addRowSet(new TLabel('TDBMultiSearch:'), $search); $table->addRowSet(new TLabel('TDBEntry:'), $autocomp); // creates the action button $button1 = new TButton('action1'); // define the button action $button1->setAction(new TAction(array($this, 'onSave')), 'Save'); $button1->setImage('ico_save.png'); $table->addRowSet($button1, '')->class = 'tformaction'; // define wich are the form fields $this->form->setFields(array($radio, $check, $combo, $select, $search, $autocomp, $button1)); // wrap the page content using vertical box $vbox = new TVBox(); $vbox->add(new TXMLBreadCrumb('menu.xml', __CLASS__)); $vbox->add($this->form); parent::add($vbox); }
/** * Class constructor * Creates the page and the registration form */ function __construct() { parent::__construct(); // creates the form $this->form = new TForm('form_Customer_Report'); $this->form->class = 'tform'; // CSS class // creates a table $table = new TTable(); $table->width = '100%'; // add the table inside the form $this->form->add($table); // create the form fields $name = new TEntry('name'); $city_id = new TDBSeekButton('city_id', 'samples', 'form_Customer_Report', 'City', 'name', 'city_id', 'city_name'); $city_name = new TEntry('city_name'); $category_id = new TDBCombo('category_id', 'samples', 'Category', 'id', 'name'); $output_type = new TRadioGroup('output_type'); $options = array('html' => 'HTML', 'pdf' => 'PDF', 'rtf' => 'RTF'); $output_type->addItems($options); $output_type->setValue('pdf'); $output_type->setLayout('horizontal'); // define the sizes $name->setSize(200); $city_id->setSize(100); $category_id->setSize(100); $city_name->setEditable(FALSE); // add a row for the field name $row = $table->addRowSet(new TLabel('Report filters'), ''); $row->class = 'tformtitle'; // CSS class // add the fields into the table $table->addRowSet(new TLabel('Name' . ': '), $name); $table->addRowSet(new TLabel('City' . ': '), array($city_id, $city_name)); $table->addRowSet(new TLabel('Category' . ': '), $category_id); $table->addRowSet(new TLabel('Output' . ': '), $output_type); // create an action button (save) $save_button = new TButton('generate'); $save_button->setAction(new TAction(array($this, 'onGenerate')), 'Generate'); $save_button->setImage('ico_save.png'); // add a row for the form action $row = $table->addRowSet($save_button, ''); $row->class = 'tformaction'; // define wich are the form fields $this->form->setFields(array($name, $city_id, $city_name, $category_id, $output_type, $save_button)); // wrap the page content using vertical box $vbox = new TVBox(); $vbox->add(new TXMLBreadCrumb('menu.xml', __CLASS__)); $vbox->add($this->form); parent::add($vbox); }
/** * Class constructor * Creates the page and the registration form */ function __construct() { parent::__construct(); // creates the form $this->form = new TForm('form_Ticket'); $this->form->class = 'tform'; // CSS class $this->form->style = 'width: 500px'; // creates the table container $table = new TTable(); $table->width = '110%'; // add the table inside the form $this->form->add($table); // define the form title $row = $table->addRow(); $row->class = 'tformtitle'; // CSS class $row->addCell(new TLabel('Resumo de Tickets e Atividades'))->colspan = 3; // create the form fields $ticket = new TEntry('ticket_id'); $ticket->setMask('99999'); $solicitante_id = new TSeekButton('solicitante_id'); $solicitante_nome = new TEntry('solicitante_nome'); $obj = new TicketPessoaSeek(); $action = new TAction(array($obj, 'onReload')); $solicitante_id->setAction($action); $solicitante_nome->setEditable(FALSE); $criteria = new TCriteria(); $criteria->add(new TFilter("origem", "=", 1)); $criteria->add(new TFilter("ativo", "=", 1)); $criteria->add(new TFilter("codigo_cadastro_origem", "=", 100)); $responsavel_id = new TDBCombo('responsavel_id', 'atividade', 'Pessoa', 'pessoa_codigo', 'pessoa_nome', 'pessoa_nome', $criteria); $criteria = new TCriteria(); $criteria->add(new TFilter('enttipent', '=', 1)); $entcodent = new TDBComboMultiValue('entcodent', 'atividade', 'Entidade', 'entcodent', array(0 => 'entcodent', 1 => 'entrazsoc'), 'entcodent', $criteria); $status_ticket_id = new TDBCombo('status_ticket_id', 'atividade', 'StatusTicket', 'id', 'nome'); $prioridade_id = new TDBCombo('prioridade_id', 'atividade', 'Prioridade', 'id', 'nome'); $tipo_ticket_id = new TDBCombo('tipo_ticket_id', 'atividade', 'TipoTicket', 'id', 'nome'); $ticket_sistema_id = new TDBCombo('ticket_sistema_id', 'atividade', 'Sistema', 'id', 'nome'); $atividade_sistema_id = new TDBCombo('atividade_sistema_id', 'atividade', 'Sistema', 'id', 'nome'); $saldo = new TCombo('saldo'); $combo_saldo = array(); $combo_saldo['c'] = 'Com saldo'; $saldo->addItems($combo_saldo); $data_prevista = new TDate('data_prevista'); $data_prevista->setMask('dd/mm/yyyy'); $dataAtividadeInicio = new TDate('data_atividade_inicio'); $dataAtividadeInicio->setMask('dd/mm/yyyy'); $dataAtividadeInicio->setValue('01/' . date('m/Y')); $dataAtividadeFinal = new TDate('data_atividade_final'); $dataAtividadeFinal->setMask('dd/mm/yyyy'); $dataAtividadeFinal->setValue(date('d/m/Y')); $criteria = new TCriteria(); $criteria->add(new TFilter("origem", "=", 1)); $criteria->add(new TFilter("ativo", "=", 1)); $criteria->add(new TFilter("codigo_cadastro_origem", "=", 100)); $colaborador_id = new TDBCombo('colaborador_id', 'atividade', 'Pessoa', 'pessoa_codigo', 'pessoa_nome', 'pessoa_nome', $criteria); $tipo_atividade_id = new TDBCombo('tipo_atividade_id', 'atividade', 'TipoAtividade', 'id', 'nome', 'nome'); $pesquisa_master = new TEntry('pesquisa_master'); $tipo = new TRadioGroup('tipo'); $output_type = new TRadioGroup('output_type'); // define the sizes $ticket->setSize(100); $solicitante_id->setSize(30); $solicitante_nome->setSize(245); $responsavel_id->setSize(300); $colaborador_id->setSize(300); $entcodent->setSize(300); $status_ticket_id->setSize(100); $prioridade_id->setSize(100); $tipo_ticket_id->setSize(200); $ticket_sistema_id->setSize(200); $atividade_sistema_id->setSize(200); $saldo->setSize(100); $data_prevista->setSize(100); $dataAtividadeInicio->setSize(100); $dataAtividadeFinal->setSize(100); $tipo->setSize(100); $output_type->setSize(100); // validations $output_type->addValidation('Output', new TRequiredValidator()); // add one row for each form field // creates a frame $frame = new TFrame(); $frame->oid = 'frame-measures'; $frame->setLegend('Tickets:'); $row = $table->addRow(); $cell = $row->addCell($frame); $cell->colspan = 2; $frame1 = new TTable(); $frame->add($frame1); $frame1->addRowSet(new TLabel('Ticket inicial:'), $ticket); $frame1->addRowSet(new TLabel('Solicitante:'), array($solicitante_id, $solicitante_nome)); $frame1->addRowSet(new TLabel('Responsável:'), $responsavel_id); $frame1->addRowSet(new TLabel('Cliente:'), $entcodent); $frame1->addRowSet(new TLabel('Tipo:'), $tipo_ticket_id); $frame1->addRowSet(new TLabel('Sistema:'), $ticket_sistema_id); $frame1->addRowSet(new TLabel('Status:'), $status_ticket_id); $frame1->addRowSet(new TLabel('Prioridade:'), $prioridade_id); $frame1->addRowSet(new TLabel('Saldo:'), $saldo); $frame1->addRowSet(new TLabel('Dt. Prevista limite:'), $data_prevista); // creates a frame $frame = new TFrame(); $frame->oid = 'frame-measures'; $frame->setLegend('Atividades:'); $row = $table->addRow(); $cell = $row->addCell($frame); $cell->colspan = 2; $frame2 = new TTable(); $frame->add($frame2); $frame2->addRowSet(new TLabel('Dt. Atividades inicio:'), array($dataAtividadeInicio, $label_data_fim = new TLabel('Fim:'), $dataAtividadeFinal)); $label_data_fim->setSize(48); $frame2->addRowSet(new TLabel('Atividades colaborador:'), $colaborador_id); $frame2->addRowSet(new TLabel('Tipo atividade:'), $tipo_atividade_id); $frame2->addRowSet(new TLabel('Sistema:'), $atividade_sistema_id); // creates a frame $frame = new TFrame(); $frame->oid = 'frame-measures'; $frame->setLegend('Pesquisa Master:'); $row = $table->addRow(); $cell = $row->addCell($frame); $cell->colspan = 2; $frame3 = new TTable(); $frame->add($frame3); $frame3->addRowSet(new TLabel('<nobr>Por palavra:</nobr>'), $pesquisa_master); $frame3->addRowSet(new TLabel(''), new TLabel('Essa pesquisa busca pelo titulo do ticket e da descrição da atividade')); $table->addRowSet(new TLabel('Relatório'), $tipo); $table->addRowSet(new TLabel('Output:'), $output_type); $this->form->setFields(array($ticket, $solicitante_id, $solicitante_nome, $responsavel_id, $entcodent, $status_ticket_id, $prioridade_id, $saldo, $tipo_ticket_id, $ticket_sistema_id, $data_prevista, $dataAtividadeInicio, $dataAtividadeFinal, $colaborador_id, $tipo_atividade_id, $atividade_sistema_id, $pesquisa_master, $tipo, $output_type)); $tipo->addItems(array('s' => 'Sintético', 'a' => 'Analitico')); $tipo->setValue('s'); $tipo->setLayout('horizontal'); //$output_type->addItems(array('html'=>'HTML', 'pdf'=>'PDF', 'rtf'=>'RTF')); $output_type->addItems(array('html' => 'HTML')); $output_type->setValue('html'); $output_type->setLayout('horizontal'); $generate_button = TButton::create('generate', array($this, 'onGenerate'), _t('Generate'), 'fa:check-circle-o green'); $this->form->addField($generate_button); $change_data = new TAction(array($this, 'onChangeData')); $dataAtividadeInicio->setExitAction($change_data); $dataAtividadeFinal->setExitAction($change_data); // add a row for the form action $table->addRowSet($generate_button, '')->class = 'tformaction'; parent::add($this->form); }
/** * Class constructor * Creates the page and the registration form */ function __construct() { parent::__construct(); // creates the form $this->form = new TForm('form_cliente'); // creates a table $table_data = new TTable(); $table_contact = new TTable(); $table_skill = new TTable(); $notebook = new TNotebook(500, 250); // add the notebook inside the form $this->form->add($notebook); $notebook->appendPage('Cadastro Cliente', $table_data); // $notebook->appendPage('Cidade', $table_contact); // $notebook->appendPage('Skill (aggregation)', $table_skill); // create the form fields $code = new TEntry('id'); $nome = new TEntry('nome'); $email = new TEntry('email'); $telefone = new TEntry('telefone'); $celular = new TEntry('celular'); $skype = new TEntry('skype'); $endereco = new TEntry('endereco'); // $cidade_id = new TSeekButton('cidade_id'); $cidade_id = new TDBCombo('cidade_id', 'db_crmbf', 'Cidade', 'id', 'nome'); // $birthdate = new TDate('birthdate'); // $email = new TEntry('email'); // $gender = new TRadioGroup('gender'); // $status = new TCombo('status'); // $contacts_list = new TMultiField('contacts_list'); // add field validators $nome->addValidation('Nome', new TRequiredValidator()); $cidade_id->addValidation('Cidade', new TRequiredValidator()); // $birthdate->addValidation('Birthdate', new TRequiredValidator); // $cidade_id->addValidation('Category', new TRequiredValidator); //$obj = new CidadeFormList; //$cidade_id->setAction(new TAction(array($obj, 'onReload'))); // $itemGender = array(); // $itemGender['M'] = 'Male'; // $itemGender['F'] = 'Female'; // // add the combo options // $gender->addItems($itemGender); // $gender->setLayout('horizontal'); // // $itemStatus = array(); // $itemStatus['S'] = 'Single'; // $itemStatus['C'] = 'Committed'; // $itemStatus['M'] = 'Married'; // $status->addItems($itemStatus); // define some properties for the form fields $code->setEditable(FALSE); $code->setSize(100); $nome->setSize(320); $email->setSize(160); $telefone->setSize(160); $celular->setSize(160); $skype->setSize(160); $endereco->setSize(320); $cidade_id->setSize(150); //$cidade_id->setEditable(FALSE); // add a row for the field code $row = $table_data->addRow(); $row->addCell(new TLabel('Code:')); $row->addCell($code); // add a row for the field name $row = $table_data->addRow(); $row->addCell(new TLabel('Nome:')); $cell = $row->addCell($nome); $cell->colspan = 3; // add a row for the field Email $row = $table_data->addRow(); $row->addCell(new TLabel('Email:')); $cell = $row->addCell($email); $cell->colspan = 3; // add a row for the field Telefone $row = $table_data->addRow(); $row->addCell(new TLabel('Telefone:')); $cell = $row->addCell($telefone); $cell->colspan = 3; // add a row for the field celular $row = $table_data->addRow(); $row->addCell(new TLabel('Celular:')); $cell = $row->addCell($celular); // add a row for the field skype $row = $table_data->addRow(); $row->addCell(new TLabel('skype:')); $cell = $row->addCell($skype); // add a row for the field endereco $row = $table_data->addRow(); $row->addCell(new TLabel('Endereço:')); $row->addCell($endereco); // add a row for the field endereco $row = $table_data->addRow(); $row->addCell(new TLabel('Cidade:')); $row->addCell($cidade_id); // add a row for the field Category // $row = $table_data->addRow(); // $row->addCell(new TLabel('Cidade:')); // $cell = $row->addCell($cidade_id); // add a row for the field city // $row=$table_data->addRow(); // $row->addCell(new TLabel('Cidade:')); // $cell = $row->addCell($cidade_id); /* // add a row for the field Phone $row = $table_data->addRow(); $row->addCell(new TLabel('Phone:')); $row->addCell($phone); // add a row for the field BirthDate $row->addCell(new TLabel('BirthDate:')); $row->addCell($birthdate); // add a row for the field status $row = $table_data->addRow(); $row->addCell(new TLabel('Status:')); $cell = $row->addCell($status); // add a row for the field Email $row->addCell(new TLabel('Email:')); $cell = $row->addCell($email); // add a row for the field gender $row->addCell(new TLabel('Gender:')); $row->addCell($gender); $row = $table_contact->addRow(); $cell = $row->addCell(new TLabel('<b>Contact</b>')); $cell->valign = 'top'; // add two fields inside the multifield in the second sheet $contacts_list->setHeight(100); $contacts_list->setClass('Contact'); // define the returning class $contacts_list->addField('type', 'Contact Type: ', new TEntry('type'), 200); $contacts_list->addField('value', 'Contact Value: ', new TEntry('value'), 200); $row = $table_contact->addRow(); $row->addCell($contacts_list); // create the radio button for the skills list $skill_list = new TDBCheckGroup('skill_list', 'samples', 'Skill', 'id', 'name'); $table_skill->addRow()->addCell($lbl = new TLabel('Skills')); $table_skill->addRow()->addCell($skill_list); $lbl->setFontStyle('b'); * */ // create an action button $button1 = new TButton('action1'); $button1->setAction(new TAction(array($this, 'onSave')), 'Save'); $button1->setImage('ico_save.png'); // create an action button (go to list) $button2 = new TButton('list'); $button2->setAction(new TAction(array('ClienteList', 'onReload')), 'Ir para Listagem'); $button2->setImage('ico_datagrid.gif'); // define wich are the form fields $this->form->setFields(array($code, $nome, $email, $telefone, $celular, $skype, $endereco, $cidade_id, $button1, $button2)); $subtable = new TTable(); $row = $subtable->addRow(); $row->addCell($button1); $row->addCell($button2); $table_layout = new TTable(); $table_layout->addRow()->addCell($this->form); $table_layout->addRow()->addCell($subtable); // add the form inside the page parent::add($table_layout); }
/** * constructor method */ public function __construct() { parent::__construct(); new TSession(); // creates the form $this->form = new TForm('form_city_Seek'); // creates the table $table = new TTable(); // add the table inside the form $this->form->add($table); // create the form fields $name = new TEntry('name'); $code = new TEntry('id'); $crm_id = new TDBCombo('crm_id', 'db_crmbf', 'CRM', 'id', 'titulo'); $tiporegistro_id = new TDBCombo('tiporegistro_id', 'db_crmbf', 'RegistroTipo', 'id', 'nome'); $registro = new TText('registro'); $temporegistro = new TEntry('tempo_registro'); // $temporegistro->setEditable(false); $dataregistro = new TDate('data_registro'); $hora_registro = new TEntry('hora_registro'); $numero_registro = new TEntry('numero_registro'); // keep the session value // $name->setValue(TSession::getValue('test_city_name')); // add the field inside the table // $row=$table->addRow(); // $row->addCell(new TLabel('Name:')); // $row->addCell($name); $code->setEditable(FALSE); $code->setSize(100); $crm_id->setSize(320); $registro->setSize(320); $temporegistro->setSize(160); //$temporegistro->setValue(date("d/m/Y H:i:s")); $tiporegistro_id->setSize(160); //$dataregistro->setRange(0,1000,1); $dataregistro->setSize(90); // $hora_registro->setRange(0,100,1); $hora_registro->setSize(150); $hora_registro->setTip('Horario EX: 8:14'); $numero_registro->setSize(320); $row = $table->addRow(); $row->addCell(new TLabel('Code:')); $row->addCell($code); // add a row for the field name $row = $table->addRow(); $row->addCell(new TLabel('CRM Titulo:')); $cell = $row->addCell($crm_id); // add a row for the field Telefone $row = $table->addRow(); $row->addCell(new TLabel('Tipo Registro:')); $cell = $row->addCell($tiporegistro_id); // add a row for the field Email $row = $table->addRow(); $row->addCell(new TLabel('Tempo:')); $cell = $row->addCell($temporegistro); // add a row for the field celular $row = $table->addRow(); $row->addCell(new TLabel('Data:')); $cell = $row->addCell($dataregistro); // add a row for the field skype $row = $table->addRow(); $row->addCell(new TLabel('Hora:')); $cell = $row->addCell($hora_registro); // add a row for the field endereco $row = $table->addRow(); $row->addCell(new TLabel('Numero Registro:')); $row->addCell($numero_registro); // add a row for the field name $row = $table->addRow(); $row->addCell(new TLabel('Registro:')); $cell = $row->addCell($registro); // create a find button $find_button = new TButton('search'); // define the button action $find_button->setAction(new TAction(array($this, 'onSearch')), 'Search'); $find_button->setImage('ico_find.png'); // add a row for the find button $row = $table->addRow(); $row->addCell($find_button); // define wich are the form fields $this->form->setFields(array($name, $find_button)); // create the datagrid $this->datagrid = new TDataGrid(); // create the datagrid columns $id = new TDataGridColumn('id', 'Id', 'right', 70); $name = new TDataGridColumn('name', 'Name', 'left', 220); $state = new TDataGridColumn('state', 'Estado', 'left', 80); $order1 = new TAction(array($this, 'onReload')); $order2 = new TAction(array($this, 'onReload')); $order1->setParameter('order', 'id'); $order2->setParameter('order', 'name'); // define the column actions $id->setAction($order1); $name->setAction($order2); // add the columns inside the datagrid $this->datagrid->addColumn($id); $this->datagrid->addColumn($name); $this->datagrid->addColumn($state); // create one datagrid action $action1 = new TDataGridAction(array($this, 'onSelect')); $action1->setLabel('Selecionar'); $action1->setImage('ico_apply.png'); $action1->setField('id'); // add the action to the datagrid $this->datagrid->addAction($action1); // create the datagrid model $this->datagrid->createModel(); // create the page navigator $this->pageNavigation = new TPageNavigation(); $this->pageNavigation->setAction(new TAction(array($this, 'onReload'))); $this->pageNavigation->setWidth($this->datagrid->getWidth()); // create a table for layout $table = new TTable(); // create a row for the form $row = $table->addRow(); $row->addCell($this->form); // create a row for the datagrid $row = $table->addRow(); $row->addCell($this->datagrid); // create a row for the page navigator $row = $table->addRow(); $row->addCell($this->pageNavigation); // add the table inside the page parent::add($table); }
/** * 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_programs = new TFrame(); // creates the form $this->form = new TForm('form_System_Receipt'); $this->form->class = 'tform'; // add the notebook inside the form $this->form->add($table); $row1 = $table->addRow(); $row1->class = 'tformtitle'; $cell1 = $row1->addCell(new TLabel('Add new receipt'), ''); $cell1->colspan = 2; // create the form fields $id = new TEntry('id'); $client = new TDBCombo('client', 'permission', 'SystemClients', 'name', 'name'); $amount = new TEntry('account_money'); $date = new TDate('date'); $id->setEditable(false); // define the sizes $id->setSize(100); $client->setSize(300); $amount->setSize(300); $date->setSize(300); // validations $client->addValidation('client', new TRequiredValidator()); $amount->addValidation('account_money', new TRequiredValidator()); $date->addValidation('date', new TRequiredValidator()); // add a row for the field id $table->addRowSet(new TLabel('ID:'), $id); $table->addRowSet(new TLabel('Client: '), $client); $table->addRowSet(new TLabel('Account money: '), $amount); $table->addRowSet(new TLabel('Date: '), $date); // create an action button (save) $save_button = new TButton('save'); $save_button->setAction(new TAction(array($this, 'onSave')), _t('Save')); $save_button->setImage('fa:floppy-o'); // create an new button (edit with no parameters) $new_button = new TButton('new'); $new_button->setAction(new TAction(array($this, 'onEdit')), _t('New')); $new_button->setImage('fa:plus-square green'); $list_button = new TButton('list'); $list_button->setAction(new TAction(array('SystemInvoicesList', 'onReload')), _t('Back to the listing')); $list_button->setImage('fa:table blue'); // define the form fields $this->form->setFields(array($id, $client, $amount, $date, $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', 'SystemInvoicesList')); $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 and the registration form */ function __construct() { parent::__construct(); // creates the form $this->form = new TForm('form_crm'); // creates a table // $table = new TTable; $panel = new TPanel(100, 10); // add the notebook inside the form $this->form->add($panel); $panel->put(new TLabel('CRM Titulo:'), 0, 0); // $notebook->appendPage('Cidade', $table_contact); // $notebook->appendPage('Skill (aggregation)', $table_skill); // create the form fields $code = new TEntry('id'); // $crm_id = new TDBCombo('crm_id', 'db_crmbf', 'CRM', 'id', 'titulo'); $crm_id = new TEntry('crm_nome'); $tiporegistro_id = new TDBCombo('tiporegistro_id', 'db_crmbf', 'RegistroTipo', 'id', 'nome'); $registro = new TText('registro'); $temporegistro = new TEntry('tempo_registro'); // $temporegistro->setEditable(false); $dataregistro = new TDate('data_registro'); $hora_registro = new TEntry('hora_registro'); $numero_registro = new TEntry('numero_registro'); // add field validators $registro->addValidation('Nome', new TRequiredValidator()); // $cidade_id->addValidation('Cidade', new TRequiredValidator); // $birthdate->addValidation('Birthdate', new TRequiredValidator); // $cidade_id->addValidation('Category', new TRequiredValidator); //$obj = new CidadeFormList; //$cidade_id->setAction(new TAction(array($obj, 'onReload'))); // $itemGender = array(); // $itemGender['M'] = 'Male'; // $itemGender['F'] = 'Female'; // // add the combo options // $gender->addItems($itemGender); // $gender->setLayout('horizontal'); // // $itemStatus = array(); // $itemStatus['S'] = 'Single'; // $itemStatus['C'] = 'Committed'; // $itemStatus['M'] = 'Married'; // $status->addItems($itemStatus); // define some properties for the form fields $code->setEditable(FALSE); $code->setSize(100); $crm_id->setSize(320); $registro->setSize(320); $temporegistro->setSize(160); //$temporegistro->setValue(date("d/m/Y H:i:s")); $tiporegistro_id->setSize(160); //$dataregistro->setRange(0,1000,1); $dataregistro->setSize(90); // $hora_registro->setRange(0,100,1); $hora_registro->setSize(150); $hora_registro->setTip('Horario EX: 8:14'); $numero_registro->setSize(320); $panel->put("Codigo: ", 10, 25); $panel->put("CRM: ", 10, 50); $panel->put("Tipo: ", 10, 75); $panel->put("Tempo: ", 10, 100); $panel->put("Data: ", 10, 125); $panel->put("Horario: ", 10, 150); $panel->put("Nº Registro: ", 10, 175); $panel->put("Registro: ", 10, 200); $panel->put($code, 100, 25); $panel->put($crm_id, 100, 50); $panel->put($tiporegistro_id, 100, 75); $panel->put($temporegistro, 100, 100); $panel->put($dataregistro, 100, 125); $panel->put($hora_registro, 100, 150); $panel->put($numero_registro, 100, 175); $panel->put($registro, 100, 200); // $row = $table->addRow(); // $row->addCell(new TLabel('Code:')); // $row->addCell($code); // // // add a row for the field name // $row = $table->addRow(); // $row->addCell(new TLabel('CRM Titulo:')); // $cell = $row->addCell($crm_id); // // // add a row for the field Telefone // $row = $table->addRow(); // $row->addCell(new TLabel('Tipo Registro:')); // $cell = $row->addCell($tiporegistro_id); // // // add a row for the field Email // $row = $table->addRow(); // $row->addCell(new TLabel('Tempo:')); // $cell = $row->addCell($temporegistro); // // // add a row for the field celular // $row = $table->addRow(); // $row->addCell(new TLabel('Data:')); // $cell = $row->addCell($dataregistro); // // // add a row for the field skype // $row = $table->addRow(); // $row->addCell(new TLabel('Hora:')); // $cell = $row->addCell($hora_registro); // // // add a row for the field endereco // $row = $table->addRow(); // $row->addCell(new TLabel('Numero Registro:')); // $row->addCell($numero_registro); // // // add a row for the field name // $row = $table->addRow(); // $row->addCell(new TLabel('Registro:')); // $cell = $row->addCell($registro); // add a row for the field Category // $row = $table_data->addRow(); // $row->addCell(new TLabel('Cidade:')); // $cell = $row->addCell($cidade_id); // add a row for the field city // $row=$table_data->addRow(); // $row->addCell(new TLabel('Cidade:')); // $cell = $row->addCell($cidade_id); /* // add a row for the field Phone $row = $table_data->addRow(); $row->addCell(new TLabel('Phone:')); $row->addCell($phone); // add a row for the field BirthDate $row->addCell(new TLabel('BirthDate:')); $row->addCell($birthdate); // add a row for the field status $row = $table_data->addRow(); $row->addCell(new TLabel('Status:')); $cell = $row->addCell($status); // add a row for the field Email $row->addCell(new TLabel('Email:')); $cell = $row->addCell($email); // add a row for the field gender $row->addCell(new TLabel('Gender:')); $row->addCell($gender); $row = $table_contact->addRow(); $cell = $row->addCell(new TLabel('<b>Contact</b>')); $cell->valign = 'top'; // add two fields inside the multifield in the second sheet $contacts_list->setHeight(100); $contacts_list->setClass('Contact'); // define the returning class $contacts_list->addField('type', 'Contact Type: ', new TEntry('type'), 200); $contacts_list->addField('value', 'Contact Value: ', new TEntry('value'), 200); $row = $table_contact->addRow(); $row->addCell($contacts_list); // create the radio button for the skills list $skill_list = new TDBCheckGroup('skill_list', 'samples', 'Skill', 'id', 'name'); $table_skill->addRow()->addCell($lbl = new TLabel('Skills')); $table_skill->addRow()->addCell($skill_list); $lbl->setFontStyle('b'); * */ // create an action button $button1 = new TButton('action1'); $button1->setAction(new TAction(array($this, 'onSave')), 'Save'); $button1->setImage('ico_save.png'); $button1->setProperty('width', 150); // create an action button (go to list) $button2 = new TButton('list'); $button2->setAction(new TAction(array('RegistroList', 'onReload')), 'Ir para Listagem'); $button2->setImage('ico_datagrid.gif'); $button2->setProperty('width', 100); $panel->put($button1, 100, 325); $panel->put($button2, 200, 325); // define wich are the form fields $this->form->setFields(array($code, $crm_id, $registro, $temporegistro, $tiporegistro_id, $dataregistro, $hora_registro, $numero_registro, $button1, $button2)); // $subtable = new TTable; // $row = $subtable->addRow(); // $row->addCell($button1); // $row->addCell($button2); // $table_layout = new TTable; // $table_layout->addRow()->addCell($this->form); // $table_layout->addRow()->addCell($subtable); // add the form inside the page parent::add($panel); // parent::add($table_layout); }
/** * Class constructor * Creates the page and the registration form */ function __construct() { parent::__construct(); // creates the form $this->form = new TForm('form_clienteRegistro Detalhe'); // creates a table $table = new TTable(); $panel = new TPanel(480, 260); $notebook = new TNotebook(500, 250); // add the notebook inside the form $this->form->add($notebook); // add the notebook inside the form $this->form->add($table); // create the form fields $city_id2 = new TSeekButton('city_id2'); $city_name2 = new TEntry('city_name2'); $city_id2->setSize(100); $city_name2->setEditable(FALSE); //dados do cliente CRM TTransaction::open('db_crmbf'); $criteria = new TCriteria(); $criteria->add(new TFilter('cliente_id', '=', $_GET['key'])); // $repository = new TRepository('CRM'); $CRM = $repository->load($criteria); foreach ($CRM as $crms) { $codigoCRM = $crms->id; $tituloCRM = $crms->titulo; $projetoCRM = $crms->projeto_nome; $dataCRM = $crms->data_crm; $tempoCRM = $crms->tempo; $porcentagemCRM = $crms->porcentagem; $descricaoCRM = $crms->descricao; $solicitanteCRM = $crms->solicitante; $usuarioalteracaoCRM = $crms->usuarioalteracao; $responsavel_nomeCRM = $crms->responsavel_nome; $tipo_nomeCRM = $crms->tipo_nome; $cliente_nomeCRM = $crms->cliente_nome; $prioridade_nomeCRM = $crms->prioridade_nome; $status_nomeCRM = $crms->status_nome; } TTransaction::close(); $notebook->appendPage('Registros CRMs', $table); $code = new TEntry('id'); $crm_id = new TDBCombo('crm_id', 'db_crmbf', 'CRM', 'id', 'titulo'); $tiporegistro_id = new TDBCombo('tiporegistro_id', 'db_crmbf', 'RegistroTipo', 'id', 'nome'); $registro = new TText('registro'); $temporegistro = new TEntry('tempo_registro'); // $temporegistro->setEditable(false); $dataregistro = new TDate('data_registro'); $hora_registro = new TEntry('hora_registro'); $numero_registro = new TEntry('numero_registro'); // define some properties for the form fields $code->setEditable(FALSE); $code->setSize(100); $crm_id->setSize(320); $crm_id->setEditable(FALSE); $registro->setSize(320); $temporegistro->setSize(160); //$temporegistro->setValue(date("d/m/Y H:i:s")); $tiporegistro_id->setSize(160); //$dataregistro->setRange(0,1000,1); $dataregistro->setSize(90); // $hora_registro->setRange(0,100,1); $hora_registro->setSize(150); $hora_registro->setTip('Horario EX: 8:14'); $numero_registro->setSize(320); $row = $table->addRow(); $row->addCell(new TLabel('Code:')); $row->addCell($code); // add a row for the field name $row = $table->addRow(); $row->addCell(new TLabel('CRM Titulo:')); $cell = $row->addCell($crm_id); // add a row for the field Telefone $row = $table->addRow(); $row->addCell(new TLabel('Tipo Registro:')); $cell = $row->addCell($tiporegistro_id); // add a row for the field Email $row = $table->addRow(); $row->addCell(new TLabel('Tempo:')); $cell = $row->addCell($temporegistro); // add a row for the field celular $row = $table->addRow(); $row->addCell(new TLabel('Data:')); $cell = $row->addCell($dataregistro); // add a row for the field skype $row = $table->addRow(); $row->addCell(new TLabel('Hora:')); $cell = $row->addCell($hora_registro); // add a row for the field endereco $row = $table->addRow(); $row->addCell(new TLabel('Numero Registro:')); $row->addCell($numero_registro); // add a row for the field name $row = $table->addRow(); $row->addCell(new TLabel('Registro:')); $cell = $row->addCell($registro); // $notebook->appendPage('Cidade', $table_contact); // $notebook->appendPage('Skill (aggregation)', $table_skill); // create the form fields // $code = new TEntry('id'); // $nome = new TEntry('nome'); // $email = new TEntry('email'); // $telefone = new TEntry('telefone'); // $celular = new TEntry('celular'); // $skype = new TEntry('skype'); // $endereco = new TEntry('endereco'); //// $cidade_id = new TSeekButton('cidade_id'); // $cidade_id = new TDBCombo('cidade_id', 'db_crmbf', 'Cidade', 'id', 'nome'); // $birthdate = new TDate('birthdate'); // $email = new TEntry('email'); // $gender = new TRadioGroup('gender'); // $status = new TCombo('status'); // $contacts_list = new TMultiField('contacts_list'); // add field validators // $nome->addValidation('Nome', new TRequiredValidator); // $cidade_id->addValidation('Cidade', new TRequiredValidator); // $birthdate->addValidation('Birthdate', new TRequiredValidator); // $cidade_id->addValidation('Category', new TRequiredValidator); //$obj = new CidadeFormList; //$cidade_id->setAction(new TAction(array($obj, 'onReload'))); // $itemGender = array(); // $itemGender['M'] = 'Male'; // $itemGender['F'] = 'Female'; // // add the combo options // $gender->addItems($itemGender); // $gender->setLayout('horizontal'); // // $itemStatus = array(); // $itemStatus['S'] = 'Single'; // $itemStatus['C'] = 'Committed'; // $itemStatus['M'] = 'Married'; // $status->addItems($itemStatus); // define some properties for the form fields // $code->setEditable(FALSE); // $code->setSize(100); // $nome->setSize(320); // $email->setSize(160); // $telefone->setSize(160); // $celular->setSize(160); // $skype->setSize(160); // $endereco->setSize(320); // $cidade_id->setSize(150); //$cidade_id->setEditable(FALSE); // add a row for the field code $panel->put("CRM: ", $codigoCRM, 10, 5); $panel->put($tituloCRM, 10, 20); $panel->put($projetoCRM, 10, 40); $panel->put("Data de Criação: " . $dataCRM, 10, 75); $panel->put("Aberto por: " . $usuarioalteracaoCRM, 10, 95); $panel->put("Cliente: " . $cliente_nomeCRM, 10, 55); $panel->put("Responsavel: " . $responsavel_nomeCRM, 10, 110); $panel->put("Tipo: " . $tipo_nomeCRM, 10, 130); $panel->put("Percentual Conclusão: " . $porcentagemCRM, 10, 140); $panel->put("Tempo Gasto: " . $tempoCRM, 10, 160); $panel->put("Situação: " . $status_nomeCRM, 10, 180); $panel->put("Descrição: " . $descricaoCRM, 10, 200); // $row = $table->addRow(); // $row->addCell(new TLabel('Titulo:')); // $row->addCell($tituloCRM); // // // add a row for the field name // $row = $table->addRow(); // $row->addCell(new TLabel('Projeto:')); // $cell = $row->addCell($projetoCRM); // $cell->colspan = 3; // // // add a row for the field Email // $row = $table->addRow(); // $row->addCell(new TLabel('DATA:')); // $cell = $row->addCell($dataCRM); // $cell->colspan = 3; // // // add a row for the field Telefone // $row = $table->addRow(); // $row->addCell(new TLabel('Tempo:')); // $cell = $row->addCell($tempoCRM); // $cell->colspan = 3; // // // add a row for the field celular // $row = $table->addRow(); // $row->addCell(new TLabel('Porcentagem:')); // $cell = $row->addCell($porcentagemCRM); // // // add a row for the field skype // $row = $table->addRow(); // $row->addCell(new TLabel('Solicitação:')); // $cell = $row->addCell($solicitanteCRM); // // add a row for the field endereco // $row = $table_data->addRow(); // $row->addCell(new TLabel('Endereço:')); // $row->addCell($endereco); // // // add a row for the field endereco // $row = $table_data->addRow(); // $row->addCell(new TLabel('Cidade:')); // $row->addCell($cidade_id); // add a row for the field Category // $row = $table_data->addRow(); // $row->addCell(new TLabel('Cidade:')); // $cell = $row->addCell($cidade_id); // add a row for the field city // $row=$table_data->addRow(); // $row->addCell(new TLabel('Cidade:')); // $cell = $row->addCell($cidade_id); /* // add a row for the field Phone $row = $table_data->addRow(); $row->addCell(new TLabel('Phone:')); $row->addCell($phone); // add a row for the field BirthDate $row->addCell(new TLabel('BirthDate:')); $row->addCell($birthdate); // add a row for the field status $row = $table_data->addRow(); $row->addCell(new TLabel('Status:')); $cell = $row->addCell($status); // add a row for the field Email $row->addCell(new TLabel('Email:')); $cell = $row->addCell($email); // add a row for the field gender $row->addCell(new TLabel('Gender:')); $row->addCell($gender); $row = $table_contact->addRow(); $cell = $row->addCell(new TLabel('<b>Contact</b>')); $cell->valign = 'top'; // add two fields inside the multifield in the second sheet $contacts_list->setHeight(100); $contacts_list->setClass('Contact'); // define the returning class $contacts_list->addField('type', 'Contact Type: ', new TEntry('type'), 200); $contacts_list->addField('value', 'Contact Value: ', new TEntry('value'), 200); $row = $table_contact->addRow(); $row->addCell($contacts_list); // create the radio button for the skills list $skill_list = new TDBCheckGroup('skill_list', 'samples', 'Skill', 'id', 'name'); $table_skill->addRow()->addCell($lbl = new TLabel('Skills')); $table_skill->addRow()->addCell($skill_list); $lbl->setFontStyle('b'); * */ // create an action button $button1 = new TButton('action1'); $button1->setAction(new TAction(array($this, 'onSave')), 'Save'); $button1->setImage('ico_save.png'); // create an action button (go to list) $button2 = new TButton('list'); $button2->setAction(new TAction(array('ClienteList', 'onReload')), 'Ir para Listagem'); $button2->setImage('ico_datagrid.gif'); // create an action button $button3 = new TButton('action3'); $action3 = new TAction(array('RegistroForm', 'onEdit')); $action3->setParameter('fk', $codigoCRM); $button3->setImage('ico_save.png'); $button3->setAction($action3, 'Inserir Registro'); // define wich are the form fields $this->form->setFields(array($code, $crm_id, $registro, $temporegistro, $tiporegistro_id, $dataregistro, $hora_registro, $numero_registro, $button1, $button2, $button3)); $subtable = new TTable(); $row = $subtable->addRow(); $row->addCell($button1); $row->addCell($button2); $row->addCell($button3); $table_layout = new TTable(); $table_layout->addRow()->addCell($this->form); $table_layout->addRow()->addCell($subtable); // // add a row for the field gender // $row->addCell(new TLabel('Gender:')); // $row->addCell($registroREG); // // // add a row for the field Category // $row = $table->addRow(); // $row->addCell(new TLabel('Cidade:')); // $cell = $row->addCell($registroREG); // add the form inside the page parent::add($panel); parent::add($table_layout); // creates the form $this->form2 = new TForm('form_clienteRegistro Detalhe'); //dados do cliente CRM TTransaction::open('db_crmbf'); $criteria2 = new TCriteria(); // $criteria->add(new TFilter('crm_id', '=', $_GET['key'])); $criteria2->setProperty('order', 'id desc'); $repository2 = new TRepository('Registro'); $reg = $repository2->load($criteria2); foreach ($reg as $regs) { $row = $table->addRow(); $row->addCell(new TLabel('ID:')); $cell = $row->addCell($regs->id); $row = $table->addRow(); $row->addCell(new TLabel('CRM:')); $cell = $row->addCell($regs->crm_id); $row = $table->addRow(); $row->addCell(new TLabel('CRM:')); $cell = $row->addCell($regs->tiporegistro_id); $row = $table->addRow(); $row->addCell(new TLabel('Tempo:')); $cell = $row->addCell($regs->tempo_registro); $row = $table->addRow(); $row->addCell(new TLabel('Data:')); $cell = $row->addCell($regs->data_registro); $row = $table->addRow(); $row->addCell(new TLabel('Horario:')); $cell = $row->addCell($regs->hora_registro); $row = $table->addRow(); $row->addCell(new TLabel('Numero Registro:')); $cell = $row->addCell($regs->numero_registro); $row = $table->addRow(); $row->addCell(new TLabel('Registro:')); $cell = $row->addCell($regs->registro); $row = $table->addRow(); $row->addCell(new TLabel(' ')); $cell = $row->addCell(' '); // $idREG = $regs->id; // $crm_idREG = $regs->crm_id; // $tiporegistro_idREG = $regs->tiporegistro_id; // $tempoREG = $regs->tempo_registro; // $dataREG = $regs->data_registro; // $horaREG = $regs->hora_registro; // $numRegistroREG = $regs->numero_registro; // $registroREG = $regs->registro; } TTransaction::close(); }
/** * Class constructor * Creates the page and the registration form */ function __construct() { parent::__construct(); // security check if (TSession::getValue('logged') !== TRUE) { throw new Exception(_t('Not logged')); } // security check TTransaction::open('changeman'); if (Member::newFromLogin(TSession::getValue('login'))->role_mnemonic !== 'ADMINISTRATOR' and Member::newFromLogin(TSession::getValue('login'))->role_mnemonic !== 'MANAGER') { throw new Exception(_t('Permission denied')); } TTransaction::close(); // creates a table $table = new TTable(); $table1 = new TTable(); $table2 = new TTable(); // creates the form $this->form = new TForm('form_Member'); $this->form->class = 'tform'; $this->form->style = 'width: 640px'; $this->form->add($table); $table->width = '100%'; $table->addRowSet(new TLabel(_t('Members')), '')->class = 'tformtitle'; $row = $table->addRow(); $row->addCell($table1); $cell = $row->addCell($table2); $cell->valign = 'top'; $options = array('Y' => _t('Yes'), 'N' => _t('No')); // create the form fields $id = new TEntry('id'); $name = new TEntry('name'); $id_role = new TDBCombo('id_role', 'changeman', 'Role', 'id', 'description'); $login = new TEntry('login'); $password = new TPassword('password'); $email = new TEntry('email'); $active = new TCombo('active'); $projects = new TDBCheckGroup('project_ids', 'changeman', 'Project', 'id', 'description'); $id->setEditable(FALSE); $active->addItems($options); // define the sizes $id->setSize(100); $name->setSize(200, 40); $id_role->setSize(160); $login->setSize(200, 40); $password->setSize(200, 40); $email->setSize(200, 40); $active->setSize(200); // add a row for the field id $row = $table1->addRow(); $cell = $row->addCell(new TLabel('ID:')); $cell->width = '100px'; $row->addCell($id); // add a row for the field name $row = $table1->addRow(); $row->addCell(new TLabel(_t('Name') . ': ')); $row->addCell($name); // add a row for the field id_role $row = $table1->addRow(); $row->addCell(new TLabel(_t('Role') . ': ')); $row->addCell($id_role); // add a row for the field login $row = $table1->addRow(); $row->addCell(new TLabel('Login:'******'Password') . ': ')); $row->addCell($password); // add a row for the field email $row = $table1->addRow(); $row->addCell(new TLabel('Email:')); $row->addCell($email); // add a row for the field active $row = $table1->addRow(); $row->addCell(new TLabel(_t('Active') . ': ')); $row->addCell($active); // add a row for the field projects $row = $table2->addRow(); $cell = $row->addCell($lbl_pro = new TLabel(_t('Projects') . ': ')); $row = $table2->addRow(); $row->addCell($projects); $lbl_pro->setFontStyle('b'); // create an action button (save) $save_button = new TButton('save'); $save_button->setAction(new TAction(array($this, 'onSave')), _t('Save')); $save_button->setImage('ico_save.png'); $row = $table->addRow(); $row->class = 'tformaction'; $row->addCell($save_button)->colspan = 2; // define wich are the form fields $this->form->setFields(array($id, $name, $id_role, $login, $password, $email, $active, $projects, $save_button)); $container = new TVBox(); $container->add($this->form); parent::add($container); }
/** * Class constructor * Creates the page and the registration form */ function __construct() { parent::__construct(); // security check if (TSession::getValue('logged') !== TRUE) { throw new Exception(_t('Not logged')); } // security check TTransaction::open('changeman'); if (Member::newFromLogin(TSession::getValue('login'))->role_mnemonic !== 'ADMINISTRATOR' and Member::newFromLogin(TSession::getValue('login'))->role_mnemonic !== 'MANAGER') { throw new Exception(_t('Permission denied')); } TTransaction::close(); // creates a table $table = new TTable(); // creates the form $this->form = new TForm('form_Release'); $this->form->class = 'tform'; $this->form->style = 'width: 640px'; $this->form->add($table); $table->width = '100%'; $table->addRowSet(new TLabel(_t('Release')), '')->class = 'tformtitle'; $options = array('Y' => _t('Yes'), 'N' => _t('No')); // create the form fields $id = new TEntry('id'); $id_project = new TDBCombo('id_project', 'changeman', 'Project', 'id', 'description'); $name = new TEntry('name'); $sendmail = new TRadioGroup('sendmail'); $description = new THtmlEditor('description'); $id_project->addValidation(_t('Project'), new TRequiredValidator()); $name->addValidation(_t('Name'), new TRequiredValidator()); $id->setEditable(FALSE); // define the sizes $id->setSize(100); $id_project->setSize(200); $name->setSize(200, 40); $description->setSize(530, 200); $sendmail->addItems($options); $sendmail->setLayout('horizontal'); $sendmail->setValue('N'); $table->addRowSet(new TLabel('ID:'), $id); $table->addRowSet(new TLabel(_t('Project') . ': '), $id_project); $table->addRowSet(new TLabel(_t('Name') . ': '), $name); $table->addRowSet(new TLabel(_t('Send e-mail') . ': '), $sendmail); $hbox = new THBox(); $hbox->style = 'margin: 10px'; $hbox->add($description); // add a row for the field description $row = $table->addRow(); $row->addCell($lbl = new TLabel(_t('Description') . ': ')); $lbl->setFontStyle('b'); $row = $table->addRow(); $cell = $row->addCell($hbox); $cell->colspan = 3; // create an action button (save) $save_button = new TButton('save'); // define the button action $save_button->setAction(new TAction(array($this, 'onSave')), _t('Save')); $save_button->setImage('ico_save.png'); $table->addRowSet($save_button, '')->class = 'tformaction'; // define wich are the form fields $this->form->setFields(array($id, $id_project, $name, $description, $sendmail, $save_button)); // add the form to the page parent::add($this->form); }
/** * Class constructor * Creates the page and the registration form */ function __construct() { parent::__construct(); $this->string = new StringsUtil(); // creates the form $this->form = new TForm('form_Atividade'); $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('Registro de ausências'))->colspan = 2; // create the form fields $id = new THidden('id'); $criteria = new TCriteria(); $criteria->add(new TFilter("origem", "=", 1)); $criteria->add(new TFilter("codigo_cadastro_origem", "=", 100)); $criteria->add(new TFilter("ativo", "=", 1)); $criteria->add(new TFilter("usuario", "is not ")); $colaborador_id = new TDBCombo('colaborador_id', 'atividade', 'Pessoa', 'pessoa_codigo', 'pessoa_nome', 'pessoa_nome', $criteria); $criteria = new TCriteria(); $criteria->add(new TFilter("id", "in", array(10, 17))); $tipo_atividade_id = new TDBCombo('tipo_atividade_id', 'atividade', 'TipoAtividade', 'id', 'nome', 'nome', $criteria); $tipo_atividade_id->setDefaultOption(FALSE); $data_inicial = new TDate('data_inicial'); $data_inicial->setMask('dd/mm/yyyy'); $data_final = new TDate('data_final'); $data_final->setMask('dd/mm/yyyy'); // define the sizes $id->setSize(100); $data_inicial->setSize(100); $data_final->setSize(100); $colaborador_id->setSize(290); $tipo_atividade_id->setSize(290); // validações $data_inicial->addValidation('Data inicial', new TRequiredValidator()); $data_final->addValidation('Data final', new TRequiredValidator()); $colaborador_id->addValidation('Colaborador', new TRequiredValidator()); $tipo_atividade_id->addValidation('Tipo atividade', new TRequiredValidator()); // add one row for each form field $table->addRowSet($label1 = new TLabel('Colaborador:'), $colaborador_id); $label1->setFontColor('#FF0000'); $table->addRowSet($label2 = new TLabel('Tipo Atividade:'), $tipo_atividade_id); $label2->setFontColor('#FF0000'); $table->addRowSet($label3 = new TLabel('Data inicial:'), array($data_inicial, $label4 = new TLabel('final:'), $data_final)); $label3->setFontColor('#FF0000'); $label4->setFontColor('#FF0000'); $table->addRowSet(new TLabel(''), $id); // add some row for the form info $row = $table->addRow(); $row->addCell(new TLabel('Este sistema deve ser utilizado para registrar ausências de dias completos'))->colspan = 2; $row = $table->addRow(); $row->addCell(new TLabel('No periodo selecionado não pode haver ponto cadastrado'))->colspan = 2; $row = $table->addRow(); $row->addCell($label_red = new TLabel('Cuidado para não cadastrar finais de semana e feriados (periodo útil)'))->colspan = 2; $label_red->setFontColor('#FF0000'); $this->form->setFields(array($id, $data_inicial, $data_final, $colaborador_id, $tipo_atividade_id)); $change_data = new TAction(array($this, 'onChangeData')); $data_inicial->setExitAction($change_data); $data_final->setExitAction($change_data); // create the form actions $save_button = TButton::create('save', array($this, 'onSave'), _t('Save'), 'fa:floppy-o'); $new_button = TButton::create('new', array($this, 'onEdit'), _t('New'), 'fa:plus-square green'); $this->form->addField($save_button); $this->form->addField($new_button); $buttons_box = new THBox(); $buttons_box->add($save_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; parent::add($this->form); }
/** * Class constructor * Creates the page and the registration form */ function __construct() { parent::__construct(); // security check if (TSession::getValue('logged') !== TRUE) { throw new Exception(_t('Not logged')); } // security check TTransaction::open('changeman'); if (Member::newFromLogin(TSession::getValue('login'))->role_mnemonic == 'CUSTOMER') { throw new Exception(_t('Permission denied')); } TTransaction::close(); $table = new TTable(); // creates the form $this->form = new TForm('form_Issue'); $this->form->add($table); $table->width = '100%'; $this->form->style = 'width: 750px'; $this->form->class = 'tform'; $table->addRowSet(new TLabel(_t('Issue')), '')->class = 'tformtitle'; $table1 = new TTable(); $table2 = new TTable(); // create the form fields $id = new TEntry('id'); $id_user = new TDBCombo('id_user', 'changeman', 'Member', 'id', 'name'); $id_status = new TDBCombo('id_status', 'changeman', 'Status', 'id', 'complete_description'); $id_project = new TDBCombo('id_project', 'changeman', 'Project', 'id', 'description'); $id_priority = new TDBCombo('id_priority', 'changeman', 'Priority', 'id', 'description_translated'); $id_category = new TDBCombo('id_category', 'changeman', 'Category', 'id', 'description_translated'); $id_release = new TDBCombo('id_release', 'changeman', 'Release', 'id', 'name'); $id_member = new TDBCombo('id_member', 'changeman', 'Member', 'id', 'name'); $register_date = new TDate('register_date'); $close_date = new TDate('close_date'); $time = new TEntry('issue_time'); $title = new TEntry('title'); $description = new THtmlEditor('description'); $solution = new THtmlEditor('solution'); $id_user->addValidation(_t('User'), new TRequiredValidator()); $id_status->addValidation(_t('Status'), new TRequiredValidator()); $id_project->addValidation(_t('Project'), new TRequiredValidator()); $id_priority->addValidation(_t('Priority'), new TRequiredValidator()); $id_category->addValidation(_t('Category'), new TRequiredValidator()); $register_date->addValidation(_t('Start date'), new TRequiredValidator()); $title->addValidation(_t('Title'), new TRequiredValidator()); $description->addValidation(_t('Description'), new TRequiredValidator()); // define the sizes $id->setSize(100); $id_user->setSize(200); $id_status->setSize(200); $id_project->setSize(200); $id_priority->setSize(200); $id_category->setSize(200); $id_release->setSize(200); $id_member->setSize(200); $register_date->setSize(100); $close_date->setSize(100); $time->setSize(200); $title->setSize(200, 40); $description->setSize(680, 300); $solution->setSize(680, 300); $register_date->setMask('yyyy-mm-dd'); $close_date->setMask('yyyy-mm-dd'); $id->setEditable(FALSE); // add a row for the field id $table1->addRowSet(new TLabel('ID:'), $id); $table1->addRowSet(new TLabel(_t('User') . ': '), $id_user); $table1->addRowSet(new TLabel(_t('Status') . ': '), $id_status); $table1->addRowSet(new TLabel(_t('Project') . ': '), $id_project); $table1->addRowSet(new TLabel(_t('Priority') . ': '), $id_priority); $table1->addRowSet(new TLabel(_t('Category') . ': '), $id_category); $table2->addRowSet(new TLabel(_t('Release') . ': '), $id_release); $table2->addRowSet(new TLabel(_t('Assigned to')), $id_member); $table2->addRowSet(new TLabel(_t('Start date') . ':'), $register_date); $table2->addRowSet(new TLabel(_t('Due date') . ':'), $close_date); $table2->addRowSet(new TLabel(_t('Time') . ':'), $time); $table2->addRowSet(new TLabel(_t('Title') . ':'), $title); $row = $table->addRow(); $row->addCell($table1); $row->addCell($table2); $subnotebook = new TNotebook(); $subnotebook->setSize(710, 320); $subnotebook->style = 'padding: 50px'; $subnotebook->appendPage(_t('Description'), $description); $subnotebook->appendPage(_t('Solution'), $solution); $hbox = new THBox(); $hbox->add($subnotebook); $hbox->style = 'margin: 10px'; $row = $table->addRow(); $cell = $row->addCell($hbox); $cell->colspan = 3; // create an action button (save) $save_button = new TButton('save'); // define the button action $save_button->setAction(new TAction(array($this, 'onSave')), _t('Save')); $save_button->setImage('ico_save.png'); $table->addRowSet($save_button, '')->class = 'tformaction'; // define wich are the form fields $this->form->setFields(array($id, $id_user, $id_status, $id_project, $id_priority, $id_category, $id_release, $id_member, $register_date, $close_date, $time, $title, $description, $solution, $save_button)); // add the form to the page parent::add($this->form); }
/** * Class constructor * Creates the page and the registration form */ function __construct() { parent::__construct(); // creates the form $this->form = new TForm('form_Ticket'); $this->form->class = 'tform'; // CSS class $table = new TTable(); $table->style = 'width: 600px'; $tablePagamento = new TTable(); $tablePagamento->style = 'width: 600px'; $notebook = new TNotebook(600, 650); $notebook->appendPage('Ticket - Cadastramento', $table); $notebook->appendPage('Ticket - Orçamento / Pagamento', $tablePagamento); // create the form fields $id = new TEntry('id'); $id->setEditable(FALSE); $titulo = new TEntry('titulo'); $origem = new TCombo('origem'); $combo_origem = array(); $combo_origem['I'] = 'Interno'; $combo_origem['E'] = 'Externo'; $origem->addItems($combo_origem); $origem->setDefaultOption(FALSE); $solicitacao_descricao = new TText('solicitacao_descricao'); $providencia = new TText('providencia'); $orcamento_horas = new TEntry('orcamento_horas'); $orcamento_horas->setMask('999999'); $orcamento_valor_hora = new TEntry('orcamento_valor_hora'); $orcamento_valor_hora->setNumericMask(2, ',', '.'); $valor_desconto = new TEntry('valor_desconto'); $valor_desconto->setNumericMask(2, ',', '.'); $valor_total = new TEntry('valor_total'); $valor_total->setNumericMask(2, ',', '.'); $valor_total->setEditable(FALSE); $forma_pagamento = new TEntry('forma_pagamento'); $data_ultimo_pgto = new TEntry('data_ultimo_pgto'); $data_ultimo_pgto->setEditable(FALSE); $valor_ultimo_pgto = new TEntry('valor_ultimo_pgto'); $valor_ultimo_pgto->setNumericMask(2, ',', '.'); $valor_ultimo_pgto->setEditable(FALSE); $valor_total_pago = new TEntry('valor_total_pago'); $valor_total_pago->setNumericMask(2, ',', '.'); $valor_total_pago->setEditable(FALSE); $data_pagamento = new TDate('data_pagamento'); $data_pagamento->setMask('dd/mm/yyyy'); $valor_pagamento = new TEntry('valor_pagamento'); $valor_pagamento->setNumericMask(2, ',', '.'); $valor_total_parcial = new TEntry('valor_total_parcial'); $valor_total_parcial->setNumericMask(2, ',', '.'); $valor_total_parcial->setEditable(FALSE); $valor_saldo = new TEntry('valor_saldo'); $valor_saldo->setNumericMask(2, ',', '.'); $valor_saldo->setEditable(FALSE); $data_cadastro = new TEntry('data_cadastro'); $data_cadastro->setEditable(FALSE); $data_cadastro->setMask('dd/mm/yyyy'); $data_cadastro->setValue(date('d/m/Y')); $data_inicio = new TDate('data_inicio'); $data_inicio->setMask('dd/mm/yyyy'); $data_inicio_oculta = new THidden('data_inicio_oculta'); $data_cancelamento = new TDate('data_cancelamento'); $data_cancelamento->setMask('dd/mm/yyyy'); $data_encerramento = new TDate('data_encerramento'); $data_encerramento->setMask('dd/mm/yyyy'); $data_prevista = new TDate('data_prevista'); $data_prevista->setMask('dd/mm/yyyy'); $data_aprovacao = new TDate('data_aprovacao'); $data_aprovacao->setMask('dd/mm/yyyy'); $observacao = new TText('observacao'); $nome_dtr = new TEntry('nome_dtr'); $nome_dtr->setEditable(FALSE); $criteria = new TCriteria(); $criteria->add(new TFilter("origem", "=", 1)); $criteria->add(new TFilter("ativo", "=", 1)); $criteria->add(new TFilter("codigo_cadastro_origem", "=", 100)); $responsavel_id = new TDBCombo('responsavel_id', 'atividade', 'Pessoa', 'pessoa_codigo', 'pessoa_nome', 'pessoa_nome', $criteria); $tipo_ticket_id = new TDBCombo('tipo_ticket_id', 'atividade', 'TipoTicket', 'id', 'nome'); $tipo_ticket_id->setDefaultOption(FALSE); $sistema_id = new TDBCombo('sistema_id', 'atividade', 'Sistema', 'id', 'nome'); $status_ticket_id = new TDBCombo('status_ticket_id', 'atividade', 'StatusTicket', 'id', 'nome'); $status_ticket_id->setValue(2); $status_ticket_id->setEditable(FALSE); $prioridade_id = new TDBCombo('prioridade_id', 'atividade', 'Prioridade', 'id', 'nome'); $prioridade_id->setDefaultOption(FALSE); $prioridade_id->setValue(3); $combo_tipo_origens = new TCombo('tipo_origens'); $combo_tipo_origens->addItems(array(1 => 'Entidade', 2 => 'Estabelecimento', 3 => 'Empresa')); $combo_codigo_origem = new TCombo('codigo_cadastro_origem'); $combo_solicitante_id = new TCombo('solicitante_id'); try { TTransaction::open('atividade'); $logado = Pessoa::retornaUsuario(); TTransaction::close(); } catch (Exception $e) { new TMessage('error', '<b>Error</b> ' . $e->getMessage()); // shows the exception error message } $logado_id = new THidden('logado_id'); $logado_id->setValue($logado->pessoa_codigo); // define the sizes $id->setSize(100); $origem->setSize(200); $solicitacao_descricao->setSize(400, 180); $data_inicio->setSize(90); $data_encerramento->setSize(90); $data_cancelamento->setSize(90); $providencia->setSize(400, 80); $orcamento_horas->setSize(100); $orcamento_valor_hora->setSize(100); $valor_desconto->setSize(100); $valor_total->setSize(100); $valor_saldo->setSize(121); $forma_pagamento->setSize(400); $data_ultimo_pgto->setSize(100); $data_pagamento->setSize(100); $valor_pagamento->setSize(121); $valor_ultimo_pgto->setSize(100); $valor_total_pago->setSize(100); $valor_total_parcial->setSize(121); $data_cadastro->setSize(100); $data_prevista->setSize(100); $data_aprovacao->setSize(100); $observacao->setSize(400, 80); $nome_dtr->setSize(400); $titulo->setSize(390); $responsavel_id->setSize(390); $tipo_ticket_id->setSize(200); $sistema_id->setSize(200); $status_ticket_id->setSize(200); $prioridade_id->setSize(200); $combo_tipo_origens->setSize(135); $combo_codigo_origem->setSize(250); $combo_solicitante_id->setSize(390); // validações $titulo->addValidation('Titulo', new TRequiredValidator()); $combo_solicitante_id->addValidation('Solicitante', new TRequiredValidator()); $responsavel_id->addValidation('Responsável', new TRequiredValidator()); $sistema_id->addValidation('Sistema', new TRequiredValidator()); $gerar_dr = TButton::create('gerar_dr', array('RequisitoDesenvolvimentoForm', 'onEdit'), 'Gerar DTR', 'ico_add.png'); $link_dtr = new TButton('link_dtr'); $link_dtr->setImage('bs:edit green'); $link_dtr->setLabel('ir para DTR'); $link_dtr->addFunction("__adianti_load_page('index.php?class=RequisitoDesenvolvimentoForm&method=onBuscaDTR&key={$_REQUEST['key']}');"); $this->form->addField($gerar_dr); $this->form->addField($link_dtr); TButton::disableField('form_Ticket', 'gerar_dr'); TButton::disableField('form_Ticket', 'link_dtr'); // add one row for each form field // notebook Cadastramento $table->addRowSet(new TLabel('Ticket:'), array($id, new TLabel('Data Cadastro'), $data_cadastro)); $table->addRowSet($label_combo_origem = new TLabel('Origem:'), array($combo_tipo_origens, $combo_codigo_origem)); $label_combo_origem->setFontColor('#FF0000'); $table->addRowSet($label_solicitante = new TLabel('Solicitante:'), $combo_solicitante_id); $label_solicitante->setFontColor('#FF0000'); $table->addRowSet($label_responsavel = new TLabel('Responsável:'), $responsavel_id); $label_responsavel->setFontColor('#FF0000'); $table->addRowSet($label_titulo = new TLabel('Título:'), $titulo); $label_titulo->setFontColor('#FF0000'); $table->addRowSet(new TLabel('Data Inicio'), array($data_inicio, $label_status = new TLabel('Status:'), $status_ticket_id)); $label_status->setSize(70); $table->addRowSet(new TLabel('Data Encerramento:'), array($data_encerramento, $label_data_cancelamento = new TLabel('Data Cancelamento:'), $data_cancelamento)); $label_data_cancelamento->setSize(160); $table->addRowSet(new TLabel('Prioridade:'), $prioridade_id); $table->addRowSet(new TLabel('Origem:'), $origem); $table->addRowSet(new TLabel('Tipo Ticket:'), $tipo_ticket_id); $table->addRowSet($label_sistema = new TLabel('Sistema:'), $sistema_id); $label_sistema->setFontColor('#FF0000'); $table->addRowSet(new TLabel('Descrição Solicitação:'), $solicitacao_descricao); $table->addRowSet(new TLabel('DR.:'), $nome_dtr); $table->addRowSet(new TLabel(''), array($gerar_dr, $link_dtr)); $table->addRowSet(new TLabel(''), $data_inicio_oculta); // notebook Pagamento $tablePagamento->addRowSet(new TLabel('Data Prevista:'), $data_prevista); $tablePagamento->addRowSet(new TLabel('Data Aprovação:'), $data_aprovacao); $tablePagamento->addRowSet(new TLabel('Qte Horas:'), $orcamento_horas); $tablePagamento->addRowSet(new TLabel('Valor Hora:'), $orcamento_valor_hora); $tablePagamento->addRowSet(new TLabel('Valor Desconto:'), $valor_desconto); $tablePagamento->addRowSet(new TLabel('Valor Total:'), $valor_total); $tablePagamento->addRowSet(new TLabel('Forma de Pgto:'), $forma_pagamento); $tablePagamento->addRowSet(new TLabel('Descrição Providência:'), $providencia); $tablePagamento->addRowSet(new TLabel('Observação:'), $observacao); // creates a frame $frame = new TFrame(); $frame->oid = 'frame-measures'; $frame->setLegend('Pagamentos:'); $row = $tablePagamento->addRow(); $cell = $row->addCell($frame); $cell->colspan = 2; $page2 = new TTable(); $frame->add($page2); $page2->addRowSet(new TLabel('Valor Pgto:'), array($valor_pagamento, $tamanho_label = new TLabel('Valor Ultimo Pgto:'), $valor_ultimo_pgto)); $tamanho_label->setSize(150); $page2->addRowSet(new TLabel('Data Pgto:'), array($data_pagamento, $tamanho_label = new TLabel('Data Ultimo Pgto:'), $data_ultimo_pgto)); $tamanho_label->setSize(150); $page2->addRowSet(new TLabel('Valor Total:'), array($valor_total_parcial, $tamanho_label = new TLabel('Valor Total Pago: '), $valor_total_pago)); $tamanho_label->setSize(150); $page2->addRowSet(new TLabel('Saldo a pagar:'), $valor_saldo); $tablePagamento->addRowSet(new TLabel(''), $logado_id); // Envia campos para o formulario $this->form->setFields(array($id, $titulo, $data_inicio, $data_inicio_oculta, $data_encerramento, $data_cancelamento, $origem, $solicitacao_descricao, $nome_dtr, $providencia, $orcamento_horas, $orcamento_valor_hora, $valor_desconto, $valor_total, $forma_pagamento, $data_ultimo_pgto, $valor_ultimo_pgto, $valor_total_pago, $data_cadastro, $data_prevista, $data_aprovacao, $observacao, $tipo_ticket_id, $sistema_id, $status_ticket_id, $prioridade_id, $responsavel_id, $valor_total_parcial, $valor_pagamento, $data_pagamento, $valor_saldo, $combo_tipo_origens, $combo_codigo_origem, $combo_solicitante_id, $logado_id)); // create the form actions $save_button = TButton::create('save', array($this, 'onSave'), _t('Save'), 'fa:floppy-o'); $new_button = TButton::create('new', array($this, 'onEdit'), _t('New'), 'fa:plus-square green'); $del_button = TButton::create('delete', array($this, 'onDelete'), _t('Delete'), 'fa:trash-o red fa-lg'); $list_button = TButton::create('list', array('TicketList', 'onReload'), _t('List'), 'fa:table blue'); $enviar_email = TButton::create('email', array($this, 'onEnviaEmail'), 'Enviar Email', 'ico_email.png'); $sincronizar = TButton::create('sincronizar', array($this, 'onSincronizarContatos'), 'Sincronizar Contatos', 'sincronizar.png'); $this->form->addField($save_button); $this->form->addField($new_button); $this->form->addField($del_button); $this->form->addField($list_button); $this->form->addField($enviar_email); $this->form->addField($sincronizar); $subtable = new TTable(); $row = $subtable->addRow(); $row->addCell($save_button); $row->addCell($new_button); $row->addCell($del_button); $row->addCell($list_button); $row->addCell($enviar_email); $row->addCell($sincronizar); $pretable = new TTable(); $pretable->style = 'width: 100%'; $row = $pretable->addRow(); $row->class = 'tformtitle'; // CSS class $row->addCell(new TLabel('Cadastro de Ticket'))->colspan = 2; $change_action = new TAction(array($this, 'onCalculaValorTotal')); $orcamento_horas->setExitAction($change_action); $orcamento_valor_hora->setExitAction($change_action); $valor_desconto->setExitAction($change_action); $change_data_action = new TAction(array($this, 'onChangeDataAction')); $data_aprovacao->setExitAction($change_data_action); $change_data_prev = new TAction(array($this, 'onChangeDataPrevista')); $data_prevista->setExitAction($change_data_prev); $change_data_pagamento = new TAction(array($this, 'onChangeDataPagamento')); $data_pagamento->setExitAction($change_data_pagamento); $change_valor = new TAction(array($this, 'onCalculaValorParcial')); $valor_pagamento->setExitAction($change_valor); $change_status = new TAction(array($this, 'onChangeDataInicio')); $data_inicio->setExitAction($change_status); $change_status = new TAction(array($this, 'onChangeDataCancelamento')); $data_cancelamento->setExitAction($change_status); $change_status = new TAction(array($this, 'onChangeDataEncerramento')); $data_encerramento->setExitAction($change_status); $change_origem = new TAction(array($this, 'onChangeOrigem')); $combo_tipo_origens->setChangeAction($change_origem); $change_tipo_origem = new TAction(array($this, 'onChangeTipoOrigem')); $combo_codigo_origem->setChangeAction($change_tipo_origem); $vbox = new TVBox(); $vbox->add($pretable); $vbox->add($notebook); $vbox->add($subtable); $this->form->add($vbox); parent::add($this->form); }
/** * Class constructor * Creates the page, the form and the listing */ public function __construct() { parent::__construct(); // creates the form $this->form = new TForm('form_search_Ticket'); $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('Ticket'))->colspan = 2; // create the form fields $id = new TEntry('id'); $id->setMask('99999'); $titulo = new TEntry('titulo'); $criteria = new TCriteria(); $criteria->add(new TFilter("ativo", "=", 1)); $newparam['order'] = 'pessoa_nome'; $newparam['direction'] = 'asc'; $criteria->setProperties($newparam); // order, offset $solicitante_id = new TDBSeekButton('solicitante_id', 'atividade', 'form_search_Ticket', 'Pessoa', 'pessoa_nome', 'solicitante_id', 'solicitante_nome', $criteria); $solicitante_nome = new TEntry('solicitante_nome'); $solicitante_nome->setEditable(FALSE); $criteria = new TCriteria(); $criteria->add(new TFilter('enttipent', '=', 1)); $entcodent = new TDBComboMultiValue('entcodent', 'atividade', 'Entidade', 'entcodent', array(0 => 'entcodent', 1 => 'entrazsoc'), 'entcodent', $criteria); $tipo_ticket_id = new TDBCombo('tipo_ticket_id', 'atividade', 'TipoTicket', 'id', 'nome'); $status_ticket_id = new TDBCombo('status_ticket_id', 'atividade', 'StatusTicket', 'id', 'nome'); $criteria = new TCriteria(); $criteria->add(new TFilter("origem", "=", 1)); $criteria->add(new TFilter("ativo", "=", 1)); $criteria->add(new TFilter("codigo_cadastro_origem", "=", 100)); $responsavel_id = new TDBCombo('responsavel_id', 'atividade', 'Pessoa', 'pessoa_codigo', 'pessoa_nome', 'pessoa_nome', $criteria); $prioridade_id = new TDBCombo('prioridade_id', 'atividade', 'Prioridade', 'id', 'nome'); $sistema_id = new TDBCombo('sistema_id', 'atividade', 'Sistema', 'id', 'nome', 'nome'); // define the sizes $id->setSize(50); $titulo->setSize(274); $solicitante_id->setSize(50); $solicitante_nome->setSize(200); $entcodent->setSize(274); $status_ticket_id->setSize(100); $tipo_ticket_id->setSize(200); $sistema_id->setSize(200); $responsavel_id->setSize(274); $prioridade_id->setSize(100); // add one row for each form field $table->addRowSet(new TLabel('ID:'), $id); $table->addRowSet(new TLabel('Titulo:'), $titulo); $table->addRowSet(new TLabel('Cliente:'), array($solicitante_id, $solicitante_nome)); $table->addRowSet(new TLabel('Entidade:'), $entcodent); $table->addRowSet(new TLabel('Responsável:'), $responsavel_id); $table->addRowSet(new TLabel('Tipo Ticket:'), $tipo_ticket_id); $table->addRowSet(new TLabel('Sistema:'), $sistema_id); $table->addRowSet(new TLabel('Status:'), $status_ticket_id); $table->addRowSet(new TLabel('Prioridade:'), $prioridade_id); $this->form->setFields(array($id, $titulo, $solicitante_id, $solicitante_nome, $entcodent, $status_ticket_id, $tipo_ticket_id, $responsavel_id, $prioridade_id, $sistema_id)); // keep the form filled during navigation with session data $this->form->setData(TSession::getValue('Ticket_filter_data')); // create two action buttons to the form $find_button = TButton::create('find', array($this, 'onSearch'), _t('Find'), 'ico_find.png'); $new_button = TButton::create('new', array('TicketForm', 'onEdit'), _t('New'), 'fa:plus-square green'); $clean_button = TButton::create('clean', array($this, 'onClean'), 'Limpar', 'ico_close.png'); $this->form->addField($find_button); $this->form->addField($new_button); $this->form->addField($clean_button); $buttons_box = new THBox(); $buttons_box->add($find_button); $buttons_box->add($new_button); $buttons_box->add($clean_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->setHeight(320); // creates the datagrid columns $status_ticket_id = new TDataGridColumn('status_ticket_id', 'S', 'center', 20); $id = new TDataGridColumn('id', 'ID', 'left', 20); $titulo = new TDataGridColumn('titulo', 'Titulo', 'left', 250); $solicitante_id = new TDataGridColumn('solicitante_id', 'Cliente', 'left', 250); $responsavel_id = new TDataGridColumn('pessoa_responsavel->pessoa_nome', 'Responsavel', 'left', 100); $prioridade_id = new TDataGridColumn('prioridade->nome', 'Pri', 'right', 20); //get_prioridade()->nome $status_ticket_id->setTransformer(array($this, 'retornaStatus')); $solicitante_id->setTransformer(array($this, 'retornaCliente')); $responsavel_id->setTransformer(array($this, 'retornaPessoa')); $prioridade_id->setTransformer(array($this, 'retornaPrioridade')); // add the columns to the DataGrid $this->datagrid->addColumn($status_ticket_id); $this->datagrid->addColumn($id); $this->datagrid->addColumn($titulo); $this->datagrid->addColumn($solicitante_id); $this->datagrid->addColumn($responsavel_id); $this->datagrid->addColumn($prioridade_id); // creates the datagrid column actions $order_id = new TAction(array($this, 'onReload')); $order_id->setParameter('order', 'id'); $id->setAction($order_id); $order_titulo = new TAction(array($this, 'onReload')); $order_titulo->setParameter('order', 'titulo'); $titulo->setAction($order_titulo); $order_status_ticket_id = new TAction(array($this, 'onReload')); $order_status_ticket_id->setParameter('order', 'status_ticket_id'); $status_ticket_id->setAction($order_status_ticket_id); $order_prioridade_id = new TAction(array($this, 'onReload')); $order_prioridade_id->setParameter('order', 'prioridade->nome'); $prioridade_id->setAction($order_prioridade_id); // creates two datagrid actions $action1 = new TDataGridAction(array('TicketForm', 'onEdit')); $action1->setLabel(_t('Edit')); $action1->setImage('fa:pencil-square-o blue fa-lg'); $action1->setField('id'); // add the actions to the datagrid $this->datagrid->addAction($action1); // 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 = TVBox::pack($this->form, $this->datagrid, $this->pageNavigation); $container->style = 'width: 100%;max-width: 1200px;'; $this->datagrid->style = ' width: 100%; max-width: 1200px;'; parent::add($container); }
/** * Class constructor * Creates the page and the registration form */ function __construct() { parent::__construct(); // security check if (TSession::getValue('logged') !== TRUE) { throw new Exception(_t('Not logged')); } // security check TTransaction::open('library'); if (User::newFromLogin(TSession::getValue('login'))->role->mnemonic !== 'OPERATOR' and User::newFromLogin(TSession::getValue('login'))->role->mnemonic !== 'LIBRARIAN') { throw new Exception(_t('Permission denied')); } TTransaction::close(); // creates the form $this->form = new TForm('form_Member_Report'); $this->form->class = 'tform'; $this->form->style = 'width: 600px'; $table = new TTable(); $table->width = '100%'; $this->form->add($table); $table->addRowSet(new TLabel(_t('Report filters')), '')->class = 'tformtitle'; // create the form fields $name = new TEntry('name'); $city_id = new TSeekButton('city_id'); $city_name = new TEntry('city_name'); $category_id = new TDBCombo('category_id', 'library', 'Category', 'id', 'description'); $output_type = new TRadioGroup('output_type'); $options = array(); $options['pdf'] = 'PDF'; $options['rtf'] = 'RTF'; $output_type->addItems($options); $output_type->setValue('pdf'); $output_type->setLayout('horizontal'); $obj = new TStandardSeek(); $action = new TAction(array($obj, 'onSetup')); $action->setParameter('database', 'library'); $action->setParameter('parent', 'form_Member_Report'); $action->setParameter('model', 'City'); $action->setParameter('display_field', 'name'); $action->setParameter('receive_key', 'city_id'); $action->setParameter('receive_field', 'city_name'); $city_id->setAction($action); // define the sizes $name->setSize(200); $city_id->setSize(100); $category_id->setSize(100); $city_name->setEditable(FALSE); // add a row for the field name $row = $table->addRow(); $row->addCell(new TLabel(_t('Name') . ': ')); $cell = $row->addCell($name); // add a row for the field city_id $row = $table->addRow(); $row->addCell(new TLabel(_t('City') . ': ')); $row->addMultiCell($city_id, $city_name); // add a row for the field category_id $row = $table->addRow(); $row->addCell(new TLabel(_t('Category') . ': ')); $cell = $row->addCell($category_id); // add a row for the field category_id $row = $table->addRow(); $row->addCell(new TLabel(_t('Output') . ': ')); $cell = $row->addCell($output_type); // create an action button (save) $save_button = new TButton('generate'); // define the button action $save_button->setAction(new TAction(array($this, 'onGenerate')), _t('Generate')); $save_button->setImage('ico_save.png'); $table->addRowSet($save_button, '')->class = 'tformaction'; // define wich are the form fields $this->form->setFields(array($name, $city_id, $city_name, $category_id, $output_type, $save_button)); $vbox = new TVBox(); $vbox->add($this->form); // add the form to the page parent::add($vbox); }
/** * Class constructor * Creates the page and the registration form */ function __construct() { parent::__construct(); // creates the form $this->form = new TForm('form_crm'); // creates a table $table = new TTable(); $table_contact = new TTable(); $table_skill = new TTable(); $notebook = new TNotebook(500, 500); // add the notebook inside the form $this->form->add($notebook); $notebook->appendPage('Cadastro Cliente', $table); // $notebook->appendPage('Cidade', $table_contact); // $notebook->appendPage('Skill (aggregation)', $table_skill); // create the form fields $code = new TEntry('id'); $projeto_id = new TDBCombo('projeto_id', 'db_crmbf', 'Projeto', 'id', 'nome'); $titulo = new TEntry('titulo'); $data = new TEntry('data'); $data->setEditable(false); $responsavel_id = new TDBCombo('responsavel_id', 'db_crmbf', 'user', 'id', 'name'); $tempo = new TSpinner('tempo'); $porcentagem = new TSlider('porcentagem'); $descricao = new TText('descricao'); $tipo_id = new TDBCombo('tipo_id', 'db_crmbf', 'Tipo', 'id', 'nome'); $cliente_id = new TDBCombo('cliente_id', 'db_crmbf', 'Cliente', 'id', 'nome'); $prioridade_id = new TDBCombo('prioridade_id', 'db_crmbf', 'Prioridade', 'id', 'nome'); $status_id = new TDBCombo('status_id', 'db_crmbf', 'Status', 'id', 'nome'); $usuarioalteracao = new THidden('usuarioalteracao'); $solicitante = new TEntry('solicitante'); // add field validators $titulo->addValidation('Nome', new TRequiredValidator()); // $cidade_id->addValidation('Cidade', new TRequiredValidator); // $birthdate->addValidation('Birthdate', new TRequiredValidator); // $cidade_id->addValidation('Category', new TRequiredValidator); //$obj = new CidadeFormList; //$cidade_id->setAction(new TAction(array($obj, 'onReload'))); // $itemGender = array(); // $itemGender['M'] = 'Male'; // $itemGender['F'] = 'Female'; // // add the combo options // $gender->addItems($itemGender); // $gender->setLayout('horizontal'); // // $itemStatus = array(); // $itemStatus['S'] = 'Single'; // $itemStatus['C'] = 'Committed'; // $itemStatus['M'] = 'Married'; // $status->addItems($itemStatus); // define some properties for the form fields $code->setEditable(FALSE); $code->setSize(100); $projeto_id->setSize(320); $titulo->setSize(320); $data->setSize(160); $data->setValue(date("d/m/Y H:i:s")); $responsavel_id->setSize(160); $tempo->setRange(0, 1000, 1); $tempo->setSize(160); $porcentagem->setRange(0, 100, 1); $porcentagem->setSize(150); $porcentagem->setTip('Porcentagem %'); $descricao->setSize(320); $tipo_id->setSize(150); $cliente_id->setSize(150); $prioridade_id->setSize(150); $status_id->setSize(150); $solicitante->setSize(150); $row = $table->addRow(); $row->addCell(new TLabel('Code:')); $row->addCell($code); // add a row for the field name $row = $table->addRow(); $row->addCell(new TLabel('Projeto:')); $cell = $row->addCell($projeto_id); // add a row for the field name $row = $table->addRow(); $row->addCell(new TLabel('Titulo:')); $cell = $row->addCell($titulo); // add a row for the field Email $row = $table->addRow(); $row->addCell(new TLabel('Data:')); $cell = $row->addCell($data); // add a row for the field Telefone $row = $table->addRow(); $row->addCell(new TLabel('Responsavel:')); $cell = $row->addCell($responsavel_id); // add a row for the field celular $row = $table->addRow(); $row->addCell(new TLabel('Tempo:')); $cell = $row->addCell($tempo); // add a row for the field skype $row = $table->addRow(); $row->addCell(new TLabel('Porcentagem:')); $cell = $row->addCell($porcentagem); // add a row for the field endereco $row = $table->addRow(); $row->addCell(new TLabel('Tipo:')); $row->addCell($tipo_id); // add a row for the field endereco $row = $table->addRow(); $row->addCell(new TLabel('Cliente:')); $row->addCell($cliente_id); // add a row for the field endereco $row = $table->addRow(); $row->addCell(new TLabel('Prioridade:')); $row->addCell($prioridade_id); // add a row for the field endereco $row = $table->addRow(); $row->addCell(new TLabel('Solicitante:')); $row->addCell($solicitante); // add a row for the field endereco $row = $table->addRow(); $row->addCell(new TLabel('Descrição:')); $row->addCell($descricao); // add a row for the field celular $row = $table->addRow(); $row->addCell(new TLabel('Status:')); $cell = $row->addCell($status_id); // add a row for the field Category // $row = $table_data->addRow(); // $row->addCell(new TLabel('Cidade:')); // $cell = $row->addCell($cidade_id); // add a row for the field city // $row=$table_data->addRow(); // $row->addCell(new TLabel('Cidade:')); // $cell = $row->addCell($cidade_id); /* // add a row for the field Phone $row = $table_data->addRow(); $row->addCell(new TLabel('Phone:')); $row->addCell($phone); // add a row for the field BirthDate $row->addCell(new TLabel('BirthDate:')); $row->addCell($birthdate); // add a row for the field status $row = $table_data->addRow(); $row->addCell(new TLabel('Status:')); $cell = $row->addCell($status); // add a row for the field Email $row->addCell(new TLabel('Email:')); $cell = $row->addCell($email); // add a row for the field gender $row->addCell(new TLabel('Gender:')); $row->addCell($gender); $row = $table_contact->addRow(); $cell = $row->addCell(new TLabel('<b>Contact</b>')); $cell->valign = 'top'; // add two fields inside the multifield in the second sheet $contacts_list->setHeight(100); $contacts_list->setClass('Contact'); // define the returning class $contacts_list->addField('type', 'Contact Type: ', new TEntry('type'), 200); $contacts_list->addField('value', 'Contact Value: ', new TEntry('value'), 200); $row = $table_contact->addRow(); $row->addCell($contacts_list); // create the radio button for the skills list $skill_list = new TDBCheckGroup('skill_list', 'samples', 'Skill', 'id', 'name'); $table_skill->addRow()->addCell($lbl = new TLabel('Skills')); $table_skill->addRow()->addCell($skill_list); $lbl->setFontStyle('b'); * */ // create an action button $button1 = new TButton('action1'); $button1->setAction(new TAction(array($this, 'onSave')), 'Save'); $button1->setImage('ico_save.png'); //create an action button (go to list) $button2 = new TButton('list'); $button2->setAction(new TAction(array('CRMList', 'onReload')), 'Ir para Listagem'); $button2->setImage('ico_datagrid.gif'); // define wich are the form fields $this->form->setFields(array($code, $projeto_id, $titulo, $data, $responsavel_id, $tempo, $porcentagem, $descricao, $tipo_id, $cliente_id, $prioridade_id, $status_id, $usuarioalteracao, $solicitante, $button1, $button2)); $subtable = new TTable(); $row = $subtable->addRow(); $row->addCell($button1); $row->addCell($button2); $table_layout = new TTable(); $table_layout->addRow()->addCell($this->form); $table_layout->addRow()->addCell($subtable); // add the form inside the page parent::add($table_layout); }
/** * Class constructor * Creates the page and the registration form */ function __construct() { parent::__construct(); // creates the form $this->form = new TForm('form_crm'); // creates a table $table = new TTable(); $notebook = new TNotebook(500, 320); // add the notebook inside the form $this->form->add($notebook); $notebook->appendPage('Cadastro Registro CRM', $table); // create the form fields $code = new TEntry('id'); $crm_id = new TCombo('crm_id'); $tiporegistro_id = new TDBCombo('tiporegistro_id', 'db_crmbf', 'RegistroTipo', 'id', 'nome'); $registro = new TText('registro'); $temporegistro = new TEntry('tempo_registro'); // $temporegistro->setEditable(false); $dataregistro = new TDate('data_registro'); $hora_registro = new TEntry('hora_registro'); $numero_registro = new TEntry('numero_registro'); // finaliza a transacao TTransaction::close(); $items1 = array(); //dados do cliente CRM TTransaction::open('db_crmbf'); $criteria = new TCriteria(); $criteria->add(new TFilter('cliente_id', '=', $_GET['fk'])); $repository = new TRepository('CRM'); $cadastros = $repository->load($criteria); //adiciona os objetos no combo foreach ($cadastros as $object) { $items1[$object->id] = $object->titulo; } // adiciona as opcoes na combo $crm_id->addItems($items1); TTransaction::close(); // add field validators $registro->addValidation('Registro deve ser informado', new TRequiredValidator()); // define some properties for the form fields $code->setEditable(FALSE); $code->setSize(100); $crm_id->setSize(320); // $crm_id->setEditable(FALSE); $registro->setSize(320); $temporegistro->setSize(160); $temporegistro->setValue(date("d/m/Y H:i:s")); $tiporegistro_id->setSize(160); $dataregistro->setSize(90); $hora_registro->setSize(150); $hora_registro->setTip('Horario EX: 8:14'); $numero_registro->setSize(320); $row = $table->addRow(); $row->addCell(new TLabel('Code:')); $row->addCell($code); // add a row for the field name $row = $table->addRow(); $row->addCell(new TLabel('CRM Titulo:')); $cell = $row->addCell($crm_id); // add a row for the field Telefone $row = $table->addRow(); $row->addCell(new TLabel('Tipo Registro:')); $cell = $row->addCell($tiporegistro_id); // add a row for the field Email $row = $table->addRow(); $row->addCell(new TLabel('Tempo:')); $cell = $row->addCell($temporegistro); // add a row for the field celular $row = $table->addRow(); $row->addCell(new TLabel('Data:')); $cell = $row->addCell($dataregistro); // add a row for the field skype $row = $table->addRow(); $row->addCell(new TLabel('Hora:')); $cell = $row->addCell($hora_registro); // add a row for the field endereco $row = $table->addRow(); $row->addCell(new TLabel('Numero Registro:')); $row->addCell($numero_registro); // add a row for the field name $row = $table->addRow(); $row->addCell(new TLabel('Registro:')); $cell = $row->addCell($registro); // create an action button $button1 = new TButton('action1'); $button1->setAction(new TAction(array($this, 'onSave')), 'Save'); $button1->setImage('ico_save.png'); // create an action button $button2 = new TButton('action3'); $action2 = new TAction(array('ClienteRegistroDetalhe', 'onEdit')); //parametro fk e key da sessao $action2->setParameter('fk', TSession::getValue('cliente_fk')); $action2->setParameter('key', TSession::getValue('crm_key')); $button2->setImage('ico_datagrid.png'); $button2->setAction($action2, 'Voltar'); // define wich are the form fields $this->form->setFields(array($code, $crm_id, $registro, $temporegistro, $tiporegistro_id, $dataregistro, $hora_registro, $numero_registro, $button1, $button2)); $subtable = new TTable(); $row = $subtable->addRow(); $row->addCell($button1); $row->addCell($button2); $table_layout = new TTable(); $table_layout->addRow()->addCell($this->form); $table_layout->addRow()->addCell($subtable); // add the form inside the page parent::add($table_layout); }
/** * Class constructor * Creates the page, the form and the listing */ public function __construct() { parent::__construct(); $this->string = new StringsUtil(); // creates the form $this->form = new TForm('form_search_Atividade'); $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('Atividade'))->colspan = 2; // create the form fields $id = new THidden('id'); $data_atividade_inicial = new TDate('data_atividade_inicial'); $data_atividade_inicial->setMask('dd/mm/yyyy'); $data_atividade_final = new TDate('data_atividade_final'); $data_atividade_final->setMask('dd/mm/yyyy'); $criteria = new TCriteria(); $criteria->add(new TFilter("origem", "=", 1)); $criteria->add(new TFilter("codigo_cadastro_origem", "=", 100)); $criteria->add(new TFilter("ativo", "=", 1)); $criteria->add(new TFilter("usuario", "is not ")); $colaborador_id = new TDBCombo('colaborador_id', 'atividade', 'Pessoa', 'pessoa_codigo', 'pessoa_nome', 'pessoa_nome', $criteria); $tipo_atividade_id = new TDBCombo('tipo_atividade_id', 'atividade', 'TipoAtividade', 'id', 'nome', 'nome'); $ticket_id = new TDBMultiSearch('ticket_id', 'atividade', 'Ticket', 'id', 'titulo', 'titulo'); $pesquisa_master = new TEntry('pesquisa_master'); $criteria = new TCriteria(); $criteria->add(new TFilter("ativo", "=", 1)); $newparam['order'] = 'pessoa_nome'; $newparam['direction'] = 'asc'; $criteria->setProperties($newparam); // order, offset $solicitante_id = new TDBSeekButton('solicitante_id', 'atividade', 'form_search_Ticket', 'Pessoa', 'pessoa_nome', 'solicitante_id', 'solicitante_nome', $criteria); $solicitante_nome = new TEntry('solicitante_nome'); $solicitante_nome->setEditable(FALSE); $total_atividades = new TEntry('total_atividades'); $total_atividades->setEditable(FALSE); // define the sizes $id->setSize(50); $data_atividade_inicial->setSize(100); $data_atividade_final->setSize(100); $colaborador_id->setSize(300); $tipo_atividade_id->setSize(300); $ticket_id->setMinLength(0); $ticket_id->setMaxSize(1); $ticket_id->setSize(300); $ticket_id->setOperator('ilike'); $solicitante_id->setSize(40); $solicitante_nome->setSize(235); $total_atividades->setSize(100); $pesquisa_master->setSize(300); // add one row for each form field $table->addRowSet(new TLabel('Solicitante:'), array($solicitante_id, $solicitante_nome)); $table->addRowSet(new TLabel('Colaborador:'), $colaborador_id); $table->addRowSet(new TLabel('Dt. Atividades inicio:'), array($data_atividade_inicial, $label_data_fim = new TLabel('Fim:'), $data_atividade_final)); $label_data_fim->setSize(48); $table->addRowSet(new TLabel('Atividade:'), $tipo_atividade_id); $table->addRowSet(new TLabel('Ticket:'), $ticket_id); $table->addRowSet(new TLabel('Pesquisa por palavra:'), $pesquisa_master); $table->addRowSet(new TLabel('Total horas atividades:'), $total_atividades); $table->addRowSet(new TLabel(''), $id); $this->form->setFields(array($id, $data_atividade_inicial, $data_atividade_final, $colaborador_id, $tipo_atividade_id, $ticket_id, $solicitante_id, $solicitante_nome, $pesquisa_master, $total_atividades)); $change_data = new TAction(array($this, 'onChangeData')); $data_atividade_inicial->setExitAction($change_data); $data_atividade_final->setExitAction($change_data); // keep the form filled during navigation with session data $this->form->setData(TSession::getValue('Atividade_filter_data')); // create two action buttons to the form $find_button = TButton::create('find', array($this, 'onSearch'), _t('Find'), 'ico_find.png'); $new_button = TButton::create('new', array('AtividadeForm', 'onEdit'), _t('New'), 'fa:plus-square green'); $clean_button = TButton::create('clean', array($this, 'onClean'), 'Limpar', 'ico_close.png'); $this->form->addField($find_button); $this->form->addField($new_button); $this->form->addField($clean_button); $buttons_box = new THBox(); $buttons_box->add($find_button); $buttons_box->add($new_button); $buttons_box->add($clean_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->setHeight(320); // creates the datagrid columns $data_atividade = new TDataGridColumn('data_atividade', 'Data', 'right', 40); $hora_inicio = new TDataGridColumn('hora_inicio', 'Inicio', 'right', 20); $hora_fim = new TDataGridColumn('hora_fim', 'Fim', 'right', 20); $hora_qte = new TDataGridColumn('hora_qte', 'Qtde', 'right', 20); $colaborador_id = new TDataGridColumn('pessoa->pessoa_nome', 'Colaborador', 'left', 50); $tipo_atividade_id = new TDataGridColumn('tipo_atividade->nome', 'Atividade', 'left', 100); //get_tipo_atividade()->nome $sistema_id = new TDataGridColumn('sistema->nome', 'Sistema', 'left', 100); $ticket_id = new TDataGridColumn('ticket->titulo', 'Ticket', 'left', 200); // get_ticket()->titulo // transformers $colaborador_id->setTransformer(array($this, 'retornaPessoa')); $hora_qte->setTransformer(array($this, 'calculaDiferenca')); $data_atividade->setTransformer(array('StringsUtil', 'formatDateBR')); $hora_inicio->setTransformer(array('StringsUtil', 'retira_segundos')); $hora_fim->setTransformer(array('StringsUtil', 'retira_segundos')); // add the columns to the DataGrid $this->datagrid->addColumn($data_atividade); $this->datagrid->addColumn($hora_inicio); $this->datagrid->addColumn($hora_fim); $this->datagrid->addColumn($hora_qte); $this->datagrid->addColumn($colaborador_id); $this->datagrid->addColumn($tipo_atividade_id); $this->datagrid->addColumn($sistema_id); $this->datagrid->addColumn($ticket_id); // creates the datagrid column actions $order_data_atividade = new TAction(array($this, 'onReload')); $order_data_atividade->setParameter('order', 'data_atividade'); $data_atividade->setAction($order_data_atividade); $order_colaborador_id = new TAction(array($this, 'onReload')); $order_colaborador_id->setParameter('order', 'pessoa->pessoa_nome'); $colaborador_id->setAction($order_colaborador_id); $order_tipo_atividade_id = new TAction(array($this, 'onReload')); $order_tipo_atividade_id->setParameter('order', 'tipo_atividade->nome'); $tipo_atividade_id->setAction($order_tipo_atividade_id); $order_sistema_id = new TAction(array($this, 'onReload')); $order_sistema_id->setParameter('order', 'sistema->nome'); $sistema_id->setAction($order_sistema_id); $order_ticket_id = new TAction(array($this, 'onReload')); $order_ticket_id->setParameter('order', 'ticket->titulo'); $ticket_id->setAction($order_ticket_id); // creates two datagrid actions $action1 = new TDataGridAction(array('AtividadeForm', 'onEdit')); $action1->setLabel(_t('Edit')); $action1->setImage('fa:pencil-square-o blue fa-lg'); $action1->setField('id'); // add the actions to the datagrid $this->datagrid->addAction($action1); // 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 = TVBox::pack($this->form, $this->datagrid, $this->pageNavigation); $container->style = 'width: 100%;max-width: 1200px;'; $this->datagrid->style = ' width: 100%; max-width: 1200px;'; parent::add($container); }
/** * */ public function makeTDBCombo($properties) { $widget = new TDBCombo((string) $properties->{'name'}, (string) $properties->{'database'}, (string) $properties->{'model'}, (string) $properties->{'key'}, (string) $properties->{'display'}); $widget->setSize((int) $properties->{'width'}); if (isset($properties->{'tip'})) { $widget->setTip((string) $properties->{'tip'}); } $this->fields[] = $widget; $this->fieldsByName[(string) $properties->{'name'}] = $widget; return $widget; }
/** * Class constructor * Creates the page and the registration form */ function __construct() { parent::__construct(); $string = new StringsUtil(); // creates the form $this->form = new TForm('form_Atividade'); $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('Atividade'))->colspan = 2; // busca dados do banco try { TTransaction::open('atividade'); $logado = Pessoa::retornaUsuario(); $ultimoPonto = Ponto::retornaUltimoPonto($logado->pessoa_codigo); $ponto = new Ponto($ultimoPonto); if ($ponto->hora_saida) { $action = new TAction(array('PontoFormList', 'onReload')); new TMessage('error', 'Não existe ponto com horario em aberto!', $action); } $data_padrao = $string->formatDateBR($ponto->data_ponto); $hora_padrao = Ponto::retornaHoraInicio($string->formatDate($data_padrao), $logado->pessoa_codigo); TTransaction::close(); } catch (Exception $e) { new TMessage('error', '<b>Error</b> ' . $e->getMessage()); } // create the form fields $id = new THidden('id'); $data_atividade = new TEntry('data_atividade'); $data_atividade->setMask('dd/mm/yyyy'); $data_atividade->setValue($data_padrao); $data_atividade->setEditable(FALSE); $hora_inicio = new TEntry('hora_inicio'); $hora_inicio->setEditable(FALSE); $hora_inicio->setValue($hora_padrao); $hora_fim = new THidden('hora_fim'); $hora_fim->setEditable(FALSE); $tempo_atividade = new TEntry('tempo_atividade'); $tempo_atividade->setEditable(FALSE); $qtde_horas = new TCombo('qtde_horas'); $qtde_minutos = new TCombo('qtde_minutos'); $descricao = new TText('descricao'); $colaborador_id = new THidden('colaborador_id'); $colaborador_id->setValue($logado->pessoa_codigo); $colaborador_nome = new TEntry('colaborador_nome'); $colaborador_nome->setEditable(FALSE); $colaborador_nome->setValue($logado->pessoa_nome); $tipo_atividade_id = new TDBCombo('tipo_atividade_id', 'atividade', 'TipoAtividade', 'id', 'nome', 'nome'); $sistema_id = new TDBCombo('sistema_id', 'atividade', 'Sistema', 'id', 'nome'); $ticket_id = new TCombo('ticket_id'); $criteria = new TCriteria(); $criteria->add(new TFilter("status_ticket_id", "IN", array(1, 5))); $newparam['order'] = 'id'; $newparam['direction'] = 'asc'; $criteria->setProperties($newparam); // order, offset $this->onComboTicket($criteria); $horario = explode(':', $hora_padrao); // cria combos de horas e minutos $combo_horas = array(); for ($i = 8; $i <= 18; $i++) { $combo_horas[$i] = str_pad($i, 2, 0, STR_PAD_LEFT); } $qtde_horas->addItems($combo_horas); $qtde_horas->setValue($horario[0]); $qtde_horas->setDefaultOption(FALSE); $combo_minutos = array(); for ($i = 0; $i <= 59; $i++) { $combo_minutos[$i] = str_pad($i, 2, 0, STR_PAD_LEFT); } $qtde_minutos->addItems($combo_minutos); $qtde_minutos->setValue($horario[1]); $qtde_minutos->setDefaultOption(FALSE); // set exit action for input_exit $change_action = new TAction(array($this, 'onChangeAction')); $qtde_horas->setChangeAction($change_action); $qtde_minutos->setChangeAction($change_action); $change_atividade_action = new TAction(array($this, 'onTrocaTipoAtividade')); $tipo_atividade_id->setChangeAction($change_atividade_action); $change_ticket_action = new TAction(array($this, 'onTrocaTicket')); $ticket_id->setChangeAction($change_ticket_action); // define the sizes $id->setSize(100); $data_atividade->setSize(100); $hora_inicio->setSize(100); $hora_fim->setSize(100); $qtde_horas->setSize(60); $qtde_minutos->setSize(60); $tempo_atividade->setSize(100); $descricao->setSize(300, 80); $colaborador_id->setSize(200); $tipo_atividade_id->setSize(200); $ticket_id->setSize(300); // validações $tempo_atividade->addValidation('Hora Fim', new THoraFimValidator()); $tipo_atividade_id->addValidation('Tipo de Atividade', new TRequiredValidator()); $ticket_id->addValidation('Ticket', new TRequiredValidator()); $sistema_id->addValidation('Sistema', new TRequiredValidator()); $descricao->addValidation('Descrição', new TMinLengthValidator(), array(10)); $sem_atividade = TButton::create('atividade', array($this, 'onSemAtividade'), 'Sem Registro', 'ico_add.png'); $this->form->addField($sem_atividade); // add one row for each form field $table->addRowSet(new TLabel('Colaborador:'), $colaborador_nome); $table->addRowSet(new TLabel('Data Atividade:'), array($data_atividade, $label_data = new TLabel('Data do último ponto'))); $label_data->setFontColor('#A9A9A9'); $table->addRowSet(new TLabel('Hora Inicio:'), $hora_inicio); $table->addRowSet($label_qtde_horas = new TLabel('Hora Fim:'), array($qtde_horas, $qtde_minutos, $sem_atividade)); $label_qtde_horas->setFontColor('#FF0000'); $table->addRowSet(new TLabel('Tempo Atividade:'), $tempo_atividade); $table->addRowSet($label_atividade = new TLabel('Tipo Atividade:'), $tipo_atividade_id); $label_atividade->setFontColor('#FF0000'); $table->addRowSet($label_ticket = new TLabel('Ticket:'), $ticket_id); $label_ticket->setFontColor('#FF0000'); $table->addRowSet($label_sistema = new TLabel('Sistema:'), $sistema_id); $label_sistema->setFontColor('#FF0000'); $table->addRowSet($label_descricao = new TLabel('Descrição:'), $descricao); $label_descricao->setFontColor('#FF0000'); $table->addRowSet(new TLabel(''), $id); $table->addRowSet(new TLabel(''), $colaborador_id); $table->addRowSet(new TLabel(''), $hora_fim); //esconder $this->form->setFields(array($id, $data_atividade, $hora_inicio, $qtde_horas, $qtde_minutos, $hora_fim, $tempo_atividade, $descricao, $colaborador_id, $colaborador_nome, $tipo_atividade_id, $ticket_id, $sistema_id)); // create the form actions $save_button = TButton::create('save', array($this, 'onSave'), _t('Save'), 'fa:floppy-o'); $new_button = TButton::create('new', array($this, 'onEdit'), _t('New'), 'fa:plus-square green'); $del_button = TButton::create('delete', array($this, 'onDelete'), _t('Delete'), 'fa:trash-o red fa-lg'); $list_button = TButton::create('list', array('AtividadeList', 'onClean'), _t('List'), 'fa:table blue'); $this->form->addField($save_button); $this->form->addField($new_button); $this->form->addField($del_button); $this->form->addField($list_button); $buttons_box = new THBox(); $buttons_box->add($save_button); $buttons_box->add($new_button); $buttons_box->add($del_button); $buttons_box->add($list_button); // add a row for the form action $row = $table->addRow(); $row->class = 'tformaction'; // CSS class $row->addCell($buttons_box)->colspan = 2; // TScript::create(' $( "#descricao" ).focus(); '); parent::add($this->form); }
/** * Class constructor * Creates the page and the registration form */ function __construct() { parent::__construct(); // security check if (TSession::getValue('logged') !== TRUE) { throw new Exception(_t('Not logged')); } // security check TTransaction::open('library'); if (User::newFromLogin(TSession::getValue('login'))->role->mnemonic !== 'LIBRARIAN') { throw new Exception(_t('Permission denied')); } TTransaction::close(); // creates the form $this->form = new TForm('form_Book'); // creates a table $table1 = new TTable(); $table2 = new TTable(); $table3 = new TTable(); $notebook = new TNotebook(550, 400); $notebook->appendPage(_t('Basic data'), $table1); $notebook->appendPage(_t('Secundary data'), $table2); $notebook->appendPage(_t('Items'), $table3); // add the table inside the form $this->form->add($notebook); // create the form fields $id = new TEntry('id'); $title = new TEntry('title'); $isbn = new TEntry('isbn'); $call_number = new TEntry('call_number'); $author_id = new TSeekButton('author_id'); $author_name = new TEntry('author_name'); $edition = new TEntry('edition'); $volume = new TEntry('volume'); $collection_id = new TDBCombo('collection_id', 'library', 'Collection', 'id', 'description'); $classification_id = new TDBCombo('classification_id', 'library', 'Classification', 'id', 'description'); $publisher_id = new TSeekButton('publisher_id'); $publisher_name = new TEntry('publisher_name'); $publish_place = new TEntry('publish_place'); $publish_date = new TDate('publish_date'); $abstract = new TText('abstract'); $notes = new TText('notes'); $obj = new TStandardSeek(); $action = new TAction(array($obj, 'onSetup')); $action->setParameter('database', 'library'); $action->setParameter('parent', 'form_Book'); $action->setParameter('model', 'Publisher'); $action->setParameter('display_field', 'name'); $action->setParameter('receive_key', 'publisher_id'); $action->setParameter('receive_field', 'publisher_name'); $publisher_id->setAction($action); $obj = new TStandardSeek(); $action = new TAction(array($obj, 'onSetup')); $action->setParameter('database', 'library'); $action->setParameter('parent', 'form_Book'); $action->setParameter('model', 'Author'); $action->setParameter('display_field', 'name'); $action->setParameter('receive_key', 'author_id'); $action->setParameter('receive_field', 'author_name'); $author_id->setAction($action); // define the sizes $id->setSize(100); $title->setSize(340); $isbn->setSize(120); $call_number->setSize(120); $author_id->setSize(100); $edition->setSize(120); $volume->setSize(120); $collection_id->setSize(100); $classification_id->setSize(100); $publisher_id->setSize(100); $publish_place->setSize(140); $publish_date->setSize(100); $abstract->setSize(400, 40); $notes->setSize(400, 40); $id->setEditable(FALSE); $publisher_name->setEditable(FALSE); $author_name->setEditable(FALSE); // add a row for the field id $row = $table1->addRow(); $row->addCell(new TLabel(_t('Code'))); $cell = $row->addCell($id); $cell->colspan = 3; // add a row for the field title $row = $table1->addRow(); $row->addCell(new TLabel(_t('Title'))); $cell = $row->addCell($title); $cell->colspan = 3; // add a row for the field isbn/call_nuber $row = $table1->addRow(); $row->addCell(new TLabel('ISBN' . ': ')); $row->addCell($isbn); $row->addCell(new TLabel(_t('Call'))); $row->addCell($call_number); // add a row for the field author_id $row = $table1->addRow(); $row->addCell(new TLabel(_t('Author') . ': ')); $row->addCell($author_id); $row->addCell(new TLabel(_t('Name') . ': ')); $row->addCell($author_name); // add a row for the field edition/volume $row = $table1->addRow(); $row->addCell(new TLabel(_t('Edition') . ': ')); $row->addCell($edition); $row->addCell(new TLabel(_t('Volume') . ': ')); $row->addCell($volume); // add a row for the field collection_id/classification_id $row = $table1->addRow(); $row->addCell(new TLabel(_t('Collection') . ': ')); $row->addCell($collection_id); $row->addCell(new TLabel(_t('Classification') . ': ')); $row->addCell($classification_id); // add a row for the field publisher_id $row = $table1->addRow(); $row->addCell(new TLabel(_t('Publisher') . ': ')); $row->addCell($publisher_id); $row->addCell(new TLabel(_t('Name') . ': ')); $row->addCell($publisher_name); // add a row for the field publish_place $row = $table1->addRow(); $row->addCell(new TLabel(_t('Place') . ': ')); $row->addCell($publish_place); $row->addCell(new TLabel(_t('Date') . ': ')); $row->addCell($publish_date); // add a row for the field abstract $row = $table1->addRow(); $row->addCell(new TLabel(_t('Abstract') . ': ')); $cell = $row->addCell($abstract); $cell->colspan = 3; // add a row for the field notes $row = $table1->addRow(); $row->addCell(new TLabel(_t('Notes') . ': ')); $cell = $row->addCell($notes); $cell->colspan = 3; // secundary authors $authors = new TMultiField('author_list'); $sub_author_id = new TSeekButton('id'); $sub_author_name = new TEntry('name'); $sub_author_name->setEditable(FALSE); $sub_author_id->setSize(50); $sub_author_name->setSize(300); $obj = new TStandardSeek(); $action = new TAction(array($obj, 'onSetup')); $action->setParameter('database', 'library'); $action->setParameter('parent', 'form_Book'); $action->setParameter('model', 'Author'); $action->setParameter('display_field', 'name'); $action->setParameter('receive_key', 'author_list_id'); $action->setParameter('receive_field', 'author_list_name'); $sub_author_id->setAction($action); $authors->setHeight(80); $authors->setClass('Author'); $authors->addField('id', _t('Author'), $sub_author_id, 50); $authors->addField('name', _t('Name'), $sub_author_name, 300); $row = $table2->addRow(); $row->addCell($l = new TLabel(_t('Authors'))); $l->setFontStyle('b'); $row = $table2->addRow(); $row->addCell($authors); // secundary subjects $subjects = new TMultiField('subject_list'); $sub_subject_id = new TSeekButton('id'); $sub_subject_name = new TEntry('name'); $sub_subject_name->setEditable(FALSE); $sub_subject_id->setSize(50); $sub_subject_name->setSize(300); $obj = new TStandardSeek(); $action = new TAction(array($obj, 'onSetup')); $action->setParameter('database', 'library'); $action->setParameter('parent', 'form_Book'); $action->setParameter('model', 'Subject'); $action->setParameter('display_field', 'name'); $action->setParameter('receive_key', 'subject_list_id'); $action->setParameter('receive_field', 'subject_list_name'); $sub_subject_id->setAction($action); $subjects->setHeight(80); $subjects->setClass('Subject'); $subjects->addField('id', _t('Subject'), $sub_subject_id, 50); $subjects->addField('name', _t('Name'), $sub_subject_name, 300); $row = $table2->addRow(); $row->addCell($l = new TLabel(_t('Subjects'))); $l->setFontStyle('b'); $row = $table2->addRow(); $row->addCell($subjects); // items $items = new TMultiField('item_list'); $item_barcode = new TEntry('barcode'); $item_status_id = new TComboCombined('status_id', 'status_description'); $item_cost = new TEntry('cost'); $item_acquire_date = new TDate('acquire_date'); $item_notes = new TEntry('notes'); $item_status_id->setSize(150); $item_cost->setSize(100); $item_acquire_date->setSize(100); TTransaction::open('library'); $rep = new TRepository('Status'); $objects = $rep->load(new TCriteria()); $options = array(); if ($objects) { foreach ($objects as $object) { $options[$object->id] = $object->description; } } $item_status_id->addItems($options); TTransaction::close(); $items->setHeight(140); $items->setClass('Item'); $items->addField('barcode', _t('Barcode'), $item_barcode, 80); $items->addField('status_id', _t('Status'), $item_status_id, 100); $items->addField('cost', _t('Cost'), $item_cost, 80); $items->addField('acquire_date', _t('Acquire date'), $item_acquire_date, 80); $items->addField('notes', _t('Notes'), $item_notes, 150); $row = $table3->addRow(); $row->addCell($l = new TLabel(_t('Items'))); $l->setFontStyle('b'); $row = $table3->addRow(); $row->addCell($items); // create an action button (save) $save_button = new TButton('save'); // define the button action $save_button->setAction(new TAction(array($this, 'onSave')), _t('Save')); $save_button->setImage('ico_save.png'); // add a row for the form action $row = $table1->addRow(); $row->addCell($save_button); // define wich are the form fields $this->form->setFields(array($id, $title, $isbn, $call_number, $author_id, $author_name, $edition, $volume, $collection_id, $classification_id, $publisher_id, $publisher_name, $publish_place, $publish_date, $abstract, $notes, $authors, $subjects, $items, $save_button)); // add the form to the page parent::add($this->form); }
/** * Class constructor * Creates the page and the registration form */ function __construct() { parent::__construct(); // security check if (TSession::getValue('logged') !== TRUE) { throw new Exception(_t('Not logged')); } // security check TTransaction::open('library'); if (User::newFromLogin(TSession::getValue('login'))->role->mnemonic !== 'OPERATOR' and User::newFromLogin(TSession::getValue('login'))->role->mnemonic !== 'LIBRARIAN') { throw new Exception(_t('Permission denied')); } TTransaction::close(); $this->notebook = new TNotebook(); $this->notebook->setSize(500, 190); // creates the form $this->form = new TForm('form_Book_Report'); $this->notebook->appendPage(_t('Data'), $this->form); // creates a table $table = new TTable(); // add the table inside the form $this->form->add($table); // create the form fields $title = new TEntry('title'); $author_id = new TSeekButton('author_id'); $author_name = new TEntry('author_name'); $collection_id = new TDBCombo('collection_id', 'library', 'Collection', 'id', 'description'); $output_type = new TRadioGroup('output_type'); $options = array(); $options['pdf'] = 'PDF'; $options['rtf'] = 'RTF'; $output_type->addItems($options); $output_type->setValue('pdf'); $output_type->setLayout('horizontal'); $obj = new TStandardSeek(); $action = new TAction(array($obj, 'onSetup')); $action->setParameter('database', 'library'); $action->setParameter('parent', 'form_Book_Report'); $action->setParameter('model', 'Author'); $action->setParameter('display_field', 'name'); $action->setParameter('receive_key', 'author_id'); $action->setParameter('receive_field', 'author_name'); $author_id->setAction($action); // define the sizes $title->setSize(200); $author_id->setSize(100); $collection_id->setSize(100); $author_name->setEditable(FALSE); // add a row for the field $row = $table->addRow(); $row->addCell($l = new TLabel(_t('Report filters'))); $l->setFontStyle('b'); // add a row for the field title $row = $table->addRow(); $row->addCell(new TLabel(_t('Title') . ': ')); $cell = $row->addCell($title); $cell->colspan = 2; // add a row for the field author_id $row = $table->addRow(); $row->addCell(new TLabel(_t('Author') . ': ')); $row->addCell($author_id); $row->addCell($author_name); // add a row for the field collection_id $row = $table->addRow(); $row->addCell(new TLabel(_t('Collection') . ': ')); $cell = $row->addCell($collection_id); $cell->colspan = 2; // add a row for the field collection_id $row = $table->addRow(); $row->addCell(new TLabel(_t('Output') . ': ')); $cell = $row->addCell($output_type); $cell->colspan = 2; // create an action button (save) $save_button = new TButton('generate'); // define the button action $save_button->setAction(new TAction(array($this, 'onGenerate')), _t('Generate')); $save_button->setImage('ico_save.png'); // add a row for the form action $row = $table->addRow(); $row->addCell($save_button); // define wich are the form fields $this->form->setFields(array($title, $author_id, $author_name, $collection_id, $output_type, $save_button)); // add the form to the page parent::add($this->notebook); }
/** * Class constructor * Creates the page and the registration form */ function __construct() { parent::__construct(); // creates the form $this->form = new TForm('form_customer'); // creates a table $table_data = new TTable(); $table_contact = new TTable(); $table_skill = new TTable(); $notebook = new TNotebook(500, 250); // add the notebook inside the form $this->form->add($notebook); $notebook->appendPage('Registration Data', $table_data); $notebook->appendPage('Contact (composition)', $table_contact); $notebook->appendPage('Skill (aggregation)', $table_skill); // create the form fields $code = new TEntry('id'); $name = new TEntry('name'); $address = new TEntry('address'); $phone = new TEntry('phone'); $city_id = new TSeekButton('city_id'); $city_name = new TEntry('city_name'); $birthdate = new TDate('birthdate'); $email = new TEntry('email'); $gender = new TRadioGroup('gender'); $status = new TCombo('status'); $contacts_list = new TMultiField('contacts_list'); $category_id = new TDBCombo('category_id', 'samples', 'Category', 'id', 'name'); // add field validators $name->addValidation('Name', new TRequiredValidator()); $city_id->addValidation('City', new TRequiredValidator()); $birthdate->addValidation('Birthdate', new TRequiredValidator()); $category_id->addValidation('Category', new TRequiredValidator()); $obj = new CitySeek(); $city_id->setAction(new TAction(array($obj, 'onReload'))); $itemGender = array(); $itemGender['M'] = 'Male'; $itemGender['F'] = 'Female'; // add the combo options $gender->addItems($itemGender); $gender->setLayout('horizontal'); $itemStatus = array(); $itemStatus['S'] = 'Single'; $itemStatus['C'] = 'Committed'; $itemStatus['M'] = 'Married'; $status->addItems($itemStatus); // define some properties for the form fields $code->setEditable(FALSE); $code->setSize(100); $city_id->setSize(100); $city_name->setSize(150); $city_name->setEditable(FALSE); $name->setSize(320); $address->setSize(320); $phone->setSize(120); $email->setSize(160); $birthdate->setSize(90); $status->setSize(120); $category_id->setSize(120); // add a row for the field code $table_data->addRowSet(new TLabel('Code:'), $code); $table_data->addRowSet(new TLabel('Name:'), $name); $table_data->addRowSet(new TLabel('Address:'), $address); $table_data->addRowSet(new TLabel('City:'), array($city_id, new TLabel('Name:'), $city_name)); $table_data->addRowSet(new TLabel('Phone:'), array($phone, new TLabel('BirthDate:'), $birthdate)); $table_data->addRowSet(new TLabel('Status:'), array($status, new TLabel('Email:'), $email)); $table_data->addRowSet(new TLabel('Category:'), array($category_id, new TLabel('Gender:'), $gender)); $row = $table_contact->addRow(); $cell = $row->addCell(new TLabel('<b>Contact</b>')); $cell->valign = 'top'; // add two fields inside the multifield in the second sheet $contacts_list->setHeight(100); $contacts_list->setClass('Contact'); // define the returning class $contacts_list->addField('type', 'Contact Type: ', new TEntry('type'), 200); $contacts_list->addField('value', 'Contact Value: ', new TEntry('value'), 200); $row = $table_contact->addRow(); $row->addCell($contacts_list); // create the radio button for the skills list $skill_list = new TDBCheckGroup('skill_list', 'samples', 'Skill', 'id', 'name'); $table_skill->addRow()->addCell($lbl = new TLabel('Skills')); $table_skill->addRow()->addCell($skill_list); $lbl->setFontStyle('b'); // create an action button $button1 = new TButton('action1'); $button1->setAction(new TAction(array($this, 'onSave')), 'Save'); $button1->setImage('ico_save.png'); // create an action button (go to list) $button2 = new TButton('list'); $button2->setAction(new TAction(array('CustomerDataGridView', 'onReload')), 'Go to Listing'); $button2->setImage('ico_datagrid.gif'); // define wich are the form fields $this->form->setFields(array($code, $name, $address, $phone, $city_id, $city_name, $birthdate, $email, $gender, $status, $category_id, $contacts_list, $skill_list, $button1, $button2)); $subtable = new TTable(); $row = $subtable->addRow(); $row->addCell($button1); $row->addCell($button2); // wrap the page content $vbox = new TVBox(); $vbox->add(new TXMLBreadCrumb('menu.xml', 'CustomerDataGridView')); $vbox->add($this->form); $vbox->add($subtable); // add the form inside the page parent::add($vbox); }
/** * Class constructor * Creates the page and the registration form */ function __construct() { parent::__construct(); // security check if (TSession::getValue('logged') !== TRUE) { throw new Exception(_t('Not logged')); } // creates a table $table = new TTable(); $table1 = new TTable(); $table2 = new TTable(); // creates the form $this->form = new TForm('form_Issue'); $this->form->class = 'tform'; $this->form->style = 'width: 750px'; $table->width = '100%'; $this->form->add($table); $table->addRowSet(new TLabel(_t('Issue')), '')->class = 'tformtitle'; // add the table inside the form $this->form->add($table); // create the form fields $id_project = new TCombo('id_project'); $id_priority = new TDBCombo('id_priority', 'changeman', 'Priority', 'id', 'description_translated'); $id_category = new TDBCombo('id_category', 'changeman', 'Category', 'id', 'description_translated'); $register_date = new TDate('register_date'); $time = new TEntry('issue_time'); $title = new TEntry('title'); $description = new THtmlEditor('description'); $file = new TFile('file'); $register_date->setValue(date('Y-m-d')); $register_date->setMask('yyyy-mm-dd'); $time->setValue(date('H:i')); $id_priority->setValue(2); // default $description->style = 'margin: 10px'; TTransaction::open('changeman'); $member = Member::newFromLogin(TSession::getValue('login')); $member_projects = $member->getProjectsList(); $id_project->addItems($member_projects); // if just one project, its the default if (count($member_projects) == 1) { $project_keys = array_keys($member_projects); $id_project->setValue($project_keys[0]); } TTransaction::close(); $id_project->addValidation(_t('Project'), new TRequiredValidator()); $id_priority->addValidation(_t('Priority'), new TRequiredValidator()); $id_category->addValidation(_t('Category'), new TRequiredValidator()); $register_date->addValidation(_t('Start date'), new TRequiredValidator()); $title->addValidation(_t('Title'), new TRequiredValidator()); $description->addValidation(_t('Description'), new TRequiredValidator()); // define the sizes $id_project->setSize(200); $id_priority->setSize(200); $id_category->setSize(200); $register_date->setSize(100); $file->setSize(250); $time->setSize(50); $time->setMask('99:99'); $title->setSize(200, 40); $description->setSize(680, 300); $table1->addRowSet(new TLabel(_t('Project') . ': '), $id_project); $table1->addRowSet(new TLabel(_t('Priority') . ': '), $id_priority); $table1->addRowSet(new TLabel(_t('Category') . ': '), $id_category); $table2->addRowSet(new TLabel(_t('Start date') . ':'), array($register_date, $time)); $table2->addRowSet(new TLabel(_t('Title') . ':'), $title); $table2->addRowSet(new TLabel(_t('File') . ':'), $file); $row = $table->addRow(); $row->addCell($table1); $row->addCell($table2); $label_description = new TLabel(_t('Description')); $label_description->setFontStyle('b'); $row = $table->addRow(); $row->addCell($label_description); $row = $table->addRow(); $cell = $row->addCell($description); $cell->colspan = 3; // create an action button (save) $save_button = new TButton('save'); // define the button action $save_button->setAction(new TAction(array($this, 'onSave')), _t('Save')); $save_button->setImage('ico_save.png'); $table->addRowSet($save_button, '')->class = 'tformaction'; // define wich are the form fields $this->form->setFields(array($id_project, $id_priority, $id_category, $register_date, $time, $title, $file, $description, $save_button)); // add the form to the page parent::add($this->form); }