improved display of courses without course codes.
authorgfawcett <gfawcett@6d9bc8c9-1ec2-4278-b937-99fde70a366f>
Sun, 8 Mar 2009 01:49:15 +0000 (01:49 +0000)
committergfawcett <gfawcett@6d9bc8c9-1ec2-4278-b937-99fde70a366f>
Sun, 8 Mar 2009 01:49:15 +0000 (01:49 +0000)
git-svn-id: svn://svn.open-ils.org/ILS-Contrib/servres/trunk@144 6d9bc8c9-1ec2-4278-b937-99fde70a366f

conifer/syrup/models.py
conifer/syrup/views.py
conifer/templates/my_courses.xhtml

index f76f292..d9599cb 100644 (file)
@@ -147,7 +147,7 @@ class Department(m.Model):
 
 class Course(m.Model):
     """An offering of a course."""
-    # some courses may be ad-hoc and have no code?
+    # some courses may be ad-hoc and have no code.
     code = m.CharField(max_length=64, blank=True, null=True)
     department = m.ForeignKey(Department)
     term = m.ForeignKey(Term)
@@ -186,6 +186,12 @@ class Course(m.Model):
     def __unicode__(self):
         return self.code or self.title
 
+    def list_display(self):
+        if self.code:
+            return '%s: %s [%s]' % (self.term, self.title, self.code)
+        else:
+            return '%s: %s' % (self.term, self.title)
+
     def items(self):
         return self.item_set.all()
 
index 4412c52..1c3a658 100644 (file)
@@ -164,7 +164,7 @@ if COURSE_CODE_LIST:
     choices = [(a,a) for a in course_list]
     choices.sort()
     empty_label = u'---------'
-    choices.insert(0, (0, empty_label))
+    choices.insert(0, ('', empty_label))
     NewCourseForm.base_fields['code'].widget = Select(
         choices = choices)
     NewCourseForm.base_fields['code'].empty_label = empty_label
index a796ae5..c68e718 100644 (file)
@@ -18,7 +18,7 @@ title = _('Welcome to Syrup E-Reserves!')
   ?>
   <p py:if="not my_courses">You are not part of any courses at this time.</p>
   <p py:for="course in my_courses" style="font-size: large;">
-    <a href="${course.id}/">${course.term}: ${course.code}: ${course.title}</a>
+    <a href="${course.id}/">${course.list_display()}</a>
   </p>
   <p><a href="new/">Add a new course</a></p>
   <div class="gap"/>