File size: 1,965 Bytes
f05af08 a3c0746 b7f1486 a3c0746 050fd9f a3c0746 3894ea2 a3c0746 e11a10a 050fd9f e11a10a a3c0746 050fd9f a3c0746 f05af08 a3c0746 e11a10a a3c0746 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 |
import pandas as pd
import streamlit as st
from config import DEFAULT_ICON
from shared_page import common_page_config
from data_storage import add_new_user, is_admin, migrate_players_from_week
def admin_add_new_user():
add_new_user(
st.session_state["admin_new_user_email"], st.session_state["admin_new_user_name"], st.session_state["db_client"]
)
def admin_add_new_user_form():
if st.button("Add new user"):
with st.form("Add new user"):
st.header("Admin add new user")
st.write("Adds new user to sqlite db")
st.text_input("Email Address", key="admin_new_user_email")
st.text_input("Name", key="admin_new_user_name")
st.form_submit_button("Submit", on_click=admin_add_new_user)
def migrate_players_week():
with st.container():
st.header("Utility for migrating players to the next week")
week_migrate_from = st.selectbox("week to migrate from", options=[1, 2, 3])
st.text_input("Enter week to confirm", key="week_migrate_from")
if st.button("Migrate Week"):
if st.session_state.get("week_migrate_from") == str(week_migrate_from):
migrate_players_from_week(week_migrate_from, st.session_state["db_client"])
st.warning("Week migrated")
else:
st.warning("Must confirm migration by entering matching week")
def get_page():
page_title = "Admin"
st.set_page_config(page_title=page_title, page_icon=DEFAULT_ICON, layout="wide")
common_page_config()
if not is_admin(st.session_state.get("logged_in_user"), st.session_state["db_client"]):
st.write("Not authorized")
st.stop()
st.title(page_title)
date_compare = pd.Timestamp.now(tz="America/New_York")
st.write(f"Current datetime for use in roster lock: {date_compare}")
admin_add_new_user_form()
migrate_players_week()
if __name__ == "__main__":
get_page()
|