Conjunto de mudanças 2680 no repositório publico


Ignorar:
Timestamp:
28/06/2006 10:39:17 (13 anos atrás)
Autor:
jeanferri
Mensagem:

Criada a documentação da interface

Localização:
ILCertificados/trunk
Arquivos:
5 editados

Legenda:

Não Modificado
Adicionado
Removido
  • ILCertificados/trunk/AssinaturaCertificado.py

    r2674 r2680  
    4040        name='nome',
    4141        widget=StringWidget(
     42            description="Informe o nome da pessoa que emitiu esta assinatura.",
    4243            label='Nome',
    4344            label_msgid='ILCertificados_label_nome',
     45            description_msgid='ILCertificados_help_nome',
    4446            i18n_domain='ILCertificados',
    45         )
     47        ),
     48        required=1
    4649    ),
    4750
     
    4952        name='funcao',
    5053        widget=StringWidget(
    51             label='Funcao',
     54            label="Função",
     55            description="Informe a função da pessoa que emitiu esta assinatura.",
    5256            label_msgid='ILCertificados_label_funcao',
     57            description_msgid='ILCertificados_help_funcao',
    5358            i18n_domain='ILCertificados',
    5459        )
    5560    ),
    5661
    57     StringField(
     62    ImageField(
    5863        name='imagem',
    59         widget=StringWidget(
     64        widget=ImageWidget(
     65            description="Selecione a imagem da assinatura digitalizada da pessoa informada acima.",
    6066            label='Imagem',
    6167            label_msgid='ILCertificados_label_imagem',
     68            description_msgid='ILCertificados_help_imagem',
    6269            i18n_domain='ILCertificados',
    63         )
     70        ),
     71        required=1,
     72        storage=AttributeStorage()
    6473    ),
    6574
     
    7483
    7584##code-section after-schema #fill in your manual code here
     85AssinaturaCertificado_schema['title'].required = 0
     86AssinaturaCertificado_schema['title'].widget.visible = {'view':'invisible', 'edit':'invisible'}
    7687##/code-section after-schema
    7788
    7889class AssinaturaCertificado(BaseContent):
    79     """
     90    """Assinatura de uma pessoa que tem relação com o evento. É
     91    utilizada no evento, sozinha ou com outras assinaturas, para
     92    compor as assinaturas de todos os certificados relacionados ao
     93    evento. Após sua conclusão será inalterável.
    8094    """
    8195    security = ClassSecurityInfo()
     
    8397
    8498    # This name appears in the 'add' box
    85     archetype_name = 'AssinaturaCertificado'
     99    archetype_name = 'Assinatura do Certificado'
    86100
    87101    meta_type = 'AssinaturaCertificado'
     
    90104    filter_content_types = 0
    91105    global_allow = 0
    92     #content_icon = 'AssinaturaCertificado.gif'
     106    content_icon = 'assinatura_certificado_icon.gif'
    93107    immediate_view = 'base_view'
    94108    default_view = 'base_view'
    95109    suppl_views = ()
    96     typeDescription = "AssinaturaCertificado"
     110    typeDescription = "Assinatura de uma pessoa que tem relação com o evento. É utilizada no evento, sozinha ou com outras assinaturas, para compor as assinaturas de todos os certificados relacionados ao evento. Após sua conclusão será inalterável."
    97111    typeDescMsgId = 'description_edit_assinaturacertificado'
    98112
     
    106120    # Methods
    107121
     122    # Manually created methods
     123
     124    def Title(self):
     125        """Retorna o nome e a função do assinante.
     126        """
     127
     128        return '%s: %s' %(self.getNome(), self.getFuncao())
     129
     130
     131
    108132registerType(AssinaturaCertificado, PROJECTNAME)
    109133# end of class AssinaturaCertificado
  • ILCertificados/trunk/Certificado.py

    r2674 r2680  
    4040        name='participante',
    4141        widget=StringWidget(
     42            description="Informe o nome do participante do evento.",
    4243            label='Participante',
    4344            label_msgid='ILCertificados_label_participante',
     45            description_msgid='ILCertificados_help_participante',
    4446            i18n_domain='ILCertificados',
    45         )
     47        ),
     48        required=1
    4649    ),
    4750
    4851    StringField(
    4952        name='papel',
     53        default="participante",
     54        index=":schema",
    5055        widget=SelectionWidget(
     56            description="Selecione o papel que o participante exerceu durante o evento.",
    5157            label='Papel',
    5258            label_msgid='ILCertificados_label_papel',
     59            description_msgid='ILCertificados_help_papel',
    5360            i18n_domain='ILCertificados',
    54         )
     61        ),
     62        required=1,
     63        vocabulary='getPapeisParticipante'
    5564    ),
    5665
    5766    StringField(
    5867        name='email',
     68        index=":schema",
    5969        widget=StringWidget(
    60             label='Email',
     70            label="E-Mail",
     71            description="Informe o endereço de e-mail do participante. Este e-mail será utilizado para informar ao participante o código de acesso de seu certificado, se o participante possuir.",
    6172            label_msgid='ILCertificados_label_email',
     73            description_msgid='ILCertificados_help_email',
    6274            i18n_domain='ILCertificados',
    63         )
     75        ),
     76        validators=('isEmail',)
    6477    ),
    6578
     
    7487
    7588##code-section after-schema #fill in your manual code here
     89Certificado_schema['title'].required = 0
     90Certificado_schema['title'].widget.visible = {'view':'invisible','edit':'invisible'}
    7691##/code-section after-schema
    7792
    7893class Certificado(BaseContent):
    79     """
     94    """Certificado da pessoa que participou do evento. Contém os dados
     95    do participante e será inalterável após sua conclusão.
    8096    """
    8197    security = ClassSecurityInfo()
     
    90106    filter_content_types = 0
    91107    global_allow = 0
    92     #content_icon = 'Certificado.gif'
     108    content_icon = 'certificado_icon.gif'
    93109    immediate_view = 'base_view'
    94110    default_view = 'base_view'
    95111    suppl_views = ()
    96     typeDescription = "Certificado"
     112    typeDescription = "Certificado da pessoa que participou do evento. Contém os dados do participante e será inalterável após sua conclusão."
    97113    typeDescMsgId = 'description_edit_certificado'
    98114
     
    106122    # Methods
    107123
     124    # Manually created methods
     125
     126    def getPapeisParticipante(self):
     127        """Retorna os papéis dos participantes cadastrados na pasta de
     128        certificados."""
     129
     130        parent = self.aq_inner.aq_parent
     131        return parent.getPapeis_participante()
     132
     133    def Title(self):
     134        """Retorna o nome do participante como título do objeto.
     135        """
     136
     137        return self.getParticipante()
     138
     139
     140
    108141registerType(Certificado, PROJECTNAME)
    109142# end of class Certificado
  • ILCertificados/trunk/Certificados.py

    r2674 r2680  
    3838
    3939    LinesField(
    40         name='tipos',
     40        name='tipos_evento',
     41        default=['curso','conferência','palestra','reunião','seminário','treinamento','workshop'],
    4142        widget=LinesWidget(
    42             label='Tipos',
    43             label_msgid='ILCertificados_label_tipos',
     43            label="Tipos de Evento",
     44            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.",
     45            label_msgid='ILCertificados_label_tipos_evento',
     46            description_msgid='ILCertificados_help_tipos_evento',
    4447            i18n_domain='ILCertificados',
    45         )
     48        ),
     49        required=1
    4650    ),
    4751
    4852    LinesField(
    49         name='papeis',
     53        name='papeis_participante',
     54        default=['aluno','instrutor','monitor','palestrante','participante'],
    5055        widget=LinesWidget(
    51             label='Papeis',
    52             label_msgid='ILCertificados_label_papeis',
     56            label="Papéis dos Participantes",
     57            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.",
     58            label_msgid='ILCertificados_label_papeis_participante',
     59            description_msgid='ILCertificados_help_papeis_participante',
    5360            i18n_domain='ILCertificados',
    54         )
     61        ),
     62        required=1
    5563    ),
    5664
     
    6876
    6977class Certificados(BaseBTreeFolder):
    70     """
     78    """Pasta de certificados que contém todos os eventos, assinaturas
     79    e templates que podem ser usados nos certificados.
    7180    """
    7281    security = ClassSecurityInfo()
     
    7483
    7584    # This name appears in the 'add' box
    76     archetype_name = 'Certificados'
     85    archetype_name = 'Pasta de Certificados'
    7786
    7887    meta_type = 'Certificados'
    7988    portal_type = 'Certificados'
    80     allowed_content_types = ['TemplateCertificado', 'AssinaturaCertificado', 'EventoCertificado']
     89    allowed_content_types = ['EventoCertificado', 'TemplateCertificado', 'AssinaturaCertificado']
    8190    filter_content_types = 1
    8291    global_allow = 1
    83     #content_icon = 'Certificados.gif'
     92    content_icon = 'certificados_icon.gif'
    8493    immediate_view = 'base_view'
    8594    default_view = 'base_view'
    8695    suppl_views = ()
    87     typeDescription = "Certificados"
     96    typeDescription = "Pasta de certificados que contém todos os eventos, assinaturas e templates que podem ser usados nos certificados."
    8897    typeDescMsgId = 'description_edit_certificados'
    8998
     
    101110
    102111
     112       {'action': "string:${object_url}/evento_certificado_list",
     113        'category': "object",
     114        'id': 'evento_certificado_list',
     115        'name': 'Eventos',
     116        'permissions': ("Add portal content",),
     117        'condition': 'python:1'
     118       },
     119
     120
     121       {'action': "string:${object_url}/assinatura_certificado_list",
     122        'category': "object",
     123        'id': 'assinatura_certificado_list',
     124        'name': 'Assinaturas',
     125        'permissions': ("Add portal content",),
     126        'condition': 'python:1'
     127       },
     128
     129
     130       {'action': "string:${object_url}/template_certificado_list",
     131        'category': "object",
     132        'id': 'template_certificado_list',
     133        'name': 'Templates',
     134        'permissions': ("Add portal content",),
     135        'condition': 'python:1'
     136       },
     137
     138
    103139    )
    104140
     
    112148    # Methods
    113149
     150
    114151registerType(Certificados, PROJECTNAME)
    115152# end of class Certificados
  • ILCertificados/trunk/EventoCertificado.py

    r2674 r2680  
    3333
    3434##code-section module-header #fill in your manual code here
     35import csv
    3536##/code-section module-header
    3637
    3738schema = Schema((
    38 
    39     StringField(
    40         name='titulo',
    41         widget=StringWidget(
    42             label='Titulo',
    43             label_msgid='ILCertificados_label_titulo',
    44             i18n_domain='ILCertificados',
    45         )
    46     ),
    4739
    4840    StringField(
    4941        name='tipo',
    5042        widget=SelectionWidget(
     43            description="Selecione o tipo do evento. Será utilizado no corpo do certificado.",
    5144            label='Tipo',
    5245            label_msgid='ILCertificados_label_tipo',
    53             i18n_domain='ILCertificados',
    54         )
     46            description_msgid='ILCertificados_help_tipo',
     47            i18n_domain='ILCertificados',
     48        ),
     49        vocabulary='getTiposEvento'
    5550    ),
    5651
     
    5853        name='local',
    5954        widget=StringWidget(
     55            description="Informe o local do evento. Será utilizado no corpo do certificado.",
    6056            label='Local',
    6157            label_msgid='ILCertificados_label_local',
     58            description_msgid='ILCertificados_help_local',
    6259            i18n_domain='ILCertificados',
    6360        )
    6461    ),
    6562
    66     DateTimeField(
    67         name='data_inicio',
    68         widget=CalendarWidget(
    69             label='Data_inicio',
    70             label_msgid='ILCertificados_label_data_inicio',
    71             i18n_domain='ILCertificados',
    72         )
    73     ),
    74 
    75     DateTimeField(
    76         name='data_fim',
    77         widget=CalendarWidget(
    78             label='Data_fim',
    79             label_msgid='ILCertificados_label_data_fim',
     63    StringField(
     64        name='periodo',
     65        widget=StringWidget(
     66            label="Período",
     67            description="Informe o período de realização do evento. Será utilizado no corpo do certificado.",
     68            label_msgid='ILCertificados_label_periodo',
     69            description_msgid='ILCertificados_help_periodo',
    8070            i18n_domain='ILCertificados',
    8171        )
     
    8575        name='duracao',
    8676        widget=StringWidget(
    87             label='Duracao',
     77            label="Duração",
     78            description="Informe a duração do evento. Será utilizado no corpo do certificado.",
     79            size="10",
    8880            label_msgid='ILCertificados_label_duracao',
     81            description_msgid='ILCertificados_help_duracao',
    8982            i18n_domain='ILCertificados',
    9083        )
     
    9588        allowable_content_types=('text/plain', 'text/structured', 'text/html', 'application/msword',),
    9689        widget=RichWidget(
     90            description="Descreva o programa do evento. Será utilizado no verso do certificado.",
    9791            label='Programa',
    9892            label_msgid='ILCertificados_label_programa',
     93            description_msgid='ILCertificados_help_programa',
    9994            i18n_domain='ILCertificados',
    10095        ),
     
    105100        name='template',
    106101        widget=ReferenceWidget(
     102            description="Selecione o template que você deseja utilizar para compor o layout do certificado desse evento.",
    107103            label='Template',
    108104            label_msgid='ILCertificados_label_template',
     105            description_msgid='ILCertificados_help_template',
    109106            i18n_domain='ILCertificados',
    110107        ),
    111108        allowed_types=('TemplateCertificado',),
    112109        multiValued=0,
    113         relationship='evento_template'
     110        relationship='evento_template',
     111        required=1
    114112    ),
    115113
     
    117115        name='assinaturas',
    118116        widget=ReferenceWidget(
     117            description="Selecione as assinaturas que você deseja que sejam anexadas na face do certificado desse evento.",
    119118            label='Assinaturas',
    120119            label_msgid='ILCertificados_label_assinaturas',
     120            description_msgid='ILCertificados_help_assinaturas',
    121121            i18n_domain='ILCertificados',
    122122        ),
    123123        allowed_types=('AssinaturaCertificado',),
    124124        multiValued=1,
    125         relationship='evento_assinaturas'
     125        relationship='evento_assinaturas',
     126        required=1
    126127    ),
    127128
     
    139140
    140141class EventoCertificado(BaseBTreeFolder):
    141     """
     142    """Evento do qual as pessoas participaram. Contém a maior parte
     143    das informações do certificado que é emitido para cada pessoa
     144    que participou desse evento. Após sua conclusão será
     145    inalterável.
    142146    """
    143147    security = ClassSecurityInfo()
     
    145149
    146150    # This name appears in the 'add' box
    147     archetype_name = 'EventoCertificado'
     151    archetype_name = 'Evento Certificado'
    148152
    149153    meta_type = 'EventoCertificado'
     
    152156    filter_content_types = 1
    153157    global_allow = 0
    154     #content_icon = 'EventoCertificado.gif'
     158    content_icon = 'evento_certificado_icon.gif'
    155159    immediate_view = 'base_view'
    156160    default_view = 'base_view'
    157161    suppl_views = ()
    158     typeDescription = "EventoCertificado"
     162    typeDescription = "Evento do qual as pessoas participaram. Contém a maior parte das informações do certificado que é emitido para cada pessoa que participou desse evento. Após sua conclusão será inalterável."
    159163    typeDescMsgId = 'description_edit_eventocertificado'
    160164
     
    165169       {'action': "string:${object_url}/evento_certificado_view",
    166170        'category': "object",
    167         'id': 'evento_certificado_view',
    168         'name': 'evento_certificado_view',
     171        'id': 'view',
     172        'name': 'View',
    169173        'permissions': ("View",),
    170174        'condition': 'python:1'
     
    172176
    173177
     178       {'action': "string:${object_url}/certificado_import_form",
     179        'category': "object",
     180        'id': 'certificado_import_form',
     181        'name': 'Importação',
     182        'permissions': ("Add portal content",),
     183        'condition': 'python:1'
     184       },
     185
     186
    174187    )
    175188
     
    183196    # Methods
    184197
     198    # Manually created methods
     199
     200    def getTiposEvento(self):
     201        """Retorna os tipos de evento cadastrados na pasta de certificados.
     202        """
     203
     204        parent = self.aq_inner.aq_parent
     205        return parent.getTipos_evento()
     206
     207    security.declareProtected('View', 'criaCertificadosCSV')
     208    def criaCertificadosCSV(self, file_upload):
     209        """Cria todos os certificados baseados no arquivo CSV carregado.
     210        """
     211
     212        cont = 0
     213        arquivo = csv.reader(file_upload.readlines())
     214        # usar unicodeEncode(valor)
     215
     216        for item in arquivo:
     217            cont += 1
     218            id = str(cont)
     219            participante = item[0]
     220            papel = item[1]
     221            email = item[2]
     222
     223            self.invokeFactory('Certificado', id=id)
     224            objeto = getattr(self, id)
     225
     226            if participante:
     227                objeto.setParticipante(participante)
     228
     229            if papel:
     230                objeto.setPapel(papel)
     231
     232            if email:
     233                objeto.setEmail(email)
     234
     235            objeto.reindexObject()
     236
     237        return cont
     238
     239
     240
    185241registerType(EventoCertificado, PROJECTNAME)
    186242# end of class EventoCertificado
  • ILCertificados/trunk/TemplateCertificado.py

    r2674 r2680  
    3636
    3737schema = Schema((
    38 
    39     StringField(
    40         name='titulo',
    41         widget=StringWidget(
    42             label='Titulo',
    43             label_msgid='ILCertificados_label_titulo',
    44             i18n_domain='ILCertificados',
    45         )
    46     ),
    4738
    4839    StringField(
     
    146137
    147138class TemplateCertificado(BaseContent):
    148     """
     139    """Template de layout do certificado. É utilizado em um evento
     140    para compor o layout de todos os certificados relacionados ao
     141    evento.
    149142    """
    150143    security = ClassSecurityInfo()
     
    152145
    153146    # This name appears in the 'add' box
    154     archetype_name = 'TemplateCertificado'
     147    archetype_name = 'Template do Certificado'
    155148
    156149    meta_type = 'TemplateCertificado'
     
    159152    filter_content_types = 0
    160153    global_allow = 0
    161     #content_icon = 'TemplateCertificado.gif'
     154    content_icon = 'template_certificado_icon.gif'
    162155    immediate_view = 'base_view'
    163156    default_view = 'base_view'
    164157    suppl_views = ()
    165     typeDescription = "TemplateCertificado"
     158    typeDescription = "Template de layout do certificado. É utilizado em um evento para compor o layout de todos os certificados relacionados ao evento."
    166159    typeDescMsgId = 'description_edit_templatecertificado'
    167160
     
    175168    # Methods
    176169
     170
    177171registerType(TemplateCertificado, PROJECTNAME)
    178172# end of class TemplateCertificado
Note: Veja TracChangeset para ajuda no uso do visualizador de conjunto de mudanças.
 

The contents and data of this website are published under license:
Creative Commons 4.0 Brasil - Atribuir Fonte - Compartilhar Igual.