Author: titmuss
Date: Thu Mar 13 09:20:17 2008
New Revision: 2112
URL: http://svn.slimdevices.com?rev=2112&root=Jive&view=rev
Log:
Bug: 6019
Description:
When prompting for firmware updates show the firmware version, and context
sensitive messages.
Modified:
trunk/squeezeplay/src/squeezeplay_jive/share/applets/SetupFirmwareUpgrade/SetupFirmwareUpgradeApplet.lua
trunk/squeezeplay/src/squeezeplay_jive/share/applets/SetupFirmwareUpgrade/strings.txt
Modified:
trunk/squeezeplay/src/squeezeplay_jive/share/applets/SetupFirmwareUpgrade/SetupFirmwareUpgradeApplet.lua
URL:
http://svn.slimdevices.com/trunk/squeezeplay/src/squeezeplay_jive/share/applets/SetupFirmwareUpgrade/SetupFirmwareUpgradeApplet.lua?rev=2112&root=Jive&r1=2111&r2=2112&view=diff
==============================================================================
---
trunk/squeezeplay/src/squeezeplay_jive/share/applets/SetupFirmwareUpgrade/SetupFirmwareUpgradeApplet.lua
(original)
+++
trunk/squeezeplay/src/squeezeplay_jive/share/applets/SetupFirmwareUpgrade/SetupFirmwareUpgradeApplet.lua
Thu Mar 13 09:20:17 2008
@@ -40,6 +40,8 @@
local appletManager = appletManager
local upgradeUrl = upgradeUrl
+local JIVE_VERSION = jive.JIVE_VERSION
+
local EVENT_ACTION = jive.ui.EVENT_ACTION
local EVENT_WINDOW_POP = jive.ui.EVENT_WINDOW_POP
local LAYER_FRAME = jive.ui.LAYER_FRAME
@@ -74,12 +76,74 @@
local DEFAULT_FIRMWARE_URL =
"http://www.slimdevices.com/update/firmware/7.0/jive.bin"
+local SDCARD_PATH = "/mnt/mmc/"
+
module(...)
oo.class(_M, Applet)
+function _firmwareVersion(self, url)
+
+ log:warn("url=", url)
+
+ local major, minor = string.match(url, "jive_([^_]+)_([^_]+)\.bin")
+
+ if not major then
+ return
+ end
+
+ return major .. " " .. minor
+end
+
+
+function _makeUpgradeItems(self, window, menu, url)
+ local help = Textarea("help", "")
+
+ local version = self:_firmwareVersion(url)
+ menu:addItem({
+ text = self:string("BEGIN_UPDATE"),
+ sound = "WINDOWSHOW",
+ callback = function()
+ self.url = url
+ self:_upgrade()
+ end,
+ focusGained = function()
+ if version == JIVE_VERSION then
+
help:setValue(self:string("UPDATE_BEGIN_REINSTALL", version or "?"))
+ else
+
help:setValue(self:string("UPDATE_BEGIN_UPGRADE", version or "?"))
+ end
+ end
+ })
+
+ for entry in lfs.dir(SDCARD_PATH) do
+ local fileurl = "file:" .. SDCARD_PATH .. entry
+ local version = self:_firmwareVersion(fileurl)
+
+ if version or entry == "jive.bin" then
+ menu:addItem({
+ text =
self:string("UPDATE_CONTINUE_SDCARD"),
+ sound = "WINDOWSHOW",
+ callback = function()
+ self.url = fileurl
+ self:_upgrade()
+ end,
+ focusGained = function()
+
help:setValue(self:string("UPDATE_BEGIN_SDCARD", version or ""))
+ end
+ })
+ end
+ end
+
+ window:addWidget(help)
+ window:addWidget(menu)
+end
+
+
function forceUpgrade(self, upgUrl)
local window = Window("window", self:string("UPDATE"),
firmwareupgradeTitleStyle)
+ window:setAllowScreensaver(false)
+
local menu = SimpleMenu("menu")
menu:setCloseable(false)
@@ -90,7 +154,6 @@
if not url then
url = DEFAULT_FIRMWARE_URL
end
- log:warn("url=", url)
window:addListener(EVENT_KEY_PRESS,
function(event)
@@ -102,29 +165,7 @@
return EVENT_UNUSED
end)
- menu:addItem({
- text = self:string("BEGIN_UPDATE"),
- sound = "WINDOWSHOW",
- callback = function()
- self.url = url
- self:_upgrade()
- end
- })
-
- if lfs.attributes("/mnt/mmc/jive.bin", "mode") == "file" then
- menu:addItem({
- text =
self:string("UPDATE_CONTINUE_SDCARD"),
- sound = "WINDOWSHOW",
- callback = function()
- self.url =
"file:/mnt/mmc/jive.bin"
- self:_upgrade()
- end
- })
- end
-
- local help = Textarea("help", self:string("UPDATE_BEGIN_HELP"))
- window:addWidget(help)
- window:addWidget(menu)
+ self:_makeUpgradeItems(window, menu, url)
self:tieAndShowWindow(window)
return window
@@ -140,31 +181,8 @@
if not url then
url = DEFAULT_FIRMWARE_URL
end
- log:warn("url=", url)
-
- menu:addItem({
- text = self:string("NETWORK_UPDATE"),
- sound = "WINDOWSHOW",
- callback = function()
- self.url = url
- self:_upgrade()
- end
- })
-
- if lfs.attributes("/mnt/mmc/jive.bin", "mode") == "file" then
- menu:addItem({
- text =
self:string("UPDATE_CONTINUE_SDCARD"),
- sound = "WINDOWSHOW",
- callback = function()
- self.url =
"file:/mnt/mmc/jive.bin"
- self:_upgrade()
- end
- })
- end
-
- local help = Textarea("help", self:string("UPDATE_BEGIN_HELP"))
- window:addWidget(help)
- window:addWidget(menu)
+
+ self:_makeUpgradeItems(window, menu, url)
self:tieAndShowWindow(window)
return window
Modified:
trunk/squeezeplay/src/squeezeplay_jive/share/applets/SetupFirmwareUpgrade/strings.txt
URL:
http://svn.slimdevices.com/trunk/squeezeplay/src/squeezeplay_jive/share/applets/SetupFirmwareUpgrade/strings.txt?rev=2112&root=Jive&r1=2111&r2=2112&view=diff
==============================================================================
---
trunk/squeezeplay/src/squeezeplay_jive/share/applets/SetupFirmwareUpgrade/strings.txt
(original)
+++
trunk/squeezeplay/src/squeezeplay_jive/share/applets/SetupFirmwareUpgrade/strings.txt
Thu Mar 13 09:20:17 2008
@@ -101,14 +101,14 @@
IT \nRiavvio
NL \nBezig met opnieuw starten
-UPDATE_BEGIN_HELP
- DA Opdateret programmel er tilgængeligt for denne fjernbetjening.
Dette tager nogle få minutter.
- DE Für diese Fernbedienung ist aktualisierte Software verfügbar.
Dieser Vorgang kann ein paar Minuten dauern.
- EN Updated software is available for this remote. This process may
take a few minutes.
- ES Existe software actualizado disponible para este mando a
distancia. El proceso de actualización puede tardar unos minutos.
- FR Une mise à jour de logiciel est disponible pour cette
télécommande. Cette procédure peut prendre quelques minutes.
- IT Per questo telecomando è disponibile software aggiornato.
L'operazione potrebbe richiedere alcuni minuti.
- NL Voor deze afstandsbediening is bijgewerkte software
beschikbaar. Dit proces kan enkele minuten in beslag nemen.
+UPDATE_BEGIN_UPGRADE
+ EN Updated software is available for this remote. It may take a
few minutes to update to version %s.
+
+UPDATE_BEGIN_REINSTALL
+ EN The software for this remote is up to date. If you'd like to
reinstall version %s, choose Begin Update.
+
+UPDATE_BEGIN_SDCARD
+ EN Install %s from SD card.
UPDATE_BATTERY
DA Oplad batteri
_______________________________________________
Jive-checkins mailing list
[email protected]
http://lists.slimdevices.com/cgi-bin/mailman/listinfo/jive-checkins