def run_details(): form = SearchForm() annotateRunForm = AnnotateRunForm() query = request.args.get('query', '') run_id = int(request.args.get('id')) db = utils.open_or_create_db() r = db.get(eid=run_id) if r is not None: diffs = db.table('filediffs').search(Query().run_id == run_id) else: flash('Run not found.', 'danger') diffs = [] r = _change_date(r) db.close() return render_template('details.html', query=query, form=form, annotateRunForm=annotateRunForm, run=r, dbfile=recipyGui.config.get('tinydb'), diffs=diffs)
def latest_run(): form = SearchForm() annotateRunForm = AnnotateRunForm() db = utils.open_or_create_db() r = get_latest_run() if r is not None: diffs = db.table('filediffs').search(Query().run_id == r.eid) else: flash('No latest run (database is empty).', 'danger') diffs = [] r = _change_date(r) db.close() return render_template('details.html', query='', form=form, run=r, annotateRunForm=annotateRunForm, dbfile=recipyGui.config.get('tinydb'), diffs=diffs, active_page='latest_run')
def index(): form = SearchForm() query = request.args.get('query', '').strip() # make sure chars like ':' and '\' are escaped properly before doing the search escaped_query = re.escape(query) if query else query db = utils.open_or_create_db() runs = search_database(db, query=escaped_query) runs = [_change_date(r) for r in runs] runs = sorted(runs, key=lambda x: x['date'], reverse=True) run_ids = [] for run in runs: if 'notes' in run.keys(): run['notes'] = str(escape(run['notes'])) run_ids.append(run.eid) db.close() return render_template('list.html', runs=runs, query=escaped_query, search_bar_query=query, form=form, run_ids=str(run_ids), dbfile=recipyGui.config.get('tinydb'))