Jon Solow commited on
Commit
e80e35a
β€’
1 Parent(s): 908a575

Update to filter pages and reorder

Browse files
src/Home.py CHANGED
@@ -2,6 +2,7 @@ import streamlit as st
2
 
3
  from config import DEFAULT_ICON, LEAGUE_NAME
4
  from login_component import get_authorization_button
 
5
 
6
 
7
  def get_app():
@@ -19,6 +20,7 @@ def get_app():
19
  """
20
  )
21
 
 
22
 
23
  if __name__ == "__main__":
24
  get_app()
 
2
 
3
  from config import DEFAULT_ICON, LEAGUE_NAME
4
  from login_component import get_authorization_button
5
+ from page_selector import remove_seasonal_pages
6
 
7
 
8
  def get_app():
 
20
  """
21
  )
22
 
23
+ remove_seasonal_pages()
24
 
25
  if __name__ == "__main__":
26
  get_app()
src/page_selector.py ADDED
@@ -0,0 +1,31 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ from streamlit.source_util import get_pages
2
+
3
+
4
+ SEASON_MODE = "season"
5
+ OFFSEASON_MODE = "offseason"
6
+
7
+ CURRENT_MODE = SEASON_MODE
8
+
9
+ MAIN_PAGE_FILE = "Home.py"
10
+
11
+ MODE_PAGE_EXCLUSION_MAP = {
12
+ SEASON_MODE: [
13
+ "Keepers",
14
+ "ECR",
15
+ ],
16
+ OFFSEASON_MODE: [
17
+ "Practice_Reports"
18
+ ],
19
+ }
20
+
21
+
22
+ def remove_seasonal_pages():
23
+ all_pages = get_pages(MAIN_PAGE_FILE)
24
+ pages_to_remove = MODE_PAGE_EXCLUSION_MAP[CURRENT_MODE]
25
+
26
+ page_keys_to_remove = []
27
+ for k, v in all_pages.items():
28
+ if v["page_name"] in pages_to_remove:
29
+ page_keys_to_remove.append(k)
30
+ for k_remove in page_keys_to_remove:
31
+ del all_pages[k_remove]
src/pages/1_Keepers.py CHANGED
@@ -4,7 +4,7 @@ import pandas as pd
4
  import streamlit as st
5
 
6
  from config import DEFAULT_ICON, LEAGUE_NAME, LEAGUE_NUMBER_TEAMS
7
- from login_component import get_authorization_button
8
  from streamlit_filter import filter_dataframe
9
 
10
 
@@ -166,7 +166,7 @@ def filtered_keeper_dataframe(data: pd.DataFrame, teams_list: list[str]):
166
  def get_keeper_app():
167
  keeper_title = f"{LEAGUE_NAME} Keeper Options"
168
  st.set_page_config(page_title=keeper_title, page_icon=DEFAULT_ICON, layout="wide")
169
- get_authorization_button()
170
  st.title(keeper_title)
171
  data, teams_list = load_data()
172
 
 
4
  import streamlit as st
5
 
6
  from config import DEFAULT_ICON, LEAGUE_NAME, LEAGUE_NUMBER_TEAMS
7
+ from shared_page import common_page_config
8
  from streamlit_filter import filter_dataframe
9
 
10
 
 
166
  def get_keeper_app():
167
  keeper_title = f"{LEAGUE_NAME} Keeper Options"
168
  st.set_page_config(page_title=keeper_title, page_icon=DEFAULT_ICON, layout="wide")
169
+ common_page_config()
170
  st.title(keeper_title)
171
  data, teams_list = load_data()
172
 
src/pages/3_ECR.py CHANGED
@@ -3,7 +3,7 @@ import pandas as pd
3
  import streamlit as st
4
 
5
  from config import DEFAULT_ICON
6
- from login_component import get_authorization_button
7
  from streamlit_filter import filter_dataframe
8
 
9
 
@@ -76,7 +76,7 @@ def filtered_ecr_dataframe(data: pd.DataFrame, ranking_type_list: list[str]):
76
  def get_keeper_app():
77
  keeper_title = "Expert Consensus Rankings"
78
  st.set_page_config(page_title=keeper_title, page_icon=DEFAULT_ICON, layout="wide")
79
- get_authorization_button()
80
  st.title(keeper_title)
81
  data, ecr_type_list = load_data()
82
 
 
3
  import streamlit as st
4
 
5
  from config import DEFAULT_ICON
6
+ from shared_page import common_page_config
7
  from streamlit_filter import filter_dataframe
8
 
9
 
 
76
  def get_keeper_app():
77
  keeper_title = "Expert Consensus Rankings"
78
  st.set_page_config(page_title=keeper_title, page_icon=DEFAULT_ICON, layout="wide")
79
+ common_page_config()
80
  st.title(keeper_title)
81
  data, ecr_type_list = load_data()
82
 
src/pages/{4_PracticeReports.py β†’ 4_Practice_Reports.py} RENAMED
@@ -2,7 +2,7 @@ import datetime
2
  import streamlit as st
3
 
4
  from config import DEFAULT_ICON
5
- from login_component import get_authorization_button
6
 
7
  from queries.nfl_teams.practice_reports import scrape_all_team_injury_report, CURRENT_SEASON, CURRENT_WEEK
8
 
@@ -21,7 +21,7 @@ def load_data():
21
  def get_page():
22
  page_title = f"Team Practice Reports - {CURRENT_SEASON} Week {CURRENT_WEEK}"
23
  st.set_page_config(page_title=page_title, page_icon=DEFAULT_ICON, layout="wide")
24
- get_authorization_button()
25
  st.title(page_title)
26
  data, teams_list, position_list, status_list, last_practice_day_list, data_load_time_str = load_data()
27
  st.write(f"Data loaded as of: {data_load_time_str} UTC")
 
2
  import streamlit as st
3
 
4
  from config import DEFAULT_ICON
5
+ from shared_page import common_page_config
6
 
7
  from queries.nfl_teams.practice_reports import scrape_all_team_injury_report, CURRENT_SEASON, CURRENT_WEEK
8
 
 
21
  def get_page():
22
  page_title = f"Team Practice Reports - {CURRENT_SEASON} Week {CURRENT_WEEK}"
23
  st.set_page_config(page_title=page_title, page_icon=DEFAULT_ICON, layout="wide")
24
+ common_page_config()
25
  st.title(page_title)
26
  data, teams_list, position_list, status_list, last_practice_day_list, data_load_time_str = load_data()
27
  st.write(f"Data loaded as of: {data_load_time_str} UTC")
src/pages/{2_Rules.py β†’ 99_Keeper_Rules.py} RENAMED
@@ -1,12 +1,12 @@
1
  import streamlit as st
2
 
3
  from config import DEFAULT_ICON, LEAGUE_NAME
4
- from login_component import get_authorization_button
5
 
6
 
7
  page_title = f"{LEAGUE_NAME} Keeper Rules"
8
  st.set_page_config(page_title=page_title, page_icon=DEFAULT_ICON)
9
- get_authorization_button()
10
  st.title(page_title)
11
  st.markdown(
12
  """
 
1
  import streamlit as st
2
 
3
  from config import DEFAULT_ICON, LEAGUE_NAME
4
+ from shared_page import common_page_config
5
 
6
 
7
  page_title = f"{LEAGUE_NAME} Keeper Rules"
8
  st.set_page_config(page_title=page_title, page_icon=DEFAULT_ICON)
9
+ common_page_config()
10
  st.title(page_title)
11
  st.markdown(
12
  """
src/shared_page.py ADDED
@@ -0,0 +1,7 @@
 
 
 
 
 
 
 
 
1
+ from page_selector import remove_seasonal_pages
2
+ from login_component import get_authorization_button
3
+
4
+
5
+ def common_page_config():
6
+ get_authorization_button()
7
+ remove_seasonal_pages()