| | import json |
| | import os |
| |
|
| |
|
| | RESOURCE_DIR = os.path.join(os.path.dirname(os.path.dirname(os.path.abspath(__file__))), "resources") |
| | with open(os.path.join(RESOURCE_DIR, "_defaults.json"), "r") as f: |
| | _defaults = json.load(f) |
| |
|
| |
|
| | def get_qualitative_aversion(level: float, aversion_type: str) -> str: |
| | if aversion_type == "HIGH": |
| | if level <= 2: |
| | return "GOOD" |
| | elif level <= 3: |
| | return "ACCEPTABLE" |
| | else: |
| | return "BAD" |
| | elif aversion_type == "LOW-HIGH": |
| | if level <= 1 or level >= 5: |
| | return "BAD" |
| | elif level <= 2 or level >= 4: |
| | return "ACCEPTABLE" |
| | else: |
| | return "GOOD" |
| | else: |
| | raise ValueError(f"Unknown aversion type: {aversion_type}") |
| |
|
| |
|
| | def get_aversion_color(value: float, aversion_type: str) -> str: |
| | return _defaults["aversion_levels_colors"][ |
| | get_qualitative_aversion(value, aversion_type) |
| | ] |
| |
|
| |
|
| | def get_aversion_feedback(value: float, aversion_type: str) -> str: |
| | aversion_quality = _defaults["aversion_levels_colors"][ |
| | get_qualitative_aversion(value, aversion_type) |
| | ] |
| | if aversion_quality == "GOOD": |
| | return "✓ Livello di avversione basso - Buono" |
| | elif aversion_quality == "ACCEPTABLE": |
| | return "⚠ Livello di avversione moderato - Attenzione" |
| | elif aversion_quality == "BAD": |
| | return "✗ Livello di avversione alto - Evitare" |
| | else: |
| | return "Livello di avversione registrato" |
| |
|
| |
|
| | def get_qualitative_compatibility(level: float) -> str: |
| | if level >= 85: |
| | return "GOOD" |
| | elif level >= 70: |
| | return "ACCEPTABLE" |
| | else: |
| | return "BAD" |
| |
|
| |
|
| | def get_compatibility_color(level: float) -> str: |
| | return _defaults["aversion_levels_colors"][get_qualitative_compatibility(level)] |
| |
|
| |
|
| | def check_image_url(pois: list[dict]) -> None: |
| | """Check if image URLs are valid, if not, set a default placeholder.""" |
| | for p in pois: |
| | if p.get("image_url:token_seq") is None: |
| | p["image_url:token_seq"] = ( |
| | "https://developers.elementor.com/docs/assets/img/elementor-placeholder-image.png" |
| | ) |
| |
|