sphinx_django/sphinxcomment/models.py~
changeset 0 54f784230511
child 2 f5e18f8ed036
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/sphinx_django/sphinxcomment/models.py~	Thu Sep 30 11:36:30 2010 +0530
@@ -0,0 +1,47 @@
+from django.db import models
+
+# Create your models here.
+from django.db import models
+import sha
+
+mutable = True
+
+class Chapter(models.Model):
+    id = models.CharField('ID attribute', max_length=64, editable=False,
+                          primary_key=True)
+    chapter = models.CharField('Chapter ID', max_length=100, editable=False,
+                               db_index=True)
+
+
+    def __unicode__(self):
+        return self.id
+    
+class Comment(models.Model):
+    element = models.ForeignKey(Element,
+        help_text='ID of paragraph that was commented on')
+    comment = models.TextField(editable=mutable,
+        help_text='Text of submitted comment (please do not modify)')
+    submitter_name = models.CharField('Submitter', max_length=64,
+        help_text='Self-reported name of submitter (may be bogus)')
+    submitter_url = models.URLField('URL', blank=True, editable=mutable,
+        help_text='Self-reported URL of submitter (may be empty or bogus)')
+    ip = models.IPAddressField('IP address', editable=mutable,
+        help_text='IP address from which comment was submitted')
+    date = models.DateTimeField('date submitted', auto_now=True,
+                                auto_now_add=True)
+    reviewed = models.BooleanField(default=False, db_index=True,
+        help_text='Has this comment been reviewed by an author?')
+    hidden = models.BooleanField(default=False, db_index=True,
+        help_text='Has this comment been hidden from public display?')
+
+    def __unicode__(self):
+        return self.comment[:32]
+
+    def get_absolute_url(self):
+        s = sha.new()
+        s.update(repr(self.comment))
+        s.update(repr(self.submitter_name))
+        s.update(str(self.date))
+        return '/read/%s.html#%s?comment=%s&uuid=%s' % (
+            self.element.chapter, self.element.id, self.id, s.hexdigest()[:20]
+            )