source: publico/ILPortal/trunk/CasaLegislativa.py @ 517

Última Alteração nesse arquivo desde 517 foi 517, incluída por paulovieira, 15 anos atrás

Altecao no modelo ILPortal, adicionando as classes Parlamentar, Telefone e Mesa Diretora

File size: 10.5 KB
Linha 
1# File: CasaLegislativa.py
2#
3# Copyright (c) 2005 by Interlegis
4# Generator: ArchGenXML Version 1.4.0-beta2 devel
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__  = '''Equipe STC <admin-stc@interlegis.gov.br>'''
22__docformat__ = 'plaintext'
23
24from AccessControl import ClassSecurityInfo
25from Products.Archetypes.atapi import *
26
27
28
29
30from Products.Archetypes.SQLStorage import *
31# additional imports from tagged value 'import'
32from vocabularies import VOCAB_ESTADOS
33
34from Products.ILPortal.config import *
35##code-section module-header #fill in your manual code here
36from DateTime import DateTime
37##/code-section module-header
38
39schema=Schema((
40    StringField('title',
41        widget=StringWidget(
42            label='Nome da Casa',
43            description='Informe o nome da Casa Legislativa',
44            label_msgid='ILPortal_label_title',
45            description_msgid='ILPortal_help_title',
46            i18n_domain='ILPortal',
47        ),
48        required=1,
49        accessor='Title',
50        searchable=1
51    ),
52   
53    StringField('endereco',
54        widget=StringWidget(
55            label='Endereco',
56            description='Informe o Endereco da Casa Legislativa',
57            label_msgid='ILPortal_label_endereco',
58            description_msgid='ILPortal_help_endereco',
59            i18n_domain='ILPortal',
60        ),
61        required=0,
62        searchable=0
63    ),
64   
65    StringField('nom_bairro',
66        widget=StringWidget(
67            label='Bairro',
68            description='Informe o nome do Bairro da Casa Legislativa',
69            label_msgid='ILPortal_label_nom_bairro',
70            description_msgid='ILPortal_help_nom_bairro',
71            i18n_domain='ILPortal',
72        ),
73        required=0,
74        searchable=0
75    ),
76   
77    StringField('cidade',
78        widget=StringWidget(
79            label='Cidade',
80            description='Informe a cidade da Casa Legislativa',
81            label_msgid='ILPortal_label_cidade',
82            description_msgid='ILPortal_help_cidade',
83            i18n_domain='ILPortal',
84        ),
85        required=0,
86        searchable=0
87    ),
88   
89    StringField('num_cep',
90        widget=StringWidget(
91            label='CEP',
92            description='Informe o Codigo de Enderecamento Postal da Casa Legislativa',
93            label_msgid='ILPortal_label_num_cep',
94            description_msgid='ILPortal_help_num_cep',
95            i18n_domain='ILPortal',
96        )
97    ),
98   
99    StringField('sgl_uf',
100        widget=SelectionWidget(
101            label='UF',
102            description='Informe a Unidade Federativa da Casa Legislativa.',
103            format='select',
104            label_msgid='ILPortal_label_sgl_uf',
105            description_msgid='ILPortal_help_sgl_uf',
106            i18n_domain='ILPortal',
107        ),
108        enforceVocabulary=1,
109        vocabulary=VOCAB_ESTADOS
110    ),
111   
112    StringField('num_fax1',
113        widget=StringWidget(
114            label='Fax 1',
115            description='Informe um numero de Fax',
116            label_msgid='ILPortal_label_num_fax1',
117            description_msgid='ILPortal_help_num_fax1',
118            i18n_domain='ILPortal',
119        )
120    ),
121   
122    StringField('num_fax2',
123        widget=StringWidget(
124            label='Fax 2',
125            description='Informe um numero de Fax',
126            label_msgid='ILPortal_label_num_fax2',
127            description_msgid='ILPortal_help_num_fax2',
128            i18n_domain='ILPortal',
129        )
130    ),
131   
132    StringField('pagina_web',
133        widget=StringWidget(
134            description='Informe a pagina web da Casa Legislativa (http://www...)',
135            label='Pagina Web',
136            label_msgid='ILPortal_label_pagina_web',
137            description_msgid='ILPortal_help_pagina_web',
138            i18n_domain='ILPortal',
139        )
140    ),
141   
142    StringField('end_email',
143        widget=StringWidget(
144            label='E-mail',
145            description='Informe o e-mail da Casa Legislativa',
146            label_msgid='ILPortal_label_end_email',
147            description_msgid='ILPortal_help_end_email',
148            i18n_domain='ILPortal',
149        ),
150        validators=('isMail',)
151    ),
152   
153    StringField('sgl_casa',
154        widget=StringWidget(
155            label='Sigla da Casa',
156            description='Informe a sigla da Casa Legisltiva',
157            label_msgid='ILPortal_label_sgl_casa',
158            description_msgid='ILPortal_help_sgl_casa',
159            i18n_domain='ILPortal',
160        )
161    ),
162   
163    DateTimeField('dat_adesao',
164        widget=CalendarWidget(
165            label='Data de Adesao',
166            description='Informe a data de adesao da Casa Legislativa ao Programa Interlegis',
167            format='%d/%m/%Y',
168            date_only=1,
169            label_msgid='ILPortal_label_dat_adesao',
170            description_msgid='ILPortal_help_dat_adesao',
171            i18n_domain='ILPortal',
172        )
173    ),
174   
175    DateTimeField('dat_inicio_mandato',
176        widget=CalendarWidget(
177            label='Data Inicio do Mandato dos Parlamentares',
178            description='Informe a data de Inicio do Mandato dos Parlamentares da Casa Legislativa',
179            format='%d/%m/%Y',
180            date_only=1,
181            label_msgid='ILPortal_label_dat_inicio_mandato',
182            description_msgid='ILPortal_help_dat_inicio_mandato',
183            i18n_domain='ILPortal',
184        )
185    ),
186   
187    DateTimeField('data_fim_mandato',
188        widget=CalendarWidget(
189            label='Data Fim do Mandato dos Parlamentares',
190            description='Informe a data do fim do Mandato dos Parlamentares da Casa Legislativa',
191            format='%d/%m/%Y',
192            date_only=1,
193            label_msgid='ILPortal_label_data_fim_mandato',
194            description_msgid='ILPortal_help_data_fim_mandato',
195            i18n_domain='ILPortal',
196        )
197    ),
198   
199    DateTimeField('dat_inclusao',
200        default=DateTime(),
201        widget=CalendarWidget(
202            label='Data de Inclusao',
203            description='',
204            format='%d/%m/%Y',
205            date_only=1,
206            visible={'edit':'hidden','view':'visible'},
207            label_msgid='ILPortal_label_dat_inclusao',
208            description_msgid='ILPortal_help_dat_inclusao',
209            i18n_domain='ILPortal',
210        )
211    ),
212   
213    StringField('oper_atualizacao',
214        widget=StringWidget(
215            label='Operador da ultima atualizacao',
216            description='',
217            visible={'edit':'hidden','view':'visible'},
218            label_msgid='ILPortal_label_oper_atualizacao',
219            description_msgid='ILPortal_help_oper_atualizacao',
220            i18n_domain='ILPortal',
221        ),
222        default_method='getMember'
223    ),
224   
225    TextField('informacao_geral',
226        widget=TextAreaWidget
227        (
228            label='Informacoes Gerais',
229            description='Informe uma descricao geral da Casa Legislativa',
230            label_msgid='ILPortal_label_informacao_geral',
231            description_msgid='ILPortal_help_informacao_geral',
232            i18n_domain='ILPortal',
233        ),
234        default_output_type='text/html',
235        default_content_type='text/html'
236    ),
237   
238    TextField('historico_casa',
239        widget=TextAreaWidget
240        (
241            label='Historico da Casa',
242            description='Infome um breve historico da Casa Legislativa ',
243            label_msgid='ILPortal_label_historico_casa',
244            description_msgid='ILPortal_help_historico_casa',
245            i18n_domain='ILPortal',
246        ),
247        default_output_type='text/html',
248        default_content_type='text/html'
249    ),
250   
251    ImageField('foto',
252        allowable_content_types=('image/gif', 'image/jpeg', 'image/png'),
253        default_content_type='image/jpeg',
254        widget=ImageWidget
255        (
256            label='Foto',
257            description='Adicione uma foto da Casa Legislativa',
258            label_msgid='ILPortal_label_foto',
259            description_msgid='ILPortal_help_foto',
260            i18n_domain='ILPortal',
261        ),
262        storage=AttributeStorage(),
263        original_size=(160,120)
264    ),
265   
266),
267)
268
269
270##code-section after-schema #fill in your manual code here
271##/code-section after-schema
272
273class CasaLegislativa(BaseBTreeFolder):
274    """
275    Area especifica de uma Casa Legislativa
276    """
277    security = ClassSecurityInfo()
278    __implements__ = (getattr(BaseBTreeFolder,'__implements__',()),)
279
280
281    # This name appears in the 'add' box
282    archetype_name             = 'Casa Legislativa'
283
284    meta_type                  = 'CasaLegislativa'
285    portal_type                = 'CasaLegislativa'
286    allowed_content_types      = ['Telefone', 'Parlamentar', 'MesaDiretora', 'Document', 'File', 'Event', 'Image', 'News Item', 'Pasta']
287    filter_content_types       = 1
288    global_allow               = 1
289    allow_discussion           = 0
290    content_icon               = 'Casa_Legislativa.gif'
291    immediate_view             = 'folder_listing'
292    default_view               = 'folder_listing'
293    suppl_views                = ()
294    typeDescription            = "Casa Legislativa"
295    typeDescMsgId              = 'description_edit_casalegislativa'
296
297    schema = BaseFolderSchema + \
298             schema
299
300    ##code-section class-header #fill in your manual code here
301    ##/code-section class-header
302
303
304    #Methods
305    #manually created methods
306
307    security.declarePublic('getMember')
308    def getMember(self):
309        """
310        Retorna o membro que adicionou a Casa Legislativa
311        """
312        #portal = getToolByName(self, 'portal_url').getPortalObject()
313        #member = portal.portal_membership.getAuthenticatedMember()
314        return 'member'
315
316
317def modify_fti(fti):
318    # hide unnecessary tabs (usability enhancement)
319    for a in fti['actions']:
320        if a['id'] in ['references']:
321            a['visible'] = 0
322    return fti
323
324registerType(CasaLegislativa,PROJECTNAME)
325# end of class CasaLegislativa
326
327##code-section module-footer #fill in your manual code here
328##/code-section module-footer
329
330
331
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.