summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThorsten Behrens <tbehrens@suse.com>2013-04-15 03:50:42 +0200
committerThorsten Behrens <tbehrens@suse.com>2013-04-15 03:54:36 +0200
commit6cd3347a3a4560dac544050fdb2e8f17a4d41092 (patch)
tree666a83c35ad76b3fb593aa6e0706cb1f139f677d
parente11f6e4d9d2b4e17b9ae7be7611a66bfb810bca7 (diff)
Track latest deck revision in 'latest' symlink.
-rwxr-xr-xslideapi.py8
1 files changed, 6 insertions, 2 deletions
diff --git a/slideapi.py b/slideapi.py
index 8e99410..f1e63fd 100755
--- a/slideapi.py
+++ b/slideapi.py
@@ -77,7 +77,7 @@ def get_lastrev(user,part,deck):
if not os.path.isdir(path):
return 0
# get last revision
- return int(sorted([rev for rev in os.listdir(path) if os.path.isdir(path+rev)], key=int)[-1])
+ return int(sorted([rev for rev in os.listdir(path) if os.path.isdir(path+rev) and rev != 'latest'], key=int)[-1])
@get('/api/users/<user>/')
def list_decks(user):
@@ -120,7 +120,7 @@ def get_revs(user,part,deck):
path = "%s/%s/%s/%s/" % (root,user,part,deck)
if not os.path.isdir(path):
return []
- return sorted([rev for rev in os.listdir(path) if os.path.isdir(path+rev)], key=int)
+ return sorted([rev for rev in os.listdir(path) if os.path.isdir(path+rev) and rev != 'latest'], key=int)
@get('/api/users/<user>/<part>/<deck>/')
def list_revs(user,part,deck):
@@ -166,6 +166,10 @@ def upload_deck(user,deck):
'upload_filename': content.filename},
out)
+ # update link to latest rev
+ os.unlink(path+'latest')
+ os.symlink(str(new_rev), path+'latest')
+
# thumbnail generation happens asynchronously via updatedeck.py
return 'Success:'+tag+':'+content.filename