Exemple #1
0
    def guardar_piloto(self, nombre):
        piloto = self.__piloto_activo
        if piloto != None:
            datos = {}
            if piloto.obtener_datos()["nombre"] != nombre:
                datos["nombre"] = nombre
            if self.__foto != None and piloto.obtener_datos()["foto"] != self.__foto:
                datos["foto"] = self.__foto
            if (self.__fecha_nacimiento != None) and (piloto.obtener_datos()["nacimiento"] != self.__fecha_nacimiento):
                datos["nacimiento"] = self.__fecha_nacimiento

            try:
                piloto.establecer_datos(datos)
                Facade.almacenar_temporada(self.__temporada_activa)
                self.actualizar_datos()
                return True
            except:
                return False
        else:
            try:
                piloto_nuevo = Facade.nuevo_piloto(nombre)
                datos = {}
                if self.__foto != None:
                    datos["foto"] = self.__foto
                if self.__fecha_nacimiento != None:
                    datos["nacimiento"] = self.__fecha_nacimiento
                if len(datos) > 0:
                    piloto_nuevo.establecer_datos(datos)
                self.__temporada_activa.anadir_piloto(piloto_nuevo)
                Facade.almacenar_temporada(self.__temporada_activa)
                self.actualizar_datos()
                return True
            except:
                return False
Exemple #2
0
    def guardar_gp(self, nombre, circuito, vueltas):
        gp = self.__gp_activo
        if gp != None:
            datos = {}
            if gp.obtener_datos()["nombre"] != nombre:
                datos["nombre"] = nombre
            if gp.obtener_datos()["lugar"] != circuito:
                datos["lugar"] = circuito
            if (self.__fecha_inicio != None) and (gp.obtener_datos()["inicio"] != self.__fecha_inicio):
                datos["inicio"] = self.__fecha_inicio
            if (self.__fecha_fin != None) and (gp.obtener_datos()["fin"] != self.__fecha_fin):
                datos["fin"] = self.__fecha_fin
            if gp.obtener_datos()["n_vueltas_gp"] != vueltas:
                datos["n_vueltas_gp"] = vueltas

            try:
                if datos != {}:
                    gp.establecer_datos(datos)
                    Facade.almacenar_temporada(self.__temporada_activa)
                self.actualizar_datos()
                return (True, False)
            except:
                return (False, False)
        else:
            try:
                gp_nuevo = Facade.nuevo_GP(nombre, circuito, self.__fecha_inicio, self.__fecha_fin, vueltas)
                self.__temporada_activa.anadir_GP(gp_nuevo)
                Facade.almacenar_temporada(self.__temporada_activa)
                self.actualizar_datos()
                return (True, True)
            except:
                return (False, True)
Exemple #3
0
 def guardar_reglas(self):
     datos = {"tabla_puntos": self.__reglas}
     temporada = self.__obtener_temporada()
     if temporada:
         try:
             temporada.establecer_datos(datos)
             Facade.almacenar_temporada(temporada)
             return True
         except:
             return False
     else:
         self.__reglas_temporada_sin_guardar = self.__reglas
         return True
Exemple #4
0
    def guardar_resultados(self, numero_vueltas, ventana_correcto):
        pilotos = self.get_temporada_activa().obtener_lista_pilotos()
        pilotos_ordenados = []
        for w in self.__widget_piloto:
            nombre_piloto = w[0].get_active_text()
            for p in pilotos:
                if p.obtener_datos()["nombre"] == nombre_piloto:
                    pilotos_ordenados.append(p)
        if self.__editando == "clasificacion":
            self.__obtener_gp_activo().establecer_parrilla(pilotos_ordenados)
        elif self.__editando == "carrera":
            self.__obtener_gp_activo().establecer_resultado(pilotos_ordenados, numero_vueltas)

        Facade.almacenar_temporada(self.get_temporada_activa())
        ventana_correcto.run()
Exemple #5
0
    def guardar_temporada(self, nombre, nombre_corto, pilotos_gp, pilotos_parrilla):
        temporada_a_actualizar = None
        for t in self.__temporadas:
            if t.obtener_datos()["nombre_corto"] == nombre_corto:
                temporada_a_actualizar = t

        if temporada_a_actualizar != None:
            datos = {}
            if temporada_a_actualizar.obtener_datos()["nombre"] != nombre:
                datos["nombre"] = nombre
            if temporada_a_actualizar.obtener_datos()["nombre_corto"] != nombre_corto:
                datos["nombre_corto"] = nombre_corto
            if (self.__fecha_inicio != None) and (
                temporada_a_actualizar.obtener_datos()["inicio"] != self.__fecha_inicio
            ):
                datos["inicio"] = self.__fecha_inicio
            if (self.__fecha_fin != None) and (temporada_a_actualizar.obtener_datos()["fin"] != self.__fecha_fin):
                datos["fin"] = self.__fecha_fin
            if temporada_a_actualizar.obtener_datos()["n_pilotos_gp"] != pilotos_gp:
                datos["n_pilotos_gp"] = pilotos_gp
            if temporada_a_actualizar.obtener_datos()["n_pilotos_parrilla"] != pilotos_parrilla:
                datos["n_pilotos_parrilla"] = pilotos_parrilla

            try:
                temporada_a_actualizar.establecer_datos(datos)
                Facade.almacenar_temporada(temporada_a_actualizar)
                self.actualizar_datos()
                return True
            except:
                return False
        else:
            temporada_nueva = Facade.nueva_temporada(nombre, nombre_corto)
            datos = {}
            datos["inicio"] = self.__fecha_inicio
            datos["fin"] = self.__fecha_fin
            datos["n_pilotos_gp"] = pilotos_gp
            datos["n_pilotos_parrilla"] = pilotos_parrilla
            if self.__reglas_temporada_sin_guardar != []:
                datos["tabla_puntos"] = self.__reglas_temporada_sin_guardar
            temporada_nueva.establecer_datos(datos)
            Facade.almacenar_temporada(temporada_nueva)
            self.actualizar_datos()
            return True
Exemple #6
0

gp01.establecer_parrilla([ vettel, massa, alonso, hamilton, rosberg, webber, schumacher, button, kubica, sutil, barrichello, liuzzi, hulkenberg, delarosa, buemi, kobayashi, petrov, alguersuari, glock, trulli, kovalainen, digrassi, senna, chandhok ])
gp01.establecer_resultado([alonso, massa, hamilton, vettel, rosberg, schumacher, button, webber, liuzzi, barrichello, kubica, sutil, alguersuari, hulkenberg, kovalainen, buemi, trulli, delarosa, senna, glock, petrov, kobayashi, digrassi, chandhok], 49) 

gp02.establecer_parrilla([ kubica, massa, sutil, hamilton, rosberg, webber, schumacher, button, alonso, vettel, barrichello, liuzzi, hulkenberg, delarosa, buemi, kobayashi, petrov, alguersuari, glock, trulli, kovalainen, digrassi, senna, chandhok ])
gp02.establecer_resultado([alonso, massa, hamilton, vettel, rosberg, schumacher, button, webber, liuzzi, barrichello, kubica, sutil, alguersuari, hulkenberg, kovalainen, buemi, trulli, delarosa, senna, glock, petrov, kobayashi, digrassi, chandhok], 49)

gp03.establecer_parrilla([ rosberg, vettel, massa, hamilton, alonso, webber, schumacher, button, kubica, sutil, barrichello, liuzzi, hulkenberg, delarosa, buemi, kobayashi, petrov, alguersuari, glock, trulli, kovalainen, digrassi, senna, chandhok ])


trulli.fichar_por_equipo(virgin, datetime.date(2010, 3, 19))
digrassi.fichar_por_equipo(lotus, datetime.date(2010, 3, 19))


Facade.almacenar_temporada(temporada)


#
# Temporada 2009
#
inicio =  datetime.date(2009, 3, 12)
fin = datetime.date(2009, 11, 14)
temporada = Facade.nueva_temporada("Temporada 2009", "t_2009")
temporada.establecer_datos({'inicio': inicio, 'fin': fin, 'n_pilotos_parrilla': 24, 'n_pilotos_gp': 24, 'tabla_puntos': [25,18,15,12,10,8,6,4,1]})

nombre = "gp completo"
lugar = "Sakhir"
inicio = datetime.date(2009, 3, 12)
fin = datetime.date(2009, 3, 14)
n_vueltas = 49
Exemple #7
0
 def borrar_piloto(self):
     piloto = self.__piloto_activo
     self.__temporada_activa.eliminar_piloto(piloto)
     Facade.almacenar_temporada(self.__temporada_activa)
     self.actualizar_datos()
Exemple #8
0
 def borrar_gp(self):
     gp = self.__gp_activo
     self.__temporada_activa.eliminar_GP(gp)
     Facade.almacenar_temporada(self.__temporada_activa)
     self.actualizar_datos()