mirror of
https://github.com/QuivrHQ/quivr.git
synced 2024-12-16 01:55:15 +03:00
73d5e7b808
This pull request fixes the `get_brain_details` API by adding a `user_id` parameter. Previously, the API did not include the `user_id` parameter, which caused issues when retrieving brain details. This fix ensures that the `user_id` is passed correctly to the API, allowing for accurate retrieval of brain details.
51 lines
1.4 KiB
Python
51 lines
1.4 KiB
Python
from uuid import UUID
|
|
|
|
from logger import get_logger
|
|
from models import BrainSettings, BrainSubscription
|
|
from modules.brain.service.brain_service import BrainService
|
|
from packages.emails.send_email import send_email
|
|
from repository.brain_subscription import get_brain_url
|
|
|
|
logger = get_logger(__name__)
|
|
|
|
brain_service = BrainService()
|
|
|
|
|
|
def resend_invitation_email(
|
|
brain_subscription: BrainSubscription,
|
|
inviter_email: str,
|
|
user_id: UUID,
|
|
origin: str = "https://www.quivr.app",
|
|
):
|
|
brains_settings = BrainSettings() # pyright: ignore reportPrivateUsage=none
|
|
|
|
brain_url = get_brain_url(origin, brain_subscription.brain_id)
|
|
|
|
invitation_brain = brain_service.get_brain_details(
|
|
brain_subscription.brain_id, user_id
|
|
)
|
|
if invitation_brain is None:
|
|
raise Exception("Brain not found")
|
|
brain_name = invitation_brain.name
|
|
|
|
html_body = f"""
|
|
<p>Brain {brain_name} has been shared with you by {inviter_email}.</p>
|
|
<p><a href='{brain_url}'>Click here</a> to access your brain.</p>
|
|
"""
|
|
|
|
try:
|
|
r = send_email(
|
|
{
|
|
"from": brains_settings.resend_email_address,
|
|
"to": brain_subscription.email,
|
|
"subject": "Quivr - Brain Shared With You",
|
|
"html": html_body,
|
|
}
|
|
)
|
|
logger.info("Resend response", r)
|
|
except Exception as e:
|
|
logger.error(f"Error sending email: {e}")
|
|
return
|
|
|
|
return r
|