Exemplo n.º 1
0
class TopCasesPage(Page):
    def __init__(self, master):
        Page.__init__(self)
        self.controller = TrondelagController()
        self.__set_layout()

    def __city_info(self, name=None, rank=0):
        city_data = self.controller.city_data(name=name, rank=rank)

        name = city_data['navn']
        name_label = Label(self.frame, text=name)
        name_label.pack()

        infected = city_data['smittet']
        dead = city_data['dode']
        stats_label = Label(self.frame, text="{}/{}".format(infected, dead))
        stats_label.pack()

    def __set_layout(self):
        header_label = Label(self.frame, text="COVID-19 Trøndelag")

        self.__city_info(rank=0)
        self.__city_info(rank=1)
        self.__city_info(rank=2)

        last_update = self.controller.last_updated()
        update_label = Label(self.frame,
                             text=last_update.strftime("%b %d. %Y %H:%M:%S"))
        update_label.pack()
Exemplo n.º 2
0
class COVIDTerminal:
    def __init__(self):
        self.controller = TrondelagController()

    def peek(self, rank: int = 3):
        for i in range(rank):
            city_data = self.controller.city_data(rank=i)
            print("\t", city_data['navn'])
            print("Smittede: {}".format(city_data['smittet']))
            print("Døde: {}".format(city_data['dode']))
            print("------------------------------")
        print("Sist oppdatert: {}".format(
            self.controller.last_updated().strftime("%d. %b %Y -- %H:%M:%S")))
Exemplo n.º 3
0
class TrondheimPage(Page):
    def __init__(self, master):
        Page.__init__(self)
        self.controller = TrondelagController()
        self.__set_layout()

    def __city_info(self, name=None, rank=0):
        city_data = self.controller.city_data(name=name, rank=rank)

        name = city_data['navn']
        name_label = Label(
            self.frame,
            text=name,
            fg='white',
            bg='black',
            font=("Helvetica", 50),
        )
        name_label.pack()

        infected = city_data['smittet']
        dead = city_data['dode']
        self.stats_label = Label(self.frame,
                                 text="{}/{}".format(infected, dead),
                                 fg='white',
                                 bg='black',
                                 font=("Helvetica", 100))
        self.stats_label.place(relx=0.5, rely=0.5, anchor='center')
        self.stats_label.after(
            300000, lambda: self.__update_info(name=name, rank=rank))

    def __set_layout(self):
        self.__city_info('Trondheim')

        last_update = self.controller.last_updated()
        self.update_label = Label(self.frame,
                                  text=last_update.strftime("%H:%M:%S"),
                                  fg='white',
                                  bg='black',
                                  font=("Helvetica", 30))
        self.update_label.pack(side=BOTTOM)

    def __update_info(self, name, rank):
        self.controller.update_model()
        city_data = self.controller.city_data(name=name, rank=rank)

        infected = city_data['smittet']
        dead = city_data['dode']
        self.stats_label.configure(text="{}/{}".format(infected, dead))

        last_update = self.controller.last_updated()
        self.update_label.configure(text=last_update.strftime("%H:%M:%S"))

        self.stats_label.after(
            300000, lambda: self.__update_info(name=name, rank=rank))
Exemplo n.º 4
0
 def __init__(self, master):
     Page.__init__(self)
     self.controller = TrondelagController()
     self.__set_layout()
Exemplo n.º 5
0
 def __init__(self):
     self.controller = TrondelagController()