source: publico/ILCertificador/trunk/Certificador.py @ 2711

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

Renomeado template view do Certificador.py

File size: 5.8 KB
Linha 
1# -*- coding: utf-8 -*-
2#
3# File: Certificador.py
4#
5# Copyright (c) 2006 by Interlegis
6# Generator: ArchGenXML
7#            http://plone.org/products/archgenxml
8#
9# GNU General Public License (GPL)
10#
11# This program is free software; you can redistribute it and/or
12# modify it under the terms of the GNU General Public License
13# as published by the Free Software Foundation; either version 2
14# of the License, or (at your option) any later version.
15#
16# This program is distributed in the hope that it will be useful,
17# but WITHOUT ANY WARRANTY; without even the implied warranty of
18# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19# GNU General Public License for more details.
20#
21# You should have received a copy of the GNU General Public License
22# along with this program; if not, write to the Free Software
23# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
24# 02110-1301, USA.
25#
26
27__author__ = """STC Interlegis <admin-stc@interlegis.gov.br>"""
28__docformat__ = 'plaintext'
29
30from AccessControl import ClassSecurityInfo
31from Products.Archetypes.atapi import *
32from Products.ILCertificador.config import *
33
34##code-section module-header #fill in your manual code here
35from Products.CMFCore.utils import getToolByName
36##/code-section module-header
37
38schema = Schema((
39
40    LinesField(
41        name='tipos_evento',
42        default=['curso','conferência','palestra','reunião','seminário','treinamento','workshop'],
43        widget=LinesWidget(
44            label="Tipos de Evento",
45            description="Informe os tipos de evento que serão usados para classificar cada evento e conseqüentemente o certificado. Não remova ou renomeie ítens que já foram selecionados em eventos.",
46            label_msgid='ILCertificador_label_tipos_evento',
47            description_msgid='ILCertificador_help_tipos_evento',
48            i18n_domain='ILCertificador',
49        ),
50        required=1
51    ),
52
53    LinesField(
54        name='papeis_participante',
55        default=['aluno','instrutor','monitor','palestrante','participante'],
56        widget=LinesWidget(
57            label="Papéis dos Participantes",
58            description="Informe os tipos de papéis que classificará cada participante do evento e será usado no certificado. Não remova ou renomeie ítens que já foram selecionados em certificados. O papel 'participante' deve permanecer na lista mesmo que não seja utilizado.",
59            label_msgid='ILCertificador_label_papeis_participante',
60            description_msgid='ILCertificador_help_papeis_participante',
61            i18n_domain='ILCertificador',
62        ),
63        required=1
64    ),
65
66),
67)
68
69##code-section after-local-schema #fill in your manual code here
70##/code-section after-local-schema
71
72Certificador_schema = BaseBTreeFolderSchema.copy() + \
73    schema.copy()
74
75##code-section after-schema #fill in your manual code here
76##/code-section after-schema
77
78class Certificador(BaseBTreeFolder):
79    """Sistema de Gestão de Certificados. Nesta pasta são armazenados
80    todos os eventos, layouts e assinaturas que podem são
81    utilizados para emitir os certificados.
82    """
83    security = ClassSecurityInfo()
84    __implements__ = (getattr(BaseBTreeFolder,'__implements__',()),)
85
86    # This name appears in the 'add' box
87    archetype_name = 'Certificador'
88
89    meta_type = 'Certificador'
90    portal_type = 'Certificador'
91    allowed_content_types = ['EventoCertificado', 'TemplateCertificado', 'AssinaturaCertificado']
92    filter_content_types = 1
93    global_allow = 1
94    content_icon = 'certificador_icon.gif'
95    immediate_view = 'certificador_view'
96    default_view = 'certificador_view'
97    suppl_views = ()
98    typeDescription = "Sistema de Gestão de Certificados. Nesta pasta são armazenados todos os eventos, layouts e assinaturas que podem são utilizados para emitir os certificados."
99    typeDescMsgId = 'description_edit_certificador'
100
101
102    actions =  (
103
104
105       {'action': "string:${object_url}/folder_localrole_form",
106        'category': "object",
107        'id': 'local_roles',
108        'name': 'Sharing',
109        'permissions': ("Manage properties",),
110        'condition': 'python:1'
111       },
112
113
114       {'action': "string:${object_url}/certificador_view",
115        'category': "object",
116        'id': 'view',
117        'name': 'View',
118        'permissions': ("View",),
119        'condition': 'python:1'
120       },
121
122
123       {'action': "string:${object_url}/evento_certificado_list",
124        'category': "object",
125        'id': 'evento_certificado_list',
126        'name': 'Eventos',
127        'permissions': ("Add portal content",),
128        'condition': 'python:1'
129       },
130
131
132       {'action': "string:${object_url}/assinatura_certificado_list",
133        'category': "object",
134        'id': 'assinatura_certificado_list',
135        'name': 'Assinaturas',
136        'permissions': ("Add portal content",),
137        'condition': 'python:1'
138       },
139
140
141       {'action': "string:${object_url}/template_certificado_list",
142        'category': "object",
143        'id': 'template_certificado_list',
144        'name': 'Templates',
145        'permissions': ("Add portal content",),
146        'condition': 'python:1'
147       },
148
149
150    )
151
152    _at_rename_after_creation = True
153
154    schema = Certificador_schema
155
156    ##code-section class-header #fill in your manual code here
157    ##/code-section class-header
158
159    # Methods
160
161    # Manually created methods
162
163    def gerarCertificado(self, chave):
164        """Gera o certificado cujo UID é a chave recebida.
165        """
166        catalog = getToolByName(self, 'reference_catalog')
167        certificado = catalog.lookupObject(chave)
168
169        if certificado is not None:
170            return certificado()
171        else:
172            return 'Erro ao gerar o certificado, por favor informe ao administrador do site.'
173
174
175
176registerType(Certificador, PROJECTNAME)
177# end of class Certificador
178
179##code-section module-footer #fill in your manual code here
180##/code-section module-footer
181
182
183
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.