@@ -623,6 +623,24 @@ def preferences():
623 resp.set_cookie('theme', theme, max_age=cookie_max_age)
623 resp.set_cookie('theme', theme, max_age=cookie_max_age)
625 return resp
625 return resp
627+ # stats for preferences page
630+ for c in categories:
631+ for e in categories[c]:
632+ stats[e.name] = {'time': None,
633+ 'warn_timeout': False,
635+ if e.timeout > settings['server']['request_timeout']:
636+ stats[e.name]['warn_timeout'] = True
638+ for engine_stat in get_engines_stats()[0][1]:
639+ stats[engine_stat.get('name')]['time'] = round(engine_stat.get('avg'), 3)
640+ if engine_stat.get('avg') > settings['server']['request_timeout']:
641+ stats[engine_stat.get('name')]['warn_time'] = True
626 return render('preferences.html',
644 return render('preferences.html',
627 locales=settings['locales'],
645 locales=settings['locales'],
628 current_locale=get_locale(),
646 current_locale=get_locale(),
@@ -630,6 +648,7 @@ def preferences():
630 image_proxy=image_proxy,
648 image_proxy=image_proxy,
631 language_codes=language_codes,
649 language_codes=language_codes,
632 engines_by_category=categories,
650 engines_by_category=categories,
633 blocked_engines=blocked_engines,
652 blocked_engines=blocked_engines,
634 autocomplete_backends=autocomplete_backends,
653 autocomplete_backends=autocomplete_backends,
635 shortcuts={y: x for x, y in engine_shortcuts.items()},
654 shortcuts={y: x for x, y in engine_shortcuts.items()},