app/projrev/models.py
changeset 37 e78a5483553e
parent 36 a7c525ec281a
child 38 3cb38edbe05f
--- a/app/projrev/models.py	Mon Aug 10 16:58:36 2009 +0530
+++ b/app/projrev/models.py	Mon Aug 10 17:18:07 2009 +0530
@@ -32,26 +32,26 @@
   """Model class for NME funded projects.
   """
 
-  LINE_ITEM_CHOICES = {
-      "NP": "NPTEL  phase II / III",
-      "PG": "PG Classes",
-      "UG": "UG Classes",
-      "VC": "Video content digitization, conversion,  chunking and dubbing CEC / IGNOU / NCERT / SIET / OTHERS",
-      "PE": "Provision of e-books and e-journals free to the learners",
-      "SQ": "Standardisation of quality assurance of contents & certification / automation of certification",
-      "DS": "Developing suitable pedagogical methods for various classes, intellectual calibers and research in e-learning",
-      "DL": "Development of language converter and translation tool kit",
-      "DR": "Development and realization of Virtual Reality Laboratories and supporting facilities for e-learning",
-      "DC": "Development of Certification & Testing Modules for Virtual Technological Universities & creation of VTU, multi media research and international programmes",
-      "ED": "Experimentation and Development of ultra low cost access devices for wider coverage of learners & their field trials",
-      "TT": "Talk to a teacher to provide a substitute for coaching for the economically poor students",
-      "DH": "Development of software controlled hardware programming for robotics other crucial areas",
-      "AD": "Adaptation & deployment of open source simulation packages equivalent to MATLAB, ORCAD etc.",
-      "DU": "Development of unified ERP system for Educational Institutions",
-      "PT": "Publicity & training of motivators & trainers to ensure full utilization of the systems by institutions & students. Teacher Empowerment 'B'",
-      "CC": "Conversion of available content in various regional languages",
-      "DV": "Development of Vocational Educational modules and use of haptic devices for education & training",
-      }
+  LINE_ITEM_CHOICES = [
+      ("NP", "NPTEL  phase II / III"),
+      ("PG", "PG Classes"),
+      ("UG", "UG Classes"),
+      ("VC", "Video content digitization, conversion,  chunking and dubbing CEC / IGNOU / NCERT / SIET / OTHERS"),
+      ("PE", "Provision of e-books and e-journals free to the learners"),
+      ("SQ", "Standardisation of quality assurance of contents & certification / automation of certification"),
+      ("DS", "Developing suitable pedagogical methods for various classes, intellectual calibers and research in e-learning"),
+      ("DL", "Development of language converter and translation tool kit"),
+      ("DR", "Development and realization of Virtual Reality Laboratories and supporting facilities for e-learning"),
+      ("DC", "Development of Certification & Testing Modules for Virtual Technological Universities & creation of VTU, multi media research and international programmes"),
+      ("ED", "Experimentation and Development of ultra low cost access devices for wider coverage of learners & their field trials"),
+      ("TT", "Talk to a teacher to provide a substitute for coaching for the economically poor students"),
+      ("DH", "Development of software controlled hardware programming for robotics other crucial areas"),
+      ("AD", "Adaptation & deployment of open source simulation packages equivalent to MATLAB, ORCAD etc."),
+      ("DU", "Development of unified ERP system for Educational Institutions"),
+      ("PT", "Publicity & training of motivators & trainers to ensure full utilization of the systems by institutions & students. Teacher Empowerment 'B'"),
+      ("CC", "Conversion of available content in various regional languages"),
+      ("DV", "Development of Vocational Educational modules and use of haptic devices for education & training"),
+      ]
 
   STATE_CHOICES = {
       "AN": "Andaman & Nicobar", 
@@ -684,7 +684,7 @@
 
   # Field containing the Line Item to which the project belongs to.
   line_item = models.CharField(max_length=256,
-                               choices=dict_tuple(LINE_ITEM_CHOICES))
+                               choices=LINE_ITEM_CHOICES)
   line_item.help_text = 'Select from one of the Line Items.'
 
   # Field containing the name of the institution working on the
@@ -728,15 +728,19 @@
     """Get the State name from its code.
     """
 
-    return cls.LINE_ITEM_CHOICES[code]
+    for index, value in cls.LINE_ITEM_CHOICES:
+      if index == code:
+        return value
+
+    return None
 
   @classmethod
   def getLineItemCode(cls, name):
     """Get the Line Item code from its name.
     """
 
-    for ln_code in cls.LINE_ITEM_CHOICES:
-      if cls.LINE_ITEM_CHOICES[ln_code] == name:
+    for ln_code, ln_name in cls.LINE_ITEM_CHOICES:
+      if ln_name == name:
         return ln_code
 
     return None
@@ -862,43 +866,44 @@
   #: Field containing the review value for this attribute.
   attribute1 = models.PositiveSmallIntegerField(
       choices=[(1, 1), (2, 2), (3, 3), (4, 4), (5, 5)])
-  attribute1.verbose_name = 'Feasibility of the proposed activity and the      '
-      'appropriateness of the time frame.'
+  attribute1.verbose_name = ('Feasibility of the proposed activity and the '
+      'appropriateness of the time frame.')
   
   attribute2 = models.PositiveSmallIntegerField(
       choices=[(1, 1), (2, 2), (3, 3), (4, 4), (5, 5)])
-  attribute1.verbose_name = 'Uniqueness/novelty/innovation of the said proposal'
+  attribute1.verbose_name = ('Uniqueness/novelty/innovation of the said '
+      'proposal')
 
   attribute3 = models.PositiveSmallIntegerField(
       choices=[(1, 1), (2, 2), (3, 3), (4, 4), (5, 5)])
-  attribute1.verbose_name = 'Scope for inter-institutional collaboration and   '
-      'development.'
+  attribute1.verbose_name = ('Scope for inter-institutional collaboration and '
+      'development.')
 
   attribute4 = models.PositiveSmallIntegerField(
       choices=[(1, 1), (2, 2), (3, 3), (4, 4), (5, 5)])
-  attribute1.verbose_name = 'The organisation of the programme to be carried   '
-      'out.'
+  attribute1.verbose_name = ('The organisation of the programme to be carried '
+      'out.')
 
   attribute5 = models.PositiveSmallIntegerField(
       choices=[(1, 1), (2, 2), (3, 3), (4, 4), (5, 5)])
-  attribute1.verbose_name = 'The details of the work as the outlined by the    '
-      'principal investigator(PI).'
+  attribute1.verbose_name = ('The details of the work as the outlined by the '
+      'principal investigator(PI).')
 
   attribute6 = models.PositiveSmallIntegerField(
       choices=[(1, 1), (2, 2), (3, 3), (4, 4), (5, 5)])
-  attribute1.verbose_name = 'Sufficiency of funds as requested by the PI.'
+  attribute1.verbose_name = ('Sufficiency of funds as requested by the PI.')
 
   attribute7 = models.PositiveSmallIntegerField(
       choices=[(1, 1), (2, 2), (3, 3), (4, 4), (5, 5)])
-  attribute1.verbose_name = 'Social impact/reach/spread of the outcome of the  '
-      'proposal.'
+  attribute1.verbose_name = ('Social impact/reach/spread of the outcome of the '
+      'proposal.')
 
   attribute8 = models.PositiveSmallIntegerField(
       choices=[(1, 1), (2, 2), (3, 3), (4, 4), (5, 5)])
-  attribute1.verbose_name = 'Contribution of the proposal to minimizing the    '
-      'digital divide in our country.'
+  attribute1.verbose_name = ('Contribution of the proposal to minimizing the '
+      'digital divide in our country.')
 
   attribute9 = models.PositiveSmallIntegerField(
       choices=[(1, 1), (2, 2), (3, 3), (4, 4), (5, 5)])
-  attribute1.verbose_name = 'Any other matter which is likely to affect the    '
-      'execution of the project(max 600 characters).'
\ No newline at end of file
+  attribute1.verbose_name = ('Any other matter which is likely to affect the '
+      'execution of the project(max 600 characters).')