source: publico/ILPortal/trunk/MembroMesaDiretora.py @ 1242

Última Alteração nesse arquivo desde 1242 foi 1242, incluída por gabrielmedina, 14 anos atrás

modelo,visoes,css e appinstall atualizados

File size: 4.8 KB
Linha 
1# File: MembroMesaDiretora.py
2#
3# Copyright (c) 2005 by Interlegis
4# Generator: ArchGenXML Version 1.4.0-RC1
5#            http://plone.org/products/archgenxml
6#
7# GNU General Public Licence (GPL)
8#
9# This program is free software; you can redistribute it and/or modify it under
10# the terms of the GNU General Public License as published by the Free Software
11# Foundation; either version 2 of the License, or (at your option) any later
12# version.
13# This program is distributed in the hope that it will be useful, but WITHOUT
14# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
15# FOR A PARTICULAR PURPOSE.  See the GNU General Public License for more
16# details.
17# You should have received a copy of the GNU General Public License along with
18# this program; if not, write to the Free Software Foundation, Inc., 59 Temple
19# Place, Suite 330, Boston, MA  02111-1307  USA
20#
21__author__  = '''STC Interlegis <admin-stc@interlegis.gov.br>'''
22__docformat__ = 'plaintext'
23
24
25from AccessControl import ClassSecurityInfo
26from Products.Archetypes.atapi import *
27
28
29
30from Products.Archetypes.SQLStorage import *
31from Products.ILPortal.config import *
32##code-section module-header #fill in your manual code here
33from Products.CMFCore.utils import getToolByName
34##/code-section module-header
35
36schema=Schema((
37    StringField('title',
38        widget=StringWidget(
39            visible={'edit':'invisible','view':'invisible'},
40            label='Title',
41            label_msgid='ILPortal_label_title',
42            description_msgid='ILPortal_help_title',
43            i18n_domain='ILPortal',
44        ),
45        required=0,
46        accessor="Title",
47        searchable="1"
48    ),
49
50    StringField('cargo',
51        widget=SelectionWidget(
52            label="Cargo",
53            description="Selecione o cargo do parlamentar na mesa diretora",
54            format='select',
55            label_msgid='ILPortal_label_cargo',
56            description_msgid='ILPortal_help_cargo',
57            i18n_domain='ILPortal',
58        ),
59        vocabulary='getVocab'
60    ),
61
62
63    ReferenceField('nom_completo',
64        widget=ReferenceWidget(
65            description="Selecione o parlamentar",
66            label="Parlamentar",
67            checkbox_bound=1,
68            label_msgid='ILPortal_label_nom_completo',
69            description_msgid='ILPortal_help_nom_completo',
70            i18n_domain='ILPortal',
71        ),
72        required=1,
73        relationship='membromesadiretora_parlamentar',
74        multiValued=0,
75        vocabulary='getParlamentar',
76        allowed_types=('Parlamentar',)
77    ),
78
79),
80)
81
82
83##code-section after-local-schema #fill in your manual code here
84##/code-section after-local-schema
85
86MembroMesaDiretora_schema = BaseSchema + \
87    schema
88
89##code-section after-schema #fill in your manual code here
90##/code-section after-schema
91
92class MembroMesaDiretora(BaseContent):
93    """
94    Membro da Mesa Diretora
95    """
96    security = ClassSecurityInfo()
97    __implements__ = (getattr(BaseContent,'__implements__',()),)
98
99
100    # This name appears in the 'add' box
101    archetype_name             = 'Membro da Mesa Diretora'
102
103    meta_type                  = 'MembroMesaDiretora'
104    portal_type                = 'MembroMesaDiretora'
105    allowed_content_types      = []
106    filter_content_types       = 0
107    global_allow               = 0
108    allow_discussion           = 0
109    #content_icon               = 'MembroMesaDiretora.gif'
110    immediate_view             = 'base_view'
111    default_view               = 'base_view'
112    suppl_views                = ()
113    typeDescription            = "Membro da Mesa Diretora"
114    typeDescMsgId              = 'description_edit_membromesadiretora'
115
116    schema = MembroMesaDiretora_schema
117
118    ##code-section class-header #fill in your manual code here
119    ##/code-section class-header
120
121
122    #Methods
123
124    security.declareProtected("View", 'setCargo')
125    def setCargo(self,valor):
126        """ seta o nome do cargo e o titulo do objeto"""
127        cargo = self.getField('cargo')
128        cargo.set(self, valor)
129        cargo_vocab = cargo.Vocabulary(self)
130        cargo_value = self.getCargo()
131        self.getField('title').set(self, cargo_vocab.getValue(cargo_value))
132        self.reindexObject()
133
134
135    #manually created methods
136
137    def getParlamentar(self):
138        catalogo = getToolByName(self,'portal_catalog')
139        casa = self.aq_parent.aq_parent
140        path_casa = '/'.join(casa.getPhysicalPath())
141        parlamentares = catalogo(portal_type = 'Parlamentar', path = path_casa)
142        lista_parlamentares = []
143
144        for parlamentar in parlamentares:
145            uid = parlamentar.getObject().UID()
146            lista_parlamentares.append([uid,parlamentar.Title])
147        return lista_parlamentares
148
149
150
151registerType(MembroMesaDiretora,PROJECTNAME)
152# end of class MembroMesaDiretora
153
154##code-section module-footer #fill in your manual code here
155##/code-section module-footer
156
157
158
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.