From c8e28b284a5bd4f6e8ed761471d7ac1d3a4eb299 Mon Sep 17 00:00:00 2001 From: Sam Chau Date: Wed, 8 Jan 2025 18:54:28 +1030 Subject: [PATCH] feat: update process_format_name to handle None profile_name with Profilarr tag --- backend/app/utils/hash.py | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) diff --git a/backend/app/utils/hash.py b/backend/app/utils/hash.py index dc68e19..a569a85 100644 --- a/backend/app/utils/hash.py +++ b/backend/app/utils/hash.py @@ -1,7 +1,7 @@ # app/utils/hash.py import hashlib -from typing import Dict, Any +from typing import Dict, Any, Optional def generate_format_hash(format_name: str, profile_name: str, @@ -15,16 +15,23 @@ def generate_format_hash(format_name: str, profile_name: str, return hashlib.sha256(hash_input).hexdigest()[:8] -def process_format_name(format_name: str, profile_name: str, +def process_format_name(format_name: str, profile_name: Optional[str], arr_config: Dict[str, Any]) -> str: """ - Process a format name and generate a unique hashed version if needed. + Process a format name and generate a unique version if needed. + If profile_name is None, appends [Profilarr] tag instead of hash. """ if not arr_config.get('import_as_unique', False): return format_name - hash_value = generate_format_hash(format_name, profile_name, arr_config) - return f"{format_name} [{hash_value}]" + if profile_name: + # Format is part of a profile - use hash + hash_value = generate_format_hash(format_name, profile_name, + arr_config) + return f"{format_name} [{hash_value}]" + else: + # Standalone format - use Profilarr tag + return f"{format_name} [Profilarr]" def generate_profile_hash(profile_data: Dict[str, Any],