diff options
| -rw-r--r-- | ishtar_common/forms.py | 1 | ||||
| -rw-r--r-- | ishtar_common/models.py | 3 | ||||
| -rw-r--r-- | ishtar_common/templatetags/window_field.py | 17 | ||||
| -rw-r--r-- | ishtar_common/wizards.py | 2 | 
4 files changed, 18 insertions, 5 deletions
| diff --git a/ishtar_common/forms.py b/ishtar_common/forms.py index 3ecec9b06..eec66e1a6 100644 --- a/ishtar_common/forms.py +++ b/ishtar_common/forms.py @@ -116,6 +116,7 @@ JSON_VALUE_TYPES_FIELDS = {      'I': (forms.IntegerField, None),      'F': (forms.FloatField, None),      'D': (DateField, None), +    'B': (forms.NullBooleanField, None),      'C': (widgets.Select2DynamicField, None),  } diff --git a/ishtar_common/models.py b/ishtar_common/models.py index 1656b1e64..07b4002ff 100644 --- a/ishtar_common/models.py +++ b/ishtar_common/models.py @@ -997,6 +997,7 @@ JSON_VALUE_TYPES = (      ('T', _(u"Text")),      ('LT', _(u"Long text")),      ('I', _(u"Integer")), +    ('B', _(u"Boolean")),      ('F', _(u"Float")),      ('D', _(u"Date")),      ('C', _(u"Choices")), @@ -1073,7 +1074,7 @@ class JsonData(models.Model):                  else:                      value = None                      break -            if not value: +            if value is None:                  continue              if type(value) in (list, tuple):                  value = u" ; ".join([unicode(v) for v in value]) diff --git a/ishtar_common/templatetags/window_field.py b/ishtar_common/templatetags/window_field.py index db57add4a..f1db8cf48 100644 --- a/ishtar_common/templatetags/window_field.py +++ b/ishtar_common/templatetags/window_field.py @@ -1,8 +1,9 @@  import os  from django import template -from django.conf import settings -from django.utils.translation import ugettext_lazy as _ +from django.utils.translation import ugettext as _ +from django.utils.text import mark_safe +  from ishtar_common.templatetags.link_to_window import link_to_window  register = template.Library() @@ -10,8 +11,16 @@ register = template.Library()  @register.inclusion_tag('ishtar/blocks/window_field.html')  def field(caption, data, pre_data='', post_data='', li=False, size=None): -    if data in (True, False): -        data = _(unicode(data)) +    if data is True: +        data = mark_safe( +            u'<i class="text-success fa fa-check" title="{}"></i>'.format( +                _(u"Yes")) +        ) +    elif data is False: +        data = mark_safe( +            u'<i class="text-danger fa fa-times" title="{}"></i>'.format( +                _(u"No")) +        )      # fix bad conversion      if data == 'None':          data = "" diff --git a/ishtar_common/wizards.py b/ishtar_common/wizards.py index 5a1ab5843..5cbc857c3 100644 --- a/ishtar_common/wizards.py +++ b/ishtar_common/wizards.py @@ -1246,6 +1246,8 @@ class Wizard(IshtarWizard):                      value = value[json_key]                  if value:                      initial[key] = value +                elif value is False: +                    initial[key] = 'False'          for base_field in c_form.base_fields.keys():              value = obj | 
