def install(self): if len(self.devices) == 0: return index = self["menu"].getIndex() if index == None: index = 0 if len(self.devices[index].getPackage()) == 0 or smstack.checkIfPending(self.devices[index].getPackage()): return if fileExists("/usr/lib/opkg/info/%s.control" % self.devices[index].getPackage()): smstack.add(SMStack.REMOVE, self.devices[index].getPackage()) self.devices[index].setStatus(2) else: smstack.add(SMStack.UPDATE, "") api = SAPCL() firmwares = api.getUsbFirmwares(self.devices[index].getPackage()) for firmware in firmwares["firmwares"]: if not fileExists("/usr/lib/opkg/info/%s.control" % firmware["firmware-name"]): smstack.add(SMStack.INSTALL, firmware["firmware-name"]) smstack.add(SMStack.INSTALL_WITH_REBOOT, self.devices[index].getPackage()) self.devices[index].setStatus(3) self.drawList()
def msgboxCb(self, result): if result == 0: smstack.add(SMStack.UPDATE, "") api = SAPCL() firmwares = api.getUsbFirmwares(self.device.getPackage()) for firmware in firmwares["firmwares"]: if not fileExists("/usr/lib/opkg/info/%s.control" % firmware["firmware-name"]): smstack.add(SMStack.INSTALL, firmware["firmware-name"]) smstack.add(SMStack.INSTALL_WITH_REBOOT, self.device.getPackage()) self.device.setStatus(3) # mark as installed # if necessary open usbdevices view found = False for dialog in self.session.dialog_stack: if isinstance(dialog, UsbDevices): found = True break if not found: self.session.open(UsbDevices) elif result == 1: self.device.setStatus(1) # mark as "ask again" elif result == 2: self.device.setStatus(2) # mark as "never ask again" if self.callback: self.callback(self)
def load(self, idVendor, idProduct, nocache = False): filename = "%s/%d:%d.cache" % (self.confdir, idVendor, idProduct) ret = {} if fileExists(filename) and not nocache: cachefile = open(filename, 'rb') ret = pickle.load(cachefile) cachefile.close() ret["cached"] = True else: api = SAPCL() ret = api.getUsbDevice(idVendor, idProduct) if len(ret["devices"]) > 0: ret["devices"][0]["status"] = 0 cachefile = open(filename, 'wb') pickle.dump(ret, cachefile) cachefile.close() ret["cached"] = False return ret
def autoSendCrashLogs(session, id, arg): if not config.sifteam.cloud.crashlogs.value: return api = SAPCL() files = os.listdir("/hdd/") if not files: return for file in files: try: if file[:14] != "sifteam_crash_" or file[-4:] != ".log" or file[-9:] == "_sent.log": continue buff = open("/hdd/" + file).read() api.sendCrashLog(buff) os.rename("/hdd/" + file, "/hdd/" + file.replace(".log", "_sent.log")) except Exception, e: pass
def autoSendCrashLogs(session, id, arg): if not config.sifteam.cloud.crashlogs.value: return api = SAPCL() files = os.listdir("/hdd/") if not files: return for file in files: try: if file[:14] != "sifteam_crash_" or file[-4:] != ".log" or file[ -9:] == "_sent.log": continue buff = open("/hdd/" + file).read() api.sendCrashLog(buff) os.rename("/hdd/" + file, "/hdd/" + file.replace(".log", "_sent.log")) except Exception, e: pass
def executeRequest(self): api = SAPCL() return api.getCategories(0, True)
def executeRequest(self): api = SAPCL() self.settings = api.getChannelsSettings() return True
def executeRequest(self): api = SAPCL() return api.getCategories(0, True)