예제 #1
0
    def get(self):
        quarter = SettingModel.quarter()
        year = SettingModel.year()
        user = users.get_current_user()
        student = StudentModel.get_student_by_email(quarter, year,
                                                    user.email())
        assgn_num = 0

        cancel = int(self.request.get('cancel'))
        partnership = ndb.Key(urlsafe=self.request.get('p')).get()

        if cancel:
            assgn_num = partnership.assignment_number

        if cancel:
            # refine implementation of cancellation eventually
            for s in partnership.members:
                partnership = PartnershipModel.cancel_partnership(
                    s, partnership)
            if not partnership.active:
                EvalModel.cancel_evals_for_partnership(partnership)
            time.sleep(0.1)
            return self.redirect('/partner?message=' +
                                 MessageModel.partnership_cancelled(assgn_num))
        else:
            PartnershipModel.uncancel_partnership(student, partnership)
            time.sleep(0.1)
            return self.redirect('/partner?message=' +
                                 MessageModel.partnership_uncancelled())