Author: titmuss
Date: Fri Apr 25 04:41:33 2008
New Revision: 2353

URL: http://svn.slimdevices.com?rev=2353&root=Jive&view=rev
Log:
Bug: N/A
Description:
Allow Controller firmware upgrades to be optional or forced.


Modified:
    7.0/trunk/squeezeplay/src/squeezeplay/share/jive/utils/locale.lua
    
7.0/trunk/squeezeplay/src/squeezeplay_jive/share/applets/SetupFirmwareUpgrade/SetupFirmwareUpgradeApplet.lua
    
7.0/trunk/squeezeplay/src/squeezeplay_jive/share/applets/SetupFirmwareUpgrade/SetupFirmwareUpgradeMeta.lua
    
7.0/trunk/squeezeplay/src/squeezeplay_jive/share/applets/SetupFirmwareUpgrade/strings.txt

Modified: 7.0/trunk/squeezeplay/src/squeezeplay/share/jive/utils/locale.lua
URL: 
http://svn.slimdevices.com/7.0/trunk/squeezeplay/src/squeezeplay/share/jive/utils/locale.lua?rev=2353&root=Jive&r1=2352&r2=2353&view=diff
==============================================================================
--- 7.0/trunk/squeezeplay/src/squeezeplay/share/jive/utils/locale.lua (original)
+++ 7.0/trunk/squeezeplay/src/squeezeplay/share/jive/utils/locale.lua Fri Apr 
25 04:41:33 2008
@@ -249,7 +249,11 @@
        if select('#', ...) == 0 then
                return self[token] or token
        else
-               return string.format(self[token].str or token, ...)
+               if self[token] then
+                       return string.format(self[token].str or token, ...)
+               else
+                       return string.format(token, ...)
+               end
        end
 end
 

Modified: 
7.0/trunk/squeezeplay/src/squeezeplay_jive/share/applets/SetupFirmwareUpgrade/SetupFirmwareUpgradeApplet.lua
URL: 
http://svn.slimdevices.com/7.0/trunk/squeezeplay/src/squeezeplay_jive/share/applets/SetupFirmwareUpgrade/SetupFirmwareUpgradeApplet.lua?rev=2353&root=Jive&r1=2352&r2=2353&view=diff
==============================================================================
--- 
7.0/trunk/squeezeplay/src/squeezeplay_jive/share/applets/SetupFirmwareUpgrade/SetupFirmwareUpgradeApplet.lua
 (original)
+++ 
7.0/trunk/squeezeplay/src/squeezeplay_jive/share/applets/SetupFirmwareUpgrade/SetupFirmwareUpgradeApplet.lua
 Fri Apr 25 04:41:33 2008
@@ -83,9 +83,6 @@
 
 
 function _firmwareVersion(self, url)
-
-       log:warn("url=", url)
-
        local major, minor = string.match(url, "jive_([^_]+)_([^_]+)\.bin")
 
        if not major then
@@ -96,7 +93,7 @@
 end
 
 
-function _makeUpgradeItems(self, window, menu, url)
+function _makeUpgradeItems(self, window, menu, optional, url, urlHelp)
        local help = Textarea("help", "")
 
        local version = self:_firmwareVersion(url)
@@ -109,9 +106,9 @@
                end,
                focusGained = function()
                        if version == JIVE_VERSION then
-                               
help:setValue(self:string("UPDATE_BEGIN_REINSTALL", version or "?"))
+                               help:setValue(self:string(urlHelp or 
"UPDATE_BEGIN_REINSTALL", version or "?"))
                        else
-                               
help:setValue(self:string("UPDATE_BEGIN_UPGRADE", version or "?"))
+                               help:setValue(self:string(urlHelp or 
"UPDATE_BEGIN_UPGRADE", version or "?"))
                        end
                end
        })
@@ -135,17 +132,26 @@
                end
        end
 
+       if optional then
+               -- offered upgrade
+               menu:addItem({
+                       text = self:string("UPDATE_CANCEL"),
+                       sound = "WINDOWHIDE",
+                       callback = function()
+                               window:hide()
+                       end,
+                       focusGained = function()
+                               help:setValue(nil)
+                       end
+               })
+       end
+
        window:addWidget(help)
        window:addWidget(menu)
 end
 
 
-function forceUpgrade(self, upgUrl)
-       local window = Window("window", self:string("UPDATE"), 
firmwareupgradeTitleStyle)
-
-       local menu = SimpleMenu("menu")
-       menu:setCloseable(false)
-
+function forceUpgrade(self, optional, upgUrl, urlHelp)
        local url = upgUrl
        if not upgUrl then
                url = upgradeUrl[1]
@@ -154,17 +160,25 @@
                url = DEFAULT_FIRMWARE_URL
        end
 
-       window:addListener(EVENT_KEY_PRESS,
-                          function(event)
-                                  local keycode = event:getKeycode()
-                                  if keycode == KEY_HOME then
-                                          return EVENT_CONSUME
-                                  end
-
-                                  return EVENT_UNUSED
-                          end)
-
-       self:_makeUpgradeItems(window, menu, url)
+       local window = Window("window", self:string("UPDATE"), 
firmwareupgradeTitleStyle)
+       local menu = SimpleMenu("menu")
+
+       if not optional then
+               -- forced upgrade, don't allow the user to break out
+               menu:setCloseable(false)
+
+               window:addListener(EVENT_KEY_PRESS,
+                       function(event)
+                               local keycode = event:getKeycode()
+                               if keycode == KEY_HOME then
+                                       return EVENT_CONSUME
+                               end
+
+                               return EVENT_UNUSED
+                       end)
+       end
+
+       self:_makeUpgradeItems(window, menu, optional, url, urlHelp)
 
        self:tieAndShowWindow(window)
        return window
@@ -181,7 +195,7 @@
                url = DEFAULT_FIRMWARE_URL
        end
 
-       self:_makeUpgradeItems(window, menu, url)
+       self:_makeUpgradeItems(window, menu, true, url)
 
        self:tieAndShowWindow(window)
        return window

Modified: 
7.0/trunk/squeezeplay/src/squeezeplay_jive/share/applets/SetupFirmwareUpgrade/SetupFirmwareUpgradeMeta.lua
URL: 
http://svn.slimdevices.com/7.0/trunk/squeezeplay/src/squeezeplay_jive/share/applets/SetupFirmwareUpgrade/SetupFirmwareUpgradeMeta.lua?rev=2353&root=Jive&r1=2352&r2=2353&view=diff
==============================================================================
--- 
7.0/trunk/squeezeplay/src/squeezeplay_jive/share/applets/SetupFirmwareUpgrade/SetupFirmwareUpgradeMeta.lua
 (original)
+++ 
7.0/trunk/squeezeplay/src/squeezeplay_jive/share/applets/SetupFirmwareUpgrade/SetupFirmwareUpgradeMeta.lua
 Fri Apr 25 04:41:33 2008
@@ -56,11 +56,11 @@
                                log:info("Firmware URL=", upgradeUrl[1])
                        end
 
-                       -- are we forcing an upgrade
+                       -- are we offering or forcing an upgrade
                        if tonumber(chunk.data.firmwareUpgrade) == 1 then
-                               log:info("Force firmware upgrade")
+                               log:info("Firmware upgrade")
                                local applet = 
appletManager:loadApplet("SetupFirmwareUpgrade")
-                               applet:forceUpgrade(upgradeUrl[1])
+                               
applet:forceUpgrade(tonumber(chunk.data.firmwareOptional) == 1, upgradeUrl[1], 
chunk.data.firmwareHelp)
 
                                meta.player:unsubscribe('/slim/firmwarestatus/' 
.. meta.player.id)
                        end

Modified: 
7.0/trunk/squeezeplay/src/squeezeplay_jive/share/applets/SetupFirmwareUpgrade/strings.txt
URL: 
http://svn.slimdevices.com/7.0/trunk/squeezeplay/src/squeezeplay_jive/share/applets/SetupFirmwareUpgrade/strings.txt?rev=2353&root=Jive&r1=2352&r2=2353&view=diff
==============================================================================
--- 
7.0/trunk/squeezeplay/src/squeezeplay_jive/share/applets/SetupFirmwareUpgrade/strings.txt
 (original)
+++ 
7.0/trunk/squeezeplay/src/squeezeplay_jive/share/applets/SetupFirmwareUpgrade/strings.txt
 Fri Apr 25 04:41:33 2008
@@ -128,3 +128,12 @@
        IT      Collocare il telecomando nella base di ricarica per continuare 
l'aggiornamento del software.
        NL      Zet deze afstandsbediening in de oplader om de software-upgrade 
voort te zetten.
 
+UPDATE_CANCEL
+       DA      Afbryd
+       DE      Abbrechen
+       EN      Cancel
+       ES      Cancelar
+       FR      Annuler
+       IT      Annulla
+       NL      Annuleren
+

_______________________________________________
Jive-checkins mailing list
[email protected]
http://lists.slimdevices.com/cgi-bin/mailman/listinfo/jive-checkins

Reply via email to