Browse Source

Cancela texto atualizador em caso de igualdade

pull/590/head
LeandroRoberto 9 years ago
parent
commit
b6186260fe
  1. 11
      sapl/compilacao/forms.py
  2. 22
      sapl/compilacao/views.py

11
sapl/compilacao/forms.py

@ -489,24 +489,26 @@ class DispositivoEdicaoBasicaForm(ModelForm):
if inst and inst.tipo_dispositivo.formato_variacao0 in [ if inst and inst.tipo_dispositivo.formato_variacao0 in [
TipoDispositivo.FNC8, TipoDispositivo.FNCN]: TipoDispositivo.FNC8, TipoDispositivo.FNCN]:
# remove edição do rótulo se o tipo de disp. for não numerável
if 'rotulo' in DispositivoEdicaoBasicaForm.Meta.fields: if 'rotulo' in DispositivoEdicaoBasicaForm.Meta.fields:
DispositivoEdicaoBasicaForm.Meta.fields.remove('rotulo') DispositivoEdicaoBasicaForm.Meta.fields.remove('rotulo')
for i in range(6): for i in range(6):
DispositivoEdicaoBasicaForm.Meta.fields.remove( DispositivoEdicaoBasicaForm.Meta.fields.remove(
'dispositivo%s' % i) 'dispositivo%s' % i)
elif editor_type == 'get_form_base': elif editor_type == 'get_form_base':
# remove edição do rótulo se a req do form vier do editor dinamico
if 'rotulo' in DispositivoEdicaoBasicaForm.Meta.fields: if 'rotulo' in DispositivoEdicaoBasicaForm.Meta.fields:
DispositivoEdicaoBasicaForm.Meta.fields.remove('rotulo') DispositivoEdicaoBasicaForm.Meta.fields.remove('rotulo')
for i in range(6): for i in range(6):
DispositivoEdicaoBasicaForm.Meta.fields.remove( DispositivoEdicaoBasicaForm.Meta.fields.remove(
'dispositivo%s' % i) 'dispositivo%s' % i)
else: else:
# adiciona campos de rótulo no formulário
if 'rotulo' not in DispositivoEdicaoBasicaForm.Meta.fields: if 'rotulo' not in DispositivoEdicaoBasicaForm.Meta.fields:
DispositivoEdicaoBasicaForm.Meta.fields.append('rotulo') DispositivoEdicaoBasicaForm.Meta.fields.append('rotulo')
for i in range(6): for i in range(6):
DispositivoEdicaoBasicaForm.Meta.fields.append( DispositivoEdicaoBasicaForm.Meta.fields.append(
'dispositivo%s' % i) 'dispositivo%s' % i)
# adiciona campos de rótulo no formulário
self.dispositivo0 = forms.IntegerField( self.dispositivo0 = forms.IntegerField(
min_value=0, min_value=0,
label=Dispositivo._meta.get_field('dispositivo0').verbose_name, label=Dispositivo._meta.get_field('dispositivo0').verbose_name,
@ -580,7 +582,12 @@ class DispositivoEdicaoBasicaForm(ModelForm):
self.texto_atualizador = forms.CharField( self.texto_atualizador = forms.CharField(
required=False, required=False,
label='', label='',
widget=forms.Textarea()) widget=forms.Textarea(),
help_text=_('Não havendo diferenças gráficas entre o '
'conteúdo que deve estar no Texto Original e '
'no Texto Alterador, não há necessidade '
'de duplicar a informação. A validação dos '
'negará a igualdade.'))
self.visibilidade = forms.ChoiceField( self.visibilidade = forms.ChoiceField(
label=Dispositivo._meta.get_field( label=Dispositivo._meta.get_field(
'visibilidade').verbose_name, 'visibilidade').verbose_name,

22
sapl/compilacao/views.py

@ -22,14 +22,16 @@ from django.views.generic.edit import (CreateView, DeleteView, FormView,
UpdateView) UpdateView)
from django.views.generic.list import ListView from django.views.generic.list import ListView
from sapl.compilacao.forms import (DispositivoDefinidorVigenciaForm, from sapl.compilacao.forms import (
DispositivoDefinidorVigenciaForm,
DispositivoEdicaoAlteracaoForm, DispositivoEdicaoAlteracaoForm,
DispositivoEdicaoBasicaForm, DispositivoEdicaoBasicaForm,
DispositivoEdicaoVigenciaForm, DispositivoEdicaoVigenciaForm,
DispositivoSearchModalForm, NotaForm, DispositivoSearchModalForm, NotaForm,
PublicacaoForm, TaForm, TextNotificacoesForm, PublicacaoForm, TaForm, TextNotificacoesForm,
TipoTaForm, VideForm) TipoTaForm, VideForm)
from sapl.compilacao.models import (Dispositivo, Nota, from sapl.compilacao.models import (
Dispositivo, Nota,
PerfilEstruturalTextoArticulado, Publicacao, PerfilEstruturalTextoArticulado, Publicacao,
TextoArticulado, TipoDispositivo, TipoNota, TextoArticulado, TipoDispositivo, TipoNota,
TipoPublicacao, TipoTextoArticulado, TipoVide, TipoPublicacao, TipoTextoArticulado, TipoVide,
@ -1038,10 +1040,10 @@ class TextEditView(TemplateView):
class ActionsCommonsMixin: class ActionsCommonsMixin:
def set_message(self, data, type, message): def set_message(self, data, _type, message):
data['message'] = { data['message'] = {
'type': "success", 'type': _type,
'value': str(_('Dispositivo alterado com sucesso.'))} 'value': str(message)}
return return
def get_json_for_refresh(self, dp, dpauto=None): def get_json_for_refresh(self, dp, dpauto=None):
@ -2082,8 +2084,10 @@ class DispositivoDinamicEditView(
d = Dispositivo.objects.get( d = Dispositivo.objects.get(
pk=self.kwargs['dispositivo_id']) pk=self.kwargs['dispositivo_id'])
texto = request.POST['texto'] texto = request.POST['texto'].strip()
texto_atualizador = request.POST['texto_atualizador'] texto_atualizador = request.POST['texto_atualizador'].strip()
texto_atualizador = texto_atualizador \
if texto != texto_atualizador else ''
visibilidade = request.POST['visibilidade'] visibilidade = request.POST['visibilidade']
# if d.texto != '': # if d.texto != '':
@ -2128,8 +2132,8 @@ class DispositivoDinamicEditView(
data = {'pk': d.pk data = {'pk': d.pk
if not d_texto or not d.texto else 0, 'pai': [d.pk, ]} if not d_texto or not d.texto else 0, 'pai': [d.pk, ]}
self.set_message(data, 'success', str( self.set_message(data, 'success',
_('Dispositivo alterado com sucesso.'))) _('Dispositivo alterado com sucesso.'))
return JsonResponse(data, safe=False) return JsonResponse(data, safe=False)

Loading…
Cancel
Save