remove currently unimplemented feature from parental control menu (remembering pin...
[enigma2.git] / lib / python / Screens / ChannelSelection.py
index 58c57f41c807149015ba6ab2e6c592ca45cb2630..ff2928ecf14d1dab2f6df9cf69a29b2bf52ad636 100644 (file)
@@ -79,7 +79,7 @@ class ChannelContextMenu(Screen):
                        if not inBouquetRootList:
                                if (csel.getCurrentSelection().flags & eServiceReference.flagDirectory) != eServiceReference.flagDirectory:
                                        if config.ParentalControl.configured.value:
-                                               if parentalControl.getProtectionLevel(csel.getCurrentSelection()) == -1:
+                                               if parentalControl.getProtectionLevel(csel.getCurrentSelection().toCompareString()) == -1:
                                                        menu.append((_("add to parental protection"), boundFunction(self.addParentalProtection, csel.getCurrentSelection())))
                                                else:
                                                        menu.append((_("remove from parental protection"), boundFunction(self.removeParentalProtection, csel.getCurrentSelection())))
@@ -139,14 +139,14 @@ class ChannelContextMenu(Screen):
                self.close()
 
        def addParentalProtection(self, service):
-               parentalControl.protectService(service)
+               parentalControl.protectService(service.toCompareString())
                self.close()
 
        def removeParentalProtection(self, service):
-               self.session.openWithCallback(boundFunction(self.pinEntered, service), PinInput, pinList = [config.ParentalControl.servicepin[0].value], title = _("Enter the service pin"), windowTitle = _("Change pin code"))
+               self.session.openWithCallback(boundFunction(self.pinEntered, service.toCompareString()), PinInput, pinList = [config.ParentalControl.servicepin[0].value], triesEntry = config.ParentalControl.retries.servicepin, title = _("Enter the service pin"), windowTitle = _("Change pin code"))
 
        def pinEntered(self, service, result):
-               if result[0]:
+               if result:
                        parentalControl.unProtectService(service)
                        self.close()
                else:
@@ -486,14 +486,14 @@ class ChannelSelectionEdit:
 MODE_TV = 0
 MODE_RADIO = 1
 
+# this makes it much simple to implement a selectable radio or tv mode :)
+service_types_tv = '1:7:1:0:0:0:0:0:0:0:(type == 1) || (type == 17) || (type == 195) || (type == 25)'
+service_types_radio = '1:7:2:0:0:0:0:0:0:0:(type == 2)'
+
 class ChannelSelectionBase(Screen):
        def __init__(self, session):
                Screen.__init__(self, session)
 
-               # this makes it much simple to implement a selectable radio or tv mode :)
-               self.service_types_tv = '1:7:1:0:0:0:0:0:0:0:(type == 1) || (type == 17) || (type == 195) || (type == 25)'
-               self.service_types_radio = '1:7:2:0:0:0:0:0:0:0:(type == 2)'
-
                self["key_red"] = Button(_("All"))
                self["key_green"] = Button(_("Satellites"))
                self["key_yellow"] = Button(_("Provider"))
@@ -576,13 +576,13 @@ class ChannelSelectionBase(Screen):
 
        def recallBouquetMode(self):
                if self.mode == MODE_TV:
-                       self.service_types = self.service_types_tv
+                       self.service_types = service_types_tv
                        if config.usage.multibouquet.value:
                                self.bouquet_rootstr = '1:7:1:0:0:0:0:0:0:0:(type == 1) FROM BOUQUET "bouquets.tv" ORDER BY bouquet'
                        else:
                                self.bouquet_rootstr = '%s FROM BOUQUET "userbouquet.favourites.tv" ORDER BY bouquet'%(self.service_types)
                else:
-                       self.service_types = self.service_types_radio
+                       self.service_types = service_types_radio
                        if config.usage.multibouquet.value:
                                self.bouquet_rootstr = '1:7:1:0:0:0:0:0:0:0:(type == 1) FROM BOUQUET "bouquets.radio" ORDER BY bouquet'
                        else:
@@ -956,7 +956,7 @@ class ChannelSelection(ChannelSelectionBase, ChannelSelectionEdit, ChannelSelect
        def setModeRadio(self):
                if self.revertMode is None and config.servicelist.lastmode.value == "tv":
                        self.revertMode = MODE_TV
-               if config.usage.e1like_radio_mode.value == "yes":
+               if config.usage.e1like_radio_mode.value:
                        self.history = self.history_radio
                        self.lastservice = config.radio.lastservice
                        self.lastroot = config.radio.lastroot
@@ -965,7 +965,7 @@ class ChannelSelection(ChannelSelectionBase, ChannelSelectionEdit, ChannelSelect
                        self.setMode()
 
        def __onCreate(self):
-               if config.usage.e1like_radio_mode.value == "yes":
+               if config.usage.e1like_radio_mode.value:
                        if config.servicelist.lastmode.value == "tv":
                                self.setModeTv()
                        else:
@@ -1134,7 +1134,7 @@ class ChannelSelection(ChannelSelectionBase, ChannelSelectionEdit, ChannelSelect
                self.revertMode = None
                self.close(None)
 
-from Screens.InfoBarGenerics import InfoBarEvent, InfoBarServiceName, InfoBarInstantRecord
+from Screens.InfoBarGenerics import InfoBarEvent, InfoBarServiceName, InfoBarInstantRecord, InfoBarRadioText
 
 class RadioInfoBar(Screen, InfoBarEvent, InfoBarServiceName, InfoBarInstantRecord):
        def __init__(self, session):
@@ -1144,7 +1144,7 @@ class RadioInfoBar(Screen, InfoBarEvent, InfoBarServiceName, InfoBarInstantRecor
                InfoBarInstantRecord.__init__(self)
                self["CurrentTime"] = Clock()
 
-class ChannelSelectionRadio(ChannelSelectionBase, ChannelSelectionEdit, ChannelSelectionEPG):
+class ChannelSelectionRadio(ChannelSelectionBase, ChannelSelectionEdit, ChannelSelectionEPG, InfoBarRadioText):
 
        ALLOW_SUSPEND = True
 
@@ -1152,6 +1152,7 @@ class ChannelSelectionRadio(ChannelSelectionBase, ChannelSelectionEdit, ChannelS
                ChannelSelectionBase.__init__(self, session)
                ChannelSelectionEdit.__init__(self)
                ChannelSelectionEPG.__init__(self)
+               InfoBarRadioText.__init__(self)
 
                config.radio = ConfigSubsection();
                config.radio.lastservice = ConfigText()