diff options
author | Thorsten Behrens <tbehrens@suse.com> | 2013-04-15 03:50:42 +0200 |
---|---|---|
committer | Thorsten Behrens <tbehrens@suse.com> | 2013-04-15 03:54:36 +0200 |
commit | 6cd3347a3a4560dac544050fdb2e8f17a4d41092 (patch) | |
tree | 666a83c35ad76b3fb593aa6e0706cb1f139f677d | |
parent | e11f6e4d9d2b4e17b9ae7be7611a66bfb810bca7 (diff) |
Track latest deck revision in 'latest' symlink.
-rwxr-xr-x | slideapi.py | 8 |
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 |