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)
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())
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'
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'] )