Created basic working client UI using ExtJS.
[~jspiros/reader.git] / models.py
index 28adb66..1da45f9 100644 (file)
--- a/models.py
+++ b/models.py
@@ -5,17 +5,32 @@ from django.contrib.auth.models import User
 class Feed(models.Model):
        url = models.URLField()
        title = models.CharField(max_length=255)
+       link = models.URLField(blank=True, null=True)
        updated = models.DateTimeField()
+       etag = models.CharField(max_length=255, blank=True, null=True)
+       modified = models.DateTimeField(blank=True, null=True)
+       alive = models.BooleanField(default=True)
+       
+       def __unicode__(self):
+               return u'%s <%s>' % (self.title, self.url)
 
 
 class Entry(models.Model):
        feed = models.ForeignKey(Feed, related_name='entries')
        uri = models.CharField(max_length=255)
        title = models.CharField(max_length=255)
+       link = models.URLField(blank=True, null=True)
        published = models.DateTimeField()
        updated = models.DateTimeField()
-       summary = models.TextField()
-       content = models.TextField()
+       summary = models.TextField(blank=True, null=True)
+       content = models.TextField(blank=True, null=True)
+       
+       class Meta:
+               verbose_name_plural = 'entries'
+               ordering = ['-published']
+       
+       def __unicode__(self):
+               return u'%s <%s>' % (self.title, self.feed)
 
 
 class Subscription(models.Model):
@@ -25,4 +40,20 @@ class Subscription(models.Model):
        
        @property
        def title(self):
-               return self.custom_title if self.custom_title else self.feed.title
\ No newline at end of file
+               return self.custom_title if self.custom_title else self.feed.title
+       
+       def __unicode__(self):
+               return u'%s <%s>' % (self.user, self.feed)
+
+
+class UserEntry(models.Model):
+       user = models.ForeignKey(User, related_name='reader_userentries')
+       entry = models.ForeignKey(Entry, related_name='userentries')
+       read = models.BooleanField(default=False)
+       
+       class Meta:
+               verbose_name = 'user entry relationship'
+               verbose_name_plural = 'user entry relationships'
+       
+       def __unicode__(self):
+               return u'%s <%s>' % (self.user, self.entry)
\ No newline at end of file