Exemple #1
0
 def __call__(self):
     handler = DataBaseHandler()
     tournament = handler.import_interrupted_tournament()
     if tournament.list_of_players:
         return LaunchTournament(tournament)
     else:
         return TournamentPlayersMenu(tournament)
Exemple #2
0
 def __call__(self):
     """ Exports actor on by one and updates the last id"""
     handler = DataBaseHandler()
     for actor in self.actors:
         handler.export_actor(actor)
     Actor.last_actor_id = "0" * ID_WIDTH
     view_validation_actors_exported(self.actors)
     return HomeMenuController()
Exemple #3
0
 def __call__(self):
     tournament_id = input_tournament_id()
     db = DataBaseHandler()
     tournament = db.find_tournament_by_id(tournament_id)
     if tournament:
         handler = TournamentReportMenu(tournament)
     else:
         report_no_tournament()
         handler = TournamentReportInput()
     return handler
Exemple #4
0
    def __call__(self):
        handler = DataBaseHandler()
        tournaments = handler.import_tournaments()
        report_tournaments_list(tournaments)
        self.menu.add("auto", "Obtenir un autre rapport", ReportMenu())
        self.menu.add("auto", "Retour au Menu principal", HomeMenuController())
        self.menu.add("q", "Quitter", Ending())

        user_choice = self.view.get_user_choice()
        return user_choice.next_menu
Exemple #5
0
    def __call__(self):
        handler = DataBaseHandler()
        num_actors, actors_list = handler.import_actors()
        report_actors_by_rank(actors_list)
        self.menu.add("auto", "Retour au choix du tri", ActorsList())
        self.menu.add("auto", "Obtenir un autre rapport", ReportMenu())
        self.menu.add("auto", "Retour au Menu principal", HomeMenuController())
        self.menu.add("q", "Quitter", Ending())

        user_choice = self.view.get_user_choice()
        return user_choice.next_menu
Exemple #6
0
 def __call__(self):
     handler = DataBaseHandler()
     Tournament.last_tournament_id = handler.import_last_tournament_id()
     view_tournament_creation()
     tournament_arguments = tournament_inputs()
     self.tournament = Tournament(tournament_arguments[0],
                                  tournament_arguments[1],
                                  tournament_arguments[2],
                                  tournament_arguments[3])
     self.tournament.start_date = datetime.date.today()
     return TournamentPlayersMenu(self.tournament)
Exemple #7
0
 def __call__(self):
     """
     It calls the display of imports.
     The imported players fulfill the class attribute Actors.actors.
     The database table is cleared after the import.
     """
     handler = DataBaseHandler()
     num_actors, actors = handler.import_actors()
     view_validation_actors_imported(actors)
     for actor in actors:
         Actors.actors[actor.actor_id] = actor
     actors_table = handler.database.table("actors")
     actors_table.truncate()
     return self.next_menu()
Exemple #8
0
 def __call__(self):
     if not self.tournament or self.tournament.finished:
         view_import_no_tournament()
         return HomeMenuController()
     num_round = len(self.tournament.rounds)
     if num_round == 0:
         view_launch_tournament(self.tournament)
     if num_round == 4:
         view_tournament_final(self.tournament)
         self.tournament.end_tournament()
         database = DataBaseHandler()
         database.export_finished_tournament(self.tournament)
         return HomeMenuController()
     else:
         self.tournament.init_round(num_round)
         view_round_matches(self.tournament.rounds[num_round])
         winners = input_match_results(self.tournament.rounds[num_round])
         self.tournament.register_round_results(num_round, winners)
         view_round_matches(self.tournament.rounds[num_round])
         view_players_rank(self.tournament.list_of_players)
         return TournamentPause(self.tournament)
Exemple #9
0
    def __call__(self):
        actor_id = input_actor_id()
        database = DataBaseHandler()
        actor = {}
        if not database.import_actor(
                actor_id) and actor_id not in Actors.actors:
            view_no_actor_id()
        else:
            if actor_id in Actors.actors:
                actor = Actors.actors[actor_id]
            elif database.import_actor(actor_id):
                actor = database.import_actor(actor_id)
            view_validation_new_actor(actor)
            new_rank = input_actor_new_rank()
            actor.rank = new_rank
            Actors.actors[actor.actor_id] = actor
            view_validation_new_actor(actor)

        self.menu.add("auto", "Modifier le classement d'un autre joueur",
                      ActorsRank(self.next_menu))
        self.menu.add("auto", "Retour", self.next_menu)

        user_choice = self.view.get_user_choice()
        return user_choice.next_menu
Exemple #10
0
 def __init__(self, tournament):
     self.tournament = tournament
     handler = DataBaseHandler()
     handler.export_interrupted_tournament(self.tournament)