Security fixes: use tojson filter, fix Tuple import, remove raw value exposure

Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com>
This commit is contained in:
copilot-swe-agent[bot]
2026-02-07 22:38:58 +00:00
parent 54e93dcdf2
commit 4b4c208035
3 changed files with 4 additions and 5 deletions
+2 -2
View File
@@ -8,7 +8,7 @@ This module provides functionality to:
""" """
import logging import logging
from typing import Any, Dict, List, Optional from typing import Any, Dict, List, Optional, Tuple
from sqlalchemy.orm import Session from sqlalchemy.orm import Session
from sqlalchemy.exc import SQLAlchemyError from sqlalchemy.exc import SQLAlchemyError
@@ -290,7 +290,7 @@ def get_settings_by_category() -> Dict[str, List[str]]:
return categories return categories
def validate_setting_value(key: str, value: str) -> tuple[bool, Optional[str]]: def validate_setting_value(key: str, value: str) -> Tuple[bool, Optional[str]]:
""" """
Validate a setting value based on its metadata. Validate a setting value based on its metadata.
-1
View File
@@ -57,7 +57,6 @@ async def settings_page(request: Request, db: Session = Depends(get_db)):
settings_data[category].append({ settings_data[category].append({
"key": key, "key": key,
"value": value if value is not None else "",
"display_value": display_value if display_value is not None else "", "display_value": display_value if display_value is not None else "",
"metadata": metadata "metadata": metadata
}) })
+2 -2
View File
@@ -160,8 +160,8 @@ function settingsApp() {
// Initialize form data from current settings // Initialize form data from current settings
{% for category, settings_list in settings_data.items() %} {% for category, settings_list in settings_data.items() %}
{% for setting in settings_list %} {% for setting in settings_list %}
this.formData['{{ setting.key }}'] = '{{ setting.value }}'; this.formData['{{ setting.key }}'] = {{ setting.display_value|tojson }};
this.originalData['{{ setting.key }}'] = '{{ setting.value }}'; this.originalData['{{ setting.key }}'] = {{ setting.display_value|tojson }};
this.showPassword['{{ setting.key }}'] = false; this.showPassword['{{ setting.key }}'] = false;
{% endfor %} {% endfor %}
{% endfor %} {% endfor %}