app/soc/models/program.py
changeset 849 c193ac0ef593
parent 771 0b1beae179f5
child 911 efce8ee13b19
equal deleted inserted replaced
848:07fd6a603c24 849:c193ac0ef593
    36 
    36 
    37   #: Required field storing name of the group.
    37   #: Required field storing name of the group.
    38   name = db.StringProperty(required=True,
    38   name = db.StringProperty(required=True,
    39       verbose_name=ugettext_lazy('Name'))
    39       verbose_name=ugettext_lazy('Name'))
    40   name.help_text = ugettext_lazy('Complete, formal name of the program.')
    40   name.help_text = ugettext_lazy('Complete, formal name of the program.')
    41   name.example_text = ugettext_lazy('Google Summer of Code 2009')
    41   name.example_text = ugettext_lazy(
       
    42       '<small><i>e.g.</i></small> <tt>Google Summer of Code 2009</tt>')
    42 
    43 
    43   #: Required field storing short name of the group.
    44   #: Required field storing short name of the group.
    44   #: It can be used for displaying group as sidebar menu item.
    45   #: It can be used for displaying group as sidebar menu item.
    45   short_name = db.StringProperty(required=True,
    46   short_name = db.StringProperty(required=True,
    46       verbose_name=ugettext_lazy('Short name'))
    47       verbose_name=ugettext_lazy('Short name'))
    47   short_name.help_text = ugettext_lazy('Short name used for sidebar menu')
    48   short_name.help_text = ugettext_lazy('Short name used for sidebar menu')
    48   short_name.example_text = ugettext_lazy('GSoC 2009')
    49   short_name.example_text = ugettext_lazy(
       
    50       '<small><i>e.g.</i></small> <tt>GSoC 2009</tt>')
    49 
    51 
    50   #: Optional field used to relate it to other programs
    52   #: Optional field used to relate it to other programs
    51   #: For example, GSoC would be a group label for GSoC2008/GSoC2009
    53   #: For example, GSoC would be a group label for GSoC2008/GSoC2009
    52   group_label = db.StringProperty(
    54   group_label = db.StringProperty(
    53       verbose_name=ugettext_lazy('Group label'))
    55       verbose_name=ugettext_lazy('Group label'))
    54   group_label.help_text = ugettext_lazy(
    56   group_label.help_text = ugettext_lazy(
    55       'Optional name used to relate this program to others.')
    57       'Optional name used to relate this program to others.')
    56   group_label.example_text = ugettext_lazy('GSoC')
    58   group_label.example_text = ugettext_lazy(
       
    59       '<small><i>e.g.</i></small> <tt>GSoC</tt>')
    57 
    60 
    58   #: Required field storing description of the group.
    61   #: Required field storing description of the group.
    59   description = db.TextProperty(required=True,
    62   description = db.TextProperty(required=True,
    60       verbose_name=ugettext_lazy('Description'))
    63       verbose_name=ugettext_lazy('Description'))
    61   description.example_text = ugettext_lazy('This is the program for GSoC 2009')
    64   description.example_text = ugettext_lazy(
       
    65       '<small><i>for example:</i></small><br>'
       
    66       '<tt><b>GSoC 2009</b> is the <i>Google Summer of Code</i>,'
       
    67       ' but in <u>2009</u>!</tt><br><br>'
       
    68       '<small><i>(rich text formatting is supported)</i></small>')
    62   
    69   
    63   #: Required field storing the type of workflow this program has
    70   #: Required field storing the type of workflow this program has
    64   workflow = db.StringProperty(required=True,
    71   workflow = db.StringProperty(required=True,
    65       choices=['gsoc', 'ghop'],
    72       choices=['gsoc', 'ghop'],
    66       verbose_name= ugettext_lazy('Workflow type'))
    73       verbose_name= ugettext_lazy('Workflow type'))
    67   workflow.example_text = ugettext_lazy('Project-based for GSoC workflow type, ' 
    74   workflow.example_text = ugettext_lazy(
    68       'task-based for GHOP workflow type')
    75       '<b><tt>Project-based</tt></b> for GSoC workflow type,<br>' 
       
    76       ' <b><tt>Task-based</tt></b> for GHOP workflow type.')
    69 
    77 
    70   #: Required 1:1 relationship indicating the Program the Timeline
    78   #: Required 1:1 relationship indicating the Program the Timeline
    71   #: belongs to.
    79   #: belongs to.
    72   timeline = db.ReferenceProperty(reference_class=soc.models.timeline.Timeline,
    80   timeline = db.ReferenceProperty(reference_class=soc.models.timeline.Timeline,
    73                                  required=True, collection_name="program",
    81                                  required=True, collection_name="program",