source: publico/ILPortal/trunk/Parlamentar.py @ 1224

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

alteração no modelo e geração de Código

File size: 18.5 KB
Linha 
1# File: Parlamentar.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__  = '''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 DateTime import DateTime
34##/code-section module-header
35
36schema=Schema((
37    StringField('title',
38        widget=StringWidget(
39            visible={'edit':'hidden','view':'hidden'},
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('nom_parlamentar',
51        widget=StringWidget(
52            label='Nome Parlamentar',
53            description='Informe o nome pelo qual o parlamentar é conhecido',
54            label_msgid='ILPortal_label_nom_parlamentar',
55            description_msgid='ILPortal_help_nom_parlamentar',
56            i18n_domain='ILPortal',
57        ),
58        required=1,
59        storage=PostgreSQLStorage(),
60        searchable="1"
61    ),
62
63    StringField('nom_completo',
64        widget=StringWidget(
65            description="Informe o nome completo do Parlamentar",
66            label="Nome Completo",
67            label_msgid='ILPortal_label_nom_completo',
68            description_msgid='ILPortal_help_nom_completo',
69            i18n_domain='ILPortal',
70        ),
71        required=1,
72        storage=PostgreSQLStorage(),
73        searchable="""1
74        1"""
75    ),
76
77    DateTimeField('data_nasc',
78        widget=CalendarWidget(
79            description="Informe a data de nascimento do Parlamentar",
80            label="Data de Nascimento",
81            date_only="1",
82            format='%d/%m/%Y',
83            label_msgid='ILPortal_label_data_nasc',
84            description_msgid='ILPortal_help_data_nasc',
85            i18n_domain='ILPortal',
86        ),
87        storage=PostgreSQLStorage(),
88        searchable="0"
89    ),
90
91    StringField('sexo',
92        widget=SelectionWidget(
93            format='select',
94            label="Sexo",
95            description='Selecione o sexo do Parlamentar',
96            label_msgid='ILPortal_label_sexo',
97            description_msgid='ILPortal_help_sexo',
98            i18n_domain='ILPortal',
99        ),
100        enforceVocabulary=1,
101        storage=PostgreSQLStorage(),
102        vocabulary='getVocab',
103        searchable="0"
104    ),
105
106    StringField('endereco',
107        widget=StringWidget(
108            label="Endereço",
109            description="Informe o endereço do parlamentar",
110            label_msgid='ILPortal_label_endereco',
111            description_msgid='ILPortal_help_endereco',
112            i18n_domain='ILPortal',
113        ),
114        storage=PostgreSQLStorage(),
115        searchable="0"
116    ),
117
118    StringField('bairro',
119        widget=StringWidget(
120            label="Bairro",
121            description='Informe o bairro do Parlamentar',
122            label_msgid='ILPortal_label_bairro',
123            description_msgid='ILPortal_help_bairro',
124            i18n_domain='ILPortal',
125        ),
126        storage=PostgreSQLStorage(),
127        searchable="0"
128    ),
129
130    StringField('cidade',
131        widget=StringWidget(
132            label="Cidade",
133            description='Informe a cidade do Parlamentar',
134            label_msgid='ILPortal_label_cidade',
135            description_msgid='ILPortal_help_cidade',
136            i18n_domain='ILPortal',
137        ),
138        storage=PostgreSQLStorage(),
139        searchable="0"
140    ),
141
142    StringField('cep',
143        widget=StringWidget(
144            label="CEP",
145            description='Informe o cep do Parlamentar',
146            label_msgid='ILPortal_label_cep',
147            description_msgid='ILPortal_help_cep',
148            i18n_domain='ILPortal',
149        ),
150        storage=PostgreSQLStorage(),
151        searchable="0",
152        validators=('ehCEP',)
153    ),
154
155    StringField('estado',
156        widget=SelectionWidget(
157            format='select',
158            label="Estado",
159            description='Selecione o Estado do parlamentar',
160            label_msgid='ILPortal_label_estado',
161            description_msgid='ILPortal_help_estado',
162            i18n_domain='ILPortal',
163        ),
164        enforceVocabulary=1,
165        storage=PostgreSQLStorage(),
166        vocabulary='getVocab',
167        searchable="0"
168    ),
169
170    StringField('num_fone_com1',
171        widget=StringWidget(
172            label="Telefone comercial (1)",
173            description="Informe o telefone comercial",
174            label_msgid='ILPortal_label_num_fone_com1',
175            description_msgid='ILPortal_help_num_fone_com1',
176            i18n_domain='ILPortal',
177        ),
178        storage=PostgreSQLStorage(),
179        searchable="0"
180    ),
181
182    StringField('num_fone_com2',
183        widget=StringWidget(
184            label="Telefone comercial (2)",
185            description='informe outro telefone comercial do parlamentar',
186            label_msgid='ILPortal_label_num_fone_com2',
187            description_msgid='ILPortal_help_num_fone_com2',
188            i18n_domain='ILPortal',
189        ),
190        storage=PostgreSQLStorage(),
191        searchable="0"
192    ),
193
194    StringField('num_fone_res1',
195        widget=StringWidget(
196            label="Telefone residencial",
197            description="Informe o telefone residencial",
198            label_msgid='ILPortal_label_num_fone_res1',
199            description_msgid='ILPortal_help_num_fone_res1',
200            i18n_domain='ILPortal',
201        ),
202        storage=PostgreSQLStorage(),
203        searchable="0"
204    ),
205
206    StringField('num_fax1',
207        widget=StringWidget(
208            label="Telefone fax (1)",
209            description="Informe o telefone de fax do parlamentar",
210            label_msgid='ILPortal_label_num_fax1',
211            description_msgid='ILPortal_help_num_fax1',
212            i18n_domain='ILPortal',
213        ),
214        storage=PostgreSQLStorage(),
215        searchable="0"
216    ),
217
218    StringField('num_fax2',
219        widget=StringWidget(
220            label="Telefone fax (2)",
221            description='Informe outro telefone de fax do parlamentar',
222            label_msgid='ILPortal_label_num_fax2',
223            description_msgid='ILPortal_help_num_fax2',
224            i18n_domain='ILPortal',
225        ),
226        storage=PostgreSQLStorage(),
227        searchable="0"
228    ),
229
230    StringField('pagina_web',
231        widget=StringWidget(
232            label="Pagina web",
233            description="Informe a pagina web. http://...",
234            label_msgid='ILPortal_label_pagina_web',
235            description_msgid='ILPortal_help_pagina_web',
236            i18n_domain='ILPortal',
237        ),
238        storage=PostgreSQLStorage(),
239        searchable="0",
240        validators=('isURL',)
241    ),
242
243    StringField('email_interlegis',
244        widget=StringWidget(
245            label="E-mail Interlegis",
246            description="Informe o email do interlegis do parlamentar",
247            label_msgid='ILPortal_label_email_interlegis',
248            description_msgid='ILPortal_help_email_interlegis',
249            i18n_domain='ILPortal',
250        ),
251        storage=PostgreSQLStorage(),
252        searchable="0",
253        validators=('isEmail',)
254    ),
255
256    StringField('email_particular',
257        widget=StringWidget(
258            label="E-mail particular",
259            description="Informe o email particular do parlamentar",
260            label_msgid='ILPortal_label_email_particular',
261            description_msgid='ILPortal_help_email_particular',
262            i18n_domain='ILPortal',
263        ),
264        storage=PostgreSQLStorage(),
265        searchable="0",
266        validators=('isEmail',)
267    ),
268
269    StringField('partido',
270        widget=SelectionWidget(
271            label="Partido",
272            description="Selecione o partido do parlamentar",
273            format='select',
274            label_msgid='ILPortal_label_partido',
275            description_msgid='ILPortal_help_partido',
276            i18n_domain='ILPortal',
277        ),
278        storage=PostgreSQLStorage(),
279        vocabulary='getVocab',
280        searchable="0"
281    ),
282
283    DateTimeField('data_inicio_mandato',
284        widget=CalendarWidget(
285            label="Data de Inicio de Mandato",
286            description="Data de inicio de mantado do parlamentar",
287            date_only="1",
288            format='%d/%m/%Y',
289            label_msgid='ILPortal_label_data_inicio_mandato',
290            description_msgid='ILPortal_help_data_inicio_mandato',
291            i18n_domain='ILPortal',
292        ),
293        storage=PostgreSQLStorage(),
294        searchable="0"
295    ),
296
297    DateTimeField('data_fim_mandato',
298        widget=CalendarWidget(
299            label="Data do Fim do mandato",
300            description="Data do fim do mandato do parlamentar",
301            date_only="1",
302            format='%d/%m/%Y',
303            label_msgid='ILPortal_label_data_fim_mandato',
304            description_msgid='ILPortal_help_data_fim_mandato',
305            i18n_domain='ILPortal',
306        ),
307        storage=PostgreSQLStorage(),
308        searchable="0"
309    ),
310
311    StringField('status',
312        widget=SelectionWidget(
313            label="Status",
314            format='select',
315            description='Selecione o status do parlamentar',
316            label_msgid='ILPortal_label_status',
317            description_msgid='ILPortal_help_status',
318            i18n_domain='ILPortal',
319        ),
320        storage=PostgreSQLStorage(),
321        vocabulary='getVocab',
322        searchable="0"
323    ),
324
325    StringField('suplencia',
326        widget=SelectionWidget(
327            label='Suplência',
328            format='select',
329            description='selecione a suplencia do parlamentar',
330            label_msgid='ILPortal_label_suplencia',
331            description_msgid='ILPortal_help_suplencia',
332            i18n_domain='ILPortal',
333        ),
334        storage=PostgreSQLStorage(),
335        vocabulary='getVocab',
336        searchable="0"
337    ),
338
339    StringField('representacao',
340        widget=StringWidget(
341            label="Representação",
342            visible={'view':'visible','edit':'hidden'},
343            label_msgid='ILPortal_label_representacao',
344            description_msgid='ILPortal_help_representacao',
345            i18n_domain='ILPortal',
346        ),
347        storage=PostgreSQLStorage(),
348        searchable="0"
349    ),
350
351    StringField('des_representacao',
352        widget=StringWidget(
353            label="Descrição do Local de Representação",
354            description="Informe uma breve descrição sobre o local de representação",
355            label_msgid='ILPortal_label_des_representacao',
356            description_msgid='ILPortal_help_des_representacao',
357            i18n_domain='ILPortal',
358        ),
359        storage=PostgreSQLStorage(),
360        searchable="1"
361    ),
362
363    DateTimeField('dat_inclusao',
364        widget=CalendarWidget(
365            label="Data de Incluão",
366            visible={'view':'visible','edit':'hidden'},
367            label_msgid='ILPortal_label_dat_inclusao',
368            description_msgid='ILPortal_help_dat_inclusao',
369            i18n_domain='ILPortal',
370        ),
371        storage=PostgreSQLStorage(),
372        searchable="0"
373    ),
374
375    StringField('oper_inclusao',
376        widget=StringWidget(
377            label="Operador de inclusão",
378            visible={'view':'visible','edit':'hidden'},
379            label_msgid='ILPortal_label_oper_inclusao',
380            description_msgid='ILPortal_help_oper_inclusao',
381            i18n_domain='ILPortal',
382        ),
383        storage=PostgreSQLStorage(),
384        searchable="0"
385    ),
386
387    DateTimeField('dat_atualizacao',
388        widget=CalendarWidget(
389            label="Data da última atualização",
390            visible={'view':'visible','edit':'hidden'},
391            label_msgid='ILPortal_label_dat_atualizacao',
392            description_msgid='ILPortal_help_dat_atualizacao',
393            i18n_domain='ILPortal',
394        ),
395        storage=PostgreSQLStorage(),
396        searchable="0"
397    ),
398
399    StringField('oper_atualizacao',
400        widget=StringWidget(
401            label='Operador da última atualização',
402            visible={'edit':'hidden','view':'visible'},
403            label_msgid='ILPortal_label_oper_atualizacao',
404            description_msgid='ILPortal_help_oper_atualizacao',
405            i18n_domain='ILPortal',
406        ),
407        storage=PostgreSQLStorage(),
408        searchable="0"
409    ),
410
411    TextField('informacao_geral',
412        widget=TextAreaWidget(
413            label='Informações Gerais',
414            label_msgid='ILPortal_label_informacao_geral',
415            description_msgid='ILPortal_help_informacao_geral',
416            i18n_domain='ILPortal',
417        ),
418        storage=PostgreSQLStorage(),
419        searchable="1"
420    ),
421
422    TextField('leis_autoria',
423        widget=TextAreaWidget(
424            label='Autoria de Leis',
425            label_msgid='ILPortal_label_leis_autoria',
426            description_msgid='ILPortal_help_leis_autoria',
427            i18n_domain='ILPortal',
428        ),
429        storage=PostgreSQLStorage(),
430        searchable="1"
431    ),
432
433    TextField('projetos_apresentados',
434        widget=TextAreaWidget(
435            label='Projetos Apresentados',
436            label_msgid='ILPortal_label_projetos_apresentados',
437            description_msgid='ILPortal_help_projetos_apresentados',
438            i18n_domain='ILPortal',
439        ),
440        storage=PostgreSQLStorage(),
441        searchable="1"
442    ),
443
444    TextField('cargos_exercidos',
445        widget=TextAreaWidget(
446            label='Cargos Exercídos',
447            label_msgid='ILPortal_label_cargos_exercidos',
448            description_msgid='ILPortal_help_cargos_exercidos',
449            i18n_domain='ILPortal',
450        ),
451        storage=PostgreSQLStorage(),
452        searchable="1"
453    ),
454
455    TextField('mandatos_exercidos',
456        widget=TextAreaWidget(
457            label='Mandatos Exercídos',
458            label_msgid='ILPortal_label_mandatos_exercidos',
459            description_msgid='ILPortal_help_mandatos_exercidos',
460            i18n_domain='ILPortal',
461        ),
462        storage=PostgreSQLStorage(),
463        searchable="1"
464    ),
465
466    TextField('particip_comissoes',
467        widget=TextAreaWidget(
468            label="Participação de Comissões",
469            label_msgid='ILPortal_label_particip_comissoes',
470            description_msgid='ILPortal_help_particip_comissoes',
471            i18n_domain='ILPortal',
472        ),
473        storage=PostgreSQLStorage(),
474        searchable="1"
475    ),
476
477    TextField('missao',
478        widget=TextAreaWidget(
479            label='Missão',
480            label_msgid='ILPortal_label_missao',
481            description_msgid='ILPortal_help_missao',
482            i18n_domain='ILPortal',
483        ),
484        storage=PostgreSQLStorage(),
485        searchable="1"
486    ),
487
488    ImageField('foto',
489        widget=ImageWidget(
490            label='Foto',
491            label_msgid='ILPortal_label_foto',
492            description_msgid='ILPortal_help_foto',
493            i18n_domain='ILPortal',
494        ),
495        storage=AttributeStorage()
496    ),
497
498),
499)
500
501
502##code-section after-local-schema #fill in your manual code here
503##/code-section after-local-schema
504
505Parlamentar_schema = BaseSchema + \
506    schema
507
508##code-section after-schema #fill in your manual code here
509##/code-section after-schema
510
511class Parlamentar(BaseContent,DynamicVocabulary):
512    """
513    Parlamentar
514    """
515    security = ClassSecurityInfo()
516    __implements__ = (getattr(BaseContent,'__implements__',()),) + (getattr(DynamicVocabulary,'__implements__',()),)
517
518
519    # This name appears in the 'add' box
520    archetype_name             = 'Parlamentar'
521
522    meta_type                  = 'Parlamentar'
523    portal_type                = 'Parlamentar'
524    allowed_content_types      = []
525    filter_content_types       = 0
526    global_allow               = 0
527    allow_discussion           = 0
528    content_icon               = 'Parlamentar.gif'
529    immediate_view             = 'base_view'
530    default_view               = 'base_view'
531    suppl_views                = ()
532    typeDescription            = "Parlamentar"
533    typeDescMsgId              = 'description_edit_parlamentar'
534
535    schema = Parlamentar_schema
536
537    ##code-section class-header #fill in your manual code here
538    ##/code-section class-header
539
540
541    #Methods
542
543    security.declareProtected("Modify portal content", 'setNom_parlamentar')
544    def setNom_parlamentar(self,valor):
545        """ seta o nome parlamentar e o titulo do objeto parlamentar """
546        self.getField('nom_parlamentar').set(self, valor)
547        self.getField('title').set(self, self.getNom_parlamentar())
548        self.reindexObject()
549
550
551
552    security.declareProtected("Modify portal content", 'setOper_atualizacao')
553    def setOper_atualizacao(self,valor):
554        """ seta o usuario que realizou a ultima alteracao """
555
556        portal = getToolByName(self, 'portal_url').getPortalObject()
557        member = str(portal.portal_membership.getAuthenticatedMember())
558
559        self.getField('oper_atualizacao').set(self,member)
560        self.reindexObject()
561
562
563
564    security.declarePublic('setOper_inclusao')
565    def setOper_inclusao(self,valor):
566        """seta o usuario que incluiu o objeto"""
567       
568        self.getField('oper_inclusao').set(self,self.Creator())
569        self.reindexObject()
570
571
572
573    security.declarePublic('setDat_inclusao')
574    def setDat_inclusao(self,valor):
575        """seta a data de inclusao do objeto"""
576
577        self.getField('dat_inclusao').set(self,self.CreationDate())
578        self.reindexObject()       
579
580
581
582    security.declarePublic('setDat_atualizacao')
583    def setDat_atualizacao(self,valor):
584        """ seta a data de atualizacao do objeto """
585
586        self.getField('dat_atualizacao').set(self,self.ModificationDate())
587        self.reindexObject()               
588
589
590
591registerType(Parlamentar,PROJECTNAME)
592# end of class Parlamentar
593
594##code-section module-footer #fill in your manual code here
595##/code-section module-footer
596
597
598
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.