summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ishtar_common/forms.py1
-rw-r--r--ishtar_common/models.py3
-rw-r--r--ishtar_common/templatetags/window_field.py17
-rw-r--r--ishtar_common/wizards.py2
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