source: publico/il.spdo/trunk/il/spdo/browser/forms/tipodocumento.py @ 5439

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

Revisado forms de add e edit de areas e tipo de documento. Adicionado views de tipo de documento.

File size: 2.7 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 ITipoDocumento
9from il.spdo.db import TipoDocumento
10from il.spdo.config import Session
11
12class TipoDocumentoAddForm(base.AddForm):
13    """Formulário de cadastro de um tipo de documento.
14    """
15
16    grok.context(INavigationRoot)
17    grok.name('add-tipodocumento')
18    grok.require('cmf.ManagePortal')
19
20    schema = ITipoDocumento
21    label = _(u'Adicionar Tipo de Documento')
22    description = _(u'Formulário de cadastro de um tipo de documento.')
23
24    def createAndAdd(self, data):
25        tipodocumento = TipoDocumento()
26        tipodocumento.nome = data['nome']
27        session = Session()
28        session.add(tipodocumento)
29        session.flush()
30        self.tipodocumento_id = tipodocumento.id
31        return tipodocumento
32
33    def nextURL(self):
34        url_base = self.context.absolute_url()
35        self.redirect(url_base + '/@@show-tipodocumento?id=' + str(self.tipodocumento_id))
36
37
38class TipoDocumentoEditForm(base.EditForm):
39    """Formulário de edição de um tipo de documento.
40    """
41
42    grok.context(INavigationRoot)
43    grok.name('edit-tipodocumento')
44    grok.require('cmf.ManagePortal')
45
46    schema = ITipoDocumento
47    label = _(u'Editar Tipo de Documento')
48    descrition = _(u'Formulário de edição de um tipo de documento.')
49
50    def getContent(self):
51        session = Session()
52        return session.query(TipoDocumento).get(self.rec_id())
53
54    def applyChanges(self, data):
55        content = self.getContent()
56        if content:
57            for k, v in data.items():
58                setattr(content, k, v)
59            return True
60
61    def nextURL(self):
62        url_base = self.context.absolute_url()
63        self.redirect(url_base + '/@@show-tipodocumento?id=' + self.rec_id())
64
65
66class TipoDocumentoShowForm(base.ShowForm):
67    """Formulário de visualização de um tipo de documento.
68    """
69   
70    grok.context(INavigationRoot)
71    grok.name('show-tipodocumento')
72    grok.require('cmf.ManagePortal')
73
74    schema = ITipoDocumento
75    label = _(u'Detalhes da Tipo de Documento')
76    description = _(u'Formulário de visualização de um tipo de documento.')
77
78    def getContent(self):
79        session = Session()
80        return session.query(TipoDocumento).get(self.rec_id())
81
82    def nextURL(self):
83        url_base = self.context.absolute_url()
84        self.redirect(url_base + '/@@list-tipodocumento')
85
86    def editURL(self):
87        url_base = self.context.absolute_url()
88        self.redirect(url_base + '/@@edit-tipodocumento?id=%s' % self.rec_id())
89
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.