Spaces:
Running
Running
from global_vars import t, translations | |
from app import Plugin | |
import streamlit as st | |
import torch | |
from plugins.scansite import ScansitePlugin | |
# Ajout des traductions spécifiques à ce plugin | |
translations["en"].update({ | |
"work_directory": "Work Directory", | |
"page_title": "News watcher", | |
"reset_database": "Reset database", | |
}) | |
translations["fr"].update({ | |
"work_directory": "Répertoire de travail", | |
"page_title": "Outil de veille", | |
"reset_database": "Réinitialiser la base de données", | |
}) | |
class CommonPlugin(Plugin): | |
def __init__(self, name, plugin_manager): | |
super().__init__(name, plugin_manager) | |
self.scansite_plugin = ScansitePlugin('scansite', plugin_manager) | |
def get_config_fields(self): | |
return { | |
"work_directory": { | |
"type": "text", | |
"label": t("work_directory"), | |
"default": "/home/joriel/Vidéos" | |
}, | |
"language": { | |
"type": "select", | |
"label": t("preferred_language"), | |
"options": [("fr", "Français"), ("en", "Anglais")], | |
"default": "fr" | |
}, | |
} | |
def get_tabs(self): | |
return [{"name": "Commun", "plugin": "common"}] | |
def run(self, config): | |
st.header("Common Plugin") | |
st.write(f"{t('work_directory')}: {config['common']['work_directory']}") | |
torch.cuda.empty_cache() | |
st.write("CUDA memory reset") | |
if st.button(t("reset_database")): | |
self.scansite_plugin.reset_database() | |
st.success(t("database_reset_success")) | |
def remove_quotes(s): | |
if s.startswith('"') and s.endswith('"'): | |
return s[1:-1] | |
return s | |