self.l.setItemHeight(30)
def InterfaceEntryComponent(index,name,default,active ):
- res = [ (index) ]
- res.append(MultiContentEntryText(pos=(80, 5), size=(430, 25), font=0, text=name))
+ res = [
+ (index),
+ MultiContentEntryText(pos=(80, 5), size=(430, 25), font=0, text=name)
+ ]
num_configured_if = len(iNetwork.getConfiguredAdapters())
if num_configured_if >= 2:
if default is True:
Screen.__init__(self, session)
HelpableScreen.__init__(self)
- self.wlan_errortext = _("No working wireless networkadapter found.\nPlease verify that you have attached a compatible WLAN USB Stick and your Network is configured correctly.")
- self.lan_errortext = _("No working local networkadapter found.\nPlease verify that you have attached a network cable and your Network is configured correctly.")
+ self.wlan_errortext = _("No working wireless network adapter found.\nPlease verify that you have attached a compatible WLAN device and your network is configured correctly.")
+ self.lan_errortext = _("No working local network adapter found.\nPlease verify that you have attached a network cable and your network is configured correctly.")
self.oktext = _("Press OK on your remote control to continue.")
self.restartLanRef = None
self.adapters = [(iNetwork.getFriendlyAdapterName(x),x) for x in iNetwork.getAdapterList()]
- if len(self.adapters) == 0:
+ if not self.adapters:
self.onFirstExecBegin.append(self.NetworkFallback)
self["OkCancelActions"] = HelpableActionMap(self, "OkCancelActions",
{
- "cancel": (self.close, _("exit networkinterface list")),
+ "cancel": (self.close, _("exit network interface list")),
"ok": (self.okbuttonClick, _("select interface")),
})
self["ColorActions"] = HelpableActionMap(self, "ColorActions",
{
- "red": (self.close, _("exit networkinterface list")),
+ "red": (self.close, _("exit network interface list")),
})
self["DefaultInterfaceAction"] = HelpableActionMap(self, "ColorActions",
{
- "blue": (self.setDefaultInterface, [_("Set interface as default Interface"),_("* Only available if more then one interface is active.")] ),
+ "blue": (self.setDefaultInterface, [_("Set interface as default Interface"),_("* Only available if more than one interface is active.")] ),
})
self.list = []
if len(self.adapters) == 1:
self.onFirstExecBegin.append(self.okbuttonClick)
self.onClose.append(self.cleanup)
-
+
+
def updateList(self):
- iNetwork.getInterfaces()
self.list = []
default_gw = None
num_configured_if = len(iNetwork.getConfiguredAdapters())
def cleanup(self):
iNetwork.stopLinkStateConsole()
iNetwork.stopRestartConsole()
+ iNetwork.stopGetInterfacesConsole()
def restartLan(self):
iNetwork.restartNetwork(self.restartLanDataAvail)
"yellow": (self.remove, _("remove a nameserver entry")),
})
+ self["actions"] = NumberActionMap(["SetupActions"],
+ {
+ "ok": self.ok,
+ }, -2)
self.list = []
ConfigListScreen.__init__(self, self.list)
def createConfig(self):
self.nameservers = iNetwork.getNameserverList()
- self.nameserverEntries = []
-
- for nameserver in self.nameservers:
- self.nameserverEntries.append(NoSave(ConfigIP(default=nameserver)))
+ self.nameserverEntries = [ NoSave(ConfigIP(default=nameserver)) for nameserver in self.nameservers]
def createSetup(self):
self.list = []
-
- for i in range(len(self.nameserverEntries)):
- self.list.append(getConfigListEntry(_("Nameserver %d") % (i + 1), self.nameserverEntries[i]))
-
+
+ i = 1
+ for x in self.nameserverEntries:
+ self.list.append(getConfigListEntry(_("Nameserver %d") % (i), x))
+ i += 1
+
self["config"].list = self.list
self["config"].l.setList(self.list)
self.createSetup()
class AdapterSetup(Screen, ConfigListScreen, HelpableScreen):
- def __init__(self, session, iface,essid=None, aplist=None):
+ def __init__(self, session, networkinfo, essid=None, aplist=None):
Screen.__init__(self, session)
HelpableScreen.__init__(self)
self.session = session
- self.iface = iface
- self.essid = essid
- self.aplist = aplist
+ if isinstance(networkinfo, (list, tuple)):
+ self.iface = networkinfo[0]
+ self.essid = networkinfo[1]
+ self.aplist = networkinfo[2]
+ else:
+ self.iface = networkinfo
+ self.essid = essid
+ self.aplist = aplist
self.extended = None
self.applyConfigRef = None
self.finished_cb = None
self.oktext = _("Press OK on your remote control to continue.")
self.oldInterfaceState = iNetwork.getAdapterAttribute(self.iface, "up")
- #iNetwork.getInterfaces()
-
+
self.createConfig()
self["OkCancelActions"] = HelpableActionMap(self, "OkCancelActions",
{
- "cancel": (self.close, _("exit networkadapter setup menu")),
+ "cancel": (self.cancel, _("exit network adapter setup menu")),
"ok": (self.ok, _("select menu entry")),
})
self["ColorActions"] = HelpableActionMap(self, "ColorActions",
{
- "red": (self.cancel, _("exit networkadapter configuration")),
+ "red": (self.cancel, _("exit network adapter configuration")),
"blue": (self.KeyBlue, _("open nameserver configuration")),
})
self["VirtualKB"] = HelpableActionMap(self, "ColorActions",
{
- "green": (self.KeyGreen, [_("open virtual keyboard input help"),_("* Only available when entering hidden ssid or network key")] ),
+ "green": (self.KeyGreen, [_("open virtual keyboard input help"),_("* Only available when entering hidden SSID or network key")] ),
})
self["actions"] = NumberActionMap(["SetupActions"],
self.aps = self.w.getNetworkList()
if self.aps is not None:
print "[NetworkSetup.py] got Accespoints!"
- print self.aps
for ap in self.aps:
a = self.aps[ap]
if a['active']:
if a['essid'] == "":
a['essid'] = a['bssid']
- self.nwlist.append( a['essid'])
+ self.nwlist.append((a['essid'],a['essid']))
self.nwlist.sort(key = lambda x: x[0])
except:
- self.nwlist.append("No Networks found")
+ self.nwlist.append(("No Networks found",_("No Networks found")))
self.wsconfig = self.ws.loadConfig()
if self.essid is not None: # ssid from wlan scan
self.default = self.wsconfig['ssid']
if "hidden..." not in self.nwlist:
- self.nwlist.append("hidden...")
+ self.nwlist.append(("hidden...",_("hidden network")))
if self.default not in self.nwlist:
- self.nwlist.append(self.default)
-
+ self.nwlist.append((self.default,self.default))
config.plugins.wlan.essid = NoSave(ConfigSelection(self.nwlist, default = self.default ))
config.plugins.wlan.hiddenessid = NoSave(ConfigText(default = self.wsconfig['hiddenessid'], visible_width = 50, fixed_size = False))
if self.iface == "wlan0" or self.iface == "ath0" :
if self["config"].getCurrent() == self.hiddenSSID:
if config.plugins.wlan.essid.value == 'hidden...':
- self.session.openWithCallback(self.VirtualKeyBoardSSIDCallback, VirtualKeyBoard, title = (_("Enter WLAN networkname/SSID:")), text = config.plugins.wlan.essid.value)
+ self.session.openWithCallback(self.VirtualKeyBoardSSIDCallback, VirtualKeyBoard, title = (_("Enter WLAN network name/SSID:")), text = config.plugins.wlan.essid.value)
if self["config"].getCurrent() == self.encryptionKey:
self.session.openWithCallback(self.VirtualKeyBoardKeyCallback, VirtualKeyBoard, title = (_("Enter WLAN passphrase/key:")), text = config.plugins.wlan.encryption.psk.value)
iNetwork.deactivateInterface(self.iface)
iNetwork.writeNetworkConfig()
iNetwork.restartNetwork(self.applyConfigDataAvail)
- self.applyConfigRef = self.session.openWithCallback(self.applyConfigfinishedCB, MessageBox, _("Please wait while activating your network configuration..."), type = MessageBox.TYPE_INFO, enable_input = False)
+ self.applyConfigRef = self.session.openWithCallback(self.applyConfigfinishedCB, MessageBox, _("Please wait for activation of your network configuration..."), type = MessageBox.TYPE_INFO, enable_input = False)
else:
self.cancel()
if data is True:
num_configured_if = len(iNetwork.getConfiguredAdapters())
if num_configured_if >= 2:
- self.session.openWithCallback(self.secondIfaceFoundCB, MessageBox, _("Your network configuration has been activated.\nA second configured interface has been found.\n\nDo you want to disable the second networkinterface?"), default = True)
+ self.session.openWithCallback(self.secondIfaceFoundCB, MessageBox, _("Your network configuration has been activated.\nA second configured interface has been found.\n\nDo you want to disable the second network interface?"), default = True)
else:
if self.finished_cb:
- self.session.openWithCallback(self.finished_cb, MessageBox, _("Your network configuration has been activated."), type = MessageBox.TYPE_INFO, timeout = 10)
+ self.session.openWithCallback(lambda x : self.finished_cb(), MessageBox, _("Your network configuration has been activated."), type = MessageBox.TYPE_INFO, timeout = 10)
else:
self.session.openWithCallback(self.ConfigfinishedCB, MessageBox, _("Your network configuration has been activated."), type = MessageBox.TYPE_INFO, timeout = 10)
if data is False:
self.close('ok')
else:
- configuredInterfaces = configuredNetworkAdapters
+ configuredInterfaces = iNetwork.getConfiguredAdapters()
for interface in configuredInterfaces:
if interface == self.iface:
continue
self.applyConfig(True)
def ConfigfinishedCB(self,data):
- if data is True:
- self.close('ok')
+ if data is not None:
+ if data is True:
+ self.close('ok')
def cancel(self):
- iNetwork.setAdapterAttribute(self.iface, "up", self.oldInterfaceState)
- self.activateInterfaceEntry.value = self.oldInterfaceState
- if self.activateInterfaceEntry.value is False:
- iNetwork.deactivateInterface(self.iface)
- iNetwork.getInterfaces()
- self.close('cancel')
+ if self.oldInterfaceState is False:
+ iNetwork.deactivateInterface(self.iface,self.cancelCB)
+ else:
+ self.close('cancel')
+ def cancelCB(self,data):
+ if data is not None:
+ if data is True:
+ self.close('cancel')
+
def runAsync(self, finished_cb):
self.finished_cb = finished_cb
self.ok()
def cleanup(self):
iNetwork.stopLinkStateConsole()
- iNetwork.stopRestartConsole()
+
class AdapterSetupConfiguration(Screen, HelpableScreen):
def __init__(self, session,iface):
self.oktext = _("Press OK on your remote control to continue.")
self.reboottext = _("Your Dreambox will restart after pressing OK on your remote control.")
- self.errortext = _("No working wireless interface found.\n Please verify that you have attached a compatible WLAN device or enable you local network interface.")
+ self.errortext = _("No working wireless network interface found.\n Please verify that you have attached a compatible WLAN device or enable your local network interface.")
self["WizardActions"] = HelpableActionMap(self, "WizardActions",
{
"right": self.right,
}, -2)
- iNetwork.getInterfaces(self.updateStatusbar)
+ self.updateStatusbar()
self.onLayoutFinish.append(self.layoutFinished)
self.onClose.append(self.cleanup)
- self.onHide.append(self.cleanup)
def ok(self):
if self["menulist"].getCurrent()[1] == 'edit':
ifobj = Wireless(self.iface) # a Wireless NIC Object
self.wlanresponse = ifobj.getStatistics()
if self.wlanresponse[0] != 19:
- self.session.openWithCallback(self.AdapterSetupClosed, WlanStatus,self.iface)
+ self.session.openWithCallback(self.WlanStatusClosed, WlanStatus,self.iface)
else:
# Display Wlan not available Message
self.showErrorMessage()
if self.iface == 'wlan0' or self.iface == 'ath0':
try:
- from Plugins.SystemPlugins.WirelessLan.Wlan import Wlan
- w = Wlan(self.iface)
- stats = w.getStatus()
- if stats['BSSID'] == "00:00:00:00:00:00":
- self["statuspic"].setPixmapNum(1)
- else:
- self["statuspic"].setPixmapNum(0)
- self["statuspic"].show()
+ from Plugins.SystemPlugins.WirelessLan.Wlan import iStatus,Status
except:
self["statuspic"].setPixmapNum(1)
self["statuspic"].show()
+ else:
+ iStatus.getDataForInterface(self.iface,self.getInfoCB)
else:
- self.getLinkState(self.iface)
+ iNetwork.getLinkState(self.iface,self.dataAvail)
def doNothing(self):
pass
ifobj = Wireless(self.iface) # a Wireless NIC Object
self.wlanresponse = ifobj.getStatistics()
if self.wlanresponse[0] != 19:
- self.session.openWithCallback(self.AdapterSetupClosed, WlanStatus,self.iface)
+ self.session.openWithCallback(self.WlanStatusClosed, WlanStatus,self.iface)
else:
# Display Wlan not available Message
self.showErrorMessage()
else:
self.mainmenu = self.genMainMenu()
self["menulist"].l.setList(self.mainmenu)
- iNetwork.getInterfaces(self.updateStatusbar)
+ self.updateStatusbar()
else:
self.mainmenu = self.genMainMenu()
self["menulist"].l.setList(self.mainmenu)
- iNetwork.getInterfaces(self.updateStatusbar)
+ self.updateStatusbar()
+
+ def WlanStatusClosed(self, *ret):
+ if ret is not None and len(ret):
+ from Plugins.SystemPlugins.WirelessLan.Wlan import iStatus,Status
+ iStatus.stopWlanConsole()
+ self.mainmenu = self.genMainMenu()
+ self["menulist"].l.setList(self.mainmenu)
+ self.updateStatusbar()
def WlanScanClosed(self,*ret):
if ret[0] is not None:
self.session.openWithCallback(self.AdapterSetupClosed, AdapterSetup, self.iface,ret[0],ret[1])
else:
- self.session.openWithCallback(self.AdapterSetupClosed, AdapterSetup, self.iface,None,None)
-
+ from Plugins.SystemPlugins.WirelessLan.Wlan import iStatus,Status
+ iStatus.stopWlanConsole()
+ self.mainmenu = self.genMainMenu()
+ self["menulist"].l.setList(self.mainmenu)
+ self.updateStatusbar()
+
def restartLan(self, ret = False):
if (ret == True):
iNetwork.restartNetwork(self.restartLanDataAvail)
if data is True:
self.session.open(MessageBox, _("Finished restarting your network"), type = MessageBox.TYPE_INFO, timeout = 10, default = False)
- def getLinkState(self,iface):
- iNetwork.getLinkState(iface,self.dataAvail)
-
def dataAvail(self,data):
self.output = data.strip()
result = self.output.split('\n')
def cleanup(self):
iNetwork.stopLinkStateConsole()
-
+ iNetwork.stopDeactivateInterfaceConsole()
+ try:
+ from Plugins.SystemPlugins.WirelessLan.Wlan import iStatus,Status
+ except ImportError:
+ pass
+ else:
+ iStatus.stopWlanConsole()
+
+ def getInfoCB(self,data,status):
+ if data is not None:
+ if data is True:
+ if status is not None:
+ if status[self.iface]["acesspoint"] == "No Connection" or status[self.iface]["acesspoint"] == "Not-Associated" or status[self.iface]["acesspoint"] == False:
+ self["statuspic"].setPixmapNum(1)
+ else:
+ self["statuspic"].setPixmapNum(0)
+ self["statuspic"].show()
class NetworkAdapterTest(Screen):
def __init__(self, session,iface):
Screen.__init__(self, session)
self.iface = iface
self.oldInterfaceState = iNetwork.getAdapterAttribute(self.iface, "up")
- iNetwork.getInterfaces()
self.setLabels()
+ self.onClose.append(self.cleanup)
+ self.onHide.append(self.cleanup)
self["updown_actions"] = NumberActionMap(["WizardActions","ShortcutActions"],
{
def doStep3(self):
self["Networktext"].setForegroundColorNum(1)
+ self["Network"].setText(_("Please wait..."))
self.getLinkState(self.iface)
self["NetworkInfo_Text"].setForegroundColorNum(1)
self.steptimer = True
def getLinkState(self,iface):
if iface == 'wlan0' or iface == 'ath0':
try:
- from Plugins.SystemPlugins.WirelessLan.Wlan import Wlan
- w = Wlan(iface)
- stats = w.getStatus()
- if stats['BSSID'] == "00:00:00:00:00:00":
- self["Network"].setForegroundColorNum(1)
- self["Network"].setText(_("disconnected"))
- self["NetworkInfo_Check"].setPixmapNum(1)
- self["NetworkInfo_Check"].show()
- else:
- self["Network"].setForegroundColorNum(2)
- self["Network"].setText(_("connected"))
- self["NetworkInfo_Check"].setPixmapNum(0)
- self["NetworkInfo_Check"].show()
+ from Plugins.SystemPlugins.WirelessLan.Wlan import iStatus,Status
except:
self["Network"].setForegroundColorNum(1)
self["Network"].setText(_("disconnected"))
self["NetworkInfo_Check"].setPixmapNum(1)
self["NetworkInfo_Check"].show()
+ else:
+ iStatus.getDataForInterface(self.iface,self.getInfoCB)
else:
iNetwork.getLinkState(iface,self.LinkStatedataAvail)
self["NetworkInfo_Check"].show()
def NetworkStatedataAvail(self,data):
- print "DATA",data
if data <= 2:
self["IP"].setForegroundColorNum(2)
self["IP"].setText(_("confirmed"))
self.nextStepTimer.start(3000)
def DNSLookupdataAvail(self,data):
- print "DATA",data
if data <= 2:
self["DNS"].setForegroundColorNum(2)
self["DNS"].setText(_("confirmed"))
self["shortcutsyellow"].setEnabled(False)
self["updown_actions"].setEnabled(True)
self.activebutton = 6
-
-
\ No newline at end of file
+
+ def getInfoCB(self,data,status):
+ if data is not None:
+ if data is True:
+ if status is not None:
+ if status[self.iface]["acesspoint"] == "No Connection" or status[self.iface]["acesspoint"] == "Not-Associated" or status[self.iface]["acesspoint"] == False:
+ self["Network"].setForegroundColorNum(1)
+ self["Network"].setText(_("disconnected"))
+ self["NetworkInfo_Check"].setPixmapNum(1)
+ self["NetworkInfo_Check"].show()
+ else:
+ self["Network"].setForegroundColorNum(2)
+ self["Network"].setText(_("connected"))
+ self["NetworkInfo_Check"].setPixmapNum(0)
+ self["NetworkInfo_Check"].show()
+
+ def cleanup(self):
+ iNetwork.stopLinkStateConsole()
+ iNetwork.stopDNSConsole()
+ try:
+ from Plugins.SystemPlugins.WirelessLan.Wlan import iStatus,Status
+ except ImportError:
+ pass
+ else:
+ iStatus.stopWlanConsole()
+