This commit is contained in:
Markos Gogoulos
2025-12-28 14:31:19 +02:00
parent f67d2a4d78
commit 3a40fc6d88
2 changed files with 9 additions and 7 deletions

View File

@@ -23,7 +23,7 @@ class DjangoOIDCLogin:
"""Get the redirect object for OIDC login""" """Get the redirect object for OIDC login"""
from pylti1p3.oidc_login import OIDCLogin from pylti1p3.oidc_login import OIDCLogin
oidc_login = OIDCLogin(self.request, self.tool_config, launch_data_storage=self.launch_data_storage) oidc_login = OIDCLogin(self.request, self.tool_config, session_service=self.launch_data_storage, cookie_service=self.launch_data_storage)
return oidc_login.enable_check_cookies().redirect(redirect_url) return oidc_login.enable_check_cookies().redirect(redirect_url)
@@ -40,7 +40,7 @@ class DjangoMessageLaunch:
"""Validate the LTI launch message""" """Validate the LTI launch message"""
from pylti1p3.message_launch import MessageLaunch from pylti1p3.message_launch import MessageLaunch
message_launch = MessageLaunch(self.request, self.tool_config, launch_data_storage=self.launch_data_storage) message_launch = MessageLaunch(self.request, self.tool_config, session_service=self.launch_data_storage, cookie_service=self.launch_data_storage)
return message_launch return message_launch

View File

@@ -85,9 +85,10 @@ class OIDCLoginView(View):
# Create tool config for this platform # Create tool config for this platform
tool_config = DjangoToolConfig.from_platform(platform) tool_config = DjangoToolConfig.from_platform(platform)
# Create OIDC login handler # Create OIDC login handler with session and cookie services
launch_data_storage = DjangoSessionService(request) session_service = DjangoSessionService(request)
oidc_login = OIDCLogin(request, tool_config, launch_data_storage=launch_data_storage) cookie_service = DjangoSessionService(request) # Using same service for cookies
oidc_login = OIDCLogin(request, tool_config, session_service=session_service, cookie_service=cookie_service)
# Redirect to platform's authorization endpoint # Redirect to platform's authorization endpoint
redirect_obj = oidc_login.enable_check_cookies().redirect(target_link_uri) redirect_obj = oidc_login.enable_check_cookies().redirect(target_link_uri)
@@ -138,8 +139,9 @@ class LaunchView(View):
tool_config = DjangoToolConfig.from_platform(platform) tool_config = DjangoToolConfig.from_platform(platform)
# Validate JWT and get launch data # Validate JWT and get launch data
launch_data_storage = DjangoSessionService(request) session_service = DjangoSessionService(request)
message_launch = MessageLaunch(request, tool_config, launch_data_storage=launch_data_storage) cookie_service = DjangoSessionService(request)
message_launch = MessageLaunch(request, tool_config, session_service=session_service, cookie_service=cookie_service)
# Get validated launch data # Get validated launch data
launch_data = message_launch.get_launch_data() launch_data = message_launch.get_launch_data()