ignore short name brakets in parental control edit list
[enigma2.git] / lib / python / Screens / ParentalControlSetup.py
index 77d592d88cd6f099f24f2355cfa86a70b37a2b1c..944fc6a2f5e3d3585651878b3d1a844a095637ff 100644 (file)
@@ -8,6 +8,7 @@ from Components.ParentalControl import parentalControl
 from Screens.ChoiceBox import ChoiceBox
 from Screens.MessageBox import MessageBox
 from Screens.InputBox import InputBox, Input, PinInput
+from Screens.ChannelSelection import service_types_tv
 from Tools.Directories import resolveFilename, SCOPE_CONFIG
 from Tools.BoundFunction import boundFunction
 from ServiceReference import ServiceReference
@@ -162,17 +163,19 @@ class ParentalControlEditor(Screen):
        
        def readServiceList(self):
                serviceHandler = eServiceCenter.getInstance()
-               self.service_types_tv = '1:7:1:0:0:0:0:0:0:0:(type == 1) || (type == 17) || (type == 195) || (type == 25)'
-               refstr = '%s ORDER BY name' % (self.service_types_tv)
+               refstr = '%s ORDER BY name' % (service_types_tv)
                self.root = eServiceReference(refstr)
                
                self.servicesList = {}
                
                list = serviceHandler.list(self.root)
                if list is not None:
-                       services = list.getContent("CRN", True) #(servicecomparestring, eServiceRef, name)
+                       services = list.getContent("CN", True) #(servicecomparestring, name)
                        for s in services:
-                               key = s[2].lower()[0]
+                               if s[1][0]=='\xc2' and s[1][1]=='\x86': # ignore shortname brackets
+                                       key = s[1].lower()[2]
+                               else:
+                                       key = s[1].lower()[0]
                                if key < 'a' or key > 'z':
                                        key = '&'
                                #key = str(key)
@@ -180,8 +183,6 @@ class ParentalControlEditor(Screen):
                                        self.servicesList[key] = []
                                self.servicesList[key].append(s)
 
-               print self.servicesList
-
        def chooseLetter(self):
                print "choose letter"
                list = []
@@ -201,7 +202,7 @@ class ParentalControlEditor(Screen):
                        self.currentLetter = result[1]
                        self.list = []
                        for x in self.servicesList[result[1]]:
-                               self.list.append(ParentalControlEntryComponent(x[1], x[2], parentalControl.getProtectionLevel(x[1]) != -1))
+                               self.list.append(ParentalControlEntryComponent(x[0], x[1], parentalControl.getProtectionLevel(x[0]) != -1))
                        self.servicelist.setList(self.list)                     
 
 class ParentalControlChangePin(Screen, ConfigListScreen, ProtectedScreen):