diff --git a/app.py b/app.py index 9971418..d1521c3 100644 --- a/app.py +++ b/app.py @@ -55,7 +55,7 @@ def projects_for(profile, case_email_match, per_page, offset): # Check if case_email_match is a valid email address (contains @) if '@' in case_email_match_lower and not case_email_match_lower.startswith('@'): # If it's a complete email address, filter by exact match in viewing_emails - projects_ref = db.collection("projects").where("viewing_emails", "array_contains", case_email_match_lower) + projects_ref = db.collection("projects").where("viewing_emails", "array_contains", case_email_match_lower).where("is_archived", "==", False) cnt = int(projects_ref.count().get()[0][0].value) projects = [] for doc in projects_ref.order_by("matter_description").limit(per_page).offset(offset).stream(): @@ -69,7 +69,7 @@ def projects_for(profile, case_email_match, per_page, offset): domain_search = domain_search[1:] # Remove the @ sign # Filter by domain match in viewing_emails - projects_ref = db.collection("projects").where("viewing_domains", "array_contains", domain_search) + projects_ref = db.collection("projects").where("viewing_domains", "array_contains", domain_search).where("is_archived", "==", False) print("HERE domain", domain_search) cnt = int(projects_ref.count().get()[0][0].value) @@ -79,7 +79,7 @@ def projects_for(profile, case_email_match, per_page, offset): return (projects, cnt) else: - projects_ref = db.collection("projects") + projects_ref = db.collection("projects").where("is_archived", "==", False) else: # For non-admin users, check if they have domain email or specific case email @@ -89,10 +89,10 @@ def projects_for(profile, case_email_match, per_page, offset): if case_domain_email: # Use exact match on viewing_domains field domain_lower = case_domain_email.lower() - projects_ref = db.collection("projects").where("viewing_domains", "array_contains", domain_lower) + projects_ref = db.collection("projects").where("viewing_domains", "array_contains", domain_lower).where("is_archived", "==", False) elif case_email: # Use the original logic for specific case email match - projects_ref = db.collection("projects").where("viewing_emails", "array_contains", case_email.lower()) + projects_ref = db.collection("projects").where("viewing_emails", "array_contains", case_email.lower()).where("is_archived", "==", False) else: return ([], 0) diff --git a/query_projects.py b/query_projects.py index 3723030..9b82f72 100755 --- a/query_projects.py +++ b/query_projects.py @@ -73,13 +73,13 @@ def query_projects_for_user( domain_lower = filter_domain.lower() projects_ref = db.collection("projects").where( "viewing_domains", "array_contains", domain_lower - ) + ).where("is_archived", "==", False) else: # Email-based search email_lower = filter_email.lower() projects_ref = db.collection("projects").where( "viewing_emails", "array_contains", email_lower - ) + ).where("is_archived", "==", False) # Get total count total_count = int(projects_ref.count().get()[0][0].value)