Activity handler always returns page-size records or remainder

Code that produces activity log is moved to helper, dups are cleared

Closes bug 1259464

Change-Id: I42d53862ae00a849696b2e44a0881381c1c511e9
This commit is contained in:
Ilya Shakhat
2013-12-11 13:42:49 +04:00
committed by Gerrit Code Review
parent c5d8f09fe6
commit 75a214098d
2 changed files with 8 additions and 18 deletions

View File

@@ -105,19 +105,18 @@ def extend_user(user):
return user
def get_activity(records, start_record=0,
page_size=parameters.DEFAULT_RECORDS_LIMIT):
def get_activity(records, start_record, page_size):
records_sorted = sorted(records, key=lambda x: x['date'], reverse=True)
result = []
for record in records:
for record in records_sorted[start_record:]:
processed_record = extend_record(record)
if processed_record:
result.append(processed_record)
if len(result) == page_size:
break
result.sort(key=lambda x: x['date'], reverse=True)
if page_size == -1:
return result[start_record:]
else:
return result[start_record:start_record + page_size]
return result
def get_contribution_summary(records):

View File

@@ -176,16 +176,7 @@ def get_activity_json(records):
start_record = int(flask.request.args.get('start_record') or 0)
page_size = int(flask.request.args.get('page_size') or
parameters.DEFAULT_RECORDS_LIMIT)
records_sorted = sorted(records, key=lambda x: x['date'], reverse=True)
records_sorted = records_sorted[start_record:start_record + page_size]
result = []
for record in records_sorted:
processed_record = helpers.extend_record(record)
if processed_record:
result.append(processed_record)
return result
return helpers.get_activity(records, start_record, page_size)
@app.route('/api/1.0/contribution')