From 74886c0c8c9ea549f6510d91d5ee40bdda39cfd7 Mon Sep 17 00:00:00 2001 From: Filipinos Date: Mon, 7 Jul 2025 17:29:43 +0200 Subject: [PATCH] fix --- _locales/en/messages.json | 550 +++++++++++++++++++------------------- 1 file changed, 275 insertions(+), 275 deletions(-) diff --git a/_locales/en/messages.json b/_locales/en/messages.json index 3949be8..faa49c6 100644 --- a/_locales/en/messages.json +++ b/_locales/en/messages.json @@ -1,290 +1,290 @@ { "appName": { "message": "CinePlex" }, - "appDescription": { "message": "Escanea servidores de Plex para encontrar contenido y lo muestra en la interfaz" }, - "appTagline": { "message": "Películas, Series y Música" }, - "appLocaleCode": { "message": "es-ES" }, - "toggleNavigation": { "message": "Alternar Navegación" }, - "searchPlaceholder": { "message": "Buscar películas o series..." }, - "openMusicPlayer": { "message": "Abrir Reproductor de Música" }, - "settings": { "message": "Ajustes" }, - "navMovies": { "message": "Películas" }, + "appDescription": { "message": "Scans Plex servers to find content and displays it in the interface" }, + "appTagline": { "message": "Movies, Series & Music" }, + "appLocaleCode": { "message": "en-US" }, + "toggleNavigation": { "message": "Toggle Navigation" }, + "searchPlaceholder": { "message": "Search for movies or series..." }, + "openMusicPlayer": { "message": "Open Music Player" }, + "settings": { "message": "Settings" }, + "navMovies": { "message": "Movies" }, "navSeries": { "message": "Series" }, - "navPhotos": { "message": "Fotos" }, - "navStats": { "message": "Estadísticas" }, - "navFavorites": { "message": "Favoritos" }, - "navHistory": { "message": "Historial" }, - "navRecommendations": { "message": "Recomendaciones" }, - "navMusic": { "message": "Música" }, - "heroWelcome": { "message": "Bienvenido a CinePlex" }, - "heroSubtitle": { "message": "Explora miles de películas y series." }, - "addStream": { "message": "Añadir Stream" }, - "moreInfo": { "message": "Más información" }, - "popularMovies": { "message": "Películas Populares" }, - "allGenres": { "message": "Todos los géneros" }, - "allYears": { "message": "Todos los años" }, - "sortPopular": { "message": "Más populares" }, - "sortTopRated": { "message": "Mejor valoradas" }, - "sortRecent": { "message": "Más recientes" }, - "loadMore": { "message": "Cargar más" }, - "photosBreadcrumbHome": { "message": "Álbumes" }, - "selectServer": { "message": "Selecciona un servidor" }, - "loading": { "message": "Cargando..." }, - "photosEmptyState": { "message": "No se encontraron álbumes ni fotos." }, - "photosEmptyStateSub": { "message": "Por favor, selecciona un servidor o asegúrate de tener una biblioteca de fotos en Plex." }, - "statsTitle": { "message": "Estadísticas de la Biblioteca" }, - "statsAllTokens": { "message": "Todos los Tokens" }, - "statsAnalyzing": { "message": "Analizando tu biblioteca..." }, - "statsActiveTokens": { "message": "Tokens Activos" }, - "statsServersFound": { "message": "Servidores Encontrados" }, - "statsUniqueMovies": { "message": "Películas Únicas" }, - "statsUniqueSeries": { "message": "Series Únicas" }, - "statsUniqueArtists": { "message": "Artistas Únicos" }, - "statsTokenServers": { "message": "Servidores del Token" }, - "statsChartMoviesByGenre": { "message": "Contenido por Género (Películas)" }, - "statsChartSeriesByGenre": { "message": "Contenido por Género (Series)" }, - "statsChartByDecade": { "message": "Contenido por Década" }, - "recommendationsTitle": { "message": "Recomendaciones para ti" }, - "historyTitle": { "message": "Historial de Visualización" }, - "clearHistory": { "message": "Borrar Todo" }, - "consoleTitle": { "message": "Consola de Escaneo Plex" }, - "footerCredit": { "message": "Una interfaz para tu universo Plex." }, - "backButton": { "message": "Atrás" }, - "closeTrailer": { "message": "Cerrar tráiler" }, - "close": { "message": "Cerrar" }, - "photoViewer": { "message": "Visor de fotos" }, - "previous": { "message": "Anterior" }, - "next": { "message": "Siguiente" }, - "notificationTemplateText": { "message": "Notificación" }, - "settingsTitleFull": { "message": "Ajustes y Configuración" }, + "navPhotos": { "message": "Photos" }, + "navStats": { "message": "Statistics" }, + "navFavorites": { "message": "Favorites" }, + "navHistory": { "message": "History" }, + "navRecommendations": { "message": "Recommendations" }, + "navMusic": { "message": "Music" }, + "heroWelcome": { "message": "Welcome to CinePlex" }, + "heroSubtitle": { "message": "Explore thousands of movies and series." }, + "addStream": { "message": "Add Stream" }, + "moreInfo": { "message": "More Info" }, + "popularMovies": { "message": "Popular Movies" }, + "allGenres": { "message": "All Genres" }, + "allYears": { "message": "All Years" }, + "sortPopular": { "message": "Most Popular" }, + "sortTopRated": { "message": "Top Rated" }, + "sortRecent": { "message": "Most Recent" }, + "loadMore": { "message": "Load More" }, + "photosBreadcrumbHome": { "message": "Albums" }, + "selectServer": { "message": "Select a server" }, + "loading": { "message": "Loading..." }, + "photosEmptyState": { "message": "No albums or photos found." }, + "photosEmptyStateSub": { "message": "Please select a server or make sure you have a photo library in Plex." }, + "statsTitle": { "message": "Library Statistics" }, + "statsAllTokens": { "message": "All Tokens" }, + "statsAnalyzing": { "message": "Analyzing your library..." }, + "statsActiveTokens": { "message": "Active Tokens" }, + "statsServersFound": { "message": "Servers Found" }, + "statsUniqueMovies": { "message": "Unique Movies" }, + "statsUniqueSeries": { "message": "Unique Series" }, + "statsUniqueArtists": { "message": "Unique Artists" }, + "statsTokenServers": { "message": "Token's Servers" }, + "statsChartMoviesByGenre": { "message": "Content by Genre (Movies)" }, + "statsChartSeriesByGenre": { "message": "Content by Genre (Series)" }, + "statsChartByDecade": { "message": "Content by Decade" }, + "recommendationsTitle": { "message": "Recommendations For You" }, + "historyTitle": { "message": "Viewing History" }, + "clearHistory": { "message": "Clear All" }, + "consoleTitle": { "message": "Plex Scan Console" }, + "footerCredit": { "message": "An interface for your Plex universe." }, + "backButton": { "message": "Back" }, + "closeTrailer": { "message": "Close trailer" }, + "close": { "message": "Close" }, + "photoViewer": { "message": "Photo Viewer" }, + "previous": { "message": "Previous" }, + "next": { "message": "Next" }, + "notificationTemplateText": { "message": "Notification" }, + "settingsTitleFull": { "message": "Settings and Configuration" }, "settingsTabGeneral": { "message": "General" }, "settingsTabPlex": { "message": "Plex" }, - "settingsTabPhpGen": { "message": "Generador PHP" }, - "settingsTabData": { "message": "Datos" }, - "settingsApiServer": { "message": "Configuración de API y Servidor" }, - "settingsTmdbApiLabel": { "message": "Clave de API de TMDB (Opcional)" }, - "settingsTmdbApiPlaceholder": { "message": "Se usará la clave por defecto si se deja en blanco" }, - "settingsTmdbLangLabel": { "message": "Idioma para TMDB y la interfaz" }, - "settingsPhpUrlLabel": { "message": "URL del Servidor para Añadir Streams" }, - "settingsPhpUrlPlaceholder": { "message": "https://tu-servidor.com/ruta/al/script.php" }, - "settingsInterface": { "message": "Interfaz" }, - "settingsLightTheme": { "message": "Modo Claro" }, - "settingsShowHero": { "message": "Mostrar sección de bienvenida 'Hero'" }, - "settingsScanContent": { "message": "Escaneo de Contenido" }, - "settingsScanDesc": { "message": "Selecciona qué escanear y pulsa el botón." }, - "settingsScanMovies": { "message": "Películas" }, + "settingsTabPhpGen": { "message": "PHP Generator" }, + "settingsTabData": { "message": "Data" }, + "settingsApiServer": { "message": "API and Server Configuration" }, + "settingsTmdbApiLabel": { "message": "TMDB API Key (Optional)" }, + "settingsTmdbApiPlaceholder": { "message": "Will use default key if left blank" }, + "settingsTmdbLangLabel": { "message": "Language for TMDB & UI" }, + "settingsPhpUrlLabel": { "message": "Server URL for Adding Streams" }, + "settingsPhpUrlPlaceholder": { "message": "https://your-server.com/path/to/script.php" }, + "settingsInterface": { "message": "Interface" }, + "settingsLightTheme": { "message": "Light Mode" }, + "settingsShowHero": { "message": "Show 'Hero' welcome section" }, + "settingsScanContent": { "message": "Content Scanning" }, + "settingsScanDesc": { "message": "Select what to scan and press the button." }, + "settingsScanMovies": { "message": "Movies" }, "settingsScanShows": { "message": "Series" }, - "settingsScanArtists": { "message": "Música" }, - "settingsScanPhotos": { "message": "Fotos" }, - "settingsSelectAll": { "message": "Seleccionar Todo" }, - "settingsStartScan": { "message": "Iniciar Escaneo" }, - "settingsPlexTokens": { "message": "Tokens de Plex" }, - "settingsPlexTokensDesc": { "message": "Edita la lista de tokens de Plex (formato JSON)." }, - "settingsSaveTokens": { "message": "Guardar Tokens" }, - "settingsPhpGenTitle": { "message": "Generador de Script PHP para el Servidor" }, - "settingsPhpFileOptions": { "message": "Opciones del Archivo" }, - "settingsPhpSavePathLabel": { "message": "Ruta de Guardado en el Servidor" }, - "settingsPhpSavePathPlaceholder": { "message": "Ej: /var/www/html/listas (en blanco para la misma carpeta)" }, - "settingsPhpFilenameLabel": { "message": "Nombre del Archivo" }, - "settingsPhpFileAction": { "message": "Acción sobre el Archivo" }, - "settingsPhpActionAppend": { "message": "Añadir al final del archivo (acumulativo)" }, - "settingsPhpActionOverwrite": { "message": "Sobrescribir el archivo (empezar de nuevo)" }, - "settingsPhpSecurity": { "message": "Seguridad (Opcional)" }, - "settingsPhpUseSecretKey": { "message": "Usar clave secreta (Recomendado)" }, - "settingsPhpSecretKeyPlaceholder": { "message": "Introduce una clave secreta segura" }, - "settingsPhpGeneratedCode": { "message": "Código Generado" }, - "settingsPhpGeneratedPlaceholder": { "message": "El código PHP generado aparecerá aquí." }, - "settingsGenerateScript": { "message": "Generar Script" }, - "settingsCopyScript": { "message": "Copiar Script" }, - "settingsDataManagement": { "message": "Gestión de la Base de Datos Local" }, - "settingsImportDb": { "message": "Importar BD desde Archivo" }, - "settingsExportDb": { "message": "Exportar BD a Archivo" }, - "settingsClearContent": { "message": "Borrar Datos de Contenido Local" }, - "settingsClearContentDesc": { "message": "Esta acción borrará películas, series y música de la base de datos local, pero no afectará a tus favoritos ni a tus ajustes." }, - "settingsClose": { "message": "Cerrar" }, - "settingsSave": { "message": "Guardar Ajustes" }, - "musicSidenavTitle": { "message": "Música de Plex" }, - "musicAllServers": { "message": "Todos los Servidores" }, - "musicSearchArtistPlaceholder": { "message": "Buscar artista..." }, - "musicSearchDiscographyPlaceholder": { "message": "Buscar en la discografía..." }, - "musicNothingPlaying": { "message": "Nada en reproducción" }, - "musicSelectSong": { "message": "Selecciona una canción" }, - "musicToStart": { "message": "para empezar a reproducir" }, - "miniplayerDownloadSong": { "message": "Descargar canción" }, - "miniplayerDownloadAlbum": { "message": "Descargar álbum M3U" }, - "miniplayerVolume": { "message": "Volumen" }, - "miniplayerShuffle": { "message": "Aleatorio" }, - "miniplayerEqualizer": { "message": "Ecualizador" }, - "miniplayerOpenList": { "message": "Abrir lista" }, - "eqTitle": { "message": "Ecualizador Gráfico" }, - "eqPresetsLabel": { "message": "Preajustes" }, - "eqPresetFlat": { "message": "Plano" }, + "settingsScanArtists": { "message": "Music" }, + "settingsScanPhotos": { "message": "Photos" }, + "settingsSelectAll": { "message": "Select All" }, + "settingsStartScan": { "message": "Start Scan" }, + "settingsPlexTokens": { "message": "Plex Tokens" }, + "settingsPlexTokensDesc": { "message": "Edit the list of Plex tokens (JSON format)." }, + "settingsSaveTokens": { "message": "Save Tokens" }, + "settingsPhpGenTitle": { "message": "PHP Server Script Generator" }, + "settingsPhpFileOptions": { "message": "File Options" }, + "settingsPhpSavePathLabel": { "message": "Save Path on Server" }, + "settingsPhpSavePathPlaceholder": { "message": "Ex: /var/www/html/lists (blank for same folder)" }, + "settingsPhpFilenameLabel": { "message": "Filename" }, + "settingsPhpFileAction": { "message": "File Action" }, + "settingsPhpActionAppend": { "message": "Append to the end of the file (cumulative)" }, + "settingsPhpActionOverwrite": { "message": "Overwrite the file (start fresh)" }, + "settingsPhpSecurity": { "message": "Security (Optional)" }, + "settingsPhpUseSecretKey": { "message": "Use secret key (Recommended)" }, + "settingsPhpSecretKeyPlaceholder": { "message": "Enter a secure secret key" }, + "settingsPhpGeneratedCode": { "message": "Generated Code" }, + "settingsPhpGeneratedPlaceholder": { "message": "The generated PHP code will appear here." }, + "settingsGenerateScript": { "message": "Generate Script" }, + "settingsCopyScript": { "message": "Copy Script" }, + "settingsDataManagement": { "message": "Local Database Management" }, + "settingsImportDb": { "message": "Import DB from File" }, + "settingsExportDb": { "message": "Export DB to File" }, + "settingsClearContent": { "message": "Clear Local Content Data" }, + "settingsClearContentDesc": { "message": "This action will delete movies, series, and music from the local database, but will not affect your favorites or settings." }, + "settingsClose": { "message": "Close" }, + "settingsSave": { "message": "Save Settings" }, + "musicSidenavTitle": { "message": "Plex Music" }, + "musicAllServers": { "message": "All Servers" }, + "musicSearchArtistPlaceholder": { "message": "Search artist..." }, + "musicSearchDiscographyPlaceholder": { "message": "Search in discography..." }, + "musicNothingPlaying": { "message": "Nothing playing" }, + "musicSelectSong": { "message": "Select a song" }, + "musicToStart": { "message": "to start playing" }, + "miniplayerDownloadSong": { "message": "Download song" }, + "miniplayerDownloadAlbum": { "message": "Download M3U album" }, + "miniplayerVolume": { "message": "Volume" }, + "miniplayerShuffle": { "message": "Shuffle" }, + "miniplayerEqualizer": { "message": "Equalizer" }, + "miniplayerOpenList": { "message": "Open list" }, + "eqTitle": { "message": "Graphic Equalizer" }, + "eqPresetsLabel": { "message": "Presets" }, + "eqPresetFlat": { "message": "Flat" }, "eqPresetRock": { "message": "Rock" }, "eqPresetPop": { "message": "Pop" }, "eqPresetJazz": { "message": "Jazz" }, - "eqPresetClassical": { "message": "Clásica" }, - "eqPresetBassBoost": { "message": "Refuerzo de Graves" }, - "eqPreampLabel": { "message": "Preamplificador" }, - "infoModalTitle": { "message": "Información" }, - "infoModalFieldTitle": { "message": "Título:" }, - "infoModalFieldArtist": { "message": "Artista:" }, - "infoModalFieldAlbum": { "message": "Álbum:" }, - "infoModalFieldSong": { "message": "Canción:" }, - "infoModalFieldYear": { "message": "Año:" }, - "infoModalFieldGenre": { "message": "Género:" }, - "lang_en": { "message": "Inglés" }, - "lang_es": { "message": "Español" }, - "lang_fr": { "message": "Francés" }, - "lang_de": { "message": "Alemán" }, - "lang_it": { "message": "Italiano" }, - "lang_pt": { "message": "Portugués" }, - "essentialFeaturesNotSupported": { "message": "Tu navegador no soporta funciones esenciales." }, - "dbAccessError": { "message": "Error al acceder a la base de datos local." }, - "dbUpdateNeeded": { "message": "La base de datos necesita actualizarse, por favor recarga la página." }, - "dbBlocked": { "message": "Por favor, cierra otras pestañas de esta aplicación para continuar." }, - "deletingContentData": { "message": "Borrando datos de contenido locales..." }, - "noContentDataToDelete": { "message": "No hay datos de contenido que borrar." }, - "contentDataDeleted": { "message": "Datos de contenido borrados de IndexedDB." }, - "errorDeletingData": { "message": "Error al borrar datos: $message$", "placeholders": { "message": { "content": "$1" } } }, - "aceEditorNotAvailable": { "message": "Editor de texto no disponible." }, - "errorLoadingTokens": { "message": "Error al cargar tokens para editar." }, - "errorLoadingTokensMessage": { "message": "Error al cargar tokens: $message$", "placeholders": { "message": { "content": "$1" } } }, - "aceEditorNotAvailableToSave": { "message": "Editor no disponible para guardar." }, - "invalidJsonFormat": { "message": "Formato JSON inválido. Debe ser { \"tokens\": [...] }" }, - "tokensSaved": { "message": "Tokens guardados correctamente." }, - "errorSavingTokens": { "message": "Error al guardar tokens: $message$", "placeholders": { "message": { "content": "$1" } } }, - "dbNotAvailable": { "message": "IndexedDB no está disponible." }, - "dbExported": { "message": "Base de datos exportada con éxito." }, - "errorExportingDb": { "message": "Error al exportar la base de datos: $message$", "placeholders": { "message": { "content": "$1" } } }, - "invalidJsonFile": { "message": "El archivo no contiene un objeto JSON válido." }, - "noDataToImport": { "message": "El archivo no contiene datos para las secciones de la BD actual." }, - "dbImported": { "message": "Base de datos importada correctamente." }, - "errorImportingDb": { "message": "Error al importar la base de datos: $message$", "placeholders": { "message": { "content": "$1" } } }, - "updatingView": { "message": "Actualizando la vista con los nuevos datos..." }, - "confirmClearContent": { "message": "¿Estás seguro de que deseas borrar los datos de contenido locales (Películas, Series, Música, etc.)? Los Favoritos y Ajustes NO se borrarán." }, - "trailerNotFound": { "message": "No se encontró tráiler para este título." }, - "confirmClearHistory": { "message": "¿Estás seguro de que deseas borrar todo tu historial de visualización? Esta acción no se puede deshacer." }, - "historyCleared": { "message": "Historial de visualización borrado." }, - "historyItemDeleted": { "message": "Elemento borrado del historial." }, - "errorGeneratingScript": { "message": "Primero genera un script para poder copiarlo." }, - "scriptCopied": { "message": "Script PHP copiado al portapapeles." }, - "errorCopyingScript": { "message": "Error al copiar el script." }, - "scriptGenerated": { "message": "Script PHP generado." }, - "errorLoadingAlbum": { "message": "Error al cargar álbum: $message$", "placeholders": { "message": { "content": "$1" } } }, - "noPhotoServerSelected": { "message": "Error: No se ha seleccionado un servidor de fotos." }, - "loadingGenres": { "message": "Cargando géneros..." }, - "errorLoadingGenres": { "message": "Error al cargar" }, - "noContentFound": { "message": "No se encontraron resultados." }, - "couldNotLoadContent": { "message": "No se pudo cargar el contenido." }, - "noFavorites": { "message": "Aún no tienes favoritos." }, - "errorLoadingFavorites": { "message": "Error al cargar favoritos." }, - "historyEmpty": { "message": "Tu historial está vacío." }, - "historyEmptySub": { "message": "Explora y mira contenido para que aparezca aquí." }, - "errorGeneratingRecommendations": { "message": "Error al generar recomendaciones." }, - "noRecommendations": { "message": "¡Necesitamos conocerte mejor para darte recomendaciones!" }, - "errorGeneratingStats": { "message": "Error al generar estadísticas." }, - "noServersForToken": { "message": "No se encontraron servidores asociados para este token." }, - "searchingActorContent": { "message": "Buscando contenido de $actorName$", "placeholders": { "actorName": { "content": "$1" } } }, - "errorLoadingActorContent": { "message": "No se pudo cargar el contenido para $actorName$.", "placeholders": { "actorName": { "content": "$1" } } }, - "errorAddingStream": { "message": "Error al añadir stream(s): $message$", "placeholders": { "message": { "content": "$1" } } }, - "phpUrlNotConfigured": { "message": "La URL del servidor PHP no está configurada. Por favor, configúrala en Ajustes." }, - "searchingStreams": { "message": "Buscando streams para \"$title$\"", "placeholders": { "title": { "content": "$1" } } }, - "sendingStreams": { "message": "Enviando $count$ stream(s) al servidor...", "placeholders": { "count": { "content": "$1" } } }, - "streamAddedSuccess": { "message": "Stream(s) añadido(s) con éxito." }, - "generatingM3U": { "message": "Generando M3U para \"$title$\"", "placeholders": { "title": { "content": "$1" } } }, - "m3uDownloaded": { "message": "M3U para \"$title$\" descargado.", "placeholders": { "title": { "content": "$1" } } }, - "errorGeneratingM3U": { "message": "Error al generar M3U: $message$", "placeholders": { "message": { "content": "$1" } } }, - "settingsSavedSuccess": { "message": "Ajustes guardados correctamente." }, - "errorSavingSettings": { "message": "Error al guardar los ajustes en la base de datos." }, - "languageChangeReload": { "message": "Idioma cambiado. La aplicación se recargará ahora." }, - "addedToFavorites": { "message": "Añadido a favoritos." }, - "removedFromFavorites": { "message": "Eliminado de favoritos." }, - "plexScanInProgress": { "message": "El escaneo Plex ya está en curso." }, - "plexScanStarting": { "message": "Iniciando escaneo Plex..." }, - "noPlexTokens": { "message": "No hay tokens de Plex configurados." }, - "clearingSections": { "message": "Limpiando secciones: $sections$", "placeholders": { "sections": { "content": "$1" } } }, - "sectionsCleared": { "message": "Secciones limpiadas." }, - "tokenFoundServers": { "message": "Token $token$... encontró $count$ servidores.", "placeholders": { "token": { "content": "$1" }, "count": { "content": "$2" } } }, - "errorProcessingToken": { "message": "Error procesando token $token$...: $message$", "placeholders": { "token": { "content": "$1" }, "message": { "content": "$2" } } }, - "initialScanPhaseComplete": { "message": "Fase de escaneo inicial finalizada." }, - "retryPhaseFinished": { "message": "Fase de reintentos finalizada." }, - "plexScanFinished": { "message": "Escaneo finalizado. Actualizando contenido..." }, - "plexScanFatalError": { "message": "ERROR FATAL: $message$", "placeholders": { "message": { "content": "$1" } } }, - "errorDuringScan": { "message": "Error durante el escaneo: $message$", "placeholders": { "message": { "content": "$1" } } }, - "scanCancelled": { "message": "Escaneo cancelado por el usuario." }, - "scanCancelledInfo": { "message": "Escaneo cancelado." }, - "retyingSection": { "message": "Reintentando sección \"$title$\"", "placeholders": { "title": { "content": "$1" } } }, - "retrySuccess": { "message": "[ÉXITO] Reintento de \"$title$\" completado.", "placeholders": { "title": { "content": "$1" } } }, - "retryError": { "message": "[ERROR FINAL] Falló el reintento para \"$title$\": $message$", "placeholders": { "title": { "content": "$1" }, "message": { "content": "$2" } } }, - "noRetriesPending": { "message": "No hay reintentos pendientes." }, - "startingRetryPhase": { "message": "Iniciando fase de reintentos para $count$ secciones...", "placeholders": { "count": { "content": "$1" } } }, - "retryPhaseCancelled": { "message": "Fase de reintentos cancelada." }, - "errorInitializingMusicPlayer": { "message": "Error inicializando el reproductor de música." }, - "criticalErrorLoadingMusic": { "message": "Error crítico al cargar datos de música." }, - "errorLoadingArtists": { "message": "Error al cargar artistas." }, - "dbUnavailableError": { "message": "Error: Base de datos no disponible." }, - "updatingMusicData": { "message": "Actualizando datos de música..." }, - "musicDataUpdated": { "message": "Datos de música actualizados." }, - "errorFetchingArtistSongs": { "message": "Error al obtener las canciones del artista." }, - "errorLoadingSongs": { "message": "Error cargando canciones." }, - "noArtistsFound": { "message": "No se encontraron artistas." }, - "artistsCounter": { "message": "$start$-$end$ de $total$", "placeholders": { "start": { "content": "$1" }, "end": { "content": "$2" }, "total": { "content": "$3" } } }, - "artistsCounterSingle": { "message": "$total$ Artistas", "placeholders": { "total": { "content": "$1" } } }, - "artistsCounterLoading": { "message": "Cargando..." }, - "noSongsFound": { "message": "No se encontraron canciones." }, - "shuffleOn": { "message": "Modo aleatorio activado." }, - "shuffleOff": { "message": "Modo aleatorio desactivado." }, - "downloadingSong": { "message": "Iniciando descarga de \"$title$\"", "placeholders": { "title": { "content": "$1" } } }, - "songDownloaded": { "message": "\"$title$\" descargado.", "placeholders": { "title": { "content": "$1" } } }, - "errorDownloadingSong": { "message": "Error al descargar \"$title$\"", "placeholders": { "title": { "content": "$1" } } }, - "generatingAlbumM3U": { "message": "Generando M3U para \"$artist$\"", "placeholders": { "artist": { "content": "$1" } } }, - "albumM3UGenerated": { "message": "M3U para el álbum \"$artist$\" generado.", "placeholders": { "artist": { "content": "$1" } } }, - "playbackError": { "message": "Error de reproducción" }, + "eqPresetClassical": { "message": "Classical" }, + "eqPresetBassBoost": { "message": "Bass Boost" }, + "eqPreampLabel": { "message": "Pre-Amp" }, + "infoModalTitle": { "message": "Information" }, + "infoModalFieldTitle": { "message": "Title:" }, + "infoModalFieldArtist": { "message": "Artist:" }, + "infoModalFieldAlbum": { "message": "Album:" }, + "infoModalFieldSong": { "message": "Song:" }, + "infoModalFieldYear": { "message": "Year:" }, + "infoModalFieldGenre": { "message": "Genre:" }, + "lang_en": { "message": "English" }, + "lang_es": { "message": "Spanish" }, + "lang_fr": { "message": "French" }, + "lang_de": { "message": "German" }, + "lang_it": { "message": "Italian" }, + "lang_pt": { "message": "Portuguese" }, + "essentialFeaturesNotSupported": { "message": "Your browser does not support essential features." }, + "dbAccessError": { "message": "Error accessing the local database." }, + "dbUpdateNeeded": { "message": "The database needs to be updated, please reload the page." }, + "dbBlocked": { "message": "Please close other tabs of this application to continue." }, + "deletingContentData": { "message": "Deleting local content data..." }, + "noContentDataToDelete": { "message": "No content data to delete." }, + "contentDataDeleted": { "message": "Content data deleted from IndexedDB." }, + "errorDeletingData": { "message": "Error deleting data: $message$", "placeholders": { "message": { "content": "$1" } } }, + "aceEditorNotAvailable": { "message": "Text editor not available." }, + "errorLoadingTokens": { "message": "Error loading tokens to editor." }, + "errorLoadingTokensMessage": { "message": "Error loading tokens: $message$", "placeholders": { "message": { "content": "$1" } } }, + "aceEditorNotAvailableToSave": { "message": "Editor not available for saving." }, + "invalidJsonFormat": { "message": "Invalid JSON format. Must be { \"tokens\": [...] }" }, + "tokensSaved": { "message": "Tokens saved successfully." }, + "errorSavingTokens": { "message": "Error saving tokens: $message$", "placeholders": { "message": { "content": "$1" } } }, + "dbNotAvailable": { "message": "IndexedDB is not available." }, + "dbExported": { "message": "Database exported successfully." }, + "errorExportingDb": { "message": "Error exporting database: $message$", "placeholders": { "message": { "content": "$1" } } }, + "invalidJsonFile": { "message": "The file does not contain a valid JSON object." }, + "noDataToImport": { "message": "The file does not contain data for the current DB sections." }, + "dbImported": { "message": "Database imported successfully." }, + "errorImportingDb": { "message": "Error importing database: $message$", "placeholders": { "message": { "content": "$1" } } }, + "updatingView": { "message": "Updating view with new data..." }, + "confirmClearContent": { "message": "Are you sure you want to delete local content data (Movies, Series, Music, etc.)? Favorites and Settings will NOT be deleted." }, + "trailerNotFound": { "message": "No trailer found for this title." }, + "confirmClearHistory": { "message": "Are you sure you want to delete your entire viewing history? This action cannot be undone." }, + "historyCleared": { "message": "Viewing history cleared." }, + "historyItemDeleted": { "message": "Item deleted from history." }, + "errorGeneratingScript": { "message": "First, generate a script to be able to copy it." }, + "scriptCopied": { "message": "PHP script copied to clipboard." }, + "errorCopyingScript": { "message": "Error copying script." }, + "scriptGenerated": { "message": "PHP script generated." }, + "errorLoadingAlbum": { "message": "Error loading album: $message$", "placeholders": { "message": { "content": "$1" } } }, + "noPhotoServerSelected": { "message": "Error: No photo server has been selected." }, + "loadingGenres": { "message": "Loading genres..." }, + "errorLoadingGenres": { "message": "Error loading" }, + "noContentFound": { "message": "No results found." }, + "couldNotLoadContent": { "message": "Could not load content." }, + "noFavorites": { "message": "You don't have any favorites yet." }, + "errorLoadingFavorites": { "message": "Error loading favorites." }, + "historyEmpty": { "message": "Your history is empty." }, + "historyEmptySub": { "message": "Browse and watch content for it to appear here." }, + "errorGeneratingRecommendations": { "message": "Error generating recommendations." }, + "noRecommendations": { "message": "We need to know you better to give you recommendations!" }, + "errorGeneratingStats": { "message": "Error generating statistics." }, + "noServersForToken": { "message": "No associated servers found for this token." }, + "searchingActorContent": { "message": "Searching for content from $actorName$", "placeholders": { "actorName": { "content": "$1" } } }, + "errorLoadingActorContent": { "message": "Could not load content for $actorName$.", "placeholders": { "actorName": { "content": "$1" } } }, + "errorAddingStream": { "message": "Error adding stream(s): $message$", "placeholders": { "message": { "content": "$1" } } }, + "phpUrlNotConfigured": { "message": "The PHP server URL is not configured. Please set it up in Settings." }, + "searchingStreams": { "message": "Searching for streams for \"$title$\"...", "placeholders": { "title": { "content": "$1" } } }, + "sendingStreams": { "message": "Sending $count$ stream(s) to the server...", "placeholders": { "count": { "content": "$1" } } }, + "streamAddedSuccess": { "message": "Stream(s) added successfully." }, + "generatingM3U": { "message": "Generating M3U for \"$title$\"...", "placeholders": { "title": { "content": "$1" } } }, + "m3uDownloaded": { "message": "M3U for \"$title$\" downloaded.", "placeholders": { "title": { "content": "$1" } } }, + "errorGeneratingM3U": { "message": "Error generating M3U: $message$", "placeholders": { "message": { "content": "$1" } } }, + "settingsSavedSuccess": { "message": "Settings saved successfully." }, + "errorSavingSettings": { "message": "Error saving settings to the database." }, + "languageChangeReload": { "message": "Language changed. The application will now reload." }, + "addedToFavorites": { "message": "Added to favorites." }, + "removedFromFavorites": { "message": "Removed from favorites." }, + "plexScanInProgress": { "message": "Plex scan is already in progress." }, + "plexScanStarting": { "message": "Starting Plex scan..." }, + "noPlexTokens": { "message": "No Plex tokens configured." }, + "clearingSections": { "message": "Clearing sections: $sections$", "placeholders": { "sections": { "content": "$1" } } }, + "sectionsCleared": { "message": "Sections cleared." }, + "tokenFoundServers": { "message": "Token $token$... found $count$ servers.", "placeholders": { "token": { "content": "$1" }, "count": { "content": "$2" } } }, + "errorProcessingToken": { "message": "Error processing token $token$...: $message$", "placeholders": { "token": { "content": "$1" }, "message": { "content": "$2" } } }, + "initialScanPhaseComplete": { "message": "Initial scan phase completed." }, + "retryPhaseFinished": { "message": "Retry phase finished." }, + "plexScanFinished": { "message": "Plex scan finished. Updating content..." }, + "plexScanFatalError": { "message": "FATAL ERROR: $message$", "placeholders": { "message": { "content": "$1" } } }, + "errorDuringScan": { "message": "Error during scan: $message$", "placeholders": { "message": { "content": "$1" } } }, + "scanCancelled": { "message": "Scan cancelled by user." }, + "scanCancelledInfo": { "message": "Scan cancelled." }, + "retyingSection": { "message": "Retrying section \"$title$\"...", "placeholders": { "title": { "content": "$1" } } }, + "retrySuccess": { "message": "[SUCCESS] Retry of \"$title$\" completed.", "placeholders": { "title": { "content": "$1" } } }, + "retryError": { "message": "[FINAL ERROR] Retry failed for \"$title$\": $message$", "placeholders": { "title": { "content": "$1" }, "message": { "content": "$2" } } }, + "noRetriesPending": { "message": "No pending retries." }, + "startingRetryPhase": { "message": "Starting retry phase for $count$ sections...", "placeholders": { "count": { "content": "$1" } } }, + "retryPhaseCancelled": { "message": "Retry phase cancelled." }, + "errorInitializingMusicPlayer": { "message": "Error initializing music player." }, + "criticalErrorLoadingMusic": { "message": "Critical error loading music data." }, + "errorLoadingArtists": { "message": "Error loading artists." }, + "dbUnavailableError": { "message": "Error: Database not available." }, + "updatingMusicData": { "message": "Updating music data..." }, + "musicDataUpdated": { "message": "Music data updated." }, + "errorFetchingArtistSongs": { "message": "Error getting artist's songs." }, + "errorLoadingSongs": { "message": "Error loading songs." }, + "noArtistsFound": { "message": "No artists found." }, + "artistsCounter": { "message": "$start$-$end$ of $total$", "placeholders": { "start": { "content": "$1" }, "end": { "content": "$2" }, "total": { "content": "$3" } } }, + "artistsCounterSingle": { "message": "$total$ Artists", "placeholders": { "total": { "content": "$1" } } }, + "artistsCounterLoading": { "message": "Loading..." }, + "noSongsFound": { "message": "No songs found." }, + "shuffleOn": { "message": "Shuffle mode enabled." }, + "shuffleOff": { "message": "Shuffle mode disabled." }, + "downloadingSong": { "message": "Starting download of \"$title$\"...", "placeholders": { "title": { "content": "$1" } } }, + "songDownloaded": { "message": "\"$title$\" downloaded.", "placeholders": { "title": { "content": "$1" } } }, + "errorDownloadingSong": { "message": "Error downloading \"$title$\"", "placeholders": { "title": { "content": "$1" } } }, + "generatingAlbumM3U": { "message": "Generating M3U for \"$artist$\"...", "placeholders": { "artist": { "content": "$1" } } }, + "albumM3UGenerated": { "message": "M3U for album \"$artist$\" generated.", "placeholders": { "artist": { "content": "$1" } } }, + "playbackError": { "message": "Playback error" }, "errorLabel": { "message": "Error" }, - "reloadingPage": { "message": "Recargando la página..." }, - "viewed": { "message": "Visto" }, + "reloadingPage": { "message": "Reloading page..." }, + "viewed": { "message": "Viewed" }, "local": { "message": "Local" }, - "topRatedSort": {"message": "Mejor Valoradas"}, - "recentSort": {"message": "Recientes"}, - "popularSort": {"message": "Populares"}, - "moviesSectionTitle": {"message": "Películas"}, + "topRatedSort": {"message": "Top Rated"}, + "recentSort": {"message": "Recent"}, + "popularSort": {"message": "Popular"}, + "moviesSectionTitle": {"message": "Movies"}, "seriesSectionTitle": {"message": "Series"}, - "searchResultsFor": {"message": "Resultados para \"$query$\"", "placeholders": {"query": {"content": "$1"}}}, - "contentFrom": {"message": "Contenido de $actor$", "placeholders": {"actor": {"content": "$1"}}}, - "explore": {"message": "Explorar"}, - "noGenre": {"message": "Sin categoría"}, - "synopsis": {"message": "Sinopsis"}, - "noSynopsis": {"message": "No hay sinopsis disponible."}, + "searchResultsFor": {"message": "Results for \"$query$\"", "placeholders": {"query": {"content": "$1"}}}, + "contentFrom": {"message": "Content from $actor$", "placeholders": {"actor": {"content": "$1"}}}, + "explore": {"message": "Explore"}, + "noGenre": {"message": "Uncategorized"}, + "synopsis": {"message": "Synopsis"}, + "noSynopsis": {"message": "No synopsis available."}, "director": {"message": "Director:"}, - "writer": {"message": "Escritor:"}, - "viewOnImdb": {"message": "Ver en IMDb"}, - "watchTrailer": {"message": "Ver Tráiler"}, - "addToFavorites": {"message": "Añadir a favoritos"}, - "removeFromFavorites": {"message": "Quitar de favoritos"}, - "notAvailable": {"message": "No disponible"}, - "mainCast": {"message": "Reparto Principal"}, - "seasonsAndEpisodes": {"message": "Temporadas y Episodios"}, - "similarContent": {"message": "Contenido Similar"}, - "episodesCount": {"message": "$count$ Episodios", "placeholders": {"count": {"content": "$1"}}}, - "seasonsCount": {"message": "$count$ Temporadas", "placeholders": {"count": {"content": "$1"}}}, + "writer": {"message": "Writer:"}, + "viewOnImdb": {"message": "View on IMDb"}, + "watchTrailer": {"message": "Watch Trailer"}, + "addToFavorites": {"message": "Favorite"}, + "removeFromFavorites": {"message": "Unfavorite"}, + "notAvailable": {"message": "Not Available"}, + "mainCast": {"message": "Main Cast"}, + "seasonsAndEpisodes": {"message": "Seasons & Episodes"}, + "similarContent": {"message": "Similar Content"}, + "episodesCount": {"message": "$count$ Episodes", "placeholders": {"count": {"content": "$1"}}}, + "seasonsCount": {"message": "$count$ Seasons", "placeholders": {"count": {"content": "$1"}}}, "runtimeMinutes": {"message": "$count$ min", "placeholders": {"count": {"content": "$1"}}}, - "noTrailerFound": {"message": "No se encontró tráiler para este título."}, - "fatalInitError": {"message": "Error fatal de inicialización"}, - "fatalInitErrorSub": {"message": "No se pudo cargar la aplicación."}, - "invalidStreamInfo": {"message": "Información inválida."}, - "dbUnavailableForStreams": {"message": "Base de datos local no disponible."}, - "noPlexServersForStreams": {"message": "No hay servidores Plex."}, - "notFoundOnServers": {"message": "No se encontró \"$query$\" en los servidores.", "placeholders": {"query": {"content": "$1"}}}, - "relativeTime_justNow": { "message": "Ahora mismo" }, - "relativeTime_minutesAgo": { "message": "Hace $count$ minutos", "placeholders": { "count": { "content": "$1" } } }, - "relativeTime_hoursAgo": { "message": "Hace $count$ horas", "placeholders": { "count": { "content": "$1" } } }, - "relativeTime_yesterday": { "message": "Ayer" }, - "relativeTime_daysAgo": { "message": "Hace $count$ días", "placeholders": { "count": { "content": "$1" } } }, - "errorLoadingDetails": { "message": "Error al Cargar los Detalles" }, - "errorLoadingLocalContent": { "message": "Error al cargar el contenido local." }, - "errorServerResponse": { "message": "Respuesta no exitosa del servidor." }, - "errorPlexApi": { "message": "Error $status$ de la API de Plex.", "placeholders": { "status": { "content": "$1" } } }, - "errorParsingPlexXml": { "message": "Error al analizar el XML de Plex." }, - "untitled": { "message": "Sin título" }, - "itemCount": { "message": "$count$ elementos", "placeholders": { "count": { "content": "$1" } } }, - "noPhotoServers": { "message": "No hay servidores de fotos" } + "noTrailerFound": {"message": "No trailer was found for this title."}, + "fatalInitError": {"message": "Fatal Initialization Error"}, + "fatalInitErrorSub": {"message": "The application could not be loaded."}, + "invalidStreamInfo": {"message": "Invalid information."}, + "dbUnavailableForStreams": {"message": "Local database not available."}, + "noPlexServersForStreams": {"message": "No Plex servers."}, + "notFoundOnServers": {"message": "\"$query$\" not found on servers.", "placeholders": {"query": {"content": "$1"}}}, + "relativeTime_justNow": { "message": "Just now" }, + "relativeTime_minutesAgo": { "message": "$count$ minutes ago", "placeholders": { "count": { "content": "$1" } } }, + "relativeTime_hoursAgo": { "message": "$count$ hours ago", "placeholders": { "count": { "content": "$1" } } }, + "relativeTime_yesterday": { "message": "Yesterday" }, + "relativeTime_daysAgo": { "message": "$count$ days ago", "placeholders": { "count": { "content": "$1" } } }, + "errorLoadingDetails": { "message": "Error Loading Details" }, + "errorLoadingLocalContent": { "message": "Error loading local content." }, + "errorServerResponse": { "message": "Unsuccessful response from server." }, + "errorPlexApi": { "message": "Error $status$ from Plex API.", "placeholders": { "status": { "content": "$1" } } }, + "errorParsingPlexXml": { "message": "Error parsing Plex XML." }, + "untitled": { "message": "Untitled" }, + "itemCount": { "message": "$count$ items", "placeholders": { "count": { "content": "$1" } } }, + "noPhotoServers": { "message": "No photo servers" } } \ No newline at end of file