Balance
  • Namespace
  • Class
  • Tree

Namespaces

  • Balance
    • Db
      • TableGateway
    • Form
      • Element
      • Search
    • InputFilter
      • Search
    • Model
      • Persistence
        • Db
    • Mvc
      • Controller
    • Posting
    • Stdlib
      • Hydrator
        • Strategy
    • View
      • Table

Classes

  • Balance\Db\TableGateway\AbstractTableGatewayFactory
  • Balance\Form\Accounts
  • Balance\Form\Element\Boolean
  • Balance\Form\Element\Currency
  • Balance\Form\Element\DateTime
  • Balance\Form\Element\Select
  • Balance\Form\Postings
  • Balance\Form\Search\Accounts
  • Balance\Form\Search\Balance
  • Balance\Form\Search\Postings
  • Balance\InputFilter\Accounts
  • Balance\InputFilter\Postings
  • Balance\InputFilter\Search\Accounts
  • Balance\InputFilter\Search\Balance
  • Balance\InputFilter\Search\Postings
  • Balance\Model\AbstractModelFactory
  • Balance\Model\AccountType
  • Balance\Model\Balance
  • Balance\Model\BooleanType
  • Balance\Model\EntryType
  • Balance\Model\Model
  • Balance\Model\Persistence\Db\Accounts
  • Balance\Model\Persistence\Db\Balance
  • Balance\Model\Persistence\Db\Postings
  • Balance\Mvc\Controller\AbstractControllerFactory
  • Balance\Mvc\Controller\Accounts
  • Balance\Mvc\Controller\Configs
  • Balance\Mvc\Controller\Home
  • Balance\Mvc\Controller\Postings
  • Balance\Posting\Checker
  • Balance\Stdlib\Hydrator\Strategy\Datetime
  • Balance\View\Table\Table

Interfaces

  • Balance\Model\Persistence\PersistenceInterface
  • Balance\Model\Persistence\ValueOptionsInterface
  • Balance\Mvc\Controller\ModelAwareInterface
  • Balance\Mvc\Controller\RedirectRouteNameAwareInterface

Traits

  • Balance\Mvc\Controller\EditActionTrait
  • Balance\Mvc\Controller\IndexActionTrait
  • Balance\Mvc\Controller\ModelAwareTrait
  • Balance\Mvc\Controller\RedirectRouteNameAwareTrait
  • Balance\Mvc\Controller\RemoveActionTrait

Exceptions

  • Balance\Form\FormException
  • Balance\InputFilter\InputFilterException
  • Balance\Model\ModelException
 1 <?php
 2 
 3 namespace Balance\Form;
 4 
 5 use Balance\Model\EntryType;
 6 use Balance\Model\Persistence\ValueOptionsInterface;
 7 use Zend\Form\Fieldset;
 8 use Zend\Form\Form;
 9 use Zend\ServiceManager\ServiceLocatorAwareInterface;
10 use Zend\ServiceManager\ServiceLocatorAwareTrait;
11 
12 /**
13  * Formulário de Lançamentos
14  */
15 class Postings extends Form implements ServiceLocatorAwareInterface
16 {
17     use ServiceLocatorAwareTrait;
18 
19     /**
20      * {@inheritdoc}
21      */
22     public function init()
23     {
24         // Inicialização
25         $pAccounts = $this->getServiceLocator()->getServiceLocator()->get('Balance\Model\Persistence\Accounts');
26 
27         // Verificações
28         if (! $pAccounts instanceof ValueOptionsInterface) {
29             throw new FormException('Invalid Model');
30         }
31 
32         // Chave Primária
33         $this->add(array(
34             'type' => 'Hidden',
35             'name' => 'id',
36         ));
37 
38         // Data e Hora
39         $this->add(array(
40             'type' => 'DateTime',
41             'name' => 'datetime',
42         ));
43 
44         // Descrição
45         $this->add(array(
46             'type' => 'Textarea',
47             'name' => 'description',
48         ));
49 
50         // Subformulário: Entrada de Lançamento
51         $subform = $this->getServiceLocator()->get('Fieldset');
52 
53         // Tipo de Entrada
54         $subform->add(array(
55             'type'    => 'Select',
56             'name'    => 'type',
57             'options' => array(
58                 'value_options' => (new EntryType())->getDefinition(),
59             ),
60         ));
61 
62         // Conta
63         $subform->add(array(
64             'type'    => 'Select',
65             'name'    => 'account_id',
66             'options' => array(
67                 'value_options' => $pAccounts->getValueOptions(),
68             ),
69         ));
70 
71         // Valor
72         $subform->add(array(
73             'type' => 'Currency',
74             'name' => 'value',
75         ));
76 
77         // Coleção de Entradas de Lançamentos
78         $this->add(array(
79             'type'    => 'Collection',
80             'name'    => 'entries',
81             'options' => array(
82                 'target_element' => $subform,
83                 'allow_add'      => true,
84                 'count'          => 2,
85             ),
86         ));
87     }
88 }
89 
Balance API documentation generated by ApiGen