project/scipycon/talk/models.py
changeset 101 61fc4aa7a09a
parent 94 87e77aa18610
child 104 1a83a26756c3
--- a/project/scipycon/talk/models.py	Wed Jul 14 19:17:31 2010 +0530
+++ b/project/scipycon/talk/models.py	Wed Jul 14 19:34:12 2010 +0530
@@ -1,15 +1,13 @@
-# -*- coding: utf-8 -*-
-from __future__ import absolute_import
-
-#django
 from django.db import models
 from django.contrib.auth.models import User
 
-#tagging
 from tagging import register
 from tagging.fields import TagField
 from tagging.utils import parse_tag_input
 
+from project.scipycon.base import models as base_models
+
+
 DURATION_CHOICES = (
     ('10', 'Lightning Talk (10 mins)'),
     ('20', 'Short Talk (20 mins)'),
@@ -23,51 +21,37 @@
     ('advanced', 'advanced programmer'),
     )
 
-#TOPIC_CHOICES = (
-#    ('Core Python', 'Core Python'),
-#    ('Other implementations: Jython, IronPython, PyPy, and Stackless', 'Other implementations: Jython, IronPython, PyPy, and Stackless'),
-#    ('Python libraries and extensions', 'Python libraries and extensions'),
-#    ('Python 3k', 'Python 3k'),
-#    ('Databases', 'Databases'),
-#    ('Documentation', 'Documentation'),
-#    ('GUI Programming', 'GUI Programming'),
-#    ('Game Programming', 'Game Programming'),
-#    ('Network Programming', 'Network Programming'),
-#    ('Open Source Python projects', 'Open Source Python projects'),
-#    ('Packaging Issues', 'Packaging Issues'),
-#    ('Programming Tools', 'Programming Tools'),
-#    ('Project Best Practices', 'Project Best Practices'),
-#    ('Embedding and Extending', 'Embedding and Extending'),
-#    ('Science and Maths', 'Science and Maths'),
-#    ('Web-based Systems', 'Web-based Systems'),
-#)
+
+class Talk(base_models.Base):
+    """Defines talks at SciPy.in
+    """
+
+    slug = models.SlugField()
+
+    speaker = models.ForeignKey(User)
+
+    authors_bio = models.TextField()
+
+    contact = models.EmailField()
 
-class Talk(models.Model):
-    """Defines talks at *PyCon"""
-    slug = models.SlugField()
-    speaker = models.ForeignKey(User)
-    authors_bio = models.TextField()
-    contact = models.EmailField()
     title = models.CharField(max_length=1024)
+
     abstract = models.TextField()
-#    outline = models.TextField()
-    topic = models.CharField(max_length=255, 
-                             #choices=TOPIC_CHOICES,
-                             blank=True)
-#    topic_other = models.CharField(max_length=255, blank=True)
+
+    topic = models.CharField(max_length=255, blank=True)
+
     duration = models.CharField(max_length=3, choices=DURATION_CHOICES)
+
     audience = models.CharField(max_length=32, choices=AUDIENCE_CHOICES, blank=True)
-#    audience_other = models.CharField(max_length=128, blank=True)
+
     approved = models.BooleanField(default=False)
+
     submitted = models.DateTimeField(auto_now_add=True)
+
     last_mod = models.DateTimeField(auto_now=True)
-#    tags = TagField(blank=True)
 
     def __unicode__(self):
         return self.title
 
     def get_tag_list(self):
         return parse_tag_input(self.tags)
-
-# register(Talk) # saving talk failed - see:
-# http://code.google.com/p/django-tagging/issues/detail?id=152