def Suite(self, succes): """ Après le téléchargement passe à la suite """ # Vérifie que le fichier est bien entier : tailleFichierDest = os.path.getsize(self.parent.fichierDest + "/" + self.parent.nomFichier) tailleFichierOrigin = self.parent.tailleFichier if tailleFichierDest != tailleFichierOrigin: succes = False # Téléchargement terminé if succes == True: # On attribue un ID unique qui permet de compter les téléchargements IDfichier = FonctionsPerso.GetIDfichier() if len(IDfichier) > 7: id = IDfichier[-7:] else: id = "" # On envoie le signal pour le compteur de téléchargement if "linux" in sys.platform: typeFichier = "linux" else: typeFichier = "windows" try: versionFichier = self.parent.versionFichier fichier = "%s-%s-%s" % (typeFichier, versionFichier, id) req = Request( "http://www.teamworks.ovh/fichiers/telechargement.cgi?fichier=%s" % fichier) handle = urlopen(req) except: pass # Si téléchargement complet, on passe à la page de fin de téléchargement sleep(1) # Attend 2 secondes avant de continuer self.parent.Active_page("page_fin_telechargement") else: # Vidage du rep Updates FonctionsPerso.VideRepertoireUpdates(forcer=True) # Le téléchargement n'est pas complet, demande à l'utilisateur de recommencer self.label_introduction.SetLabel( _(u"Le téléchargement n'est pas complet. Voulez-vous recommencer ?" )) self.bouton_ok.Show(True) self.Layout()
def __init__(self, parent): wx.Dialog.__init__(self, parent, -1, style=wx.DEFAULT_DIALOG_STYLE|wx.RESIZE_BORDER|wx.MAXIMIZE_BOX|wx.MINIMIZE_BOX) self.parent = parent self.installation = False intro = _(u"Vous pouvez ici télécharger et installer une mise à jour pour Noethys. Ces mises à jour vous permettent bien-sûr de gagner en stabilité et en fonctionnalités.") titre = _(u"Mise à jour du logiciel") self.ctrl_bandeau = CTRL_Bandeau.Bandeau(self, titre=titre, texte=intro, hauteurHtml=30, nomImage="Images/32x32/Telecharger.png") self.page_active = "" # Changer ci-dessous pour ne pas afficher la page de recherche (1ere page) self.afficher_page_recherche = True # Vider répertoire Updates FonctionsPerso.VideRepertoireUpdates(forcer=True) # Fichiers if "linux" in sys.platform : # Version Debian self.nomFichier = "master.zip" self.fichierURL = "https://github.com/Noethys/Noethys/archive/" + self.nomFichier else: # Version Windows self.nomFichier = "Noethys.exe" self.fichierURL = "http://www.noethys.com/fichiers/windows/" + self.nomFichier self.fichierDest = "" self.tailleFichier = 0 self.versionFichier = "" # Création du sizer self.sizer_base = wx.FlexGridSizer(rows=6, cols=1, vgap=0, hgap=0) self.sizer_base.Add(self.ctrl_bandeau, 1, wx.EXPAND, 0) self.sizer_base.AddGrowableCol(0) # Création des pages dans le sizer self.dictPages = {} self.Creation_page("page_recherche", Page_recherche) self.Creation_page("page_disponible", Page_disponible) self.Creation_page("page_telechargement", Page_telechargement) self.Creation_page("page_fin_telechargement", Page_fin_telechargement) self.Creation_page("page_installation", Page_installation) self.sizer_base.AddGrowableRow(1) self.sizer_base.AddGrowableRow(2) self.sizer_base.AddGrowableRow(3) self.sizer_base.AddGrowableRow(4) self.sizer_base.AddGrowableRow(5) # Chois de la page ouverte au démarrage self.Active_page("page_recherche") # Finalisation du sizer self.SetSizer(self.sizer_base) self.Layout() self.SetMinSize((480, 400)) self.SetSize((480, 400)) self.CentreOnScreen() self.Bind(wx.EVT_CLOSE, self.OnClose)