Skip to content

Commit 07c2ce3

Browse files
When not logged in, redirect to login page
1 parent 09e4fc2 commit 07c2ce3

3 files changed

Lines changed: 17 additions & 9 deletions

File tree

‎efile_app/efile/templates/efile/components/profile_header.html‎

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,9 @@ <h5 class="modal-title" id="profileModalLabel">Profile Info</h5>
4949
Welcome to {{ jurisdiction_config.name }}. Here you can manage your filings and
5050
account.
5151
</p>
52+
<div class="mb-3">
53+
<span class="form-label">Current email</span>: {{profile_info.email}}
54+
</div>
5255
<div class="mb-3">
5356
<label for="profileJurisdictionSelect" class="form-label">Current Jurisdiction:</label>
5457
<select id="profileJurisdictionSelect" class="form-select" onchange="switchJurisdiction(this.value)">

‎efile_app/efile/views/expert_form.py‎

Lines changed: 11 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import logging
22

3-
from django.shortcuts import render
3+
from django.shortcuts import render, redirect
44

55
from efile.utils.config_loader import config_loader
66

@@ -12,6 +12,9 @@ def efile_expert_form(request, jurisdiction):
1212
# Log all GET parameters for debugging
1313
logger.debug(f"Expert form accessed with GET parameters: {dict(request.GET)}")
1414

15+
if not request.user.is_authenticated:
16+
return redirect("efile_login", jurisdiction=jurisdiction)
17+
1518
# Check if we need to clear cache (only when explicitly coming from options page button)
1619
clear_cache = request.GET.get("clear_cache", "false").lower() == "true"
1720
from_options = request.GET.get("from_options", "false").lower() == "true"
@@ -21,19 +24,19 @@ def efile_expert_form(request, jurisdiction):
2124
# Only clear cache if both conditions are met: clear_cache=true AND from_options=true
2225
if clear_cache and from_options:
2326
# Store auth info before clearing everything
24-
auth_tokens = request.session.get("auth_tokens", None)
25-
user_email = request.session.get("user_email", None)
27+
to_save = {
28+
k: request.session.get(k, None)
29+
for k in ["auth_tokens", "user_email", "_auth_user_id", "_auth_user_backend", "_auth_user_hash"]
30+
}
2631

2732
logger.debug("Before cache clear - session keys: %s", list(request.session.keys()))
2833

2934
# Clear ALL session data
3035
request.session.flush()
3136

32-
# Restore only essential auth info
33-
if auth_tokens:
34-
request.session["auth_tokens"] = auth_tokens
35-
if user_email:
36-
request.session["user_email"] = user_email
37+
for key, value in to_save.items():
38+
if value:
39+
request.session[key] = value
3740

3841
# Force session to save changes
3942
request.session.modified = True

‎efile_app/efile/views/options.py‎

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
from django.shortcuts import render
1+
from django.shortcuts import render, redirect
22

33
from efile.utils.config_loader import config_loader
44

@@ -7,6 +7,8 @@
77

88
def efile_options(request, jurisdiction):
99
"""Options view that displays saved case data and provides next steps."""
10+
if not request.user.is_authenticated:
11+
return redirect("efile_login", jurisdiction=jurisdiction)
1012

1113
# Get case data from session
1214
case_data = get_case_data(request)

0 commit comments

Comments
 (0)