Exemple #1
0
    def __call__(self, context):
        terms = []
        #terms.append(SimpleTerm('', '--NOVALUE--', _(u'option_category', default=u'Padrão')))
        try:
            id_form = int(context.forms_id)
        except:
            id_form = 0

        if id_form:
            fields = ModelsFormFields().get_Fields_ByIdForm(id_form)

            for campo in fields:
                  if campo.flag_ativo:
                      terms.append(SimpleTerm(campo.name_field, campo.name_field, _(u'option_category', default=campo.title)))

        return SimpleVocabulary(terms)
Exemple #2
0
    def update(self):
        self.back_list.append(u'my_observacao')
        #Checagem de permição na view
        # if not self.context.is_active_workflow:
        #     self.request.response.redirect('%s/' % self.context.absolute_url())        
        
        form = self.request.form
        
        submited = form.get('submited',False)

        if submited:
            fields = self.get_fields()
            if fields:
                models_fields = fields.find(ModelsFormFields.name_field.is_in([u'my_observacao']))

            RegistrationLoadForm().registration_processes(self, models_fields=models_fields)

            IStatusMessage(self.request).addStatusMessage(_(u"Pedido editado com sucesso."), "info")
            self.request.response.redirect('%s/my-pedidos' % self.context.absolute_url())
Exemple #3
0
    def update(self):
        #Checagem de permição na view
        # if not self.context.is_active_workflow:
        #     self.request.response.redirect('%s/' % self.context.absolute_url())        
        
        form = self.request.form
        
        submited = form.get('submited',False)

        if submited:

            if form.get('observacao_responsavel',False):
                fields = self.get_fields()
                if fields:
                    models_fields = fields.find(ModelsFormFields.name_field.is_in(self.back_list)).order_by(ModelsFormFields.ordenacao)

                RegistrationLoadForm().registration_processes(self, models_fields=models_fields)

                IStatusMessage(self.request).addStatusMessage(_(u"Pedido editado com sucesso."), "info")
                self.request.response.redirect('%s/list-pedidos' % self.context.absolute_url())
            else:
                self.error = 'Campo de Observação é obrigatorio para o historico da solicitação'
Exemple #4
0
class IFormularioPadrao(form.Schema):
    """ Formulario Padrão """

    form.mode(forms_id='hidden')
    forms_id = schema.TextLine(title=u"Form ID",
                              description=u"campo do formulario",
                              required=True)

    view_title = schema.Bool(title=_(u"Visualizar o Título"),
                                     description=_(u"Marque esta opção para visualizar o título do formulário."),
                                     default=True,
                                     required=False)

    text_messenger = RichText(title=_(u"Texto Para o topo do formulário"),
                                     description=_(u"Digite o texto que será mostrado no topo do formulario"),
                                     required=False)

    form.widget(acao_saida = CheckBoxFieldWidget)
    acao_saida = schema.Set(title=_(u"Ação de saída do formulário"),
                            description=_(u"Selecione uma ou mais ações que o formulário deve executar ao salvar"),# <br /> (Use a tecla control para seleciona mais de umvalor)."),
                            value_type=schema.Choice(source=ListExitForm()),
                            required=True)

    list_email = schema.Text(title=_(u"Lista de Email"),
                            description=_(u"Crie uma lista de e-mails dos destinatários que irão receber os dados do formulário <br /> (Digite um email por linha)."),
                            required=False)

    email_copia_remetente = schema.Bool(title=_(u"Cópia remetente"),
                                  description=_(u"Ativa o envio de uma cópia do formulário ao usuário solicitante."),
                                  required=False)

    email_remetente = schema.Choice(title=_(u"Email Destinatário"),
                                  description=_(u"Selecione um campo para destinatário do e-mail que irão receber os dados do formulário."),
                                  source=ListCamposForm(),
                                  required=False)

    email_padrao = schema.Choice(title=_(u"E-mail padrão"),
                                 description=_(u"Selecione um campo para remetente de e-mail, enviado pelo formulário"),
                                 source=ListCamposForm(),
                                 required=False)

    # Campos para referenciamento
    campo_label = schema.Choice(title=_(u"Campo para visualização"),
                                 description=_(u"Selecione um campo para ser utilizado na visualização destes dados em outro formulário"),
                                 source=ListCamposForm(),
                                 required=False)

    campo_chave = schema.Choice(title=_(u"Campo para relacionamento"),
                                 description=_(u"Selecione um campo para relacionado com outro formulário"),
                                 source=ListCamposForm(),
                                 required=False)

    acao_destino = schema.Choice(title=_(u"Ação de destino do formulário"),
                                 description=_(u"Selecione um destino para o formulário depois de realizar a ação"),
                                 source=ListDestinoForm(),
                                 required=True)

    doc_plone = RelationChoice(title=_(u"Enviar o usuário a um documento do plone"),
                               description=_(u"Selecione o objeto no portal para que o usuário seja direcionado após o formulário realizar a ação"),
                               source=ObjPathSourceBinder(review_state='published'),
                               required=False,)

    url = schema.TextLine(title=_(u"Redireciona o usuário para uma url especifica"),
                              description=_(u"Digite a url que o usuário será redirecionado após o formulário realizar a ação"),
                              default=u'http://',
                              required=False)

    #form.widget(parameto = TextLinesFieldWidget)
    parameto = schema.TextLine(title=_(u"Envia parâmetro a outro formulário ou página"),
                               description=_(u"Digite primeiro a url que o formulário será enviado junto com os parâmetros que serão cadastrado posteriormente"),
                               default=u'http://',
                               required=False)

    mensagem = schema.TextLine(title=_(u"Mensagem de aviso"),
                               description=_(u"Digite a mensagem que será mostrada ao usuário quando o formulário for salvo"),
                               required=False)

    mensagem_auxiliar = schema.TextLine(title=_(u"Mensagem Auxiliar"),
                               description=_(u"Digite a mensagem que será mostrada ao usuário quando o formulário for salvo"),
                               required=False)



    active_workflow = schema.Bool(title=_(u"Ativar sistema de controle do formulario"),
                                  description=_(u"Marque esta opção para controlar o fluxo das informações."),
                                  default=False,
                                  required=False)

    # form.widget(list_users_nivel2=widget.UsersAndGroupsSelectionFieldWidget)
    list_users_nivel2 = schema.Text(title=_(u"Lista do usuário que terão acesso ao nivel 2 do formulario"),
                                    description=_(u"Indique os usuario que poderão ver e editar os dados do formulario."),
                                    required=False,)

    # form.widget(list_users_nivel3=widget.UsersAndGroupsSelectionFieldWidget)
    list_users_nivel3 = schema.Text(title=_(u"Lista do usuário que terão acesso ao nivel 3 do formulario"),
                                    description=_(u"Indique os usuario que poderão ver e editar os dados do formulario."),
                                    required=False,)
    
    campo_workflow_table = schema.List(title=_(u"Campo para tabela de Solicitações"),
                                 description=_(u"Selecione os campos para ser utilizado na visualização da tabela de solicitações"),
                                 value_type=schema.Choice(source=ListCamposForm()),
                                 required=False)

    
    campo_filtro = schema.Choice(title=_(u"Campo para filtro"),
                                 description=_(u"Selecione um campo para filtrar os resultados do relatório"),
                                 source=ListCamposForm(),
                                 required=False)

    form.fieldset('advanced',
                  label=_(u"Configuração avançada"),
                  fields=['email_copia_remetente',
                          'email_remetente',
                          'email_padrao',
                          'campo_label',
                          'campo_chave']
                  )

    form.fieldset('solicitation',
                  label=_(u"Configuração Solicitação"),
                  fields=['active_workflow',
                          'campo_workflow_table',
                          'list_users_nivel2',
                          'list_users_nivel3']
                  )