UTI: Move constatns to a separate file
[csit.git] / resources / tools / dash / app / pal / trending / trending.py
index 4edf831..3697f71 100644 (file)
 """Instantiate the Trending Dash applocation.
 """
 import dash
-from dash import dcc
-from dash import html
-from dash import dash_table
-import numpy as np
-import pandas as pd
 
-from .data import create_dataframe
+from ..utils.constants import Constants as C
 from .layout import Layout
 
 
-def init_trending(server):
+def init_trending(server, time_period=None):
     """Create a Plotly Dash dashboard.
 
     :param server: Flask server.
@@ -35,40 +30,19 @@ def init_trending(server):
 
     dash_app = dash.Dash(
         server=server,
-        routes_pathname_prefix=u"/trending/",
-        external_stylesheets=[
-            u"/static/dist/css/styles.css",
-            u"https://fonts.googleapis.com/css?family=Lato",
-        ],
+        routes_pathname_prefix=C.TREND_ROUTES_PATHNAME_PREFIX,
+        external_stylesheets=C.EXTERNAL_STYLESHEETS
     )
 
-    # Load DataFrame
-    df = create_dataframe()
-
-    # Custom HTML layout
     layout = Layout(
         app=dash_app,
-        html_layout_file="pal/trending/html_layout.txt",
-        spec_file="pal/trending/spec_test_selection.yaml"
+        html_layout_file=C.TREND_HTML_LAYOUT_FILE,
+        graph_layout_file=C.TREND_GRAPH_LAYOUT_FILE,
+        data_spec_file=C.DATA_SPEC_FILE,
+        tooltip_file=C.TOOLTIP_FILE,
+        time_period=time_period
     )
     dash_app.index_string = layout.html_layout
     dash_app.layout = layout.add_content()
 
     return dash_app.server
-
-
-def create_data_table(df):
-    """Create Dash datatable from Pandas DataFrame.
-
-    DEMO
-    """
-
-    table = dash_table.DataTable(
-        id=u"database-table",
-        columns=[{u"name": i, u"id": i} for i in df.columns],
-        data=df.to_dict(u"records"),
-        sort_action=u"native",
-        sort_mode=u"native",
-        page_size=10,
-    )
-    return table