source: publico/il.spdo/trunk/il/spdo/browser/forms/pessoa.py @ 5448

Última Alteração nesse arquivo desde 5448 foi 5448, incluída por fabianosantos, 9 anos atrás

Adicionado formularios para situacao, tipo de documento e entrega, uf. Revisado formularios de protocolo, tramite.

File size: 2.4 KB
Linha 
1# -*- coding: utf-8 -*-
2
3from five import grok
4from plone.app.layout.navigation.interfaces import INavigationRoot
5from Products.statusmessages.interfaces import IStatusMessage
6from il.spdo.browser.forms import base
7from il.spdo.config import MessageFactory as _
8from il.spdo.interfaces import IPessoa
9from il.spdo.db import Pessoa
10from il.spdo.config import Session
11
12class PessoaAddForm(base.AddForm):
13    """Formulário de cadastro de uma pessoa.
14    """
15
16    grok.context(INavigationRoot)
17    grok.name('add-pessoa')
18    grok.require('cmf.ManagePortal')
19
20    schema = IPessoa
21    label = _(u'Adicionar Pessoa')
22    description = _(u'Formulário de cadastro de uma pessoa.')
23
24    def createAndAdd(self, data):
25        pessoa = Pessoa(**data)
26        session = Session()
27        session.add(pessoa)
28        session.flush()
29        return pessoa
30
31    def nextURL(self):
32        url_base = self.context.absolute_url()
33        self.redirect(url_base + '/@@list-pessoa')
34
35
36class PessoaEditForm(base.EditForm):
37    """Formulário de edição de uma pessoa.
38    """
39
40    grok.context(INavigationRoot)
41    grok.name('edit-pessoa')
42    grok.require('cmf.ManagePortal')
43
44    schema = IPessoa
45    label = _(u'Editar Pessoa')
46    descrition = _(u'Formulário de edição de uma pessoa.')
47
48    def getContent(self):
49        session = Session()
50        return session.query(Pessoa).get(self.rec_id())
51
52    def applyChanges(self, data):
53        content = self.getContent()
54        if content:
55            for k, v in data.items():
56                setattr(content, k, v)
57            return True
58
59    def nextURL(self):
60        url_base = self.context.absolute_url()
61        self.redirect(url_base + '/@@show-pessoa?id=' + self.rec_id())
62
63
64class PessoaShowForm(base.ShowForm):
65    """Formulário de visualização de uma pessoa.
66    """
67   
68    grok.context(INavigationRoot)
69    grok.name('show-pessoa')
70    grok.require('cmf.ManagePortal')
71
72    schema = IPessoa
73    label = _(u'Detalhes da Pessoa')
74    description = _(u'Formulário de visualização de uma pessoa.')
75
76    def getContent(self):
77        session = Session()
78        return session.query(Pessoa).get(self.rec_id())
79
80    def nextURL(self):
81        url_base = self.context.absolute_url()
82        self.redirect(url_base + '/@@list-pessoa')
83
84    def editURL(self):
85        url_base = self.context.absolute_url()
86        self.redirect(url_base + '/@@edit-pessoa?id=%s' % self.rec_id())
87
Note: Veja TracBrowser para ajuda no uso do navegador do trac.
 

The contents and data of this website are published under license:
Creative Commons 4.0 Brasil - Atribuir Fonte - Compartilhar Igual.