import streamlit as st from google.oauth2.credentials import Credentials from google_auth_oauthlib.flow import InstalledAppFlow from googleapiclient.discovery import build from datetime import datetime, timedelta def add_to_google_calendar(symbol, company_name): """Add analysis review event to Google Calendar""" creds = Credentials.from_authorized_user_info(st.secrets["google"]) service = build('calendar', 'v3', credentials=creds) event = { 'summary': f'Stock Analysis Review - {symbol}', 'description': f'Review financial analysis for {company_name}', 'start': { 'dateTime': (datetime.now() + timedelta(days=1)).isoformat(), 'timeZone': 'UTC', }, 'end': { 'dateTime': (datetime.now() + timedelta(days=1, hours=1)).isoformat(), 'timeZone': 'UTC', }, } service.events().insert(calendarId='primary', body=event).execute() def update_google_sheet(stock_data, symbol): """Export stock data to Google Sheets""" creds = Credentials.from_authorized_user_info(st.secrets["google"]) service = build('sheets', 'v4', credentials=creds) spreadsheet_id = st.secrets["google_sheet_id"] range_name = f'{symbol}!A1' values = [stock_data.columns.tolist()] + stock_data.reset_index().values.tolist() body = {'values': values} service.spreadsheets().values().update( spreadsheetId=spreadsheet_id, range=range_name, valueInputOption='RAW', body=body ).execute()