diff options
Diffstat (limited to 'app/gtd/models.py')
-rw-r--r-- | app/gtd/models.py | 61 |
1 files changed, 46 insertions, 15 deletions
diff --git a/app/gtd/models.py b/app/gtd/models.py index e74c33a..f54ac3a 100644 --- a/app/gtd/models.py +++ b/app/gtd/models.py @@ -89,27 +89,59 @@ class GTDProject(models.Model): super(GTDProject, self).save(*args, **kwargs) -class NoteType(models.IntegerChoices): - ACTION = 0, ('action') - REMINDER = 1, ('reminder') - REFERENCE = 2, ('reference') - - class GTDNote(models.Model): title = models.CharField(max_length=200) + url = models.CharField(max_length=400, blank=True, null=True) body_markdown = models.TextField(null=True, blank=True) body_html = models.TextField(blank=True) date_completed = models.DateField(null=True, blank=True) date_created = models.DateTimeField(auto_now=True) - note_type = models.IntegerField(choices=NoteType.choices, default=NoteType.ACTION) + ACTION = 0 + REMINDER = 1 + REFERENCE = 2 + NOTE_TYPE = [ + (ACTION, 'Action'), + (REMINDER, 'Reminder'), + (REFERENCE, 'Reference'), + ] + note_type = models.SmallIntegerField(choices=NOTE_TYPE, default=ACTION) reminder = models.BigIntegerField(help_text="In days", null=True, blank=True) project = models.ForeignKey(GTDProject, on_delete=models.SET_NULL, null=True, blank=True) - STATUS = ( - (0, 'None'), - (1, 'Open'), - (2, 'Completed'), + NONE = 0 + OPEN = 1 + COMPLETED = 2 + STATUS= [ + (NONE, 'None'), + (OPEN, 'Open'), + (COMPLETED, 'Completed'), + ] + status = models.SmallIntegerField(choices=STATUS, default=OPEN) + CALLIN = 0 + ASKEDFOR = 1 + COMING = 2 + TESTING = 3 + DONE = 4 + LIVE = 5 + WORK_STATUS = ( + (CALLIN, 'Call In'), + (ASKEDFOR, 'Asked For'), + (COMING, 'Coming'), + (TESTING, 'Testing'), + (DONE, 'Done'), + (LIVE, 'Live'), ) - status = models.IntegerField(choices=STATUS, default=0) + work_status = models.SmallIntegerField(choices=WORK_STATUS, default=CALLIN) + NONE = 0 + GUIDE = 1 + REVIEW = 2 + RAVE = 3 + WORK_PLAN = ( + (GUIDE, 'For Guide'), + (REVIEW, 'Review'), + (RAVE, 'Rave/Rant'), + (NONE, 'No Plan'), + ) + work_plan = models.IntegerField(choices=WORK_PLAN, default=1) class Meta: ordering = ('-date_created',) @@ -118,13 +150,12 @@ class GTDNote(models.Model): def __str__(self): return self.title - def get_absolute_url(self, *args, **kwargs): - return reverse('gtd:note-edit', kwargs={"pk": self.pk}) - def save(self, *args, **kwargs): self.body_html = markdown_to_html(self.body_markdown) super(GTDNote, self).save(*args, **kwargs) + def get_absolute_url(self, *args, **kwargs): + return reverse('gtd:note-edit', kwargs={"pk": self.pk}) class PostType(models.IntegerChoices): REVIEW = 0, ('review') |