Ejemplo n.º 1
0
def dashboard():
    page_number = request.args.get('page_number')
    if not page_number:
        page_number = 1
    
    page_number = int(page_number)
    if page_number < 1 :
        return 'Invalid.'
    
    uploaded = Audit.find({'username': session['username'], 'type': 'upload'}).count()
    checked = Audit.find({'username': session['username'], 'type': 'check'}).count()
    
    per_page = 15
    total_logs = Audit.find({'username': session['username']}).count()
    total_pages = total_logs / per_page
    if total_logs % per_page:
        total_pages += 1
    
    if total_pages > 1:
        show_pagination_link = True
    else:
        show_pagination_link = False
    
    audit_logs = []
    for log in Audit.find({'username': session['username']}).sort('_id', -1).skip(per_page * (page_number - 1)).limit(per_page):
        audit_logs.append(log)
    
    audit_logs = [format_ts(audit_log) for audit_log in audit_logs]
    return render_template('dashboard.html', audit_logs=audit_logs, \
                           uploaded=uploaded, checked=checked, \
                           page_number=page_number, total_pages=total_pages,\
                           show_pagination_link=show_pagination_link)