def order_sports(self): options = { "Name": (self.all_sports, "name"), "Registered members": (self.all_sports, "members"), "Back": (self.back,) } menu = Menu("Order by", options) name, val = menu.get_input() self.next(*val)
def selected_group(self, group): info = self.ui.get_info(group) options = { "See registered members": self.group_members, "Back": self.back } menu = Menu(info, options) desc, function = menu.get_input() return self.next(function, group)
def member_menu(self, message=""): options = { "See all members": self.order_members, "Search members": self.member_search, "Add new member": self.add_member, "Go to main menu": self.main_menu, "Undo" if message else "Back": self.back } menu = Menu(message + "Member menu", options) val, function = menu.get_input() self.next(function)
def main_menu(self): options = { "Members": self.member_menu, "Sports": self.sport_menu, "Back": self.back, "Save": self.save, "Save & Quit": self.quit } menu = Menu("Main menu", options) val, function = menu.get_input() self.next(function)
def order_members(self): options = { "Name": (self.all_members, "name"), "Phone": (self.all_members, "phone"), "Email": (self.all_members, "email"), "Year of birth": (self.all_members, "year_of_birth"), "Age": (self.all_members, "age"), "Registered sports": (self.all_members, "sports"), "Back": (self.back,) } menu = Menu("Order by:", options) name, val = menu.get_input() self.next(*val)
def sport_menu(self, message=""): options = { "See all sports": (self.order_sports,), "Search sports": (self.sport_search,), "Add new sport": (self.add_sport,), "See sport groups": (self.search_results, self.group_repo, self.group_repo, None, "sport"), "Go to main menu": (self.main_menu,), "Undo" if message else "Back": (self.back,) } menu = Menu(message + "Sport menu", options) description, val = menu.get_input() self.next(*val)
def selected_sport(self, sport: Sport, update=False, update_message=""): message = self.ui.get_info(sport) options = { "Update this sport": (self.update_sport, sport), "Delete this sport": (self.delete_sport, sport), "See members registered for this sport": (self.sport_members, sport), "See groups for this sport": (self.sport_groups, sport), "Create group for this sport": (self.add_group, sport), "Remove group for this sport": (self.delete_group, sport), "Go to Sport menu": (self.sport_menu,), "Undo" if update else "Back": (self.back,), } menu = Menu(update_message + message, options) key, val = menu.get_input() self.next(*val)
def selected_member(self, member: Member, update=False, update_message=""): message = self.ui.get_info(member) options = { "Update this member": (self.update_member, member), "Delete this member": (self.delete_member, member), "See sports this member is registered in": (self.member_sports, member), "See groups this member is registered in": (self.member_groups, member), "Register this member for a sport": (self.register_member, member), "Register this member for a group in registered sport": (self.register_for_group, member), "Go to Member menu": (self.member_menu,), "Undo" if update else "Back": (self.back,), "Unregister this member from a sport": (self.unregister_member, member), "Unregister this member from a sport group": (self.unregister_group_member, member), } menu = Menu(update_message + message, options) key, val = menu.get_input() self.next(*val)