diff options
| author | Stefan Pluecken <stefan.pluecken@multimedia-labs.de> | 2006-10-10 03:00:49 +0000 |
|---|---|---|
| committer | Stefan Pluecken <stefan.pluecken@multimedia-labs.de> | 2006-10-10 03:00:49 +0000 |
| commit | 01abec53c6856c24666967ee51d25d09fc6b8863 (patch) | |
| tree | 19d7bbbd3ce91544c36ba2fc38af83c877d82b01 /Navigation.py | |
| parent | ce7847e4311c165e5441ac2dbb0d9cdbe95b68b9 (diff) | |
| download | enigma2-01abec53c6856c24666967ee51d25d09fc6b8863.tar.gz enigma2-01abec53c6856c24666967ee51d25d09fc6b8863.zip | |
add parental control (still somehow buggy and some minor features missing... don't trust it
yet to protect your children)
Diffstat (limited to 'Navigation.py')
| -rw-r--r-- | Navigation.py | 17 |
1 files changed, 11 insertions, 6 deletions
diff --git a/Navigation.py b/Navigation.py index 7b615bbd..9ba0afc5 100644 --- a/Navigation.py +++ b/Navigation.py @@ -1,4 +1,6 @@ from enigma import * +from Components.ParentalControl import parentalControl +from Tools.BoundFunction import boundFunction import RecordTimer import NavigationInstance @@ -14,7 +16,7 @@ class Navigation: NavigationInstance.instance = self self.ServiceHandler = eServiceCenter.getInstance() - + import Navigation as Nav Nav.navcore = self @@ -25,13 +27,13 @@ class Navigation: self.currentlyPlayingService = None self.state = 0 self.RecordTimer = RecordTimer.RecordTimer() - + def callEvent(self, i): self.state = i != 1 for x in self.event: x(i) - def playService(self, ref): + def playService(self, ref, checkParentalControl = True): print "playing", ref and ref.toString() self.currentlyPlayingServiceReference = None self.currentlyPlayingService = None @@ -39,9 +41,12 @@ class Navigation: self.stopService() return 0 - if self.pnav and not self.pnav.playService(ref): - self.currentlyPlayingServiceReference = ref - return 0 + if not checkParentalControl or parentalControl.isServicePlayable(ref, boundFunction(self.playService, checkParentalControl = False)): + if self.pnav and not self.pnav.playService(ref): + self.currentlyPlayingServiceReference = ref + return 0 + else: + self.stopService() return 1 def getCurrentlyPlayingServiceReference(self): |
