<wizard>
- <step number="1">
- <text value="Hello User.\n\nThis start-wizard will guide you through the basic setup of your Dreambox.\n\nPress the OK button on your remote control to move to the next step." />
+ <step id="start" nextstep="introduction">
+ <text value="Welcome.\n\nThis start wizard will guide you through the basic setup of your Dreambox.\nPress the OK button on your remote control to move to the next step." />
<code>
-self["arrowdown"].moveTo(557, 232, 1)
-self["arrowdown"].startMoving()
-self["arrowup"].moveTo(800, 232, 1)
-self["arrowup"].startMoving()
-self["rc"].moveTo(500, 50, 1)
-self["rc"].startMoving()
+self.clearSelectedKeys()
+self.selectKey("OK")
</code>
</step>
- <step number="2">
+ <step id="introduction" >
<text value="Use the up/down keys on your remote control to select an option. After that, press OK." />
<list>
- <listentry caption="Use wizard to set up basic features" step="next" />
+ <listentry caption="Use wizard to set up basic features" step="nima" />
<listentry caption="Exit wizard" step="end" />
</list>
<code>
-self["arrowdown"].moveTo(557, 200, 1)
-self["arrowup"].moveTo(557, 355, 1)
-self["arrowdown"].startMoving()
-self["arrowup"].startMoving()
-self["rc"].moveTo(500, 50, 1)
-self["rc"].startMoving()
+self.clearSelectedKeys()
+self.selectKey("UP")
+self.selectKey("DOWN")
</code>
</step>
- <step number="3">
+ <step id="nima">
+ <condition>
+from Components.NimManager import nimmanager
+self.condition = len(nimmanager.nim_slots) > 0 and not nimmanager.nim_slots[0].empty and config.misc.startwizard.shownimconfig.value
+ </condition>
<text value="Use the left and right buttons to change an option.\n\nPlease set up tuner A" />
<config screen="NimSetup" module="Satconfig" args="0" type="ConfigList" />
<code>
-self["rc"].moveTo(500, 50, 1)
-self["rc"].startMoving()
-self["arrowup"].moveTo(525, 320, 1)
-self["arrowup"].startMoving()
-self["arrowup2"].moveTo(590, 320, 1)
-self["arrowup2"].startMoving()
-self["arrowdown"].moveTo(740, 355, 1)
-self["arrowdown"].startMoving()
-
+self.clearSelectedKeys()
+self.selectKey("LEFT")
+self.selectKey("RIGHT")
</code>
</step>
- <step number="4">
+ <step id="nimb">
+ <condition>
+from Components.NimManager import nimmanager
+self.condition = len(nimmanager.nim_slots) > 1 and not nimmanager.nim_slots[1].empty and config.misc.startwizard.shownimconfig.value
+ </condition>
<text value="Please set up tuner B" />
<config screen="NimSetup" module="Satconfig" args="1" type="ConfigList" />
<code>
-self["rc"].moveTo(800, 50, 1)
-self["rc"].startMoving()
-self["arrowup"].moveTo(800, 310, 1)
-self["arrowup"].startMoving()
-self["arrowup2"].moveTo(800, 310, 1)
-self["arrowup2"].startMoving()
+self.clearSelectedKeys()
+self.selectKey("LEFT")
+self.selectKey("RIGHT")
</code>
</step>
- <step number="5">
+ <step id="nimc">
+ <condition>
+from Components.NimManager import nimmanager
+self.condition = len(nimmanager.nim_slots) > 2 and not nimmanager.nim_slots[2].empty and config.misc.startwizard.shownimconfig.value
+ </condition>
+ <text value="Please set up tuner C" />
+ <config screen="NimSetup" module="Satconfig" args="2" type="ConfigList" />
+ <code>
+self.clearSelectedKeys()
+self.selectKey("LEFT")
+self.selectKey("RIGHT")
+ </code>
+ </step>
+ <step id="nimd">
+ <condition>
+from Components.NimManager import nimmanager
+self.condition = len(nimmanager.nim_slots) > 3 and not nimmanager.nim_slots[3].empty and config.misc.startwizard.shownimconfig.value
+ </condition>
+ <text value="Please set up tuner D" />
+ <config screen="NimSetup" module="Satconfig" args="3" type="ConfigList" />
+ <code>
+self.clearSelectedKeys()
+self.selectKey("LEFT")
+self.selectKey("RIGHT")
+ </code>
+ </step>
+ <step id="satlistsquestion">
+ <text value="Do you want to install default sat lists?" />
+ <condition>
+from Components.NimManager import nimmanager
+self.condition = config.misc.startwizard.doservicescan.value and nimmanager.somethingConnected()
+ </condition>
+ <code>
+self.hideRc()
+ </code>
+ <list>
+ <listentry caption="Yes" step="startdefaultlists" />
+ <listentry caption="No" step="scanquestion" />
+ </list>
+ </step>
+
+ <step id="scanquestion">
<text value="Do you want to do a service scan?" />
+ <condition>
+from Components.NimManager import nimmanager
+self.condition = config.misc.startwizard.doservicescan.value and nimmanager.somethingConnected()
+ </condition>
+ <code>
+self.hideRc()
+ </code>
<list>
- <listentry caption="Yes, scan now" step="next" />
- <listentry caption="No, scan later manually" step="7" />
+ <listentry caption="Yes, do an automatic scan now" step="scan" />
+ <listentry caption="Yes, do a manual scan now" step="manualscan" />
+ <listentry caption="No, scan later manually" step="finisheddefaultsatlists" />
</list>
</step>
- <step number="6">
+ <step id="scan" nextstep="finisheddefaultsatlists">
+ <condition>
+from Components.NimManager import nimmanager
+self.condition = config.misc.startwizard.doservicescan.value and nimmanager.somethingConnected()
+ </condition>
<text value="What do you want to scan?" />
<config screen="ScanSimple" module="ScanSetup" type="ConfigList" />
</step>
- <step number="7">
- <text value="Thanx for using the wizard. Your box is now ready to use." />
- </step>
+ <step id="manualscan">
+ <condition>
+from Components.NimManager import nimmanager
+self.condition = config.misc.startwizard.doservicescan.value and nimmanager.somethingConnected()
+ </condition>
+ <text value="What do you want to scan?" />
+ <config screen="ScanSetup" module="ScanSetup" type="ConfigList" />
+ </step>
+ <step id="nextscan">
+ <condition>
+from Components.NimManager import nimmanager
+self.condition = config.misc.startwizard.doservicescan.value and nimmanager.somethingConnected()
+ </condition>
+ <text value="Do you want to do another manual service scan?" />
+ <list>
+ <listentry caption="Yes, do another manual scan now" step="manualscan" />
+ <listentry caption="No, scan later manually" step="finisheddefaultsatlists" />
+ </list>
+ </step>
+ <step id="finisheddefaultsatlists">
+ <text value="Do you want to enable the parental control feature on your dreambox?" />
+ <list>
+ <listentry caption="Yes" step="parentalsetup" />
+ <listentry caption="No" step="end" />
+ </list>
+ <code pos="after">
+if self["list"].index == 0:
+ config.ParentalControl.configured.value = True
+else:
+ config.ParentalControl.configured.value = False
+config.ParentalControl.configured.save()
+ </code>
+ </step>
+ <step id="parentalsetup">
+ <text value="You need to set a pin code and hide it from your children.\n\nDo you want to set the pin now?" />
+ <list>
+ <listentry caption="Yes" step="finishparentalsetup" />
+ <listentry caption="No" step="finishparentalsetup" />
+ </list>
+ <code pos="after">
+from ParentalControlSetup import ParentalControlChangePin
+if self["list"].index == 0:
+ self.session.open(ParentalControlChangePin, config.ParentalControl.servicepin[0], _("parental control pin"))
+ </code>
+ </step>
+ <step id="finishparentalsetup">
+ <code>
+config.ParentalControl.setuppinactive.value = True
+config.ParentalControl.setuppinactive.save()
+config.ParentalControl.servicepinactive.value = True
+config.ParentalControl.servicepinactive.save()
+config.ParentalControl.setuppin.value = config.ParentalControl.servicepin[0].value
+config.ParentalControl.setuppin.save()
+ </code>
+
+ <text value="After the start wizard is completed, you need to protect single services. Refer to your dreambox's manual on how to do that." />
+ </step>
+ <step id="end" laststep="true">
+ <condition>
+self.condition = self.isLastWizard
+ </condition>
+ <text value="Thank you for using the wizard. Your box is now ready to use.\nPlease press OK to start using your Dreambox." />
+ </step>
</wizard>