Implement flask-breadcrumbs everywhere

This commit is contained in:
Patrick Jentsch
2023-03-14 11:13:35 +01:00
parent bac526b927
commit c91004d6ba
38 changed files with 509 additions and 443 deletions

View File

@ -1,19 +1,27 @@
from flask import (
abort,
current_app,
redirect,
render_template,
send_from_directory
send_from_directory,
url_for
)
from flask_breadcrumbs import register_breadcrumb
from flask_login import current_user, login_required
from threading import Thread
import os
from app import db
from app.decorators import admin_required
from app.models import Job, JobInput, JobResult, JobStatus
from app.models import Job, JobInput, JobResult
from . import bp
from .utils import job_dynamic_list_constructor as job_dlc
@bp.route('')
@register_breadcrumb(bp, '.', '<i class="nopaque-icons left">J</i>My Jobs')
@login_required
def corpora():
return redirect(url_for('main.dashboard', _anchor='jobs'))
@bp.route('/<hashid:job_id>')
@register_breadcrumb(bp, '.job', '', dynamic_list_constructor=job_dlc)
@login_required
def job(job_id):
job = Job.query.get_or_404(job_id)

13
app/jobs/utils.py Normal file
View File

@ -0,0 +1,13 @@
from flask import request, url_for
from app.models import Job
def job_dynamic_list_constructor():
job_id = request.view_args['job_id']
job = Job.query.get(job_id)
return [
{
'text': f'<i class="nopaque-icons left service-icons" data-service="{job.service}"></i>{job.title}',
'url': url_for('.job', job_id=job_id)
}
]