diff --git a/frontend/src/lib/i18n/en.json b/frontend/src/lib/i18n/en.json index 0bfa4d1..2850d3a 100644 --- a/frontend/src/lib/i18n/en.json +++ b/frontend/src/lib/i18n/en.json @@ -112,6 +112,7 @@ "typePlanka": "Planka", "typeScheduler": "Scheduler", "typeNut": "NUT (UPS)", + "typeGooglePhotos": "Google Photos", "loadError": "Failed to load providers.", "externalDomain": "External Domain", "optional": "optional", @@ -135,6 +136,13 @@ "nutPassword": "Password", "nutUsernameHint": "Optional — only needed if upsd requires authentication", "nutPasswordHint": "Optional — upsd user password", + "gpClientId": "OAuth Client ID", + "gpClientSecret": "OAuth Client Secret", + "gpClientSecretKeep": "OAuth Client Secret (leave empty to keep current)", + "gpRefreshToken": "Refresh Token", + "gpRefreshTokenKeep": "Refresh Token (leave empty to keep current)", + "gpRefreshTokenHint": "Obtain from Google OAuth Playground (developers.google.com/oauthplayground) with the Photos Library API scope.", + "gpAllFieldsRequired": "Client ID, Client Secret, and Refresh Token are all required", "testAndSave": "Test & Save", "saveWithoutTest": "Save without testing" }, @@ -422,6 +430,14 @@ "attachmentCreated": "Attachment added", "cardLabelAdded": "Label added", "taskCompleted": "Task completed", + "upsOnline": "UPS online (mains restored)", + "upsOnBattery": "UPS on battery", + "upsLowBattery": "Low battery", + "upsBatteryRestored": "Battery recovered", + "upsCommsLost": "Communication lost", + "upsCommsRestored": "Communication restored", + "upsReplaceBattery": "Replace battery", + "upsOverload": "UPS overloaded", "scheduledMessage": "Scheduled message", "trackImages": "Track images", "trackVideos": "Track videos", @@ -841,7 +857,8 @@ "providerGitea": "Self-hosted Git service", "providerPlanka": "Self-hosted Kanban board", "providerScheduler": "Time-based scheduled messages", - "providerNut": "Network UPS monitoring" + "providerNut": "Network UPS monitoring", + "providerGooglePhotos": "Google Photos albums & shared libraries" }, "error": { "notFound": "Page not found", diff --git a/frontend/src/lib/i18n/ru.json b/frontend/src/lib/i18n/ru.json index 7683907..3addd0d 100644 --- a/frontend/src/lib/i18n/ru.json +++ b/frontend/src/lib/i18n/ru.json @@ -112,6 +112,7 @@ "typePlanka": "Planka", "typeScheduler": "Планировщик", "typeNut": "NUT (ИБП)", + "typeGooglePhotos": "Google Фото", "loadError": "Не удалось загрузить провайдеры.", "externalDomain": "Внешний домен", "optional": "необязательно", @@ -135,6 +136,13 @@ "nutPassword": "Пароль", "nutUsernameHint": "Необязательно — только если upsd требует аутентификации", "nutPasswordHint": "Необязательно — пароль пользователя upsd", + "gpClientId": "OAuth Client ID", + "gpClientSecret": "OAuth Client Secret", + "gpClientSecretKeep": "OAuth Client Secret (оставьте пустым для сохранения текущего)", + "gpRefreshToken": "Refresh Token", + "gpRefreshTokenKeep": "Refresh Token (оставьте пустым для сохранения текущего)", + "gpRefreshTokenHint": "Получите через Google OAuth Playground (developers.google.com/oauthplayground) с областью Photos Library API.", + "gpAllFieldsRequired": "Client ID, Client Secret и Refresh Token обязательны", "testAndSave": "Проверить и сохранить", "saveWithoutTest": "Сохранить без проверки" }, @@ -422,6 +430,14 @@ "attachmentCreated": "Вложение добавлено", "cardLabelAdded": "Метка добавлена", "taskCompleted": "Задача завершена", + "upsOnline": "ИБП на сети (питание восстановлено)", + "upsOnBattery": "ИБП на батарее", + "upsLowBattery": "Низкий заряд батареи", + "upsBatteryRestored": "Заряд восстановлен", + "upsCommsLost": "Связь потеряна", + "upsCommsRestored": "Связь восстановлена", + "upsReplaceBattery": "Замена батареи", + "upsOverload": "Перегрузка ИБП", "scheduledMessage": "Запланированное сообщение", "trackImages": "Фото", "trackVideos": "Видео", @@ -841,7 +857,8 @@ "providerGitea": "Git-сервер для самостоятельного размещения", "providerPlanka": "Канбан-доска для самостоятельного размещения", "providerScheduler": "Запланированные сообщения по расписанию", - "providerNut": "Мониторинг ИБП через NUT" + "providerNut": "Мониторинг ИБП через NUT", + "providerGooglePhotos": "Альбомы и общие библиотеки Google Фото" }, "error": { "notFound": "Страница не найдена", diff --git a/frontend/src/routes/tracking-configs/+page.svelte b/frontend/src/routes/tracking-configs/+page.svelte index 9fb2912..c508fcb 100644 --- a/frontend/src/routes/tracking-configs/+page.svelte +++ b/frontend/src/routes/tracking-configs/+page.svelte @@ -167,6 +167,17 @@ + {:else if form.provider_type === 'nut'} +