translations
[enigma2.git] / lib / python / Components / NimManager.py
index 1ed6d03d3d0783e0b130c0a0f24a24fa6bfab5b3..741233d95e5781af278dd2577af818d26df2e1b0 100644 (file)
@@ -99,10 +99,11 @@ class nimSlot:
 
 class NimManager:
        class parseSats(ContentHandler):
-               def __init__(self, satList, satellites):
+               def __init__(self, satList, satellites, transponders):
                        self.isPointsElement, self.isReboundsElement = 0, 0
                        self.satList = satList
                        self.satellites = satellites
+                       self.transponders = transponders
        
                def startElement(self, name, attrs):
                        if (name == "sat"):
@@ -111,6 +112,21 @@ class NimManager:
                                tname = attrs.get('name',"")
                                self.satellites[tpos] = tname
                                self.satList.append( (tname, tpos) )
+                               self.parsedSat = int(tpos)
+                       elif (name == "transponder"):
+                               freq = int(attrs.get('frequency',""))
+                               sr = int(attrs.get('symbol_rate',""))
+                               pol = int(attrs.get('polarization',""))
+                               fec = int(attrs.get('fec_inner',""))
+                               if self.parsedSat in self.transponders:
+                                       pass
+                               else:
+                                       self.transponders[self.parsedSat] = [ ]
+
+                               self.transponders[self.parsedSat].append((0, freq, sr, pol, fec))
+
+       def getTransponders(self, pos):
+               return self.transponders[pos]
 
        def getConfiguredSats(self):
                return self.sec.getSatList()
@@ -120,10 +136,11 @@ class NimManager:
 
        def readSatsfromFile(self):
                self.satellites = { }
+               self.transponders = { }
 
                print "Reading satellites.xml"
                parser = make_parser()
-               satHandler = self.parseSats(self.satList, self.satellites)
+               satHandler = self.parseSats(self.satList, self.satellites, self.transponders)
                parser.setContentHandler(satHandler)
                parser.parse('/etc/tuxbox/satellites.xml')
 
@@ -159,13 +176,6 @@ class NimManager:
                                                break   
                nimfile.close()
                return self.nimType["empty/unknown"]
-               
-               if slotID == 0:
-                       return self.nimType["DVB-S"]
-               elif slotID == 1:
-                       return self.nimType["DVB-S"]
-               else:
-                       return self.nimType["empty/unknown"]
 
        def getNimName(self, slotID):
                #FIXME get it from /proc
@@ -187,7 +197,7 @@ class NimManager:
                self.satList = [ ]                                                                              
                                                                                                
                self.readSatsfromFile()                                                                         
-                                                                                               
+               
                self.nimCount = self.getNimSocketCount()
                
                self.nimslots = [ ]
@@ -204,9 +214,9 @@ class NimManager:
        def nimList(self):
                list = [ ]
                for slot in self.nimslots:
-                       nimText = "Socket " + ("A", "B", "C", "D")[slot.slotid] + ": "
+                       nimText = _("Socket ") + ("A", "B", "C", "D")[slot.slotid] + ": "
                        if slot.nimType == -1:
-                               nimText += "empty/unknown"
+                               nimText += _("empty/unknown")
                        else:
                                nimText += slot.name + " ("     
                                nimText += ("DVB-S", "DVB-C", "DVB-T")[slot.nimType] + ")"
@@ -276,8 +286,8 @@ def InitNimManager(nimmgr):
                nim = config.Nims[x]
                
                if slot.nimType == nimmgr.nimType["DVB-S"]:
-                       nim.configMode = configElement(cname + "configMode",configSelection, 0, ("Simple", "Advanced"));
-                       nim.diseqcMode = configElement(cname + "diseqcMode",configSelection, 2, ("Single", "Toneburst A/B", "DiSEqC A/B", "DiSEqC A/B/C/D", "Positioner"));
+                       nim.configMode = configElement(cname + "configMode",configSelection, 0, (_("Simple"), _("Advanced")));
+                       nim.diseqcMode = configElement(cname + "diseqcMode",configSelection, 2, (_("Single"), _("Toneburst A/B"), _("DiSEqC A/B"), _("DiSEqC A/B/C/D"), _("Positioner")));
                        nim.diseqcA = configElement(cname + "diseqcA",configSatlist, 192, nimmgr.satList);
                        nim.diseqcB = configElement(cname + "diseqcB",configSatlist, 130, nimmgr.satList);
                        nim.diseqcC = configElement(cname + "diseqcC",configSatlist, 0, nimmgr.satList);