luli331/oppy_google
0
1from backend.mock_data import MOCK_EMAILS, MOCK_EVENTS, MOCK_SEARCH2 3 4def read_emails(project_id: str) -> str:5 """Read recent emails for a project. Returns sender, subject, body, and days since last reply."""6 emails = MOCK_EMAILS.get(project_id, [])7 if not emails:8 return f"No emails found for project {project_id}."9 lines = []10 for e in emails:11 silence = f"{e['days_since_reply']} days ago" if e["days_since_reply"] is not None else "N/A (newsletter)"12 lines.append(13 f"From: {e['from']}\n"14 f"Subject: {e['subject']}\n"15 f"Body: {e['body']}\n"16 f"Last reply: {silence}"17 )18 return "\n---\n".join(lines)19 20 21def get_events(project_id: str) -> str:22 """Get upcoming calendar events for a project. Shows title, time, and whether a prep block exists."""23 events = MOCK_EVENTS.get(project_id, [])24 if not events:25 return f"No upcoming events for project {project_id}."26 lines = []27 for ev in events:28 prep = "YES" if ev["prep_block"] else "NO"29 lines.append(f"{ev['title']} at {ev['time']} (prep block: {prep})")30 return "\n".join(lines)31 32 33def search_web(project_id: str) -> str:34 """Search for recent external signals relevant to a project (news, funding, announcements)."""35 return MOCK_SEARCH.get(project_id, "No relevant external signals found.")36 