Compare commits
9 Commits
fix/mobile
...
90372a6a6d
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
90372a6a6d | ||
|
|
c01764243f | ||
|
|
dfaac4caf8 | ||
|
|
17c3a2f888 | ||
|
|
fa0f68e3b4 | ||
|
|
a6c698c6bd | ||
|
|
07c272c96a | ||
|
|
975a337af4 | ||
|
|
3671926430 |
5
Makefile
5
Makefile
@@ -1,8 +1,11 @@
|
||||
.PHONY: deploy build up down restart logs migrate migrate-new frontend test
|
||||
.PHONY: deploy redeploy build up down restart logs migrate migrate-new frontend test
|
||||
|
||||
# Build and deploy
|
||||
deploy: build up
|
||||
|
||||
redeploy:
|
||||
git pull && $(MAKE) down && $(MAKE) up
|
||||
|
||||
build:
|
||||
docker compose build raggr
|
||||
|
||||
|
||||
3
app.py
3
app.py
@@ -1,5 +1,6 @@
|
||||
import logging
|
||||
import os
|
||||
from datetime import timedelta
|
||||
|
||||
from dotenv import load_dotenv
|
||||
from quart import Quart, jsonify, render_template, request, send_from_directory
|
||||
@@ -38,6 +39,8 @@ app = Quart(
|
||||
)
|
||||
|
||||
app.config["JWT_SECRET_KEY"] = os.getenv("JWT_SECRET_KEY", "SECRET_KEY")
|
||||
app.config["JWT_ACCESS_TOKEN_EXPIRES"] = timedelta(hours=1)
|
||||
app.config["JWT_REFRESH_TOKEN_EXPIRES"] = timedelta(days=30)
|
||||
app.config["MAX_CONTENT_LENGTH"] = 10 * 1024 * 1024 # 10 MB upload limit
|
||||
jwt = JWTManager(app)
|
||||
|
||||
|
||||
@@ -275,7 +275,7 @@ async def create_conversation():
|
||||
async def get_all_conversations():
|
||||
user_uuid = get_jwt_identity()
|
||||
user = await blueprints.users.models.User.get(id=user_uuid)
|
||||
conversations = Conversation.filter(user=user)
|
||||
conversations = Conversation.filter(user=user).order_by("-updated_at")
|
||||
serialized_conversations = await PydListConversation.from_queryset(conversations)
|
||||
|
||||
return jsonify(serialized_conversations.model_dump())
|
||||
|
||||
@@ -19,6 +19,12 @@ async def add_message_to_conversation(
|
||||
image_key: str | None = None,
|
||||
) -> ConversationMessage:
|
||||
print(conversation, message, speaker)
|
||||
|
||||
# Name the conversation after the first user message
|
||||
if speaker == "user" and not await conversation.messages.all().exists():
|
||||
conversation.name = message[:100]
|
||||
await conversation.save()
|
||||
|
||||
message = await ConversationMessage.create(
|
||||
text=message,
|
||||
speaker=speaker,
|
||||
|
||||
@@ -35,7 +35,7 @@ class OIDCUserService:
|
||||
claims.get("preferred_username") or claims.get("name") or user.username
|
||||
)
|
||||
# Update LDAP groups from claims
|
||||
user.ldap_groups = claims.get("groups", [])
|
||||
user.ldap_groups = claims.get("groups") or []
|
||||
await user.save()
|
||||
return user
|
||||
|
||||
@@ -48,7 +48,7 @@ class OIDCUserService:
|
||||
user.oidc_subject = oidc_subject
|
||||
user.auth_provider = "oidc"
|
||||
user.password = None # Clear password
|
||||
user.ldap_groups = claims.get("groups", [])
|
||||
user.ldap_groups = claims.get("groups") or []
|
||||
await user.save()
|
||||
return user
|
||||
|
||||
@@ -61,7 +61,7 @@ class OIDCUserService:
|
||||
)
|
||||
|
||||
# Extract LDAP groups from claims
|
||||
groups = claims.get("groups", [])
|
||||
groups = claims.get("groups") or []
|
||||
|
||||
user = await User.create(
|
||||
id=uuid4(),
|
||||
|
||||
Reference in New Issue
Block a user