def get_all_invites_for_pair(confirming, being_confirmed, active=True): # this method returns all invitations that involve BOTH members of a student pair return Invitation.query( ndb.OR(Invitation.invitee == confirming.key, Invitation.invitee == being_confirmed.key), ndb.OR(Invitation.invitor == being_confirmed.key, Invitation.invitor == confirming.key), Invitation.active == active, ).fetch()
def get_open_invitations_for_pair_for_assign(confirming, being_confirmed, assign_num): return Invitation.query( ndb.OR(Invitation.invitee == confirming.key, Invitation.invitee == being_confirmed.key), ndb.OR(Invitation.invitor == being_confirmed.key, Invitation.invitor == confirming.key), Invitation.assignment_number == assign_num, Invitation.active == True )
def get_all_invitations_involving_students_in_pair(confirming, being_confirmed, assign_num, active=True): # this method returns all invitations that involve AT LEAST ONE member of a student pair return Invitation.query( ndb.OR( ndb.OR( Invitation.invitor == confirming.key, Invitation.invitor == being_confirmed.key), ndb.OR( Invitation.invitee == confirming.key, Invitation.invitee == being_confirmed.key)), Invitation.assignment_number == assign_num, Invitation.active == active )
def get_all_invitations_involving_student(confirming): return Invitation.query( ndb.OR( Invitation.invitor == confirming.key, Invitation.invitee == confirming.key), )
def get_recvd_invites_by_student_and_assign(student, assign_num, active=True): return Invitation.query( Invitation.invitee == student.key, Invitation.assignment_number == assign_num, Invitation.active == active )