def usage(service_id): try: year = int(request.args.get('year', 2016)) except ValueError: abort(404) return render_template( 'views/usage.html', months=get_free_paid_breakdown_for_billable_units( year, service_api_client.get_billable_units(service_id, year)), year=year, **calculate_usage( service_api_client.get_service_usage(service_id)['data']))
def usage(service_id): try: year = int(request.args.get('year', 2016)) except ValueError: abort(404) return render_template( 'views/usage.html', months=get_free_paid_breakdown_for_billable_units( year, service_api_client.get_billable_units(service_id, year) ), year=year, **calculate_usage(service_api_client.get_service_usage(service_id)['data']) )
def get_dashboard_partials(service_id): # all but scheduled and cancelled statuses_to_display = job_api_client.JOB_STATUSES - { 'scheduled', 'cancelled' } template_statistics = aggregate_usage( template_statistics_client.get_template_statistics_for_service( service_id, limit_days=7)) scheduled_jobs = sorted(job_api_client.get_jobs(service_id, statuses=['scheduled' ])['data'], key=lambda job: job['scheduled_for']) immediate_jobs = [ add_rate_to_job(job) for job in job_api_client.get_jobs( service_id, limit_days=7, statuses=statuses_to_display)['data'] ] service = service_api_client.get_detailed_service(service_id) return { 'upcoming': render_template('views/dashboard/_upcoming.html', scheduled_jobs=scheduled_jobs), 'totals': render_template('views/dashboard/_totals.html', service_id=service_id, statistics=get_dashboard_totals( service['data']['statistics'])), 'template-statistics': render_template( 'views/dashboard/template-statistics.html', template_statistics=template_statistics, most_used_template_count=max( [row['count'] for row in template_statistics] or [0]), ), 'has_template_statistics': bool(template_statistics), 'jobs': render_template('views/dashboard/_jobs.html', jobs=immediate_jobs), 'has_jobs': bool(immediate_jobs), 'usage': render_template( 'views/dashboard/_usage.html', **calculate_usage( service_api_client.get_service_usage(service_id)['data'])), }
def get_dashboard_partials(service_id): # all but scheduled and cancelled statuses_to_display = job_api_client.JOB_STATUSES - {'scheduled', 'cancelled'} template_statistics = aggregate_usage( template_statistics_client.get_template_statistics_for_service(service_id, limit_days=7) ) scheduled_jobs = sorted( job_api_client.get_jobs(service_id, statuses=['scheduled'])['data'], key=lambda job: job['scheduled_for'] ) immediate_jobs = [ add_rate_to_job(job) for job in job_api_client.get_jobs(service_id, limit_days=7, statuses=statuses_to_display)['data'] ] service = service_api_client.get_detailed_service(service_id) return { 'upcoming': render_template( 'views/dashboard/_upcoming.html', scheduled_jobs=scheduled_jobs ), 'totals': render_template( 'views/dashboard/_totals.html', service_id=service_id, statistics=get_dashboard_totals(service['data']['statistics']) ), 'template-statistics': render_template( 'views/dashboard/template-statistics.html', template_statistics=template_statistics, most_used_template_count=max( [row['count'] for row in template_statistics] or [0] ), ), 'has_template_statistics': bool(template_statistics), 'jobs': render_template( 'views/dashboard/_jobs.html', jobs=immediate_jobs ), 'has_jobs': bool(immediate_jobs), 'usage': render_template( 'views/dashboard/_usage.html', **calculate_usage(service_api_client.get_service_usage(service_id)['data']) ), }
def get_dashboard_partials(service_id): template_statistics = aggregate_usage( template_statistics_client.get_template_statistics_for_service(service_id, limit_days=7) ) jobs = add_rate_to_jobs(filter( lambda job: job['original_file_name'] != current_app.config['TEST_MESSAGE_FILENAME'], job_api_client.get_job(service_id, limit_days=7)['data'] )) service = service_api_client.get_detailed_service(service_id) return { 'totals': render_template( 'views/dashboard/_totals.html', service_id=service_id, statistics=get_dashboard_totals(service['data']['statistics']) ), 'template-statistics': render_template( 'views/dashboard/template-statistics.html', template_statistics=template_statistics, most_used_template_count=max( [row['usage_count'] for row in template_statistics] or [0] ), ), 'has_template_statistics': bool(template_statistics), 'jobs': render_template( 'views/dashboard/_jobs.html', jobs=jobs ), 'has_jobs': bool(jobs), 'usage': render_template( 'views/dashboard/_usage.html', **calculate_usage(service_api_client.get_service_usage(service_id)['data']) ), }
def usage(service_id): return render_template( 'views/usage.html', **calculate_usage(service_api_client.get_service_usage(service_id)['data']) )