The branch, frodo has been updated
via c5d09c5b06d9a8f4b04eea94e5a61e752d7cedc6 (commit)
via b4b257e4b1a975d5581443a19948659d83b37a45 (commit)
from c69bc7dc95c621da7b14a4d6d856d76d7e6d46f4 (commit)
- Log -----------------------------------------------------------------
http://xbmc.git.sourceforge.net/git/gitweb.cgi?p=xbmc/scripts;a=commit;h=c5d09c5b06d9a8f4b04eea94e5a61e752d7cedc6
commit c5d09c5b06d9a8f4b04eea94e5a61e752d7cedc6
Author: Martijn Kaijser <[email protected]>
Date: Tue Apr 1 10:54:36 2014 +0200
[service.libraryautoupdate] 0.8.5
diff --git a/service.libraryautoupdate/addon.xml
b/service.libraryautoupdate/addon.xml
index 2d8af50..16db63f 100644
--- a/service.libraryautoupdate/addon.xml
+++ b/service.libraryautoupdate/addon.xml
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<addon id="service.libraryautoupdate"
- name="XBMC Library Auto Update" version="0.8.0" provider-name="robweber">
+ name="XBMC Library Auto Update" version="0.8.5" provider-name="robweber">
<requires>
<import addon="xbmc.python" version="2.1.0"/>
</requires>
@@ -11,6 +11,7 @@
</extension>
<extension point="xbmc.addon.metadata">
<summary lang="be">Update your XBMC Video and Music Libraries on a timer.
Timer runs as an XBMC service so you never miss an update.</summary>
+ <summary lang="bg">ÐбновÑва библиоÑекиÑе в XBMC (за
видео и мÑзика) ÑÑез бÑоÑÑ. Той Ñе ÑÑаÑÑиÑа
каÑо XBMC ÑÑлÑга, заÑова никога нÑма да
изпÑÑнеÑе ниÑо едно обновÑване.</summary>
<summary lang="da">Opdater dine XBMC video- og musikbiblioteker ved hjælp
af en timer. Timeren kører som en XBMC service, så du aldrig glipper en
opdatering</summary>
<summary lang="de">Update deine XBMC Video- und Musiklibrariers mit einem
Timer. Der Timer läuft als ein XBMC service, sodass Du niemals ein Update
verpasst.</summary>
<summary lang="el">ÎνημεÏÏÏÏε ÏÎ¹Ï ÏÏ
λλογÎÏ
ÏαινιÏν και μοÏ
ÏÎ¹ÎºÎ®Ï ÏÎ±Ï Î¼Îµ ÏÏονοδιακÏÏÏη.
Î ÏÏονοδιακÏÏÏÎ·Ï ÎµÎºÏελείÏαι Ïαν Ï
ÏηÏεÏία
ÏοÏ
XBMC οÏÏÏÏ ÏÏÏε να μη ÏάνεÏε ÏοÏΠκαμία
ενημÎÏÏÏη.</summary>
@@ -32,6 +33,7 @@
<summary lang="sv">Uppdatera ditt XBMC video och musikbibliotek
schemalagt. Schemaläggaren körs som en XBMC-service så du aldrig missar en
uppdatering.</summary>
<summary lang="zh">宿¶æ´æ°ä½
çXBMCè§é¢åé³ä¹èµæåºã宿¶å¨ä»¥XBMCæå¡çæ¹å¼è¿è¡ä»¥ä¿è¯ä¸ä¼éè¿æ´æ°ã</summary>
<description lang="be">This is an XBMC Service that will update your music
and video libraries on a timer. You can select a different interval to scan
your media databases (Audio,Video,Both) or you can set a cron-style timer for
greater control. If you are playing an audio or video file when the timer
starts it can skip the library update process until it is completed so that
you're media experience is not interrupted. Updating a specific Video Path, and
Cleaning the Music/Video libraries is now supported.</description>
+ <description lang="bg">УÑлÑгаÑа Ñе обновÑва видео
и мÑзикалнаÑа библиоÑека в XBMC пÑез
опÑеделен инÑеÑвал Ð¾Ñ Ð²Ñеме. ÐожеÑе да
пÑоменÑÑе инÑеÑвала за ÑканиÑане (на
изÑоÑниÑиÑе на видео, аÑдио или и за дваÑа
вида инÑоÑмаÑиÑ). ÐожеÑе да зададеÑе бÑоÑÑ
в ÑÑил cron (за запознаÑиÑе Ñ Linux), койÑо Ðи
оÑигÑÑÑва по-голÑм конÑÑол. Ðко Ñе ÑлÑÑи, Ñе
гледаÑе/ÑлÑÑаÑе Ñайл Ð¾Ñ Ð±Ð¸Ð±Ð»Ð¸Ð¾Ñека за
коÑÑо Ñе е задейÑÑвал бÑоÑÑ ÑканиÑанеÑо Ñе
Ñе оÑложи до моменÑа в койÑо не пÑиклÑÑиÑе
акÑивноÑÑÑа. СÑÑо Ñака Ñе поддÑÑжа и
обновÑване на опÑеделени папки и
поÑиÑÑване на библиоÑекиÑе.</d
escription>
<description lang="da">Dette er en XBMC service, der opdaterer dine musik-
og videobiblioteker ved hjælp af en timer. Du kan vælge forskellige
intervaller for skanningen af din mediedatabase (lyd, video, begge) eller du
kan vælge en cron-baseret timer for øget kontrol. Hvis du afspiller en lyd-
eller videofil, når timeren begynder, kan den springe over opdatering af
biblioteket indtil emnet er færdigafspillet, så din medieoplevelse ikke
afbrydes. Opdatering af specifikke videostier og oprydning i
musik/videobibliotekerne er nu understøttet.</description>
<description lang="de">Dies ist ein XBMC Service, der deine Musik und
Video Bibliothek in bestimmten Abständen automatisch aktualisiert. Du kannst
verschiedene Intervalle für das Scannen deiner Mediendatenbanken (Audio, Video
oder beides) verwenden oder einen eigenen Cron Ausdruck für noch mehr
Kontrolle benutzen. Wenn du gerade Musik oder ein Video abspielst kannst du den
Timer des automatischen Updates überspringen, so dass dein Film Erlebnis nicht
unterbrochen wird. Die Aktualisierung von konkreten Pfaden und Aufräumen der
Musik/Video Bibliotheken wird nun unterstützt</description>
<description lang="el">ÎÏ
Ïή είναι μία Î¥ÏηÏεÏία ÏοÏ
XBMC ÏοÏ
ενημεÏÏνει ÏÎ¹Ï ÏÏ
λλογÎÏ ÏαινιÏν και
μοÏ
ÏÎ¹ÎºÎ®Ï ÏÎ±Ï Î¼Îµ ÏÏονοδιακÏÏÏη. ÎÏοÏείÏε να
εÏιλÎξεÏε διαÏοÏεÏÎ¹ÎºÏ ÏÏÎ¿Î½Î¹ÎºÏ Î´Î¹Î¬ÏÏημα
για ÏάÏÏÏη ÏÏν ÏολÏ
μÎÏÏν ÏÎ±Ï (ÎοÏ
Ïική,
ÎίνÏεο, Îαι Τα ÎÏ
ο) ή μÏοÏείÏε να οÏίÏεÏε
Îνα ÏÏονοδιακÏÏÏη ÏÏÏοÏ
cron για καλÏÏεÏο
ÎλεγÏο. Îν αναÏαÏάγεÏαι μία Ïαινία ή Îνα
ÏÏαγοÏδι ÏÏαν αÏÏίÏει ο ÏÏονοδιακÏÏÏηÏ
μÏοÏεί να αναβληθεί η διαδικαÏία ÏηÏ
ενημÎÏÏÏÎ·Ï ÏÎ·Ï ÏÏ
Î»Î»Î¿Î³Î®Ï Î¼ÎÏÏÎ¹Ï ÏÏοÏ
ÏελειÏÏει, ÏÏοκειμÎνοÏ
να μην εÏηÏεαÏÏεί η
αναÏαÏαγÏγή. ΠλÎον Ï
ÏοÏÏηÏίζεÏαι η
ενημÎÏÏÏη ÏÏ
γκεκÏιμÎνη
Ï ÎιαδÏÎ¿Î¼Î®Ï ÎίνÏεο, καθÏÏ ÎºÎ±Î¹ ÎκκαθάÏιÏη
ÏÏν ÏÏ
λλογÏν ΤαινιÏν/ÎοÏ
ÏικήÏ.</description>
@@ -54,6 +56,7 @@
<description lang="zh">è¿æ¯ä¸ä¸ªå®æ¶æ´æ°ä½
çé³ä¹åè§é¢èµæåºçXBMCæå¡ç¨åºãä½
å¯ä»¥è®¾ç½®ä¸åçæ¶é´é´éæ¥æ«æåªä½åºï¼é³é¢ãè§é¢æäºè
ï¼ï¼æè
设置ä¸ä¸ªcronç±»åç宿¶å¨æ¥è·å¾æ´å¥½çæ§å¶ã妿宿¶å¨ä½å¼å§æ¶ä½
æ£å¨ææ¾ä¸ä¸ªé³é¢æè§é¢æä»¶ï¼å®ä¼è·³è¿æ¤æ¬¡æ´æ°ç´å°ææ¾å®æ¯ä»¥é¿å
å½±åä½ æ¬£èµåªä½ãç°å¨å·²æ¯ææ´æ°æå®çè§é¢è·¯å¾ä»¥åæ¸
çé³è§é¢èµæåºã</description>
<forum>http://forum.xbmc.org/showthread.php?tid=119520</forum>
<source>https://github.com/robweber/xbmclibraryautoupdate</source>
+ <license>The MIT License</license>
<language></language>
</extension>
</addon>
diff --git a/service.libraryautoupdate/changelog.txt
b/service.libraryautoupdate/changelog.txt
index 66bfc18..a3f80b4 100644
--- a/service.libraryautoupdate/changelog.txt
+++ b/service.libraryautoupdate/changelog.txt
@@ -1,3 +1,23 @@
+Version 0.8.5
+
+version bump for translation updates
+
+Version 0.8.4
+
+Fix for a very odd timing bug causing multiple scans - thanks tknorris
+
+Version 0.8.3
+
+separated notifications and setting strings for translators - thanks NEOhidra
+
+Version 0.8.2
+
+added version info to logs
+
+Version 0.8.1
+
+added license tag
+
Version 0.8.0
clean up monitor on exit
diff --git a/service.libraryautoupdate/resources/language/Bulgarian/strings.xml
b/service.libraryautoupdate/resources/language/Bulgarian/strings.xml
index a8e209c..6704136 100644
--- a/service.libraryautoupdate/resources/language/Bulgarian/strings.xml
+++ b/service.libraryautoupdate/resources/language/Bulgarian/strings.xml
@@ -4,7 +4,54 @@
<!-- Report language file syntax bugs at: [email protected] -->
<strings>
- <string id="30001">General</string>
- <string id="30002">видео</string>
+ <string id="30000">ÐвÑомаÑиÑно обновÑване</string>
+ <string id="30001">ÐÑновни</string>
+ <string id="30002">Ðидео</string>
<string id="30003">ÐÑзика</string>
+ <string id="30004">ÐбновÑвай видео
библиоÑекаÑа</string>
+ <string id="30005">ÐбновÑвай мÑзикалнаÑа
библиоÑека</string>
+ <string id="30006">Ðоказвай извеÑÑиÑ</string>
+ <string id="30007">ÐбновÑване и по вÑеме на
вÑзпÑоизвеждане</string>
+ <string id="30008">Ðабави обновÑванеÑо, Ñлед
заÑежданеÑо на XBMC, Ñ (минÑÑи)</string>
+ <string id="30009">ÐÑоÑÑ Ñ Ð´Ð¾Ð¿ÑлниÑелни
опÑии</string>
+ <string id="30010">ÐнÑеÑвал Ð¼ÐµÐ¶Ð´Ñ Ð´Ð²Ðµ
обновÑÐ²Ð°Ð½Ð¸Ñ (ÑаÑове)</string>
+ <string id="30011">Cron изÑаз</string>
+ <string id="30012">на видео библиоÑекаÑа</string>
+ <string id="30013">на мÑзикалнаÑа
библиоÑека</string>
+
+ <!-- specific paths -->
+ <string id="30020">ÐбновÑване на пÑÑ â1</string>
+ <string id="30021">ÐбновÑване на пÑÑ â2</string>
+ <string id="30022">ÐбновÑване на пÑÑ â3</string>
+ <string id="30023">ÐÑÑ Ð´Ð¾ видео ÑайловеÑе</string>
+
+ <!-- disclaimer -->
+ <string id="30030">ÐÑоÑеÑеÑе опÑовеÑжениеÑо</string>
+ <string id="30031">ÐпÑовеÑжение за пÑÑÑ Ð´Ð¾ видео
ÑайловеÑе</string>
+ <string id="30032">ÐÑÑÑÑ ÑÑÑбва да е ÑÑÑеÑÑвÑваÑ
видео изÑоÑник ÑÑÑ ÑÑдÑÑжание.</string>
+ <string id="30033">ÐÑÑÑÑ Ð´Ð° е иденÑиÑен Ñ Ð¿ÑÑÑ Ð½Ð°
изÑоÑника.</string>
+
+ <!-- cleaning -->
+ <string id="30040">ÐоÑиÑÑване</string>
+ <string id="30041">ÐоÑиÑÑване на
библиоÑекиÑе</string>
+ <string id="30042">ÐоÑвÑÑждаване на изÑоÑника
пÑеди поÑиÑÑване</string>
+ <string id="30043">ЧеÑÑоÑа</string>
+ <string id="30044">След обновÑване</string>
+ <string id="30045">ÐеднÑж на ден</string>
+ <string id="30046">ÐеднÑж на ÑедмиÑа</string>
+ <string id="30047">ÐеднÑж на меÑеÑ</string>
+ <string id="30048">ÐоÑиÑÑвай видео
библиоÑекаÑа</string>
+ <string id="30049">ÐоÑиÑÑвай мÑзикалнаÑа
библиоÑека</string>
+ <string id="30050">ÐÑзникна гÑеÑка пÑи
поÑиÑÑванеÑо на базаÑа Ð¾Ñ Ð´Ð°Ð½Ð½Ð¸</string>
+ <string id="30051">ÐапиÑване на поÑÑебиÑелÑ
пÑеди поÑиÑÑванеÑо</string>
+ <string id="30052">СледваÑоÑо поÑиÑÑване Ñе
ÑÑаÑÑиÑа Ñлед </string>
+ <string id="30053">ÐелаеÑе ли да ÑÑаÑÑиÑаÑе
ÑÑÑно поÑиÑÑванеÑо, Ñега?</string>
+ <string id="30054">ÐиблиоÑека за поÑиÑÑване</string>
+ <string id="30055">РдвеÑе</string>
+ <string id="30056">Cron изÑаз за видео</string>
+ <string id="30057">Cron изÑаз за мÑзика</string>
+
+ <!-- manual run -->
+ <string id="30060">СледваÑоÑо обновÑване Ñе
ÑÑаÑÑиÑа Ñлед </string>
+ <string id="30061">ÐелаеÑе ли да ÑÑаÑÑиÑаÑе
ÑÑÑно обновÑванеÑо, Ñега?</string>
</strings>
diff --git a/service.libraryautoupdate/resources/language/English/strings.xml
b/service.libraryautoupdate/resources/language/English/strings.xml
index 521fc9a..72b6371 100644
--- a/service.libraryautoupdate/resources/language/English/strings.xml
+++ b/service.libraryautoupdate/resources/language/English/strings.xml
@@ -16,7 +16,9 @@
<string id="30009">Used Advanced Timer</string>
<string id="30010">Amount of time between updates (hours)</string>
<string id="30011">Cron Expression</string>
-
+ <string id="30012">Update Video Library</string>
+ <string id="30013">Update Music Library</string>
+
<!-- specific paths -->
<string id="30020">Update Specific Path 1</string>
<string id="30021">Update Specific Path 2</string>
diff --git a/service.libraryautoupdate/resources/lib/utils.py
b/service.libraryautoupdate/resources/lib/utils.py
index 833c844..b5deb65 100644
--- a/service.libraryautoupdate/resources/lib/utils.py
+++ b/service.libraryautoupdate/resources/lib/utils.py
@@ -11,7 +11,7 @@ def addon_dir():
return __Addon.getAddonInfo('path')
def log(message,loglevel=xbmc.LOGNOTICE):
- xbmc.log(encode(__addon_id__ + ": " + message),level=loglevel)
+ xbmc.log(encode(__addon_id__ + "-" + __Addon.getAddonInfo('version') + " :
" + message),level=loglevel)
def showNotification(title,message):
xbmc.executebuiltin("Notification(" + encode(title) + "," +
encode(message) + ",4000," + xbmc.translatePath(__Addon.getAddonInfo('path') +
"/resources/images/clock.png") + ")")
diff --git a/service.libraryautoupdate/service.py
b/service.libraryautoupdate/service.py
index 7e57096..1eb3776 100644
--- a/service.libraryautoupdate/service.py
+++ b/service.libraryautoupdate/service.py
@@ -91,6 +91,10 @@ class AutoUpdater:
#find the next run time
cronJob.next_run =
self.calcNextRun(cronJob.expression,now)
self.schedules[count] = cronJob
+
+ elif(self.scanRunning() == True):
+ self.schedules[count].on_delay = True
+ utils.log("Waiting for other scan to finish")
else:
utils.log("Network down, not running")
else:
@@ -100,7 +104,8 @@ class AutoUpdater:
count = count + 1
#write last run time
- self.last_run = time.time() - (time.time() % 60)
+ now = time.time()
+ self.last_run = now - (now % 60)
def createSchedules(self,forceUpdate = False):
utils.log("update timers")
@@ -141,9 +146,10 @@ class AutoUpdater:
if(utils.getSetting('update_video') == 'true'):
+ utils.log("Creating timer for Video Library");
#create the video schedule
aSchedule = CronSchedule()
- aSchedule.name = utils.getString(30004)
+ aSchedule.name = utils.getString(30012)
aSchedule.command = 'UpdateLibrary(video)'
aSchedule.expression = self.checkTimer('video')
aSchedule.next_run =
self.calcNextRun(aSchedule.expression,self.last_run)
@@ -151,9 +157,10 @@ class AutoUpdater:
self.schedules.append(aSchedule)
if(utils.getSetting('update_music') == 'true'):
+ utils.log("Creating timer for Music Library");
#create the music schedule
aSchedule = CronSchedule()
- aSchedule.name = utils.getString(30005)
+ aSchedule.name = utils.getString(30013)
aSchedule.command = 'UpdateLibrary(music)'
aSchedule.expression = self.checkTimer('music')
aSchedule.next_run =
self.calcNextRun(aSchedule.expression,self.last_run)
@@ -161,6 +168,7 @@ class AutoUpdater:
self.schedules.append(aSchedule)
if(utils.getSetting('use_custom_1_path') == 'true'):
+ utils.log("Creating timer for Custom Path 1");
#create a custom video path schedule
aSchedule = CronSchedule()
aSchedule.name = utils.getString(30020)
@@ -171,6 +179,7 @@ class AutoUpdater:
self.schedules.append(aSchedule)
if(utils.getSetting('use_custom_2_path') == 'true'):
+ utils.log("Creating timer for Custom Path 2");
#create a custom video path schedule
aSchedule = CronSchedule()
aSchedule.name = utils.getString(30021)
@@ -181,6 +190,7 @@ class AutoUpdater:
self.schedules.append(aSchedule)
if(utils.getSetting('use_custom_3_path') == 'true'):
+ utils.log("Creating timer for Custom Path 3");
#create a custom video path schedule
aSchedule = CronSchedule()
aSchedule.name = utils.getString(30022)
http://xbmc.git.sourceforge.net/git/gitweb.cgi?p=xbmc/scripts;a=commit;h=b4b257e4b1a975d5581443a19948659d83b37a45
commit b4b257e4b1a975d5581443a19948659d83b37a45
Author: Martijn Kaijser <[email protected]>
Date: Tue Apr 1 10:53:30 2014 +0200
[script.xbmcbackup] 0.4.7
diff --git a/script.xbmcbackup/addon.xml b/script.xbmcbackup/addon.xml
index da1695d..1bac4e9 100644
--- a/script.xbmcbackup/addon.xml
+++ b/script.xbmcbackup/addon.xml
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<addon id="script.xbmcbackup"
- name="XBMC Backup" version="0.4.5" provider-name="robweber">
+ name="XBMC Backup" version="0.4.7" provider-name="robweber">
<requires>
<import addon="xbmc.python" version="2.1.0"/>
</requires>
@@ -11,6 +11,7 @@
<extension point="xbmc.addon.metadata">
<summary lang="ar">ÙÙ
Ø¨ÙØ³Ø® Ø§ØØªÙاط٠٠استعد ÙØ§Ø¹Ø¯Ø©
Ø¨ÙØ§Ùات XBMC Ø§ÙØ®Ø§Øµ ب٠٠Ù
ÙÙØ§Øª Ø§ÙØªÙÙÙÙ ÙÙ ØØ§Ù
ÙÙÙØ¹ ØØ§Ø¯Ø« أ٠تÙ٠اÙÙ
ÙÙØ§Øª.</summary>
<summary lang="be">Backup and restore your XBMC database and configuration
files in the event of a crash or file corruption.</summary>
+ <summary lang="bg">ÐобавкаÑа може да ÑÑздава
ÑезеÑвно копие на XBMC и вÑзÑÑановÑва (Ñлед
Ñова) ÐаÑаÑа база Ð¾Ñ Ð´Ð°Ð½Ð½Ð¸ и наÑÑÑойки, в
ÑлÑÑай на необÑ
одимоÑÑ.</summary>
<summary lang="ca">Copiau i restaurau la vostra base de dades d'XBMC i els
fitxers de configuració en cas de caiguda o corrupció de fitxers.</summary>
<summary lang="da">Sikkerhedskopiér og genskab din XBMC database og
konfigurationsfiler i tilfælde af et nedbrud eller en ødelagt fil.</summary>
<summary lang="de">Die XBMC Datenbank sichern und bei Dateiverlust oder
Beschädigung wiederherstellen.</summary>
@@ -36,6 +37,7 @@
<summary lang="sv">Ta backupp av eller återställ din XBMC-databas och
konfigurationsfiler i händelse av en krash eller filkorruption.</summary>
<summary lang="zh">å¤ä»½åæ¢å¤XBMCæ°æ®åºåé
ç½®æä»¶ï¼ä»¥é²èç³»ç»å´©æºææä»¶æåé®é¢ã</summary>
<description lang="be">Ever hosed your XBMC configuration and wished you'd
had a backup? Now you can with one easy click. You can export your database,
playlist, thumbnails, addons and other configuration details to any source
writeable by XBMC or directly to Dropbox cloud storage. Backups can be run on
demand or via a scheduler. </description>
+ <description lang="bg">ÐÑкога да ÑÑе гÑбили вÑиÑки
наÑÑÑойки, коиÑо ÑÑе пÑавили по XBMC? Ð
ÑазполагаÑ
Ñе ли Ñ ÑезеÑвно копие? Ð Ñега
можеÑе да ÑÑздаваÑе ÑезеÑвни ÐºÐ¾Ð¿Ð¸Ñ Ñамо Ñ
едно кликване. ÐожеÑе да изнаÑÑÑе базаÑа оÑ
данни, плейлиÑÑиÑе, миниаÑÑÑиÑе, добавкиÑе
и дÑÑги, на вÑÑко мÑÑÑо до коеÑо XBMC има
пÑава за пиÑане или диÑекÑно в Dropbox. ÐожеÑе
да наÑÑÑоиÑе и авÑомаÑиÑно ÑÑздаване на
ÐºÐ¾Ð¿Ð¸Ñ Ð¿Ñез опÑеделен инÑеÑвал оÑ
вÑеме.</description>
<description lang="ca">Sempre canvia la configuració XBMC i ha desitjat
tinir una còpia de seguretat? Ara pot fer-ho amb un simple clic. Podeu
exportar la seva base de dades, llista de reproducció, miniatures, complements
i altres detalls de la configuració per a qualsevol complement de XBMC o
directament emmagatzemar-ho al Dropbox en el núvol. Les còpies de seguretat
es poden executar a la demanda o per mitjà d'un planificador.</description>
<description lang="da">Har du prøvet at slette din XBMC opsætning, og
ønsket at du havde haft sikkerhedskopi? Nu kan du få det med et enkelt klik.
Du kan eksportere din database, afspilninglister, miniaturebilleder, addons og
andre opsætningsdetaljer til enhver kilde, som er skrivbar for XBMC eller
direkt til Dropbox cloud lager. Sikkerhedskopier kan køres manuelt eller via
en tidsplan.</description>
<description lang="de">Jemals deine XBMC Konfiguration zerschossen und dir
dann gewünscht, dass ein Backup existiert? Jetzt kannst du eine Sicherung mit
nur einem Klick erzeugen. Du kannst deine Datenbanen, Playlisten, Thumbnails,
Addons und andere Details zu einem Ort deiner Wahl sichern.</description>
diff --git a/script.xbmcbackup/changelog.txt b/script.xbmcbackup/changelog.txt
index 3becb42..9b2e7dd 100644
--- a/script.xbmcbackup/changelog.txt
+++ b/script.xbmcbackup/changelog.txt
@@ -1,3 +1,11 @@
+Version 0.4.7
+
+fixed critical error in backup rotation
+
+Version 0.4.6
+
+modified backup folder names to include time, also modified display listing
+
Version 0.4.5
added version info to logs
diff --git a/script.xbmcbackup/default.py b/script.xbmcbackup/default.py
index 723559e..b2bd2ad 100644
--- a/script.xbmcbackup/default.py
+++ b/script.xbmcbackup/default.py
@@ -25,11 +25,15 @@ if(mode != -1):
if(mode == backup.Restore):
#allow user to select the backup to restore from
restorePoints = backup.listBackups()
+ pointNames = []
- selectedRestore = xbmcgui.Dialog().select(utils.getString(30010) +
" - " + utils.getString(30021),restorePoints)
+ for aDir in restorePoints:
+ pointNames.append(aDir[1])
+
+ selectedRestore = xbmcgui.Dialog().select(utils.getString(30010) +
" - " + utils.getString(30021),pointNames)
if(selectedRestore != -1):
- backup.selectRestore(restorePoints[selectedRestore])
+ backup.selectRestore(restorePoints[selectedRestore][0])
backup.run(mode)
else:
diff --git a/script.xbmcbackup/resources/language/Bulgarian/strings.xml
b/script.xbmcbackup/resources/language/Bulgarian/strings.xml
index fd27425..9c860bd 100644
--- a/script.xbmcbackup/resources/language/Bulgarian/strings.xml
+++ b/script.xbmcbackup/resources/language/Bulgarian/strings.xml
@@ -4,10 +4,58 @@
<!-- Report language file syntax bugs at: [email protected] -->
<strings>
- <string id="30011">General</string>
+ <string id="30010">XBMC Backup</string>
+ <string id="30011">ÐÑнови</string>
+ <string id="30012">ÐÐ·Ð±Ð¾Ñ Ð½Ð° Ñайлове</string>
+ <string id="30013">ÐланиÑане</string>
+ <string id="30016">РезеÑвно копие</string>
+ <string id="30017">ÐÑзÑÑанови</string>
+ <string id="30018">ÐÑеглеждане за пÑÑ</string>
+ <string id="30019">ÐÑвеждане на пÑÑ</string>
+ <string id="30020">ÐÑегледайÑе</string>
+ <string id="30021">Ðме на папкаÑа за ÑезеÑвниÑе
копиÑ</string>
+ <string id="30022">ÐзпÑлнÑвай "ÑиÑ
о"</string>
<string id="30023">Режим</string>
- <string id="30032">Ðаза Ð¾Ñ Ð´Ð°Ð½Ð½Ð¸</string>
- <string id="30033">ÐлейлиÑÑ</string>
+ <string id="30024">ÐÑведеÑе оÑдалеÑÐµÐ½Ð¸Ñ Ð¿ÑÑ</string>
+ <string id="30025">ÐкажеÑе пÑÑÑ Ð´Ð¾ папкаÑа Ñ
ÑезеÑвни копиÑ</string>
+ <string id="30026">Ðолко ÑезеÑвни ÐºÐ¾Ð¿Ð¸Ñ Ð´Ð° бÑдаÑ
ÑÑÑ
ÑанÑвани (0 за вÑиÑки)</string>
+ <string id="30027">Dropbox</string>
+ <string id="30028">Dropbox клÑÑ</string>
+ <string id="30029">Dropbox ÑекÑеÑен клÑÑ</string>
+ <string id="30030">Ðобавки</string>
+ <string id="30031">ÐанниÑе на добавкиÑе</string>
+ <string id="30032">ÐазаÑа данни</string>
+ <string id="30033">ÐлейлиÑÑи</string>
+ <string id="30034">ÐиниаÑÑÑи/ФанаÑÑ</string>
+ <string id="30035">ФайловеÑе Ñ Ð½Ð°ÑÑÑойки</string>
+ <string id="30036">ÐеÑÑонална диÑекÑоÑÐ¸Ñ â1</string>
+ <string id="30037">ÐеÑÑонална диÑекÑоÑÐ¸Ñ â2</string>
+ <string id="30038">ÐаÑеÑени Ñа допÑлниÑелни
наÑÑÑойки</string>
+ <string id="30039">ÐеобÑ
одимо е пÑÑво
вÑзÑÑановÑване на Ñайла "advancedsettings.xml"</string>
+ <string id="30040">ÐзбеÑеÑе "Ðа" за
вÑзÑÑановÑване Ð¾Ñ Ñайла и ÑеÑÑаÑÑиÑане на
XBMC</string>
+ <string id="30041">ÐзбеÑеÑе "Ðе" за да
пÑодÑлжиÑе</string>
+ <string id="30042">ÐÑзобнови</string>
+ <string id="30043">XBMC Backup заÑеÑе незавÑÑÑено
вÑзÑÑановÑване</string>
+ <string id="30044">ÐÑкаÑе ли да пÑодÑлжиÑе?</string>
+ <string id="30045">ÐÑеÑка: ÐÑдалеÑениÑÑ Ð¿ÑÑ Ð½Ðµ
ÑÑÑеÑÑвÑва</string>
+ <string id="30046">СÑаÑÑиÑане</string>
+ <string id="30047">Ðокална папка</string>
+ <string id="30048">ÐÑдалеÑена папка</string>
+ <string id="30049">ÐзгÑаждане на ÑпиÑÑк Ñ
Ñайлове</string>
+ <string id="30050">ÐÑдалеÑениÑÑ Ð¿ÑÑ ÑÑÑеÑÑвÑва.
ÐеÑоÑÑно ÑÑдÑÑжа ÑÑаÑи Ñайлове!</string>
+ <string id="30051">СÑздаване на ÑпиÑÑка Ñ
Ñайлове</string>
+ <string id="30052">ÐапиÑване на Ñайла</string>
+ <string id="30053">СÑздаване на ÑезеÑвно копие
(по план)</string>
+ <string id="30054">ÐÑемаÑ
ване на ÑезеÑвно
копие</string>
+ <string id="30056">Ðа оÑоÑизаÑÐ¸Ð¾Ð½Ð½Ð¸Ñ URL адÑÐµÑ Ð·Ð°
Dropbox пÑовеÑеÑе дневника</string>
+ <string id="30057">След оÑоÑизиÑанеÑо наÑиÑнеÑе
"ÐобÑе"</string>
+ <string id="30058">ÐеобÑ
одим е код за
ÑазÑабоÑÑик за Dropbox</string>
+ <string id="30059">ÐоÑеÑеÑе
https://www.dropbox.com/developers</string>
+ <string id="30060">ÐкÑивиÑай планиÑовÑика</string>
+ <string id="30061">ÐланиÑане</string>
+ <string id="30062">ЧаÑ</string>
+ <string id="30063">Ðен</string>
+ <string id="30064">Cron планиÑане</string>
<string id="30065">неделÑ</string>
<string id="30066">понеделник</string>
<string id="30067">вÑоÑник</string>
@@ -15,4 +63,14 @@
<string id="30069">ÑеÑвÑÑÑÑк</string>
<string id="30070">пеÑÑк</string>
<string id="30071">ÑÑбоÑа</string>
+ <string id="30072">ÐÑеки ден</string>
+ <string id="30073">ÐÑÑка ÑедмиÑа</string>
+ <string id="30074">ÐÑÑÐ²Ð¸Ñ Ð´ÐµÐ½ на меÑеÑа</string>
+ <string id="30075">ÐеÑÑонално планиÑане</string>
+ <string id="30076">ÐзклÑÑвай XBMC Ñлед ÑÑздаванеÑо
на ÑезеÑвно копиÑане</string>
+ <string id="30077">РеÑÑаÑÑиÑане на XBMC</string>
+ <string id="30078">ÐеобÑ
одимо е да ÑеÑÑаÑÑиÑаÑе
XBMC за да пÑодÑлжиÑе</string>
+ <string id="30079">Само днеÑ</string>
+ <string id="30080">ÐÑоÑили</string>
+ <string id="30081">ÐланиÑовÑика Ñе ÑÑаÑÑиÑа
оÑново на</string>
</strings>
diff --git a/script.xbmcbackup/resources/lib/backup.py
b/script.xbmcbackup/resources/lib/backup.py
index 1e3d45e..ea2d90d 100644
--- a/script.xbmcbackup/resources/lib/backup.py
+++ b/script.xbmcbackup/resources/lib/backup.py
@@ -6,6 +6,15 @@ import os.path
import time
from vfs import XBMCFileSystem,DropboxFileSystem
+def folderSort(aKey):
+ result = aKey[0]
+
+ if(len(result) < 8):
+ result = result + "0000"
+
+ return result
+
+
class XbmcBackup:
#constants for initiating a back or restore
Backup = 0
@@ -60,8 +69,18 @@ class XbmcBackup:
for aDir in dirs:
if(self.remote_vfs.exists(self.remote_base_path + aDir +
"/xbmcbackup.val")):
- result.append(aDir)
+ #folder may or may not contain time, older versions didn't
include this
+ folderName = ''
+ if(len(aDir) > 8):
+ folderName = aDir[6:8] + '-' + aDir[4:6] + '-' + aDir[0:4]
+ " " + aDir[8:10] + ":" + aDir[10:12]
+ else:
+ folderName = aDir[6:8] + '-' + aDir[4:6] + '-' + aDir[0:4]
+
+ result.append((aDir,folderName))
+
+ result.sort(key=folderSort)
+
return result
def selectRestore(self,restore_point):
@@ -74,7 +93,7 @@ class XbmcBackup:
#append backup folder name
progressBarTitle = utils.getString(30010) + " - "
if(mode == self.Backup and self.remote_vfs.root_path != ''):
- self.remote_vfs.set_root(self.remote_vfs.root_path +
time.strftime("%Y%m%d") + "/")
+ self.remote_vfs.set_root(self.remote_vfs.root_path +
time.strftime("%Y%m%d%H%M") + "/")
progressBarTitle = progressBarTitle + utils.getString(30016)
elif(mode == self.Restore and self.restore_point != None and
self.remote_vfs.root_path != ''):
self.remote_vfs.set_root(self.remote_vfs.root_path +
self.restore_point + "/")
@@ -355,16 +374,15 @@ class XbmcBackup:
if(len(dirs) > total_backups):
#remove backups to equal total wanted
- dirs.sort()
- remove_num = len(dirs) - total_backups - 1
+ remove_num = 0
self.filesTotal = self.filesTotal + remove_num + 1
#update the progress bar if it is available
- while(remove_num >= 0 and not self._checkCancel()):
- self._updateProgress(utils.getString(30054) + " " +
dirs[remove_num])
- utils.log("Removing backup " + dirs[remove_num])
- self.remote_vfs.rmdir(self.remote_base_path +
dirs[remove_num] + "/")
- remove_num = remove_num - 1
+ while(remove_num < (len(dirs) - total_backups) and not
self._checkCancel()):
+ self._updateProgress(utils.getString(30054) + " " +
dirs[remove_num][1])
+ utils.log("Removing backup " + dirs[remove_num][0])
+ self.remote_vfs.rmdir(self.remote_base_path +
dirs[remove_num][0] + "/")
+ remove_num = remove_num + 1
def _createValidationFile(self):
vFile = xbmcvfs.File(xbmc.translatePath(utils.data_dir() +
"xbmcbackup.val"),'w')
-----------------------------------------------------------------------
Summary of changes:
script.xbmcbackup/addon.xml | 4 +-
script.xbmcbackup/changelog.txt | 8 +++
script.xbmcbackup/default.py | 8 ++-
.../resources/language/Bulgarian/strings.xml | 64 +++++++++++++++++++-
script.xbmcbackup/resources/lib/backup.py | 36 ++++++++---
service.libraryautoupdate/addon.xml | 5 +-
service.libraryautoupdate/changelog.txt | 20 ++++++
.../resources/language/Bulgarian/strings.xml | 51 +++++++++++++++-
.../resources/language/English/strings.xml | 4 +-
service.libraryautoupdate/resources/lib/utils.py | 2 +-
service.libraryautoupdate/service.py | 16 ++++-
11 files changed, 195 insertions(+), 23 deletions(-)
hooks/post-receive
--
Scripts
------------------------------------------------------------------------------
_______________________________________________
Xbmc-addons mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/xbmc-addons