MCPcopy Create free account
hub / github.com/PlayOnLinux/POL-POM-4 / POLWeb

Class POLWeb

python/mainwindow.py:49–127  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

47
48# This thread manage updates
49class POLWeb(threading.Thread):
50 def __init__(self):
51 threading.Thread.__init__(self)
52 self.sendToStatusBarStr = ""
53 self.sendAlertStr = None
54 self.Gauge = False
55 self.WebVersion = ""
56 self.Show = False
57 self.perc = -1
58 self.updating = True
59
60 def sendToStatusBar(self, message, gauge):
61 self.sendToStatusBarStr = message
62 self.Gauge = gauge
63 self.Show = True
64
65 def sendPercentage(self, n):
66 self.perc = n
67
68 def sendAlert(self, message):
69 self.sendAlertStr = message
70
71 def LastVersion(self):
72 if (os.environ["POL_OS"] == "Mac"):
73 fichier_online = "version_mac"
74 elif (os.environ["POL_OS"] == "FreeBSD"):
75 fichier_online = "version_freebsd"
76 else:
77 fichier_online = "version2"
78 return os.popen(
79 os.environ["POL_WGET"] + ' "' + os.environ["SITE"] + '/' + fichier_online + '.php?v=' + os.environ[
80 "VERSION"] + '" -T 30 -O-', 'r').read()
81
82 def real_check(self):
83 self.WebVersion = self.LastVersion()
84
85 if (self.WebVersion == ""):
86 self.sendToStatusBar(
87 _('{0} website is unavailable. Please check your connection').format(os.environ["APPLICATION_TITLE"]),
88 False)
89 else:
90 self.sendToStatusBar(_("Refreshing {0}").format(os.environ["APPLICATION_TITLE"]), True)
91 self.sendPercentage(0)
92 self.updating = True
93 exe = ['bash', Variables.playonlinux_env + "/bash/pol_update_list"]
94
95 p = subprocess.Popen(exe, stdout=subprocess.PIPE, bufsize=1, universal_newlines=True,
96 preexec_fn=lambda: os.setpgid(os.getpid(), os.getpid()))
97
98 for line in iter(p.stdout.readline, ''):
99 try:
100 self.sendPercentage(int(line))
101 except ValueError:
102 pass
103
104 self.updating = False
105 if (playonlinux.VersionLower(os.environ["VERSION"], self.WebVersion)):
106 self.sendToStatusBar(_('An updated version of {0} is available').format(

Callers 1

__init__Method · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected