annotate membermap/models.py @ 1179:55eb3620aa6c

Store page updates.
author Brian Neal <bgneal@gmail.com>
date Sat, 13 Apr 2019 15:01:42 -0500
parents f0ac48aa8c64
children
rev   line source
gremmie@1 1 """
gremmie@1 2 Models for the member map application.
gremmie@1 3 """
bgneal@266 4 import datetime
gremmie@1 5 from django.db import models
gremmie@1 6 from django.contrib.auth.models import User
gremmie@1 7
bgneal@153 8 from core.markup import site_markup
gremmie@1 9
bgneal@153 10
gremmie@1 11 class MapEntry(models.Model):
gremmie@1 12 """Represents a user's entry on the map."""
gremmie@1 13 user = models.ForeignKey(User)
gremmie@1 14 location = models.CharField(max_length=255)
gremmie@1 15 lat = models.FloatField()
gremmie@1 16 lon = models.FloatField()
gremmie@1 17 message = models.TextField(blank=True)
bgneal@266 18 html = models.TextField(blank=True)
bgneal@266 19 date_updated = models.DateTimeField()
gremmie@1 20
gremmie@1 21 def __unicode__(self):
bgneal@266 22 return u'Map entry for %s' % self.user.username
gremmie@1 23
gremmie@1 24 class Meta:
gremmie@1 25 ordering = ('-date_updated', )
gremmie@1 26 verbose_name_plural = 'map entries'
gremmie@1 27
bgneal@182 28 def save(self, *args, **kwargs):
bgneal@1064 29 self.html = kwargs.pop('html', '')
bgneal@1024 30 if not self.html and self.message:
bgneal@1024 31 self.html = site_markup(self.message)
bgneal@266 32 self.date_updated = datetime.datetime.now()
bgneal@182 33 super(MapEntry, self).save(*args, **kwargs)
gremmie@1 34