diff --git a/ennstatus/status/functions.py b/ennstatus/status/functions.py --- a/ennstatus/status/functions.py +++ b/ennstatus/status/functions.py @@ -2,6 +2,7 @@ import os import os.path import json +from collections import defaultdict def _load_single_server(name): @@ -50,3 +51,13 @@ def all_servers_by_type(type): for server in all_servers(): if server['server_type'] == type: yield server + + +def split_all_servers_to_types(): + + servers = defaultdict(list) + + for server in all_servers(): + servers[server['server_type']].append(server) + + return servers diff --git a/ennstatus/status/views.py b/ennstatus/status/views.py --- a/ennstatus/status/views.py +++ b/ennstatus/status/views.py @@ -1,8 +1,7 @@ -from collections import defaultdict from flask import Blueprint, render_template, current_app -from ennstatus.status.functions import (all_servers, all_servers_by_type, - single_server) +from ennstatus.status.functions import (all_servers_by_type, single_server, + split_all_servers_to_types) status_page = Blueprint('status', __name__) @@ -10,9 +9,8 @@ status_page = Blueprint('status', __name @status_page.route('/') def index(): current_app.logger.info('Handling status index!') - servers = defaultdict(list) - for server in all_servers(): - servers[server['server_type']].append(server) + + servers = split_all_servers_to_types() current_app.logger.info('Returning servers') return render_template('status/index.html', exit=servers['Exit'],