Exemplo n.º 1
0
 /**
  * 
  */
 public function editStatementAction()
 {
     $this->_helper->layout()->disableLayout();
     $id = $this->_getParam('id');
     $formStatement = new Fefop_Form_BankStatement();
     $formStatement->setAction($this->_helper->url('save'));
     $transaction = $this->_mapper->detail($id);
     $data = $transaction->toArray();
     $data['date_statement'] = $this->view->date($data['date_statement']);
     $formStatement->populate($data);
     //$formStatement->getElement( 'fk_id_fefop_type_transaction' )->setAttrib( 'readonly', true );
     $dbTypeTransaction = App_Model_DbTable_Factory::get('FEFOPTypeTransaction');
     $rows = $dbTypeTransaction->fetchAll(array('type = ?' => 'F'));
     $contractTransactions = array();
     foreach ($rows as $row) {
         $contractTransactions[] = $row->id_fefop_type_transaction;
     }
     // If the statement is related with contracts
     if (in_array($data['fk_id_fefop_type_transaction'], $contractTransactions)) {
         // Contracts
         $contracts = $this->_mapper->groupContracts($id);
         $this->view->contracts = $contracts;
         $canEdit = true;
         foreach ($contracts as $contract) {
             if (!$contract['can-delete']) {
                 $canEdit = false;
                 break;
             }
         }
         if (!$canEdit) {
             $formStatement->getElement('fk_id_fefop_type_transaction')->setAttrib('readonly', true);
             $formStatement->getElement('operation')->setAttrib('readonly', true);
         }
         $formStatement->getElement('amount')->setAttrib('readonly', true);
     }
     $this->view->form = $formStatement;
     $this->_helper->viewRenderer->setRender('new-statement');
 }