diff options
| -rw-r--r-- | locales/ar.json | 10 | ||||
| -rw-r--r-- | locales/de.json | 8 | ||||
| -rw-r--r-- | locales/en-US.json | 10 | ||||
| -rw-r--r-- | locales/eo.json | 13 | ||||
| -rw-r--r-- | locales/es.json | 10 | ||||
| -rw-r--r-- | locales/eu.json | 12 | ||||
| -rw-r--r-- | locales/fr.json | 10 | ||||
| -rw-r--r-- | locales/it.json | 10 | ||||
| -rw-r--r-- | locales/nb_NO.json | 10 | ||||
| -rw-r--r-- | locales/nl.json | 10 | ||||
| -rw-r--r-- | locales/pl.json | 10 | ||||
| -rw-r--r-- | locales/ru.json | 8 | ||||
| -rw-r--r-- | locales/uk.json | 13 | ||||
| -rw-r--r-- | src/invidious.cr | 9 | ||||
| -rw-r--r-- | src/invidious/helpers/helpers.cr | 1 | ||||
| -rw-r--r-- | src/invidious/users.cr | 1 | ||||
| -rw-r--r-- | src/invidious/videos.cr | 5 | ||||
| -rw-r--r-- | src/invidious/views/components/player.ecr | 8 | ||||
| -rw-r--r-- | src/invidious/views/embed.ecr | 16 | ||||
| -rw-r--r-- | src/invidious/views/preferences.ecr | 7 | ||||
| -rw-r--r-- | src/invidious/views/watch.ecr | 24 |
21 files changed, 174 insertions, 31 deletions
diff --git a/locales/ar.json b/locales/ar.json index 6221862e..6888496e 100644 --- a/locales/ar.json +++ b/locales/ar.json @@ -13,6 +13,8 @@ "Next page": "الصفحة الثانية", "Previous page": "الصفحة السابقة", "Clear watch history?": "مسح السجل ؟", + "Authorize token?": "", + "Authorize token for `x`?": "", "Yes": "نعم", "No": "لا", "Import and Export Data": "استخراج و إضافة البيانات", @@ -47,6 +49,7 @@ "Player preferences": "التفضيلات المشغل", "Always loop: ": "كرر الفيديو دائما: ", "Autoplay: ": "تشغيل تلقائى: ", + "Play next by default: ": "", "Autoplay next video: ": "شغل الفيديو التالى تلقائى: ", "Listen by default: ": "تشغيل النسخة السمعية تلقائى: ", "Proxy videos? ": "عرض الفيديوهات عن طريق الوكيل(proxy) ؟", @@ -80,6 +83,7 @@ "Clear watch history": "حذف سجل المشاهدة", "Import/Export data": "إضافة\\إستخراج البيانات", "Manage subscriptions": "إدارة المشتركين", + "Manage tokens": "", "Watch history": "سجل المشاهدة", "Delete account": "حذف الحساب", "Administrator preferences": "إعدادات المدير", @@ -92,9 +96,13 @@ "Report statistics? ": "إبلاغ الإحصائيات", "Save preferences": "حفظ التفضيلات", "Subscription manager": "مدير الإشتراكات", + "Token manager": "", + "Token": "", "`x` subscriptions": "`x` مشتركين", + "`x` tokens": "", "Import/Export": "إضافة\\إستخراج", "unsubscribe": "إلغاء الإشتراك", + "revoke": "", "Subscriptions": "الإشتراكات", "`x` unseen notifications": "`x` إشعارات لم تشاهدها بعد ", "search": "بحث", @@ -284,8 +292,8 @@ "Gaming": "الألعاب", "News": "الأخبار", "Movies": "الأفلام", - "Download as: ": "تحميل كـ", "Download": "تحميل", + "Download as: ": "تحميل كـ", "%A %B %-d, %Y": "", "(edited)": "(تم تعديلة)", "Youtube permalink of the comment": "رابط التعليق على اليوتيوب", diff --git a/locales/de.json b/locales/de.json index fd8c40f6..099ba6ba 100644 --- a/locales/de.json +++ b/locales/de.json @@ -13,6 +13,8 @@ "Next page": "Nächste Seite", "Previous page": "Vorherige Seite", "Clear watch history?": "Verlauf löschen?", + "Authorize token?": "", + "Authorize token for `x`?": "", "Yes": "Ja", "No": "Nein", "Import and Export Data": "Import und Export Daten", @@ -47,6 +49,7 @@ "Player preferences": "Playereinstellungen", "Always loop: ": "Immer wiederholen: ", "Autoplay: ": "Automatisch abspielen: ", + "Play next by default: ": "", "Autoplay next video: ": "nächstes Video automatisch abspielen: ", "Listen by default: ": "Nur Ton als Standard: ", "Proxy videos? ": "", @@ -80,6 +83,7 @@ "Clear watch history": "Verlauf löschen", "Import/Export data": "Daten im- exportieren", "Manage subscriptions": "Abonnements verwalten", + "Manage tokens": "", "Watch history": "Verlauf", "Delete account": "Account löschen", "Administrator preferences": "", @@ -92,9 +96,13 @@ "Report statistics? ": "", "Save preferences": "Einstellungen speichern", "Subscription manager": "Abonnementverwaltung", + "Token manager": "", + "Token": "", "`x` subscriptions": "`x` Abonnements", + "`x` tokens": "", "Import/Export": "Importieren/Exportieren", "unsubscribe": "abbestellen", + "revoke": "", "Subscriptions": "Abonnements", "`x` unseen notifications": "`x` ungesehene Benachrichtigungen", "search": "Suchen", diff --git a/locales/en-US.json b/locales/en-US.json index 4fbdbcc9..265acb60 100644 --- a/locales/en-US.json +++ b/locales/en-US.json @@ -13,6 +13,8 @@ "Next page": "Next page", "Previous page": "Previous page", "Clear watch history?": "Clear watch history?", + "Authorize token?": "Authorize token?", + "Authorize token for `x`?": "Authorize token for `x`?", "Yes": "Yes", "No": "No", "Import and Export Data": "Import and Export Data", @@ -47,6 +49,7 @@ "Player preferences": "Player preferences", "Always loop: ": "Always loop: ", "Autoplay: ": "Autoplay: ", + "Play next by default: ": "Play next by default: ", "Autoplay next video: ": "Autoplay next video: ", "Listen by default: ": "Listen by default: ", "Proxy videos? ": "Proxy videos? ", @@ -54,6 +57,8 @@ "Preferred video quality: ": "Preferred video quality: ", "Player volume: ": "Player volume: ", "Default comments: ": "Default comments: ", + "youtube": "youtube", + "reddit": "reddit", "Default captions: ": "Default captions: ", "Fallback captions: ": "Fallback captions: ", "Show related videos? ": "Show related videos? ", @@ -78,6 +83,7 @@ "Clear watch history": "Clear watch history", "Import/Export data": "Import/Export data", "Manage subscriptions": "Manage subscriptions", + "Manage tokens": "Manage tokens", "Watch history": "Watch history", "Delete account": "Delete account", "Administrator preferences": "Administrator preferences", @@ -90,9 +96,13 @@ "Report statistics? ": "Report statistics? ", "Save preferences": "Save preferences", "Subscription manager": "Subscription manager", + "Token manager": "Token manager", + "Token": "Token", "`x` subscriptions": "`x` subscriptions", + "`x` tokens": "`x` tokens", "Import/Export": "Import/Export", "unsubscribe": "unsubscribe", + "revoke": "revoke", "Subscriptions": "Subscriptions", "`x` unseen notifications": "`x` unseen notifications", "search": "search", diff --git a/locales/eo.json b/locales/eo.json index a6a83f28..859a3036 100644 --- a/locales/eo.json +++ b/locales/eo.json @@ -5,7 +5,6 @@ "Shared `x` ago": "Konigita antaŭ `x`", "Unsubscribe": "Malaboni", "Subscribe": "Aboni", - "Login to subscribe to `x`": "Ensaluti por aboni je `x`", "View channel on YouTube": "Vidi kanalon en YouTube", "newest": "pli novaj", "oldest": "pli malnovaj", @@ -14,6 +13,8 @@ "Next page": "Sekva paĝo", "Previous page": "Antaŭa paĝo", "Clear watch history?": "Ĉu forigi vidohistorion?", + "Authorize token?": "", + "Authorize token for `x`?": "", "Yes": "Jes", "No": "Ne", "Import and Export Data": "Importi kaj Eksporti Datumojn", @@ -48,6 +49,7 @@ "Player preferences": "Spektilaj agordoj", "Always loop: ": "Ĉiam ripeti: ", "Autoplay: ": "Aŭtomate ludi: ", + "Play next by default: ": "", "Autoplay next video: ": "Aŭtomate ludi sekvan videon: ", "Listen by default: ": "Aŭskulti defaŭlte: ", "Proxy videos? ": "Ĉu uzi prokuran servilon por videoj? ", @@ -55,6 +57,8 @@ "Preferred video quality: ": "Preferita videkvalito: ", "Player volume: ": "Ludila sonforteco: ", "Default comments: ": "Defaŭltaj komentoj: ", + "youtube": "", + "reddit": "", "Default captions: ": "Defaŭltaj subtekstoj: ", "Fallback captions: ": "Retrodefaŭltaj subtekstoj: ", "Show related videos? ": "Ĉu montri rilatajn videojn? ", @@ -79,6 +83,7 @@ "Clear watch history": "Forigi vidohistorion", "Import/Export data": "Importi/Eksporti datumojn", "Manage subscriptions": "Administri abonojn", + "Manage tokens": "", "Watch history": "Vidohistorio", "Delete account": "Forigi konton", "Administrator preferences": "Agordoj de administranto", @@ -91,9 +96,13 @@ "Report statistics? ": "Ĉu raporti statistikojn? ", "Save preferences": "Konservi agordojn", "Subscription manager": "Administrilo de abonoj", + "Token manager": "", + "Token": "", "`x` subscriptions": "`x` abonoj", + "`x` tokens": "", "Import/Export": "Importi/Eksporti", "unsubscribe": "malaboni", + "revoke": "", "Subscriptions": "Abonoj", "`x` unseen notifications": "`x` neviditaj sciigoj", "search": "serĉi", @@ -113,6 +122,7 @@ "Whitelisted regions: ": "Regionoj listigitaj en blanka listo: ", "Blacklisted regions: ": "Regionoj listigitaj en nigra listo: ", "Shared `x`": "Konigita `x`", + "`x` views": "", "Premieres in `x`": "Premieras en `x`", "Hi! Looks like you have JavaScript disabled. Click here to view comments, keep in mind it may take a bit longer to load.": "Saluton! Ŝajnas, ke vi havas Ĝavoskripton malebligitan. Klaku ĉi tie por vidi komentojn, memoru, ke la ŝargado povus daŭri iom pli.", "View YouTube comments": "Vidi komentojn de YouTube", @@ -276,6 +286,7 @@ "About": "Pri", "Rating: ": "Takso: ", "Language: ": "Lingvo: ", + "View as playlist": "", "Default": "Defaŭlte", "Music": "Musiko", "Gaming": "Komputiloludoj", diff --git a/locales/es.json b/locales/es.json index 1f248e5f..845b5e5b 100644 --- a/locales/es.json +++ b/locales/es.json @@ -13,6 +13,8 @@ "Next page": "Página siguiente", "Previous page": "Página anterior", "Clear watch history?": "¿Quiere borrar el historial de reproducción?", + "Authorize token?": "", + "Authorize token for `x`?": "", "Yes": "Sí", "No": "No", "Import and Export Data": "Importación y exportación de datos", @@ -47,6 +49,7 @@ "Player preferences": "Preferencias del reproductor", "Always loop: ": "Repetir siempre: ", "Autoplay: ": "Reproducción automática: ", + "Play next by default: ": "", "Autoplay next video: ": "Reproducir automáticamente el vídeo siguiente: ", "Listen by default: ": "Activar el sonido por defecto: ", "Proxy videos? ": "¿Usar un proxy para los vídeos? ", @@ -54,6 +57,8 @@ "Preferred video quality: ": "Calidad de vídeo preferida: ", "Player volume: ": "Volumen del reproductor: ", "Default comments: ": "Comentarios por defecto: ", + "youtube": "", + "reddit": "", "Default captions: ": "Subtítulos por defecto: ", "Fallback captions: ": "Subtítulos alternativos: ", "Show related videos? ": "¿Mostrar vídeos relacionados? ", @@ -78,6 +83,7 @@ "Clear watch history": "Borrar el historial de reproducción", "Import/Export data": "Importar/Exportar datos", "Manage subscriptions": "Gestionar las suscripciones", + "Manage tokens": "", "Watch history": "Historial de reproducción", "Delete account": "Borrar cuenta", "Administrator preferences": "Preferencias de administrador", @@ -90,9 +96,13 @@ "Report statistics? ": "¿Enviar estadísticas? ", "Save preferences": "Guardar las preferencias", "Subscription manager": "Gestor de suscripciones", + "Token manager": "", + "Token": "", "`x` subscriptions": "`x` suscripciones", + "`x` tokens": "", "Import/Export": "Importar/Exportar", "unsubscribe": "Desuscribirse", + "revoke": "", "Subscriptions": "Suscripciones", "`x` unseen notifications": "`x` notificaciones sin ver", "search": "buscar", diff --git a/locales/eu.json b/locales/eu.json index 667c6df3..96e29b46 100644 --- a/locales/eu.json +++ b/locales/eu.json @@ -13,6 +13,8 @@ "Next page": "Hurrengo orria", "Previous page": "Aurreko orria", "Clear watch history?": "Garbitu ikusitakoen historia?", + "Authorize token?": "", + "Authorize token for `x`?": "", "Yes": "Bai", "No": "Ez", "Import and Export Data": "Datuak inportatu eta esportatu", @@ -47,6 +49,7 @@ "Player preferences": "", "Always loop: ": "", "Autoplay: ": "", + "Play next by default: ": "", "Autoplay next video: ": "", "Listen by default: ": "", "Proxy videos? ": "", @@ -54,6 +57,8 @@ "Preferred video quality: ": "", "Player volume: ": "", "Default comments: ": "", + "youtube": "", + "reddit": "", "Default captions: ": "", "Fallback captions: ": "", "Show related videos? ": "", @@ -78,6 +83,7 @@ "Clear watch history": "", "Import/Export data": "", "Manage subscriptions": "", + "Manage tokens": "", "Watch history": "", "Delete account": "", "Administrator preferences": "", @@ -90,9 +96,13 @@ "Report statistics? ": "", "Save preferences": "", "Subscription manager": "", + "Token manager": "", + "Token": "", "`x` subscriptions": "", + "`x` tokens": "", "Import/Export": "", "unsubscribe": "", + "revoke": "", "Subscriptions": "", "`x` unseen notifications": "", "search": "", @@ -101,8 +111,8 @@ "Source available here.": "", "View JavaScript license information.": "", "View privacy policy.": "", - "Unlisted": "", "Trending": "", + "Unlisted": "", "Watch video on Youtube": "", "Genre: ": "", "License: ": "", diff --git a/locales/fr.json b/locales/fr.json index ed5dea9b..bd6beac8 100644 --- a/locales/fr.json +++ b/locales/fr.json @@ -13,6 +13,8 @@ "Next page": "Page suivante", "Previous page": "Page précédente", "Clear watch history?": "Êtes-vous sûr de vouloir supprimer l'historique des vidéos regardées ?", + "Authorize token?": "", + "Authorize token for `x`?": "", "Yes": "Oui", "No": "Non", "Import and Export Data": "Importer et exporter des données", @@ -47,6 +49,7 @@ "Player preferences": "Préférences du lecteur", "Always loop: ": "Lire en boucle : ", "Autoplay: ": "Lire automatiquement : ", + "Play next by default: ": "", "Autoplay next video: ": "Lire automatiquement la vidéo suivante : ", "Listen by default: ": "Audio uniquement : ", "Proxy videos? ": "Charger les vidéos à travers un proxy ? ", @@ -54,6 +57,8 @@ "Preferred video quality: ": "Qualité vidéo souhaitée : ", "Player volume: ": "Volume du lecteur : ", "Default comments: ": "Source des commentaires : ", + "youtube": "", + "reddit": "", "Default captions: ": "Sous-titres par défaut : ", "Fallback captions: ": "Sous-titres par défaut : ", "Show related videos? ": "Voir les vidéos liées ? ", @@ -78,6 +83,7 @@ "Clear watch history": "Supprimer l'historique des vidéos regardées", "Import/Export data": "Importer/exporter les données", "Manage subscriptions": "Gérer les abonnements", + "Manage tokens": "", "Watch history": "Historique de visionnage", "Delete account": "Supprimer votre compte", "Administrator preferences": "Préferences d'Administrateur", @@ -90,9 +96,13 @@ "Report statistics? ": "Télémétrie activé ? ", "Save preferences": "Enregistrer les préférences", "Subscription manager": "Gestionnaire d'abonnement", + "Token manager": "", + "Token": "", "`x` subscriptions": "`x` abonnements", + "`x` tokens": "", "Import/Export": "Importer/Exporter", "unsubscribe": "se désabonner", + "revoke": "", "Subscriptions": "Abonnements", "`x` unseen notifications": "`x` notifications non vues", "search": "Rechercher", diff --git a/locales/it.json b/locales/it.json index 97b7c8a4..66939bd1 100644 --- a/locales/it.json +++ b/locales/it.json @@ -13,6 +13,8 @@ "Next page": "Pagina successiva", "Previous page": "Pagina precedente", "Clear watch history?": "Sei sicuro di voler cancellare la cronologia dei video guardati?", + "Authorize token?": "", + "Authorize token for `x`?": "", "Yes": "Si", "No": "No", "Import and Export Data": "Importazione ed esportazione dati", @@ -47,6 +49,7 @@ "Player preferences": "Preferenze del riproduttore", "Always loop: ": "Ripeti sempre: ", "Autoplay: ": "Riproduzione automatica: ", + "Play next by default: ": "", "Autoplay next video: ": "Riproduci automaticamente il prossimo video: ", "Listen by default: ": "Modalità solo audio come predefinita: ", "Proxy videos? ": "", @@ -54,6 +57,8 @@ "Preferred video quality: ": "Preferenza sulla qualità video: ", "Player volume: ": "Volume di riproduzione: ", "Default comments: ": "Origine dei commenti: ", + "youtube": "", + "reddit": "", "Default captions: ": "Sottotitoli predefiniti: ", "Fallback captions: ": "Sottotitoli alternativi: ", "Show related videos? ": "Mostra video correlati? ", @@ -78,6 +83,7 @@ "Clear watch history": "Cancella la cronologia dei video guardati", "Import/Export data": "Importazione/esportazione dati", "Manage subscriptions": "Gestisci le iscrizioni", + "Manage tokens": "", "Watch history": "Cronologia dei video", "Delete account": "Elimina l'account", "Administrator preferences": "", @@ -90,9 +96,13 @@ "Report statistics? ": "", "Save preferences": "Salva le preferenze", "Subscription manager": "Gestisci le iscrizioni", + "Token manager": "", + "Token": "", "`x` subscriptions": "`x` iscrizioni", + "`x` tokens": "", "Import/Export": "Importa/esporta", "unsubscribe": "disiscriviti", + "revoke": "", "Subscriptions": "Iscrizioni", "`x` unseen notifications": "`x` notifiche non visualizzate", "search": "Cerca", diff --git a/locales/nb_NO.json b/locales/nb_NO.json index 445b53e7..99f1b4bc 100644 --- a/locales/nb_NO.json +++ b/locales/nb_NO.json @@ -13,6 +13,8 @@ "Next page": "Neste side", "Previous page": "Forrige side", "Clear watch history?": "Tøm visningshistorikk?", + "Authorize token?": "", + "Authorize token for `x`?": "", "Yes": "Ja", "No": "Nei", "Import and Export Data": "Importer- og eksporter data", @@ -47,6 +49,7 @@ "Player preferences": "Avspillerinnstillinger", "Always loop: ": "Alltid gjenta: ", "Autoplay: ": "Autoavspilling: ", + "Play next by default: ": "", "Autoplay next video: ": "Autospill neste video: ", "Listen by default: ": "Lytt som forvalg: ", "Proxy videos? ": "Mellomtjen videoer? ", @@ -54,6 +57,8 @@ "Preferred video quality: ": "Foretrukket videokvalitet: ", "Player volume: ": "Avspillerlydstyrke: ", "Default comments: ": "Forvalgte kommentarer: ", + "youtube": "", + "reddit": "", "Default captions: ": "Forvalgte undertitler: ", "Fallback captions: ": "Tilbakefallsundertitler: ", "Show related videos? ": "Vis relaterte videoer? ", @@ -78,6 +83,7 @@ "Clear watch history": "Tøm visningshistorikk", "Import/Export data": "Importer/eksporter data", "Manage subscriptions": "Behandle abonnementer", + "Manage tokens": "", "Watch history": "Visningshistorikk", "Delete account": "Slett konto", "Administrator preferences": "Administratorinnstillinger", @@ -90,9 +96,13 @@ "Report statistics? ": "Innrapporter statistikk? ", "Save preferences": "Lagre innstillinger", "Subscription manager": "Abonnementsbehandler", + "Token manager": "", + "Token": "", "`x` subscriptions": "`x` abonnementer", + "`x` tokens": "", "Import/Export": "Importer/eksporter", "unsubscribe": "opphev abonnement", + "revoke": "", "Subscriptions": "Abonnement", "`x` unseen notifications": "`x` usette merknader", "search": "søk", diff --git a/locales/nl.json b/locales/nl.json index 05708939..51ece697 100644 --- a/locales/nl.json +++ b/locales/nl.json @@ -13,6 +13,8 @@ "Next page": "Volgende pagina", "Previous page": "Vorige pagina", "Clear watch history?": "Kijk geschiedenis wissen?", + "Authorize token?": "", + "Authorize token for `x`?": "", "Yes": "Ja", "No": "Nee", "Import and Export Data": "Importeer en Exporteer Gegevens", @@ -47,6 +49,7 @@ "Player preferences": "Afspeler voorkeuren", "Always loop: ": "Altijd herhalen: ", "Autoplay: ": "Automatisch afspelen: ", + "Play next by default: ": "", "Autoplay next video: ": "Automatisch volgende video afspelen: ", "Listen by default: ": "Standaard luisteren: ", "Proxy videos? ": "", @@ -54,6 +57,8 @@ "Preferred video quality: ": "Video kwaliteit voorkeur: ", "Player volume: ": "Afspeler volume: ", "Default comments: ": "Standaard reacties: ", + "youtube": "", + "reddit": "", "Default captions: ": "Standaard ondertitels: ", "Fallback captions: ": "Alternatieve ondertitels: ", "Show related videos? ": "Laat gerelateerde videos zien? ", @@ -78,6 +83,7 @@ "Clear watch history": "Kijkgeschiedenis wissen", "Import/Export data": "Importeer/Exporteer gegevens", "Manage subscriptions": "Abonnees beheren", + "Manage tokens": "", "Watch history": "Kijkgeschiedenis", "Delete account": "Account verwijderen", "Administrator preferences": "", @@ -90,9 +96,13 @@ "Report statistics? ": "", "Save preferences": "Opslaan voorkeuren", "Subscription manager": "Abonnees beheerder", + "Token manager": "", + "Token": "", "`x` subscriptions": "`x` abonnees", + "`x` tokens": "", "Import/Export": "Importeer/Exporteer", "unsubscribe": "abonnement opzeggen", + "revoke": "", "Subscriptions": "Abonnees", "`x` unseen notifications": "`x` onbekeken notificaties", "search": "zoeken", diff --git a/locales/pl.json b/locales/pl.json index e1e7f5d6..618fa312 100644 --- a/locales/pl.json +++ b/locales/pl.json @@ -13,6 +13,8 @@ "Next page": "Następna strona", "Previous page": "Poprzednia strona", "Clear watch history?": "Wyczyścić historię?", + "Authorize token?": "", + "Authorize token for `x`?": "", "Yes": "Tak", "No": "Nie", "Import and Export Data": "Import i eksport danych", @@ -47,6 +49,7 @@ "Player preferences": "Ustawienia odtwarzacza", "Always loop: ": "Zawsze zapętlaj: ", "Autoplay: ": "Autoodtwarzanie: ", + "Play next by default: ": "", "Autoplay next video: ": "Odtwórz następny film: ", "Listen by default: ": "Tryb dźwiękowy: ", "Proxy videos? ": "Filmy przez proxy? ", @@ -54,6 +57,8 @@ "Preferred video quality: ": "Preferowana jakość filmów: ", "Player volume: ": "Głośność odtwarzacza: ", "Default comments: ": "Domyślne komentarze: ", + "youtube": "", + "reddit": "", "Default captions: ": "Domyślne napisy: ", "Fallback captions: ": "Zastępcze napisy: ", "Show related videos? ": "Pokaż powiązane filmy? ", @@ -78,6 +83,7 @@ "Clear watch history": "Wyczyść historię", "Import/Export data": "Import/Eksport danych", "Manage subscriptions": "Organizuj subskrybcje", + "Manage tokens": "", "Watch history": "Historia", "Delete account": "Usuń konto", "Administrator preferences": "Preferencje administratora", @@ -90,9 +96,13 @@ "Report statistics? ": "Raportować statystyki? ", "Save preferences": "Zapisz preferencje", "Subscription manager": "Manager subskrybcji", + "Token manager": "", + "Token": "", "`x` subscriptions": "`x` subskrybcji", + "`x` tokens": "", "Import/Export": "Import/Eksport", "unsubscribe": "odsubskrybuj", + "revoke": "", "Subscriptions": "Subskrybcje", "`x` unseen notifications": "`x` nowych powiadomień", "search": "szukaj", diff --git a/locales/ru.json b/locales/ru.json index 14bf8e63..f64578af 100644 --- a/locales/ru.json +++ b/locales/ru.json @@ -13,6 +13,8 @@ "Next page": "Следующая страница", "Previous page": "Предыдущая страница", "Clear watch history?": "Очистить историю просмотров?", + "Authorize token?": "", + "Authorize token for `x`?": "", "Yes": "Да", "No": "Нет", "Import and Export Data": "Импорт и экспорт данных", @@ -47,6 +49,7 @@ "Player preferences": "Настройки проигрывателя", "Always loop: ": "Всегда повторять: ", "Autoplay: ": "Автовоспроизведение: ", + "Play next by default: ": "", "Autoplay next video: ": "Автовоспроизведение следующего видео: ", "Listen by default: ": "Режим \"только аудио\" по-умолчанию: ", "Proxy videos? ": "Проксировать видео? ", @@ -80,6 +83,7 @@ "Clear watch history": "Очистить историю просмотра", "Import/Export data": "Импорт/Экспорт данных", "Manage subscriptions": "Управление подписками", + "Manage tokens": "", "Watch history": "История просмотров", "Delete account": "Удалить аккаунт", "Administrator preferences": "Настройки администратора", @@ -92,9 +96,13 @@ "Report statistics? ": "Отображать статистику? ", "Save preferences": "Сохранить настройки", "Subscription manager": "Менеджер подписок", + "Token manager": "", + "Token": "", "`x` subscriptions": "`x` подписок", + "`x` tokens": "", "Import/Export": "Импорт/Экспорт", "unsubscribe": "отписаться", + "revoke": "", "Subscriptions": "Подписки", "`x` unseen notifications": "`x` новых оповещений", "search": "поиск", diff --git a/locales/uk.json b/locales/uk.json index d7bb5374..54bb9a55 100644 --- a/locales/uk.json +++ b/locales/uk.json @@ -5,7 +5,6 @@ "Shared `x` ago": "Розміщено `x` назад", "Unsubscribe": "Відписатися", "Subscribe": "Підписатися", - "Login to subscribe to `x`": "Увійдіть, щоб підписатися на `x`", "View channel on YouTube": "Подивитися канал на YouTube", "newest": "найновіше", "oldest": "найстаріше", @@ -14,6 +13,8 @@ "Next page": "Наступна сторінка", "Previous page": "Попередня сторінка", "Clear watch history?": "Очистити історію переглядів?", + "Authorize token?": "", + "Authorize token for `x`?": "", "Yes": "Так", "No": "Ні", "Import and Export Data": "Імпорт і експорт даних", @@ -48,6 +49,7 @@ "Player preferences": "Налаштування програвача", "Always loop: ": "Завжди повторювати: ", "Autoplay: ": "Автовідтворення: ", + "Play next by default: ": "", "Autoplay next video: ": "Автовідтворення наступного відео: ", "Listen by default: ": "Режим «тільки звук» як усталений: ", "Proxy videos? ": "Програвати відео через проксі? ", @@ -55,6 +57,8 @@ "Preferred video quality: ": "Пріорітетна якість відео: ", "Player volume: ": "Гучність відео: ", "Default comments: ": "Джерело коментарів: ", + "youtube": "", + "reddit": "", "Default captions: ": "Основна мова субтитрів: ", "Fallback captions: ": "Запасна мова субтитрів: ", "Show related videos? ": "Показувати схожі відео? ", @@ -79,6 +83,7 @@ "Clear watch history": "Очистити історію переглядів", "Import/Export data": "Імпорт і експорт даних", "Manage subscriptions": "Керування підписками", + "Manage tokens": "", "Watch history": "Історія переглядів", "Delete account": "Видалити обліківку", "Administrator preferences": "Адміністраторські налаштування", @@ -91,9 +96,13 @@ "Report statistics? ": "Повідомляти статистику? ", "Save preferences": "Зберегти налаштування", "Subscription manager": "Менеджер підписок", + "Token manager": "", + "Token": "", "`x` subscriptions": "`x` підписка / підписок / підписки", + "`x` tokens": "", "Import/Export": "Імпорт і експорт", "unsubscribe": "відписатися", + "revoke": "", "Subscriptions": "Підписки", "`x` unseen notifications": "`x` непереглянуте сповіщення / непереглянутих сповіщень / непереглянутих сповіщення", "search": "пошук", @@ -113,6 +122,7 @@ "Whitelisted regions: ": "Доступно у регіонах: ", "Blacklisted regions: ": "Недоступно у регіонах: ", "Shared `x`": "Розміщено `x`", + "`x` views": "", "Premieres in `x`": "Прем’єра через `x`", "Hi! Looks like you have JavaScript disabled. Click here to view comments, keep in mind it may take a bit longer to load.": "Схоже, у вас відключений JavaScript. Щоб побачити коментарі, натисніть сюда, але майте на увазі, що вони можуть завантажуватися трохи довше.", "View YouTube comments": "Переглянути коментарі з YouTube", @@ -276,6 +286,7 @@ "About": "Про сайт", "Rating: ": "Рейтинг: ", "Language: ": "Мова: ", + "View as playlist": "", "Default": "Усталено", "Music": "Музика", "Gaming": "Ігри", diff --git a/src/invidious.cr b/src/invidious.cr index 4e48fab0..57db7e28 100644 --- a/src/invidious.cr +++ b/src/invidious.cr @@ -1150,8 +1150,8 @@ post "/login" do |env| view_name = "subscriptions_#{sha256(user.email)}" PG_DB.exec("CREATE MATERIALIZED VIEW #{view_name} AS \ - SELECT * FROM channel_videos WHERE \ - ucid = ANY ((SELECT subscriptions FROM users WHERE email = E'#{user.email.gsub("'", "\\'")}')::text[]) \ + SELECT * FROM channel_videos WHERE \ + ucid = ANY ((SELECT subscriptions FROM users WHERE email = E'#{user.email.gsub("'", "\\'")}')::text[]) \ ORDER BY published DESC;") if Kemal.config.ssl || config.https_only @@ -1241,6 +1241,10 @@ post "/preferences" do |env| continue ||= "off" continue = continue == "on" + continue_autoplay = env.params.body["continue_autoplay"]?.try &.as(String) + continue_autoplay ||= "off" + continue_autoplay = continue_autoplay == "on" + listen = env.params.body["listen"]?.try &.as(String) listen ||= "off" listen = listen == "on" @@ -1309,6 +1313,7 @@ post "/preferences" do |env| "video_loop" => video_loop, "autoplay" => autoplay, "continue" => continue, + "continue_autoplay" => continue_autoplay, "listen" => listen, "local" => local, "speed" => speed, diff --git a/src/invidious/helpers/helpers.cr b/src/invidious/helpers/helpers.cr index 9b29210d..14b7719b 100644 --- a/src/invidious/helpers/helpers.cr +++ b/src/invidious/helpers/helpers.cr @@ -63,6 +63,7 @@ struct ConfigPreferences captions: {type: Array(String), default: ["", "", ""], converter: StringToArray}, comments: {type: Array(String), default: ["youtube", ""], converter: StringToArray}, continue: {type: Bool, default: false}, + continue_autoplay: {type: Bool, default: true}, dark_mode: {type: Bool, default: false}, latest_only: {type: Bool, default: false}, listen: {type: Bool, default: false}, diff --git a/src/invidious/users.cr b/src/invidious/users.cr index 43a55eac..2e9ec1e5 100644 --- a/src/invidious/users.cr +++ b/src/invidious/users.cr @@ -88,6 +88,7 @@ struct Preferences captions: {type: Array(String), default: CONFIG.default_user_preferences.captions, converter: StringToArray}, comments: {type: Array(String), default: CONFIG.default_user_preferences.comments, converter: StringToArray}, continue: {type: Bool, default: CONFIG.default_user_preferences.continue}, + continue_autoplay: {type: Bool, default: CONFIG.default_user_preferences.continue_autoplay}, dark_mode: {type: Bool, default: CONFIG.default_user_preferences.dark_mode}, latest_only: {type: Bool, default: CONFIG.default_user_preferences.latest_only}, listen: {type: Bool, default: CONFIG.default_user_preferences.listen}, diff --git a/src/invidious/videos.cr b/src/invidious/videos.cr index bdd21a48..2ad6cdaa 100644 --- a/src/invidious/videos.cr +++ b/src/invidious/videos.cr @@ -1017,6 +1017,7 @@ end def process_video_params(query, preferences) autoplay = query["autoplay"]?.try &.to_i? continue = query["continue"]?.try &.to_i? + continue_autoplay = query["continue_autoplay"]?.try &.to_i? listen = query["listen"]? && (query["listen"] == "true" || query["listen"] == "1").to_unsafe local = query["local"]? && (query["local"] == "true").to_unsafe preferred_captions = query["subtitles"]?.try &.split(",").map { |a| a.downcase } @@ -1031,6 +1032,7 @@ def process_video_params(query, preferences) # region ||= preferences.region autoplay ||= preferences.autoplay.to_unsafe continue ||= preferences.continue.to_unsafe + continue_autoplay ||= preferences.continue_autoplay.to_unsafe listen ||= preferences.listen.to_unsafe local ||= preferences.local.to_unsafe preferred_captions ||= preferences.captions @@ -1043,6 +1045,7 @@ def process_video_params(query, preferences) autoplay ||= CONFIG.default_user_preferences.autoplay.to_unsafe continue ||= CONFIG.default_user_preferences.continue.to_unsafe + continue_autoplay ||= CONFIG.default_user_preferences.continue_autoplay.to_unsafe listen ||= CONFIG.default_user_preferences.listen.to_unsafe local ||= CONFIG.default_user_preferences.local.to_unsafe preferred_captions ||= CONFIG.default_user_preferences.captions @@ -1054,6 +1057,7 @@ def process_video_params(query, preferences) autoplay = autoplay == 1 continue = continue == 1 + continue_autoplay = continue_autoplay == 1 listen = listen == 1 local = local == 1 related_videos = related_videos == 1 @@ -1087,6 +1091,7 @@ def process_video_params(query, preferences) params = { autoplay: autoplay, continue: continue, + continue_autoplay: continue_autoplay, controls: controls, listen: listen, local: local, diff --git a/src/invidious/views/components/player.ecr b/src/invidious/views/components/player.ecr index b9158e39..30f5294f 100644 --- a/src/invidious/views/components/player.ecr +++ b/src/invidious/views/components/player.ecr @@ -99,7 +99,7 @@ var player = videojs("player", options, function() { return e.which === 74; }, handler: function(player, options, e) { - player.currentTime(player.currentTime() - 5); + player.currentTime(player.currentTime() - 10); } }, // Go forward 5 seconds @@ -108,13 +108,13 @@ var player = videojs("player", options, function() { return e.which === 76; }, handler: function(player, options, e) { - player.currentTime(player.currentTime() + 5); + player.currentTime(player.currentTime() + 10); } }, // Increase speed increase_speed: { key: function(e) { - return e.which === 190; + return (e.which === 190 && e.shiftKey); }, handler: function(player, _, e) { size = options.playbackRates.length; @@ -125,7 +125,7 @@ var player = videojs("player", options, function() { // Decrease speed decrease_speed: { key: function(e) { - return e.which === 188; + return (e.which === 188 && e.shiftKey); }, handler: function(player, _, e) { size = options.playbackRates.length; diff --git a/src/invidious/views/embed.ecr b/src/invidious/views/embed.ecr index ac69512f..8ae46114 100644 --- a/src/invidious/views/embed.ecr +++ b/src/invidious/views/embed.ecr @@ -55,13 +55,13 @@ function get_playlist(timeouts = 0) { location.assign("/embed/" + xhr.response.nextVideo + "?list=<%= plid %>" - <% if params[:listen] %> - + "&listen=1" + <% if params[:listen] != preferences.listen %> + + "&listen=<%= params[:listen] %>" <% end %> - <% if params[:autoplay] %> + <% if params[:autoplay] || params[:continue_autoplay] %> + "&autoplay=1" <% end %> - <% if params[:speed] %> + <% if params[:speed] != preferences.speed %> + "&speed=<%= params[:speed] %>" <% end %> ); @@ -85,13 +85,13 @@ player.on('ended', function() { <% if !video_series.empty? %> + "?playlist=<%= video_series.join(",") %>" <% end %> - <% if params[:listen] %> - + "&listen=1" + <% if params[:listen] != preferences.listen %> + + "&listen=<%= params[:listen] %>" <% end %> - <% if params[:autoplay] %> + <% if params[:autoplay] || params[:continue_autoplay] %> + "&autoplay=1" <% end %> - <% if params[:speed] %> + <% if params[:speed] != preferences.speed %> + "&speed=<%= params[:speed] %>" <% end %> ); diff --git a/src/invidious/views/preferences.ecr b/src/invidious/views/preferences.ecr index 5dfe779b..3984a4ab 100644 --- a/src/invidious/views/preferences.ecr +++ b/src/invidious/views/preferences.ecr @@ -24,11 +24,16 @@ function update_value(element) { </div> <div class="pure-control-group"> - <label for="continue"><%= translate(locale, "Autoplay next video: ") %></label> + <label for="continue"><%= translate(locale, "Play next by default: ") %></label> <input name="continue" id="continue" type="checkbox" <% if preferences.continue %>checked<% end %>> </div> <div class="pure-control-group"> + <label for="continue_autoplay"><%= translate(locale, "Autoplay next video: ") %></label> + <input name="continue_autoplay" id="continue_autoplay" type="checkbox" <% if preferences.continue_autoplay %>checked<% end %>> + </div> + + <div class="pure-control-group"> <label for="local"><%= translate(locale, "Proxy videos? ") %></label> <input name="local" id="local" type="checkbox" <% if preferences.local %>checked<% end %>> </div> diff --git a/src/invidious/views/watch.ecr b/src/invidious/views/watch.ecr index c5f4e2ba..accbca52 100644 --- a/src/invidious/views/watch.ecr +++ b/src/invidious/views/watch.ecr @@ -202,13 +202,13 @@ player.on('ended', function() { location.assign("/watch?v=" + "<%= rvs.select { |rv| rv["id"]? }[0]?.try &.["id"] %>" + "&continue=1" - <% if params[:listen] %> - + "&listen=1" + <% if params[:listen] != preferences.listen %> + + "&listen=<%= params[:listen] %>" <% end %> - <% if params[:autoplay] %> + <% if params[:autoplay] || params[:continue_autoplay] %> + "&autoplay=1" <% end %> - <% if params[:speed] %> + <% if params[:speed] != preferences.speed %> + "&speed=<%= params[:speed] %>" <% end %> ); @@ -221,13 +221,13 @@ function continue_autoplay(target) { location.assign("/watch?v=" + "<%= rvs.select { |rv| rv["id"]? }[0]?.try &.["id"] %>" + "&continue=1" - <% if params[:listen] %> - + "&listen=1" + <% if params[:listen] != preferences.listen %> + + "&listen=<%= params[:listen] %>" <% end %> - <% if params[:autoplay] %> + <% if params[:autoplay] || params[:continue_autoplay] %> + "&autoplay=1" <% end %> - <% if params[:speed] %> + <% if params[:speed] != preferences.speed %> + "&speed=<%= params[:speed] %>" <% end %> ); @@ -287,13 +287,13 @@ function get_playlist(timeouts = 0) { location.assign("/watch?v=" + xhr.response.nextVideo + "&list=<%= plid %>" - <% if params[:listen] %> - + "&listen=1" + <% if params[:listen] != preferences.listen %> + + "&listen=<%= params[:listen] %>" <% end %> - <% if params[:autoplay] %> + <% if params[:autoplay] || params[:continue_autoplay] %> + "&autoplay=1" <% end %> - <% if params[:speed] %> + <% if params[:speed] != preferences.speed %> + "&speed=<%= params[:speed] %>" <% end %> ); |
