# HG changeset patch # User Kim Alvefur # Date 1373281174 -7200 # Node ID 757647426af2dd99951b0177d5225d2e6b7d19b6 # Parent 8c9ab9920c798a4a975a4026f7e0b7a0f3dd4b3b clix.archive: Add support for paging backwards diff -r 8c9ab9920c79 -r 757647426af2 clix/archive.lua --- a/clix/archive.lua Tue Jul 02 17:06:28 2013 +0200 +++ b/clix/archive.lua Mon Jul 08 12:59:34 2013 +0200 @@ -6,6 +6,7 @@ return; end + local reverse = opts.before; if opts.start then opts.start = parse_datetime(opts.start); end @@ -40,18 +41,22 @@ for i=1,#result do print_message(result[i]); end - if result.last then + if result[reverse and "first" or "last"] then local fetch_next = opts.everything; if opts.interactive and not fetch_next then io.stderr:write "--More--" fetch_next = io.read"*l" or print(); end if fetch_next then + if reverse then + opts.before = result.first and result.first[1]; + else opts.after = result.last; + end conn:query_archive(opts.to, opts, handle_results); return else - conn:info("Next page: --after=%s", result.last); + conn:info("Next page: --%s=%s", reverse and "before" or "after", result[reverse and "first" or "last"]); end end conn:close();