File size: 726 Bytes
69c9e26
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
import streamlit as st

import sheets_backend as sheets


def get_workbook():
    """Returns the logged-in user's Sheets workbook, or None for anonymous sessions.

    Shared by every page that needs Sheets data, keyed off the access token
    app.py's login/Connect-Drive flow populates in session_state.
    """
    if "auth" not in st.secrets or not st.user.is_logged_in:
        return None
    access_token = st.session_state.get("google_access_token")
    if not access_token:
        return None
    if "shared_workbook" not in st.session_state:
        st.session_state.shared_workbook = sheets.get_or_create_user_workbook(
            access_token, st.user.email
        )
    return st.session_state.shared_workbook