From ece075e9485767ca429c06ae0938424fe56643e9 Mon Sep 17 00:00:00 2001 From: David Taylor Date: Fri, 14 Aug 2015 17:16:38 +0300 Subject: [PATCH] Made activity stream more useful for form changes --- RIGS/versioning.py | 6 ++++++ rigForms/models.py | 9 ++++++--- 2 files changed, 12 insertions(+), 3 deletions(-) diff --git a/RIGS/versioning.py b/RIGS/versioning.py index 6d524fc0..830e8893 100644 --- a/RIGS/versioning.py +++ b/RIGS/versioning.py @@ -49,6 +49,12 @@ def model_compare(oldObj, newObj, excluded_keys=[]): return True return False + @property + def json(self): + if "JSON" in self.field.description: + return True + return False + @property def linebreaks(self): if isinstance(self.field, TextField): diff --git a/rigForms/models.py b/rigForms/models.py index 62ca9cd0..e8cfc7ab 100644 --- a/rigForms/models.py +++ b/rigForms/models.py @@ -14,6 +14,9 @@ from RIGS import versioning from django.template import Context,Template from django.core.urlresolvers import reverse_lazy +class JSONField(models.TextField): + description = "String representing a JSON Schema" + @reversion.register class Type(models.Model, RevisionMixin): name = models.CharField(max_length=255, blank=False, null=False) @@ -34,8 +37,8 @@ class Schema(models.Model, RevisionMixin): start_at = models.DateTimeField() - schema = models.TextField(blank=False, null=False, default="{}") - layout = models.TextField(blank=False, null=False, default="[]") + schema = JSONField(blank=False, null=False, default="{}") + layout = JSONField(blank=False, null=False, default="[]") comment = models.CharField(max_length=255) @@ -76,7 +79,7 @@ class Form(models.Model, RevisionMixin): event = models.ForeignKey('RIGS.Event', related_name='forms', blank=False) schema = models.ForeignKey('Schema', related_name='forms', blank=False) - data = models.TextField(blank=False, null=False, default="{}") + data = JSONField(blank=False, null=False, default="{}") @property def renderedSchema(self):