diff -r 1ad6d986be6d -r f09f317769c4 app/soc/models/student_project.py --- a/app/soc/models/student_project.py Wed Jul 08 11:50:02 2009 +0200 +++ b/app/soc/models/student_project.py Wed Jul 08 15:44:54 2009 +0200 @@ -75,13 +75,21 @@ #: The status of this project #: accepted: This project has been accepted into the program - #: mid_term_passed: This project has passed the midterm evaluation - #: mid_term_failed: This project has failed the midterm evaluation - #: final_failed: This project has failed the final evaluation - #: passed: This project has completed the program successfully + #: failed: This project has failed an evaluation. + #: completed: This project has completed the program successfully. This + #: should be set automatically when a program has been deemed + #: finished. + #: withdrawn: This project has been withdrawn from the program by a Program + #: Administrator or higher. + #: invalid: This project has been marked as invalid because it was deleted status = db.StringProperty(required=True, default='accepted', - choices=['accepted', 'mid_term_passed', 'mid_term_failed', - 'final_failed', 'passed']) + choices=['accepted', 'failed', 'completed', 'withdrawn', 'invalid']) + + #: List of all processed GradingRecords which state a pass for this project. + #: This property can be used to determine how many evaluations someone has + #: passed. And is also used to ensure that a GradingRecord has been + #: processed. + passed_evaluations = db.ListProperty(item_type=db.Key, default=[]) #: Student which this project is from student = db.ReferenceProperty(