app/soc/models/student_project.py
changeset 2573 f09f317769c4
parent 2183 4e036dcc79ba
child 2574 402e4a979e77
equal deleted inserted replaced
2572:1ad6d986be6d 2573:f09f317769c4
    73   #: A property containing a list of additional Mentors for this project
    73   #: A property containing a list of additional Mentors for this project
    74   additional_mentors = db.ListProperty(item_type=db.Key, default=[])
    74   additional_mentors = db.ListProperty(item_type=db.Key, default=[])
    75 
    75 
    76   #: The status of this project
    76   #: The status of this project
    77   #: accepted: This project has been accepted into the program
    77   #: accepted: This project has been accepted into the program
    78   #: mid_term_passed: This project has passed the midterm evaluation
    78   #: failed: This project has failed an evaluation.
    79   #: mid_term_failed: This project has failed the midterm evaluation
    79   #: completed: This project has completed the program successfully. This
    80   #: final_failed: This project has failed the final evaluation
    80   #:            should be set automatically when a program has been deemed
    81   #: passed: This project has completed the program successfully
    81   #:            finished.
       
    82   #: withdrawn: This project has been withdrawn from the program by a Program
       
    83   #:            Administrator or higher.
       
    84   #: invalid: This project has been marked as invalid because it was deleted
    82   status = db.StringProperty(required=True, default='accepted',
    85   status = db.StringProperty(required=True, default='accepted',
    83       choices=['accepted', 'mid_term_passed', 'mid_term_failed', 
    86       choices=['accepted', 'failed', 'completed', 'withdrawn', 'invalid'])
    84               'final_failed', 'passed'])
    87 
       
    88   #: List of all processed GradingRecords which state a pass for this project.
       
    89   #: This property can be used to determine how many evaluations someone has
       
    90   #: passed. And is also used to ensure that a GradingRecord has been
       
    91   #: processed.
       
    92   passed_evaluations = db.ListProperty(item_type=db.Key, default=[])
    85 
    93 
    86   #: Student which this project is from
    94   #: Student which this project is from
    87   student = db.ReferenceProperty(
    95   student = db.ReferenceProperty(
    88       reference_class=soc.models.student.Student,
    96       reference_class=soc.models.student.Student,
    89       required=True, collection_name='student_projects')
    97       required=True, collection_name='student_projects')