app/soc/models/program.py
changeset 911 efce8ee13b19
parent 849 c193ac0ef593
child 970 8b5611d5b053
equal deleted inserted replaced
910:384e55e48706 911:efce8ee13b19
    65       '<small><i>for example:</i></small><br>'
    65       '<small><i>for example:</i></small><br>'
    66       '<tt><b>GSoC 2009</b> is the <i>Google Summer of Code</i>,'
    66       '<tt><b>GSoC 2009</b> is the <i>Google Summer of Code</i>,'
    67       ' but in <u>2009</u>!</tt><br><br>'
    67       ' but in <u>2009</u>!</tt><br><br>'
    68       '<small><i>(rich text formatting is supported)</i></small>')
    68       '<small><i>(rich text formatting is supported)</i></small>')
    69   
    69   
       
    70   #: Required field storing application/tasks limit of the program.
       
    71   apps_tasks_limit = db.IntegerProperty(required=True,
       
    72       verbose_name=ugettext_lazy('Application/Tasks Limit'))
       
    73   apps_tasks_limit.example_text = ugettext_lazy(
       
    74       '<small><i>e.g.</i></small> '
       
    75       '<tt><b>20</b> is the student applications limit for <i>Google Summer '
       
    76       'of Code</i>, but <b>1</b> is the tasks limit that the student can work '
       
    77       'on at the same time during <i>GHOP</i></tt>')
       
    78 
       
    79   #: Required field storing slots limit of the program.
       
    80   slots = db.IntegerProperty(required=True,
       
    81       verbose_name=ugettext_lazy('Slots'))
       
    82   slots.example_text = ugettext_lazy(
       
    83       '<small><i>e.g.</i></small> '
       
    84       '<tt><b>500</b> might be an amount of slots for <i>Google Summer '
       
    85       'of Code</i>, which indicates how many students can be accepted '
       
    86       'to the program.<br>For <i>GHOP</i> this indicates how '
       
    87       'many tasks can be completed.</tt>')
       
    88 
    70   #: Required field storing the type of workflow this program has
    89   #: Required field storing the type of workflow this program has
    71   workflow = db.StringProperty(required=True,
    90   workflow = db.StringProperty(required=True,
    72       choices=['gsoc', 'ghop'],
    91       choices=['gsoc', 'ghop'],
    73       verbose_name= ugettext_lazy('Workflow type'))
    92       verbose_name= ugettext_lazy('Workflow type'))
    74   workflow.example_text = ugettext_lazy(
    93   workflow.example_text = ugettext_lazy(
    75       '<b><tt>Project-based</tt></b> for GSoC workflow type,<br>' 
    94       '<tt><b>Project-based</b> for GSoC workflow type,<br>' 
    76       ' <b><tt>Task-based</tt></b> for GHOP workflow type.')
    95       '<b>Task-based</b> for GHOP workflow type.</tt>')
    77 
    96 
    78   #: Required 1:1 relationship indicating the Program the Timeline
    97   #: Required 1:1 relationship indicating the Program the Timeline
    79   #: belongs to.
    98   #: belongs to.
    80   timeline = db.ReferenceProperty(reference_class=soc.models.timeline.Timeline,
    99   timeline = db.ReferenceProperty(reference_class=soc.models.timeline.Timeline,
    81                                  required=True, collection_name="program",
   100                                  required=True, collection_name="program",