Merge commit 'dm/experimental' into test branch
[vuplus_dvbapp] / lib / python / Screens / DefaultWizard.py
old mode 100644 (file)
new mode 100755 (executable)
index 33a3d20..fd2e54f
@@ -1,21 +1,19 @@
 from Wizard import wizardManager
 from Screens.WizardLanguage import WizardLanguage
-from Tools.Directories import crawlDirectory, resolveFilename, SCOPE_DEFAULTDIR, SCOPE_DEFAULTPARTITIONMOUNTDIR, SCOPE_DEFAULTPARTITION
+from Tools.Directories import pathExists, resolveFilename, SCOPE_DEFAULTDIR, SCOPE_DEFAULTPARTITIONMOUNTDIR, SCOPE_DEFAULTPARTITION
 
 from Components.Pixmap import Pixmap, MovingPixmap
 from Components.config import config, ConfigBoolean, configfile, ConfigYesNo, getConfigListEntry
-from Components.DreamInfoHandler import DreamInfoHandler, InfoHandler, InfoHandlerParseError
+from Components.DreamInfoHandler import DreamInfoHandler
 from Components.PluginComponent import plugins
 from Plugins.Plugin import PluginDescriptor
-import os
+from os import system as os_system, path as os_path, mkdir
 
 config.misc.defaultchosen = ConfigBoolean(default = True)
 
-import xml.sax
-
 class DefaultWizard(WizardLanguage, DreamInfoHandler):
-       def __init__(self, session, silent = True):
-               DreamInfoHandler.__init__(self, self.statusCallback)
+       def __init__(self, session, silent = True, showSteps = False, neededTag = None):
+               DreamInfoHandler.__init__(self, self.statusCallback, neededTag = neededTag)
                self.silent = silent
                self.setDirectory()
         
@@ -27,9 +25,10 @@ class DefaultWizard(WizardLanguage, DreamInfoHandler):
                self["arrowup2"] = MovingPixmap()
        
        def setDirectory(self):
-               os.system("mount %s %s" % (resolveFilename(SCOPE_DEFAULTPARTITION), resolveFilename(SCOPE_DEFAULTPARTITIONMOUNTDIR)))
                self.directory = resolveFilename(SCOPE_DEFAULTPARTITIONMOUNTDIR)
                self.xmlfile = "defaultwizard.xml"
+               if self.directory:
+                       os_system("mount %s %s" % (resolveFilename(SCOPE_DEFAULTPARTITION), self.directory))
         
        def markDone(self):
                config.misc.defaultchosen.value = 0
@@ -39,7 +38,7 @@ class DefaultWizard(WizardLanguage, DreamInfoHandler):
        def statusCallback(self, status, progress):
                print "statusCallback:", status, progress
                if status == DreamInfoHandler.STATUS_DONE:
-                       self["text"].setText(_("The installation of the default settings is finished. You can now continue configuring your Dreambox by pressing the OK button on the remote control."))
+                       self["text"].setText(_("The installation of the default settings is finished. You can now continue configuring your STB by pressing the OK button on the remote control."))
                        self.markDone()
                        self.disableKeys = False
 
@@ -57,16 +56,16 @@ class DefaultWizard(WizardLanguage, DreamInfoHandler):
        def selectionMade(self):
                print "selection made"
                #self.installPackage(int(index))
-               indexList = []
+               self.indexList = []
                for x in range(len(self.packagesConfig)):
                        if self.packagesConfig[x].value:
-                               indexList.append(x)
-               self.installPackages(indexList)
-               
+                               self.indexList.append(x)
+
 class DreamPackageWizard(DefaultWizard):
        def __init__(self, session, packagefile, silent = False):
-               os.system("mkdir /tmp/package")
-               os.system("tar xpzf %s -C /tmp/package" % packagefile)
+               if not pathExists("/tmp/package"):
+                       mkdir("/tmp/package")
+               os_system("tar xpzf %s -C /tmp/package" % packagefile)
                self.packagefile = packagefile
                DefaultWizard.__init__(self, session, silent)
                
@@ -86,20 +85,18 @@ class ImageDefaultInstaller(DreamInfoHandler):
 
 def install(choice):
        if choice is not None:
-               #os.system("mkdir /tmp/package && tar xpzf %s ")
+               #os_system("mkdir /tmp/package && tar xpzf %s ")
                choice[2].open(DreamPackageWizard, choice[1])
 
 def filescan_open(list, session, **kwargs):
        from Screens.ChoiceBox import ChoiceBox
        print "open default wizard"
-       filelist = [(os.path.split(x.path)[1], x.path, session) for x in list]
+       filelist = [(os_path.split(x.path)[1], x.path, session) for x in list]
        print filelist
        session.openWithCallback(install, ChoiceBox, title = _("Please choose he package..."), list=filelist)
 
 def filescan(**kwargs):
        from Components.Scanner import Scanner, ScanPath
-       from mimetypes import add_type
-       add_type("application/x-dream-package", "dmpkg")
        return \
                Scanner(mimetypes = ["application/x-dream-package"], 
                        paths_to_scan = 
@@ -107,12 +104,12 @@ def filescan(**kwargs):
                                        ScanPath(path = "dmpkg", with_subdirs = True), 
                                        ScanPath(path = "", with_subdirs = False), 
                                ], 
-                       name = "Dream-Package", 
-                       description = "Install settings, skins, software..."
+                       name = "STB-Package", 
+                       description = _("Install settings, skins, software...")
                        openfnc = filescan_open, )
 
 print "add dreampackage scanner plugin"
-plugins.addPlugin(PluginDescriptor(name="Dream-Package", where = PluginDescriptor.WHERE_FILESCAN, fnc = filescan, internal = True))
+plugins.addPlugin(PluginDescriptor(name="STB-Package", where = PluginDescriptor.WHERE_FILESCAN, fnc = filescan, internal = True))
 print "added"
 
 wizardManager.registerWizard(DefaultWizard, config.misc.defaultchosen.value, priority = 6)