summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--assets/css/default.css25
-rw-r--r--assets/css/embed.css16
-rw-r--r--assets/js/player.js17
-rw-r--r--docker/Dockerfile1
-rw-r--r--locales/ar.json3
-rw-r--r--locales/bn_BD.json3
-rw-r--r--locales/cs.json3
-rw-r--r--locales/da.json11
-rw-r--r--locales/de.json3
-rw-r--r--locales/el.json5
-rw-r--r--locales/en-US.json3
-rw-r--r--locales/eo.json5
-rw-r--r--locales/es.json5
-rw-r--r--locales/eu.json3
-rw-r--r--locales/fa.json3
-rw-r--r--locales/fi.json3
-rw-r--r--locales/fr.json7
-rw-r--r--locales/he.json49
-rw-r--r--locales/hr.json5
-rw-r--r--locales/hu-HU.json3
-rw-r--r--locales/id.json139
-rw-r--r--locales/is.json5
-rw-r--r--locales/it.json3
-rw-r--r--locales/ja.json3
-rw-r--r--locales/nb-NO.json3
-rw-r--r--locales/nl.json3
-rw-r--r--locales/pl.json3
-rw-r--r--locales/pt-BR.json3
-rw-r--r--locales/pt-PT.json3
-rw-r--r--locales/ro.json3
-rw-r--r--locales/ru.json3
-rw-r--r--locales/si.json3
-rw-r--r--locales/sk.json3
-rw-r--r--locales/sr.json3
-rw-r--r--locales/sr_Cyrl.json3
-rw-r--r--locales/sv-SE.json3
-rw-r--r--locales/tr.json5
-rw-r--r--locales/uk.json3
-rw-r--r--locales/zh-CN.json3
-rw-r--r--locales/zh-TW.json5
-rw-r--r--src/invidious/helpers/helpers.cr3
-rw-r--r--src/invidious/users.cr1
-rw-r--r--src/invidious/videos.cr8
-rw-r--r--src/invidious/views/preferences.ecr6
-rw-r--r--src/invidious/views/search_homepage.ecr2
-rw-r--r--src/invidious/views/watch.ecr27
46 files changed, 313 insertions, 109 deletions
diff --git a/assets/css/default.css b/assets/css/default.css
index 17264532..07a879bb 100644
--- a/assets/css/default.css
+++ b/assets/css/default.css
@@ -490,3 +490,28 @@ See https://stackoverflow.com/a/34372979 for more info */
hr {
margin: auto 0 auto 0;
}
+
+/* Description Expansion Styling*/
+#description-box {
+ display: flex;
+ flex-direction: column;
+}
+
+#descexpansionbutton {
+ display: none
+}
+
+#descexpansionbutton ~ div {
+ overflow: hidden;
+ height: 8.3em;
+}
+
+#descexpansionbutton:checked ~ div {
+ overflow: unset;
+ height: 100%;
+}
+
+#descexpansionbutton + label {
+ order: 1;
+ margin-top: 20px;
+}
diff --git a/assets/css/embed.css b/assets/css/embed.css
index 12fefe58..466a284a 100644
--- a/assets/css/embed.css
+++ b/assets/css/embed.css
@@ -8,3 +8,19 @@
height: auto;
z-index: -100;
}
+
+.watch-on-invidious {
+ font-size: 1.3em !important;
+ font-weight: bold;
+ white-space: nowrap;
+ margin: 0 1em 0 1em !important;
+ order: 3;
+}
+
+.watch-on-invidious > a {
+ color: white;
+}
+
+.watch-on-invidious > a:hover {
+ color: rgba(0, 182, 240, 1);;
+}
diff --git a/assets/js/player.js b/assets/js/player.js
index 68fc805b..a6d0c8c1 100644
--- a/assets/js/player.js
+++ b/assets/js/player.js
@@ -616,3 +616,20 @@ if (navigator.vendor == "Apple Computer, Inc." && video_data.params.listen) {
});
});
}
+
+// Watch on Invidious link
+if (window.location.pathname.startsWith("/embed/")) {
+ const Button = videojs.getComponent('Button');
+ let watch_on_invidious_button = new Button(player);
+
+ // Create hyperlink for current instance
+ redirect_element = document.createElement("a");
+ redirect_element.setAttribute("href", `http://${window.location.host}/watch?v=${window.location.pathname.replace("/embed/","")}`)
+ redirect_element.appendChild(document.createTextNode("Invidious"))
+
+ watch_on_invidious_button.el().appendChild(redirect_element)
+ watch_on_invidious_button.addClass("watch-on-invidious")
+
+ cb = player.getChild('ControlBar')
+ cb.addChild(watch_on_invidious_button)
+};
diff --git a/docker/Dockerfile b/docker/Dockerfile
index f7d990d7..87884403 100644
--- a/docker/Dockerfile
+++ b/docker/Dockerfile
@@ -25,6 +25,7 @@ RUN sed -i 's/host: \(127.0.0.1\|localhost\)/host: postgres/' config/config.yml
COPY ./config/sql/ ./config/sql/
COPY ./locales/ ./locales/
COPY --from=builder /invidious/invidious .
+RUN chmod o+rX -R ./assets ./config ./locales
EXPOSE 3000
USER invidious
diff --git a/locales/ar.json b/locales/ar.json
index 540e4df0..af49f514 100644
--- a/locales/ar.json
+++ b/locales/ar.json
@@ -77,6 +77,7 @@
"Fallback captions: ": "الترجمات المصاحبة: ",
"Show related videos: ": "اعرض الفيديوهات ذات الصلة: ",
"Show annotations by default: ": "اعرض الملاحظات في الفيديو تلقائيا: ",
+ "Automatically extend video description: ": "",
"Visual preferences": "التفضيلات المرئية",
"Player style: ": "شكل مشغل الفيديوهات: ",
"Dark mode: ": "الوضع الليلى: ",
@@ -156,6 +157,8 @@
"Title": "العنوان",
"Playlist privacy": "إعدادات الخصوصيه",
"Editing playlist `x`": "تعديل قائمه التشفيل `x`",
+ "Show more": "",
+ "Show less": "",
"Watch on YouTube": "مشاهدة الفيديو على اليوتيوب",
"Hide annotations": "إخفاء الملاحظات فى الفيديو",
"Show annotations": "عرض الملاحظات فى الفيديو",
diff --git a/locales/bn_BD.json b/locales/bn_BD.json
index 1c1cc274..b6df0470 100644
--- a/locales/bn_BD.json
+++ b/locales/bn_BD.json
@@ -71,6 +71,7 @@
"Fallback captions: ": "",
"Show related videos: ": "",
"Show annotations by default: ": "",
+ "Automatically extend video description: ": "",
"Visual preferences": "",
"Player style: ": "",
"Dark mode: ": "",
@@ -144,6 +145,8 @@
"Title": "",
"Playlist privacy": "",
"Editing playlist `x`": "",
+ "Show more": "",
+ "Show less": "",
"Watch on YouTube": "",
"Hide annotations": "",
"Show annotations": "",
diff --git a/locales/cs.json b/locales/cs.json
index 802249ef..6c37444a 100644
--- a/locales/cs.json
+++ b/locales/cs.json
@@ -77,6 +77,7 @@
"Fallback captions: ": "",
"Show related videos: ": "Zobrazit podobné videa: ",
"Show annotations by default: ": "",
+ "Automatically extend video description: ": "",
"Visual preferences": "",
"Player style: ": "Styl přehrávače ",
"Dark mode: ": "Tmavý režim ",
@@ -156,6 +157,8 @@
"Title": "",
"Playlist privacy": "",
"Editing playlist `x`": "",
+ "Show more": "",
+ "Show less": "",
"Watch on YouTube": "",
"Hide annotations": "",
"Show annotations": "",
diff --git a/locales/da.json b/locales/da.json
index d01080f5..0962524b 100644
--- a/locales/da.json
+++ b/locales/da.json
@@ -77,6 +77,7 @@
"Fallback captions: ": "Alternative undertekster: ",
"Show related videos: ": "Vis relaterede videoer: ",
"Show annotations by default: ": "Vis annotationer som standard: ",
+ "Automatically extend video description: ": "",
"Visual preferences": "Visuelle præferencer",
"Player style: ": "Afspiller stil: ",
"Dark mode: ": "Mørk tilstand: ",
@@ -156,6 +157,8 @@
"Title": "Titel",
"Playlist privacy": "Privatlivsindstillinger for afspilningsliste",
"Editing playlist `x`": "Redigerer afspilningsliste `x`",
+ "Show more": "",
+ "Show less": "",
"Watch on YouTube": "Se på YouTube",
"Hide annotations": "Skjul annotationer",
"Show annotations": "Vis annotationer",
@@ -188,15 +191,15 @@
"Unable to log in, make sure two-factor authentication (Authenticator or SMS) is turned on.": "Login fejlet, tjek at totrinsbekræftelse (Authenticator eller SMS) er slået til.",
"Invalid TFA code": "",
"Login failed. This may be because two-factor authentication is not turned on for your account.": "",
- "Wrong answer": "",
- "Erroneous CAPTCHA": "",
+ "Wrong answer": "Forkert svar",
+ "Erroneous CAPTCHA": "Fejlagtig CAPTCHA",
"CAPTCHA is a required field": "",
"User ID is a required field": "",
"Password is a required field": "",
- "Wrong username or password": "",
+ "Wrong username or password": "Forkert brugernavn eller adgangskode",
"Please sign in using 'Log in with Google'": "",
"Password cannot be empty": "",
- "Password cannot be longer than 55 characters": "",
+ "Password cannot be longer than 55 characters": "Adgangskoden må ikke være længere end 55 tegn",
"Please log in": "",
"Invidious Private Feed for `x`": "",
"channel:`x`": "",
diff --git a/locales/de.json b/locales/de.json
index 1985e43a..17350211 100644
--- a/locales/de.json
+++ b/locales/de.json
@@ -77,6 +77,7 @@
"Fallback captions: ": "Ersatzuntertitel: ",
"Show related videos: ": "Ähnliche Videos anzeigen? ",
"Show annotations by default: ": "Standardmäßig Anmerkungen anzeigen? ",
+ "Automatically extend video description: ": "",
"Visual preferences": "Anzeigeeinstellungen",
"Player style: ": "Abspielgeräterstil: ",
"Dark mode: ": "Nachtmodus: ",
@@ -156,6 +157,8 @@
"Title": "Titel",
"Playlist privacy": "Vertrauliche Wiedergabeliste",
"Editing playlist `x`": "Wiedergabeliste bearbeiten `x`",
+ "Show more": "",
+ "Show less": "",
"Watch on YouTube": "Video auf YouTube ansehen",
"Hide annotations": "Anmerkungen ausblenden",
"Show annotations": "Anmerkungen anzeigen",
diff --git a/locales/el.json b/locales/el.json
index 390b81fd..5eb4a304 100644
--- a/locales/el.json
+++ b/locales/el.json
@@ -77,6 +77,7 @@
"Fallback captions: ": "Εναλλακτικοί υπότιτλοι: ",
"Show related videos: ": "Προβολή σχετικών βίντεο; ",
"Show annotations by default: ": "Αυτόματη προβολή σημειώσεων: ",
+ "Automatically extend video description: ": "",
"Visual preferences": "Προτιμήσεις εμφάνισης",
"Player style: ": "Τεχνοτροπία της συσκευής αναπαραγωγης: ",
"Dark mode: ": "Σκοτεινή λειτουργία: ",
@@ -156,6 +157,8 @@
"Title": "Τίτλος",
"Playlist privacy": "Ιδιωτικότητα καταλόγων αναπαραγωγής",
"Editing playlist `x`": "Επεξεργασία `x` καταλόγου αναπαραγωγής",
+ "Show more": "",
+ "Show less": "",
"Watch on YouTube": "Προβολή στο YouTube",
"Hide annotations": "Απόκρυψη σημειώσεων",
"Show annotations": "Προβολή σημειώσεων",
@@ -412,4 +415,4 @@
"hdr": "",
"filter": "",
"Current version: ": "Τρέχουσα έκδοση: "
-}
+} \ No newline at end of file
diff --git a/locales/en-US.json b/locales/en-US.json
index a7dc3107..71485826 100644
--- a/locales/en-US.json
+++ b/locales/en-US.json
@@ -77,6 +77,7 @@
"Fallback captions: ": "Fallback captions: ",
"Show related videos: ": "Show related videos: ",
"Show annotations by default: ": "Show annotations by default: ",
+ "Automatically extend video description: ": "Automatically extend video description: ",
"Visual preferences": "Visual preferences",
"Player style: ": "Player style: ",
"Dark mode: ": "Dark mode: ",
@@ -156,6 +157,8 @@
"Title": "Title",
"Playlist privacy": "Playlist privacy",
"Editing playlist `x`": "Editing playlist `x`",
+ "Show more": "Show more",
+ "Show less": "Show less",
"Watch on YouTube": "Watch on YouTube",
"Hide annotations": "Hide annotations",
"Show annotations": "Show annotations",
diff --git a/locales/eo.json b/locales/eo.json
index 14a1c425..e98ebb59 100644
--- a/locales/eo.json
+++ b/locales/eo.json
@@ -77,6 +77,7 @@
"Fallback captions: ": "Retrodefaŭltaj subtekstoj: ",
"Show related videos: ": "Ĉu montri rilatajn filmetojn? ",
"Show annotations by default: ": "Ĉu montri prinotojn defaŭlte? ",
+ "Automatically extend video description: ": "",
"Visual preferences": "Vidaj preferoj",
"Player style: ": "Ludila stilo: ",
"Dark mode: ": "Malhela reĝimo: ",
@@ -156,6 +157,8 @@
"Title": "Titolo",
"Playlist privacy": "Privateco de ludlisto",
"Editing playlist `x`": "Redaktante ludlisto `x`",
+ "Show more": "",
+ "Show less": "",
"Watch on YouTube": "Vidi filmeton en JuTubo",
"Hide annotations": "Kaŝi prinotojn",
"Show annotations": "Montri prinotojn",
@@ -412,4 +415,4 @@
"hdr": "granddinamikgama",
"filter": "filtri",
"Current version: ": "Nuna versio: "
-}
+} \ No newline at end of file
diff --git a/locales/es.json b/locales/es.json
index 9562fa84..1b50aea1 100644
--- a/locales/es.json
+++ b/locales/es.json
@@ -77,6 +77,7 @@
"Fallback captions: ": "Subtítulos alternativos: ",
"Show related videos: ": "¿Mostrar vídeos relacionados? ",
"Show annotations by default: ": "¿Mostrar anotaciones por defecto? ",
+ "Automatically extend video description: ": "",
"Visual preferences": "Preferencias visuales",
"Player style: ": "Estilo de reproductor: ",
"Dark mode: ": "Modo oscuro: ",
@@ -156,6 +157,8 @@
"Title": "Título",
"Playlist privacy": "Privacidad de la lista de reproducción",
"Editing playlist `x`": "Editando la lista de reproducción 'x'",
+ "Show more": "",
+ "Show less": "",
"Watch on YouTube": "Ver el vídeo en Youtube",
"Hide annotations": "Ocultar anotaciones",
"Show annotations": "Mostrar anotaciones",
@@ -412,4 +415,4 @@
"hdr": "hdr",
"filter": "filtro",
"Current version: ": "Versión actual: "
-}
+} \ No newline at end of file
diff --git a/locales/eu.json b/locales/eu.json
index 709d9caf..d5021c25 100644
--- a/locales/eu.json
+++ b/locales/eu.json
@@ -68,6 +68,7 @@
"Fallback captions: ": "",
"Show related videos: ": "Erakutsi erlazionatutako bideoak: ",
"Show annotations by default: ": "Erakutsi oharrak modu lehenetsian: ",
+ "Automatically extend video description: ": "",
"Visual preferences": "Hobespen bisualak",
"Player style: ": "Erreproduzigailu mota: ",
"Dark mode: ": "Gai iluna: ",
@@ -138,6 +139,8 @@
"Title": "",
"Playlist privacy": "",
"Editing playlist `x`": "",
+ "Show more": "",
+ "Show less": "",
"Watch on YouTube": "",
"Hide annotations": "",
"Show annotations": "",
diff --git a/locales/fa.json b/locales/fa.json
index f2fdbf3b..b6114292 100644
--- a/locales/fa.json
+++ b/locales/fa.json
@@ -77,6 +77,7 @@
"Fallback captions: ": "عقب گرد زیرنویس ها: ",
"Show related videos: ": "نمایش ویدیو های مرتبط: ",
"Show annotations by default: ": "نمایش حاشیه نویسی ها به طور پیشفرض: ",
+ "Automatically extend video description: ": "",
"Visual preferences": "ترجیحات بصری",
"Player style: ": "حالت پخش کننده: ",
"Dark mode: ": "حالت تاریک: ",
@@ -156,6 +157,8 @@
"Title": "عنوان",
"Playlist privacy": "حریم خصوصی لیست پخش",
"Editing playlist `x`": "تغییر لیست پخش `x`",
+ "Show more": "",
+ "Show less": "",
"Watch on YouTube": "تماشا در یوتیوب",
"Hide annotations": "مخفی کردن حاشیه نویسی ها",
"Show annotations": "نمایش حاشیه نویسی ها",
diff --git a/locales/fi.json b/locales/fi.json
index a009cdb6..5adeec05 100644
--- a/locales/fi.json
+++ b/locales/fi.json
@@ -77,6 +77,7 @@
"Fallback captions: ": "Toissijaiset tekstitykset: ",
"Show related videos: ": "Näytä aiheeseen liittyviä videoita: ",
"Show annotations by default: ": "Näytä huomautukset oletuksena: ",
+ "Automatically extend video description: ": "",
"Visual preferences": "Visuaaliset asetukset",
"Player style: ": "Soittimen tyyli: ",
"Dark mode: ": "Tumma tila: ",
@@ -156,6 +157,8 @@
"Title": "Nimi",
"Playlist privacy": "Soittolistan yksityisyys",
"Editing playlist `x`": "Muokataan soittolistaa `x`",
+ "Show more": "",
+ "Show less": "",
"Watch on YouTube": "Katso YouTubessa",
"Hide annotations": "Piilota merkkaukset",
"Show annotations": "Näytä merkkaukset",
diff --git a/locales/fr.json b/locales/fr.json
index dad4b2b1..f1055657 100644
--- a/locales/fr.json
+++ b/locales/fr.json
@@ -77,6 +77,7 @@
"Fallback captions: ": "Sous-titres alternatifs : ",
"Show related videos: ": "Voir les vidéos liées : ",
"Show annotations by default: ": "Afficher les annotations par défaut : ",
+ "Automatically extend video description: ": "",
"Visual preferences": "Préférences du site",
"Player style: ": "Style du lecteur : ",
"Dark mode: ": "Mode sombre : ",
@@ -156,6 +157,8 @@
"Title": "Titre",
"Playlist privacy": "Paramètres de confidentialité de la liste de lecture",
"Editing playlist `x`": "Liste de lecture modifier le `x`",
+ "Show more": "",
+ "Show less": "",
"Watch on YouTube": "Voir la vidéo sur Youtube",
"Hide annotations": "Masquer les annotations",
"Show annotations": "Afficher les annotations",
@@ -391,7 +394,7 @@
"content_type": "type de contenu",
"duration": "durée",
"features": "fonctionnalités",
- "sort": "trier par",
+ "sort": "Trier par",
"hour": "heure",
"today": "aujourd'hui",
"week": "semaine",
@@ -412,4 +415,4 @@
"hdr": "HDR",
"filter": "filtrer",
"Current version: ": "Version actuelle : "
-}
+} \ No newline at end of file
diff --git a/locales/he.json b/locales/he.json
index 0d02d70c..bf34c085 100644
--- a/locales/he.json
+++ b/locales/he.json
@@ -12,7 +12,7 @@
"": "`x` פלייליסטים."
},
"LIVE": "שידור חי",
- "Shared `x` ago": "",
+ "Shared `x` ago": "שותף לפני `x`",
"Unsubscribe": "ביטול מינוי",
"Subscribe": "הרשמה למינוי",
"View channel on YouTube": "צפייה בערוץ ב־YouTube",
@@ -27,8 +27,8 @@
"New password": "סיסמה חדשה",
"New passwords must match": "על הסיסמאות החדשות להתאים",
"Cannot change password for Google accounts": "לא ניתן לשנות את הסיסמה לחשבונות Google",
- "Authorize token?": "",
- "Authorize token for `x`?": "",
+ "Authorize token?": "לאשר את האסימון?",
+ "Authorize token for `x`?": "האם לאשר את האסימון עבור `x`?",
"Yes": "כן",
"No": "לא",
"Import and Export Data": "ייבוא וייצוא נתונים",
@@ -45,7 +45,7 @@
"Delete account?": "למחוק את החשבון?",
"History": "היסטוריה",
"An alternative front-end to YouTube": "ממשק משתמש חלופי ל־YouTube",
- "JavaScript license information": "",
+ "JavaScript license information": "מידע על רישיון JavaScript",
"source": "source",
"Log in": "כניסה",
"Log in/register": "כניסה/הרשמה",
@@ -63,7 +63,7 @@
"Player preferences": "העדפות הנגן",
"Always loop: ": "",
"Autoplay: ": "ניגון אוטומטי: ",
- "Play next by default: ": "",
+ "Play next by default: ": "ניגון הסרטון הבא כברירת מחדל: ",
"Autoplay next video: ": "ניגון הסרטון הבא באופן אוטומטי: ",
"Listen by default: ": "שמע כברירת מחדל: ",
"Proxy videos: ": "",
@@ -77,6 +77,7 @@
"Fallback captions: ": "כתוביות גיבוי ",
"Show related videos: ": "הצגת סרטונים קשורים: ",
"Show annotations by default: ": "הצגת הערות כברירת מחדל: ",
+ "Automatically extend video description: ": "",
"Visual preferences": "העדפות חזותיות",
"Player style: ": "סגנון הנגן: ",
"Dark mode: ": "מצב כהה: ",
@@ -107,10 +108,10 @@
"Import/export data": "ייבוא/ייצוא נתונים",
"Change password": "שינוי הסיסמה",
"Manage subscriptions": "ניהול מינויים",
- "Manage tokens": "",
+ "Manage tokens": "ניהול אסימונים",
"Watch history": "היסטוריית צפייה",
"Delete account": "מחיקת החשבון",
- "Administrator preferences": "",
+ "Administrator preferences": "הגדרות ניהול מערכת",
"Default homepage: ": "Default homepage: ",
"Feed menu: ": "תפריט ההזנה: ",
"Top enabled: ": "",
@@ -156,13 +157,15 @@
"Title": "",
"Playlist privacy": "Playlist privacy",
"Editing playlist `x`": "",
+ "Show more": "",
+ "Show less": "",
"Watch on YouTube": "צפייה ב־YouTube",
"Hide annotations": "",
"Show annotations": "",
"Genre: ": "Genre: ",
"License: ": "רישיון: ",
"Family friendly? ": "לכל המשפחה? ",
- "Wilson score: ": "",
+ "Wilson score: ": "ציון וילסון: ",
"Engagement: ": "",
"Whitelisted regions: ": "",
"Blacklisted regions: ": "",
@@ -174,13 +177,13 @@
"Premieres in `x`": "",
"Premieres `x`": "",
"Hi! Looks like you have JavaScript turned off. Click here to view comments, keep in mind they may take a bit longer to load.": "שלום! נראה ש־JavaScript כבוי. יש ללחוץ כאן להצגת התגובות, נא לקחת בחשבון שהטעינה תיקח קצת יותר זמן.",
- "View YouTube comments": "",
- "View more comments on Reddit": "",
+ "View YouTube comments": "הצגת התגובות מ־YouTube",
+ "View more comments on Reddit": "להצגת תגובות נוספות ב־Reddit",
"View `x` comments": {
"([^.,0-9]|^)1([^.,0-9]|$)": "הצגת `x` תגובות.([^.,0-9]|^)1([^.,0-9]|$)",
"": "הצגת `x` תגובות."
},
- "View Reddit comments": "",
+ "View Reddit comments": "להצגת התגובות ב־Reddit",
"Hide replies": "הסתרת תגובות",
"Show replies": "הצגת תגובות",
"Incorrect password": "סיסמה שגויה",
@@ -190,17 +193,17 @@
"Login failed. This may be because two-factor authentication is not turned on for your account.": "",
"Wrong answer": "תשובה שגויה",
"Erroneous CAPTCHA": "",
- "CAPTCHA is a required field": "",
+ "CAPTCHA is a required field": "שדה CAPTCHA הוא שדה חובה",
"User ID is a required field": "חובה למלא את שדה שם המשתמש",
"Password is a required field": "חובה למלא את שדה הסיסמה",
"Wrong username or password": "שם משתמש שגוי או סיסמה שגויה",
- "Please sign in using 'Log in with Google'": "",
+ "Please sign in using 'Log in with Google'": "נא להתחבר בעזרת \"התחברות עם Google\"",
"Password cannot be empty": "",
- "Password cannot be longer than 55 characters": "",
+ "Password cannot be longer than 55 characters": "על אורך הסיסמה להיות 55 תווים לכל היותר",
"Please log in": "נא להתחבר",
"Invidious Private Feed for `x`": "",
"channel:`x`": "ערוץ:`x`",
- "Deleted or invalid channel": "",
+ "Deleted or invalid channel": "הערוץ נמחק או שאינו תקין",
"This channel does not exist.": "הערוץ הזה אינו קיים.",
"Could not get channel info.": "לא היה ניתן לקבל מידע על הערוץ.",
"Could not fetch comments": "לא היה ניתן למשוך את התגובות",
@@ -224,7 +227,7 @@
"Erroneous challenge": "",
"Erroneous token": "",
"No such user": "אין משתמש כזה",
- "Token is expired, please try again": "",
+ "Token is expired, please try again": "תוקף האסימון פג, נא לנסות שוב",
"English": "אנגלית",
"English (auto-generated)": "אנגלית (נוצר באופן אוטומטי)",
"Afrikaans": "Afrikaans",
@@ -263,10 +266,10 @@
"Hawaiian": "הוואית",
"Hebrew": "עברית",
"Hindi": "הינדית",
- "Hmong": "",
+ "Hmong": "המונג",
"Hungarian": "הונגרית",
"Icelandic": "איסלנדית",
- "Igbo": "",
+ "Igbo": "איגבו",
"Indonesian": "אינדונזית",
"Irish": "Irish",
"Italian": "איטלקית",
@@ -286,7 +289,7 @@
"Macedonian": "מקדונית",
"Malagasy": "מלגשית",
"Malay": "מלאית",
- "Malayalam": "",
+ "Malayalam": "מלאיאלאם",
"Maltese": "מלטזית",
"Maori": "מאורית",
"Marathi": "מראטהית",
@@ -301,7 +304,7 @@
"Punjabi": "פנג'אבי",
"Romanian": "רומנית",
"Russian": "רוסית",
- "Samoan": "",
+ "Samoan": "סמואית",
"Scottish Gaelic": "גאלית סקוטית",
"Serbian": "Serbian",
"Shona": "",
@@ -329,7 +332,7 @@
"Western Frisian": "",
"Xhosa": "קוסה",
"Yiddish": "יידיש",
- "Yoruba": "",
+ "Yoruba": "יורובה",
"Zulu": "זולו",
"`x` years": {
"([^.,0-9]|^)1([^.,0-9]|$)": "`x` שנים.([^.,0-9]|^)1([^.,0-9]|$)",
@@ -375,7 +378,7 @@
"Download": "הורדה",
"Download as: ": "הורדה בתור: ",
"%A %B %-d, %Y": "%A %B %-d, %Y",
- "(edited)": "",
+ "(edited)": "(לאחר עריכה)",
"YouTube comment permalink": "",
"permalink": "",
"`x` marked it with a ❤": "סומנה ב־❤ על ידי `x`",
@@ -412,4 +415,4 @@
"hdr": "HDR",
"filter": "סינון",
"Current version: ": "הגרסה הנוכחית: "
-}
+} \ No newline at end of file
diff --git a/locales/hr.json b/locales/hr.json
index ae2f6d6f..2142a052 100644
--- a/locales/hr.json
+++ b/locales/hr.json
@@ -77,6 +77,7 @@
"Fallback captions: ": "Alternativni titlovi: ",
"Show related videos: ": "Prikaži povezana videa: ",
"Show annotations by default: ": "Standardno prikaži napomene: ",
+ "Automatically extend video description: ": "",
"Visual preferences": "Postavke prikaza",
"Player style: ": "Stil playera: ",
"Dark mode: ": "Tamni modus: ",
@@ -156,6 +157,8 @@
"Title": "Naslov",
"Playlist privacy": "Privatnost playliste",
"Editing playlist `x`": "Uređivanje playliste `x`",
+ "Show more": "",
+ "Show less": "",
"Watch on YouTube": "Gledaj na YouTubeu",
"Hide annotations": "Sakrij napomene",
"Show annotations": "Prikaži napomene",
@@ -412,4 +415,4 @@
"hdr": "hdr",
"filter": "filtar",
"Current version: ": "Trenutačna verzija: "
-}
+} \ No newline at end of file
diff --git a/locales/hu-HU.json b/locales/hu-HU.json
index 8b1c2c9d..a8c9cae1 100644
--- a/locales/hu-HU.json
+++ b/locales/hu-HU.json
@@ -68,6 +68,7 @@
"Fallback captions: ": "Másodlagos feliratok: ",
"Show related videos: ": "Kapcsolódó videók mutatása: ",
"Show annotations by default: ": "Annotációk mutatása alapértelmetésben: ",
+ "Automatically extend video description: ": "",
"Visual preferences": "Vizuális preferenciák",
"Player style: ": "Lejátszó stílusa: ",
"Dark mode: ": "Sötét mód: ",
@@ -138,6 +139,8 @@
"Title": "Címe",
"Playlist privacy": "Playlist láthatósága",
"Editing playlist `x`": "`x` playlist szerkesztése",
+ "Show more": "",
+ "Show less": "",
"Watch on YouTube": "Megtekintés a YouTube-on",
"Hide annotations": "Annotációk elrejtése",
"Show annotations": "Annotációk mutatása",
diff --git a/locales/id.json b/locales/id.json
index 03b97fd6..61424233 100644
--- a/locales/id.json
+++ b/locales/id.json
@@ -77,6 +77,7 @@
"Fallback captions: ": "Subtitel fallback: ",
"Show related videos: ": "Tampilkan video terkait: ",
"Show annotations by default: ": "Tampilkan anotasi secara default: ",
+ "Automatically extend video description: ": "",
"Visual preferences": "Preferensi visual",
"Player style: ": "Gaya pemutar: ",
"Dark mode: ": "Mode gelap: ",
@@ -113,7 +114,7 @@
"Administrator preferences": "Preferensi administrator",
"Default homepage: ": "Laman beranda default: ",
"Feed menu: ": "Menu umpan: ",
- "Top enabled: ": "",
+ "Top enabled: ": "Teratas diaktifkan: ",
"CAPTCHA enabled: ": "CAPTCHA diaktifkan: ",
"Login enabled: ": "Masuk diaktifkan: ",
"Registration enabled: ": "Registrasi diaktifkan: ",
@@ -156,6 +157,8 @@
"Title": "Judul",
"Playlist privacy": "Privasi daftar putar",
"Editing playlist `x`": "Menyunting daftar putar `x`",
+ "Show more": "",
+ "Show less": "",
"Watch on YouTube": "Tonton di YouTube",
"Hide annotations": "Sembunyikan anotasi",
"Show annotations": "Tampilkan anotasi",
@@ -219,10 +222,10 @@
"Not a playlist.": "Bukan daftar putar.",
"Playlist does not exist.": "Daftar putar tidak ada.",
"Could not pull trending pages.": "Tidak bisa mendapatkan laman tren.",
- "Hidden field \"challenge\" is a required field": "",
- "Hidden field \"token\" is a required field": "",
- "Erroneous challenge": "",
- "Erroneous token": "",
+ "Hidden field \"challenge\" is a required field": "Bidang \"tantangan\" tersembunyi wajib diisi",
+ "Hidden field \"token\" is a required field": "Bidang \"token\" tersembunyi wajib diisi",
+ "Erroneous challenge": "Tantangan salah",
+ "Erroneous token": "Token salah",
"No such user": "Tidak ada pengguna demikian",
"Token is expired, please try again": "Token kadaluwarsa, harap coba lagi",
"English": "Bahasa Inggris",
@@ -243,7 +246,7 @@
"Cebuano": "Bahasa Cebu",
"Chinese (Simplified)": "Bahasa Cina",
"Chinese (Traditional)": "Bahasa Cina (Tradisonal)",
- "Corsican": "",
+ "Corsican": "Bahasa Korsika",
"Croatian": "Bahasa Kroasia",
"Czech": "Bahasa Ceko",
"Danish": "Bahasa Denmak",
@@ -253,17 +256,17 @@
"Filipino": "Bahasa Filipina",
"Finnish": "Bahasa Finlandia",
"French": "Bahasa Perancis",
- "Galician": "",
+ "Galician": "Bahasa Galisia",
"Georgian": "Bahasa Georgia",
"German": "Bahasa Jerman",
"Greek": "Bahasa Yunani",
- "Gujarati": "",
- "Haitian Creole": "",
- "Hausa": "",
+ "Gujarati": "Bahasa Gujarat",
+ "Haitian Creole": "Bahasa Kreol Haiti",
+ "Hausa": "Bahasa Hausa",
"Hawaiian": "Bahasa Hawai",
"Hebrew": "Bahasa Ibrani",
"Hindi": "Bahasa Hindi",
- "Hmong": "",
+ "Hmong": "Bahasa Hmong",
"Hungarian": "Bahasa Hungaria",
"Icelandic": "Bahasa Islandia",
"Igbo": "Bahasa Igbo",
@@ -272,53 +275,53 @@
"Italian": "Bahasa Italia",
"Japanese": "Bahasa Jepang",
"Javanese": "Bahasa Jawa",
- "Kannada": "",
- "Kazakh": "",
- "Khmer": "",
+ "Kannada": "Bahasa Kannada",
+ "Kazakh": "Bahasa Kazakh",
+ "Khmer": "Bahasa Khmer",
"Korean": "Bahasa Korea",
"Kurdish": "Bahasa Kurdistan",
- "Kyrgyz": "",
- "Lao": "",
+ "Kyrgyz": "Bahasa Kirgiz",
+ "Lao": "Bahasa Laos",
"Latin": "Bahasa Latin",
"Latvian": "Bahasa Latvia",
"Lithuanian": "Bahasa Lithuania",
- "Luxembourgish": "",
- "Macedonian": "",
- "Malagasy": "",
+ "Luxembourgish": "Bahasa Luksemburg",
+ "Macedonian": "Bahasa Makedonia",
+ "Malagasy": "Bahasa Malagasi",
"Malay": "Bahasa Melayu",
- "Malayalam": "",
- "Maltese": "",
+ "Malayalam": "Bahasa Malayalam",
+ "Maltese": "Bahasa Malta",
"Maori": "Bahasa Maori",
"Marathi": "Bahasa Marathi",
"Mongolian": "Bahasa Mongolia",
"Nepali": "Bahasa Nepal",
- "Norwegian Bokmål": "",
- "Nyanja": "",
- "Pashto": "",
+ "Norwegian Bokmål": "Bahasa Norwegia Bokmål",
+ "Nyanja": "Bahasa Chichewa",
+ "Pashto": "Bahasa Pashtun",
"Persian": "Bahasa Persia",
"Polish": "Bahasa Polandia",
"Portuguese": "Bahasa Portugis",
"Punjabi": "Bahasa Punjabi",
"Romanian": "Bahasa Romania",
"Russian": "Bahasa Russia",
- "Samoan": "",
- "Scottish Gaelic": "",
+ "Samoan": "Bahasa Samoa",
+ "Scottish Gaelic": "Bahasa Gaelik Skotlandia",
"Serbian": "Bahasa Serbia",
- "Shona": "",
- "Sindhi": "",
- "Sinhala": "",
+ "Shona": "Bahasa Shona",
+ "Sindhi": "Bahasa Sindhi",
+ "Sinhala": "Bahasa Sinhala",
"Slovak": "Bahasa Slovakia",
"Slovenian": "Bahasa Slovenia",
"Somali": "Bahasa Somalia",
- "Southern Sotho": "",
+ "Southern Sotho": "Bahasa Sesotho",
"Spanish": "Bahasa Spanyol",
"Spanish (Latin America)": "Bahasa Spanyol (Amerika Latin)",
"Sundanese": "Bahasa Sunda",
"Swahili": "Bahasa Swahili",
"Swedish": "Bahasa Swedia",
- "Tajik": "",
+ "Tajik": "Bahasa Tajik",
"Tamil": "Bahasa Tamil",
- "Telugu": "",
+ "Telugu": "Bahasa Telugu",
"Thai": "Bahasa Thailand",
"Turkish": "Bahasa Turki",
"Ukrainian": "Bahasa Ukraina",
@@ -326,11 +329,11 @@
"Uzbek": "Bahasa Uzbek",
"Vietnamese": "Bahasa Vietnam",
"Welsh": "Bahasa Wales",
- "Western Frisian": "",
- "Xhosa": "",
- "Yiddish": "",
- "Yoruba": "",
- "Zulu": "",
+ "Western Frisian": "Bahasa Frisia Barat",
+ "Xhosa": "Bahasa Xhosa",
+ "Yiddish": "Bahasa Yiddi",
+ "Yoruba": "Bahasa Yoruba",
+ "Zulu": "Bahasa Zulu",
"`x` years": {
"([^.,0-9]|^)1([^.,0-9]|$)": "`x` tahun.([^.,0-9]|^)1([^.,0-9]|$)",
"": "`x` tahun."
@@ -361,8 +364,8 @@
},
"Fallback comments: ": "",
"Popular": "Populer",
- "Search": "",
- "Top": "",
+ "Search": "Cari",
+ "Top": "Teratas",
"About": "Ihwal",
"Rating: ": "Peringkat: ",
"Language: ": "Bahasa: ",
@@ -374,9 +377,9 @@
"Movies": "Film",
"Download": "Unduh",
"Download as: ": "Unduh sebagai: ",
- "%A %B %-d, %Y": "",
+ "%A %B %-d, %Y": "%A %B %-d, %Y",
"(edited)": "(disunting)",
- "YouTube comment permalink": "",
+ "YouTube comment permalink": "Komentar YouTube permalink",
"permalink": "permalink",
"`x` marked it with a ❤": "`x` telah ditandai dengan ❤",
"Audio mode": "Mode audio",
@@ -384,32 +387,32 @@
"Videos": "Video",
"Playlists": "Daftar putar",
"Community": "Komunitas",
- "relevance": "",
- "rating": "",
- "date": "",
- "views": "",
- "content_type": "",
- "duration": "",
- "features": "",
- "sort": "",
- "hour": "",
- "today": "",
- "week": "",
- "month": "",
- "year": "",
- "video": "",
- "channel": "",
- "playlist": "",
- "movie": "",
- "show": "",
- "hd": "",
- "subtitles": "",
- "creative_commons": "",
- "3d": "",
- "live": "",
- "4k": "",
- "location": "",
- "hdr": "",
- "filter": "",
+ "relevance": "Relevan",
+ "rating": "peringkat",
+ "date": "tanggal",
+ "views": "ditonton",
+ "content_type": "tipe_konten",
+ "duration": "durasi",
+ "features": "fitur",
+ "sort": "urut",
+ "hour": "jam",
+ "today": "hari ini",
+ "week": "minggu",
+ "month": "bulan",
+ "year": "tahun",
+ "video": "video",
+ "channel": "kanal",
+ "playlist": "daftar putar",
+ "movie": "film",
+ "show": "tampilkan",
+ "hd": "hd",
+ "subtitles": "subtitel",
+ "creative_commons": "creative_commons",
+ "3d": "3d",
+ "live": "siaran langsung",
+ "4k": "4k",
+ "location": "lokasi",
+ "hdr": "hdr",
+ "filter": "saring",
"Current version: ": "Versi saat ini: "
} \ No newline at end of file
diff --git a/locales/is.json b/locales/is.json
index 8bf1ad8f..569ee9d0 100644
--- a/locales/is.json
+++ b/locales/is.json
@@ -77,6 +77,7 @@
"Fallback captions: ": "Varatextar: ",
"Show related videos: ": "Sýna tengd myndbönd? ",
"Show annotations by default: ": "Á að sýna glósur sjálfgefið? ",
+ "Automatically extend video description: ": "",
"Visual preferences": "Sjónrænar stillingar",
"Player style: ": "Spilara stíl: ",
"Dark mode: ": "Myrkur ham: ",
@@ -156,6 +157,8 @@
"Title": "Titill",
"Playlist privacy": "Spilunarlista opinberri",
"Editing playlist `x`": "Að breyta spilunarlista `x`",
+ "Show more": "",
+ "Show less": "",
"Watch on YouTube": "Horfa á YouTube",
"Hide annotations": "Fela glósur",
"Show annotations": "Sýna glósur",
@@ -412,4 +415,4 @@
"hdr": "",
"filter": "",
"Current version: ": "Núverandi útgáfa: "
-}
+} \ No newline at end of file
diff --git a/locales/it.json b/locales/it.json
index d86034e5..e2228bca 100644
--- a/locales/it.json
+++ b/locales/it.json
@@ -77,6 +77,7 @@
"Fallback captions: ": "Sottotitoli alternativi: ",
"Show related videos: ": "Mostra video correlati: ",
"Show annotations by default: ": "Mostra le annotazioni in modo predefinito: ",
+ "Automatically extend video description: ": "",
"Visual preferences": "Preferenze grafiche",
"Player style: ": "Stile riproduttore: ",
"Dark mode: ": "Tema scuro: ",
@@ -156,6 +157,8 @@
"Title": "Titolo",
"Playlist privacy": "Privacy playlist",
"Editing playlist `x`": "Modificando la playlist `x`",
+ "Show more": "",
+ "Show less": "",
"Watch on YouTube": "Guarda su YouTube",
"Hide annotations": "Nascondi annotazioni",
"Show annotations": "Mostra annotazioni",
diff --git a/locales/ja.json b/locales/ja.json
index f1c3265a..e570ec35 100644
--- a/locales/ja.json
+++ b/locales/ja.json
@@ -77,6 +77,7 @@
"Fallback captions: ": "フォールバック時の字幕: ",
"Show related videos: ": "関連動画を表示: ",
"Show annotations by default: ": "デフォルトでアノテーションを表示: ",
+ "Automatically extend video description: ": "",
"Visual preferences": "外観設定",
"Player style: ": "プレイヤースタイル: ",
"Dark mode: ": "ダークモード: ",
@@ -156,6 +157,8 @@
"Title": "タイトル",
"Playlist privacy": "再生リストのプライバシー",
"Editing playlist `x`": "再生リスト `x` を編集中",
+ "Show more": "",
+ "Show less": "",
"Watch on YouTube": "YouTube で視聴",
"Hide annotations": "アノテーションを隠す",
"Show annotations": "アノテーションを表示",
diff --git a/locales/nb-NO.json b/locales/nb-NO.json
index 8dd05d48..0cccdd77 100644
--- a/locales/nb-NO.json
+++ b/locales/nb-NO.json
@@ -77,6 +77,7 @@
"Fallback captions: ": "Tilbakefallsundertitler: ",
"Show related videos: ": "Vis relaterte videoer? ",
"Show annotations by default: ": "Vis merknader som forvalg? ",
+ "Automatically extend video description: ": "",
"Visual preferences": "Visuelle innstillinger",
"Player style: ": "Avspillerstil: ",
"Dark mode: ": "Mørk drakt: ",
@@ -156,6 +157,8 @@
"Title": "Tittel",
"Playlist privacy": "Vern av spilleliste",
"Editing playlist `x`": "Endre spilleliste «x»",
+ "Show more": "",
+ "Show less": "",
"Watch on YouTube": "Vis video på YouTube",
"Hide annotations": "Skjul merknader",
"Show annotations": "Vis merknader",
diff --git a/locales/nl.json b/locales/nl.json
index df223f04..6d2ff68c 100644
--- a/locales/nl.json
+++ b/locales/nl.json
@@ -77,6 +77,7 @@
"Fallback captions: ": "Alternatieve ondertiteling: ",
"Show related videos: ": "Gerelateerde video's tonen? ",
"Show annotations by default: ": "Standaard annotaties tonen? ",
+ "Automatically extend video description: ": "",
"Visual preferences": "Visuele instellingen",
"Player style: ": "Speler vormgeving ",
"Dark mode: ": "Donkere modus: ",
@@ -156,6 +157,8 @@
"Title": "Titel",
"Playlist privacy": "Afspeellijst privacy",
"Editing playlist `x`": "Afspeellijst `x` wijzigen",
+ "Show more": "",
+ "Show less": "",
"Watch on YouTube": "Video bekijken op YouTube",
"Hide annotations": "Annotaties verbergen",
"Show annotations": "Annotaties tonen",
diff --git a/locales/pl.json b/locales/pl.json
index cf54bd9a..3d64aa07 100644
--- a/locales/pl.json
+++ b/locales/pl.json
@@ -77,6 +77,7 @@
"Fallback captions: ": "Zastępcze napisy: ",
"Show related videos: ": "Pokaż powiązane filmy? ",
"Show annotations by default: ": "Domyślnie pokazuj adnotacje: ",
+ "Automatically extend video description: ": "",
"Visual preferences": "Preferencje Wizualne",
"Player style: ": "Styl odtwarzacza: ",
"Dark mode: ": "Ciemny motyw: ",
@@ -156,6 +157,8 @@
"Title": "Tytuł",
"Playlist privacy": "Widoczność playlisty",
"Editing playlist `x`": "Edycja playlisty `x`",
+ "Show more": "",
+ "Show less": "",
"Watch on YouTube": "Zobacz film na YouTube",
"Hide annotations": "Ukryj adnotacje",
"Show annotations": "Pokaż adnotacje",
diff --git a/locales/pt-BR.json b/locales/pt-BR.json
index 1c9e1f93..d358928e 100644
--- a/locales/pt-BR.json
+++ b/locales/pt-BR.json
@@ -77,6 +77,7 @@
"Fallback captions: ": "Legendas alternativas: ",
"Show related videos: ": "Mostrar vídeos relacionados: ",
"Show annotations by default: ": "Sempre mostrar anotações: ",
+ "Automatically extend video description: ": "",
"Visual preferences": "Preferências visuais",
"Player style: ": "Estilo do tocador: ",
"Dark mode: ": "Modo escuro: ",
@@ -156,6 +157,8 @@
"Title": "Título",
"Playlist privacy": "Privacidade da playlist",
"Editing playlist `x`": "Editando playlist `x`",
+ "Show more": "",
+ "Show less": "",
"Watch on YouTube": "Assistir no YouTube",
"Hide annotations": "Ocultar anotações",
"Show annotations": "Mostrar anotações",
diff --git a/locales/pt-PT.json b/locales/pt-PT.json
index d1d94c1f..c25e9353 100644
--- a/locales/pt-PT.json
+++ b/locales/pt-PT.json
@@ -77,6 +77,7 @@
"Fallback captions: ": "Legendas alternativas: ",
"Show related videos: ": "Mostrar vídeos relacionados: ",
"Show annotations by default: ": "Mostrar sempre anotações: ",
+ "Automatically extend video description: ": "",
"Visual preferences": "Preferências visuais",
"Player style: ": "Estilo do reprodutor: ",
"Dark mode: ": "Modo escuro: ",
@@ -156,6 +157,8 @@
"Title": "Título",
"Playlist privacy": "Privacidade da lista de reprodução",
"Editing playlist `x`": "A editar lista de reprodução 'x'",
+ "Show more": "",
+ "Show less": "",
"Watch on YouTube": "Ver no YouTube",
"Hide annotations": "Ocultar anotações",
"Show annotations": "Mostrar anotações",
diff --git a/locales/ro.json b/locales/ro.json
index 8507828d..057b919c 100644
--- a/locales/ro.json
+++ b/locales/ro.json
@@ -77,6 +77,7 @@
"Fallback captions: ": "Subtitrări alternative: ",
"Show related videos: ": "Afișați videoclipurile asemănătoare: ",
"Show annotations by default: ": "Afișați adnotările în mod implicit: ",
+ "Automatically extend video description: ": "",
"Visual preferences": "Preferințele site-ului",
"Player style: ": "Stilul player-ului : ",
"Dark mode: ": "Modul întunecat : ",
@@ -156,6 +157,8 @@
"Title": "Titlu",
"Playlist privacy": "Parametrii de confidențialitate ai listei de redare",
"Editing playlist `x`": "Modificați lista de redare `x`",
+ "Show more": "",
+ "Show less": "",
"Watch on YouTube": "Urmăriți videoclipul pe YouTube",
"Hide annotations": "Ascundeți adnotările",
"Show annotations": "Afișați adnotările",
diff --git a/locales/ru.json b/locales/ru.json
index 6f34abeb..a737745e 100644
--- a/locales/ru.json
+++ b/locales/ru.json
@@ -77,6 +77,7 @@
"Fallback captions: ": "Дополнительный язык субтитров: ",
"Show related videos: ": "Показывать похожие видео? ",
"Show annotations by default: ": "Всегда показывать аннотации? ",
+ "Automatically extend video description: ": "",
"Visual preferences": "Настройки сайта",
"Player style: ": "Стиль проигрывателя: ",
"Dark mode: ": "Тёмное оформление: ",
@@ -156,6 +157,8 @@
"Title": "Заголовок",
"Playlist privacy": "Конфиденциальность плейлиста",
"Editing playlist `x`": "Редактирование плейлиста `x`",
+ "Show more": "",
+ "Show less": "",
"Watch on YouTube": "Смотреть на YouTube",
"Hide annotations": "Скрыть аннотации",
"Show annotations": "Показать аннотации",
diff --git a/locales/si.json b/locales/si.json
index 0b3ca597..c30ad33c 100644
--- a/locales/si.json
+++ b/locales/si.json
@@ -77,6 +77,7 @@
"Fallback captions: ": "",
"Show related videos: ": "",
"Show annotations by default: ": "",
+ "Automatically extend video description: ": "",
"Visual preferences": "",
"Player style: ": "",
"Dark mode: ": "",
@@ -156,6 +157,8 @@
"Title": "",
"Playlist privacy": "",
"Editing playlist `x`": "",
+ "Show more": "",
+ "Show less": "",
"Watch on YouTube": "",
"Hide annotations": "",
"Show annotations": "",
diff --git a/locales/sk.json b/locales/sk.json
index 43e9bc94..f74d66db 100644
--- a/locales/sk.json
+++ b/locales/sk.json
@@ -71,6 +71,7 @@
"Fallback captions: ": "Náhradné titulky: ",
"Show related videos: ": "Zobraziť súvisiace videá: ",
"Show annotations by default: ": "Predvolene zobraziť anotácie: ",
+ "Automatically extend video description: ": "",
"Visual preferences": "Vizuálne nastavenia",
"Player style: ": "Štýl prehrávača: ",
"Dark mode: ": "Tmavý režim: ",
@@ -144,6 +145,8 @@
"Title": "",
"Playlist privacy": "",
"Editing playlist `x`": "",
+ "Show more": "",
+ "Show less": "",
"Watch on YouTube": "",
"Hide annotations": "",
"Show annotations": "",
diff --git a/locales/sr.json b/locales/sr.json
index 1e718d7a..7766f32e 100644
--- a/locales/sr.json
+++ b/locales/sr.json
@@ -77,6 +77,7 @@
"Fallback captions: ": "",
"Show related videos: ": "",
"Show annotations by default: ": "",
+ "Automatically extend video description: ": "",
"Visual preferences": "",
"Player style: ": "",
"Dark mode: ": "",
@@ -156,6 +157,8 @@
"Title": "",
"Playlist privacy": "",
"Editing playlist `x`": "",
+ "Show more": "",
+ "Show less": "",
"Watch on YouTube": "",
"Hide annotations": "",
"Show annotations": "",
diff --git a/locales/sr_Cyrl.json b/locales/sr_Cyrl.json
index bb866522..77465501 100644
--- a/locales/sr_Cyrl.json
+++ b/locales/sr_Cyrl.json
@@ -68,6 +68,7 @@
"Fallback captions: ": "Алтернативни титлови: ",
"Show related videos: ": "Прикажи сличне видее: ",
"Show annotations by default: ": "Увек приказуј анотације: ",
+ "Automatically extend video description: ": "",
"Visual preferences": "Подешавања изгледа",
"Player style: ": "Стил плејера: ",
"Dark mode: ": "Тамни режим: ",
@@ -138,6 +139,8 @@
"Title": "Наслов",
"Playlist privacy": "Видљивост плејлисте",
"Editing playlist `x`": "Уређујете плејлисту `x`",
+ "Show more": "",
+ "Show less": "",
"Watch on YouTube": "Гледајте на YouTube-у",
"Hide annotations": "Сакриј анотације",
"Show annotations": "Прикажи анотације",
diff --git a/locales/sv-SE.json b/locales/sv-SE.json
index 5cc8c674..5a0ffbd2 100644
--- a/locales/sv-SE.json
+++ b/locales/sv-SE.json
@@ -77,6 +77,7 @@
"Fallback captions: ": "Ersättningsundertexter: ",
"Show related videos: ": "Visa relaterade videor? ",
"Show annotations by default: ": "Visa länkar-i-videon som förval? ",
+ "Automatically extend video description: ": "",
"Visual preferences": "Visuella inställningar",
"Player style: ": "Spelarstil: ",
"Dark mode: ": "Mörkt läge: ",
@@ -156,6 +157,8 @@
"Title": "Titel",
"Playlist privacy": "Privatläge på spellista",
"Editing playlist `x`": "Redigerer spellistan `x`",
+ "Show more": "",
+ "Show less": "",
"Watch on YouTube": "Titta på YouTube",
"Hide annotations": "Dölj länkar-i-video",
"Show annotations": "Visa länkar-i-video",
diff --git a/locales/tr.json b/locales/tr.json
index 1c1f0e00..53c2a8c6 100644
--- a/locales/tr.json
+++ b/locales/tr.json
@@ -77,6 +77,7 @@
"Fallback captions: ": "Yedek altyazılar: ",
"Show related videos: ": "İlgili videoları göster: ",
"Show annotations by default: ": "Öntanımlı olarak ek açıklamaları göster: ",
+ "Automatically extend video description: ": "",
"Visual preferences": "Görsel tercihler",
"Player style: ": "Oynatıcı biçimi: ",
"Dark mode: ": "Karanlık mod: ",
@@ -156,6 +157,8 @@
"Title": "Başlık",
"Playlist privacy": "Oynatma listesi gizliliği",
"Editing playlist `x`": "`x` oynatma listesi düzenleniyor",
+ "Show more": "",
+ "Show less": "",
"Watch on YouTube": "YouTube'da izle",
"Hide annotations": "Ek açıklamaları gizle",
"Show annotations": "Ek açıklamaları göster",
@@ -412,4 +415,4 @@
"hdr": "HDR",
"filter": "filtrele",
"Current version: ": "Şu anki sürüm: "
-}
+} \ No newline at end of file
diff --git a/locales/uk.json b/locales/uk.json
index eb34e49e..0795612e 100644
--- a/locales/uk.json
+++ b/locales/uk.json
@@ -77,6 +77,7 @@
"Fallback captions: ": "Запасна мова субтитрів: ",
"Show related videos: ": "Показувати схожі відео? ",
"Show annotations by default: ": "Завжди показувати анотації? ",
+ "Automatically extend video description: ": "",
"Visual preferences": "Налаштування сайту",
"Player style: ": "Стиль програвача: ",
"Dark mode: ": "Темне оформлення: ",
@@ -156,6 +157,8 @@
"Title": "Заголовок",
"Playlist privacy": "Конфіденційність списку відтворення",
"Editing playlist `x`": "Редагування списку відтворення \"x\"",
+ "Show more": "",
+ "Show less": "",
"Watch on YouTube": "Дивитися на YouTube",
"Hide annotations": "Приховати анотації",
"Show annotations": "Показати анотації",
diff --git a/locales/zh-CN.json b/locales/zh-CN.json
index a514aaed..8bd49845 100644
--- a/locales/zh-CN.json
+++ b/locales/zh-CN.json
@@ -77,6 +77,7 @@
"Fallback captions: ": "后备字幕语言: ",
"Show related videos: ": "是否显示相关视频: ",
"Show annotations by default: ": "是否默认显示视频注释: ",
+ "Automatically extend video description: ": "",
"Visual preferences": "视觉选项",
"Player style: ": "播放器样式: ",
"Dark mode: ": "深色模式: ",
@@ -156,6 +157,8 @@
"Title": "标题",
"Playlist privacy": "播放列表隐私设置",
"Editing playlist `x`": "正在编辑播放列表 `x`",
+ "Show more": "",
+ "Show less": "",
"Watch on YouTube": "在 YouTube 观看",
"Hide annotations": "隐藏注释",
"Show annotations": "显示注释",
diff --git a/locales/zh-TW.json b/locales/zh-TW.json
index 935ca522..044647be 100644
--- a/locales/zh-TW.json
+++ b/locales/zh-TW.json
@@ -77,6 +77,7 @@
"Fallback captions: ": "汰退字幕: ",
"Show related videos: ": "顯示相關的影片: ",
"Show annotations by default: ": "預設顯示註釋: ",
+ "Automatically extend video description: ": "",
"Visual preferences": "視覺偏好設定",
"Player style: ": "播放器樣式: ",
"Dark mode: ": "深色模式: ",
@@ -156,6 +157,8 @@
"Title": "標題",
"Playlist privacy": "播放清單隱私",
"Editing playlist `x`": "已編輯播放清單 `x`",
+ "Show more": "",
+ "Show less": "",
"Watch on YouTube": "在 YouTube 上觀看",
"Hide annotations": "隱藏註釋",
"Show annotations": "顯示註釋",
@@ -412,4 +415,4 @@
"hdr": "HDR",
"filter": "篩選條件",
"Current version: ": "目前版本: "
-}
+} \ No newline at end of file
diff --git a/src/invidious/helpers/helpers.cr b/src/invidious/helpers/helpers.cr
index 3767cb50..e1d877b7 100644
--- a/src/invidious/helpers/helpers.cr
+++ b/src/invidious/helpers/helpers.cr
@@ -50,6 +50,7 @@ struct ConfigPreferences
property thin_mode : Bool = false
property unseen_only : Bool = false
property video_loop : Bool = false
+ property extend_desc : Bool = false
property volume : Int32 = 100
def to_tuple
@@ -679,7 +680,7 @@ def create_notification_stream(env, topics, connection_channel)
end
def extract_initial_data(body) : Hash(String, JSON::Any)
- return JSON.parse(body.match(/(window\["ytInitialData"\]|var\s*ytInitialData)\s*=\s*(?<info>\{.*?\});/mx).try &.["info"] || "{}").as_h
+ return JSON.parse(body.match(/(window\["ytInitialData"\]|var\s*ytInitialData)\s*=\s*(?<info>{.*?});<\/script>/mx).try &.["info"] || "{}").as_h
end
def proxy_file(response, env)
diff --git a/src/invidious/users.cr b/src/invidious/users.cr
index 8fef64a0..e4ebb4d1 100644
--- a/src/invidious/users.cr
+++ b/src/invidious/users.cr
@@ -78,6 +78,7 @@ struct Preferences
property thin_mode : Bool = CONFIG.default_user_preferences.thin_mode
property unseen_only : Bool = CONFIG.default_user_preferences.unseen_only
property video_loop : Bool = CONFIG.default_user_preferences.video_loop
+ property extend_desc : Bool = CONFIG.default_user_preferences.extend_desc
property volume : Int32 = CONFIG.default_user_preferences.volume
module BoolToString
diff --git a/src/invidious/videos.cr b/src/invidious/videos.cr
index 38646311..bf281507 100644
--- a/src/invidious/videos.cr
+++ b/src/invidious/videos.cr
@@ -242,6 +242,7 @@ struct VideoPreferences
property speed : Float32 | Float64
property video_end : Float64 | Int32
property video_loop : Bool
+ property extend_desc : Bool
property video_start : Float64 | Int32
property volume : Int32
end
@@ -818,7 +819,7 @@ end
def extract_polymer_config(body)
params = {} of String => JSON::Any
- player_response = body.match(/(window\["ytInitialPlayerResponse"\]|var\sytInitialPlayerResponse)\s*=\s*(?<info>{.*?});/m)
+ player_response = body.match(/(window\["ytInitialPlayerResponse"\]|var\sytInitialPlayerResponse)\s*=\s*(?<info>{.*?});\s*var\s*meta/m)
.try { |r| JSON.parse(r["info"]).as_h }
if body.includes?("To continue with your YouTube experience, please fill out the form below.") ||
@@ -1050,6 +1051,7 @@ def process_video_params(query, preferences)
related_videos = query["related_videos"]?.try { |q| (q == "true" || q == "1").to_unsafe }
speed = query["speed"]?.try &.rchop("x").to_f?
video_loop = query["loop"]?.try { |q| (q == "true" || q == "1").to_unsafe }
+ extend_desc = query["extend_desc"]?.try { |q| (q == "true" || q == "1").to_unsafe }
volume = query["volume"]?.try &.to_i?
if preferences
@@ -1068,6 +1070,7 @@ def process_video_params(query, preferences)
related_videos ||= preferences.related_videos.to_unsafe
speed ||= preferences.speed
video_loop ||= preferences.video_loop.to_unsafe
+ extend_desc ||= preferences.extend_desc.to_unsafe
volume ||= preferences.volume
end
@@ -1085,6 +1088,7 @@ def process_video_params(query, preferences)
related_videos ||= CONFIG.default_user_preferences.related_videos.to_unsafe
speed ||= CONFIG.default_user_preferences.speed
video_loop ||= CONFIG.default_user_preferences.video_loop.to_unsafe
+ extend_desc ||= CONFIG.default_user_preferences.extend_desc.to_unsafe
volume ||= CONFIG.default_user_preferences.volume
annotations = annotations == 1
@@ -1095,6 +1099,7 @@ def process_video_params(query, preferences)
local = local == 1
related_videos = related_videos == 1
video_loop = video_loop == 1
+ extend_desc = extend_desc == 1
if CONFIG.disabled?("dash") && quality == "dash"
quality = "high"
@@ -1141,6 +1146,7 @@ def process_video_params(query, preferences)
speed: speed,
video_end: video_end,
video_loop: video_loop,
+ extend_desc: extend_desc,
video_start: video_start,
volume: volume,
})
diff --git a/src/invidious/views/preferences.ecr b/src/invidious/views/preferences.ecr
index c1f10818..602340a4 100644
--- a/src/invidious/views/preferences.ecr
+++ b/src/invidious/views/preferences.ecr
@@ -106,6 +106,12 @@
<input name="annotations" id="annotations" type="checkbox" <% if preferences.annotations %>checked<% end %>>
</div>
+ <div class="pure-control-group">
+ <label for="extend_desc"><%= translate(locale, "Automatically extend video description: ") %></label>
+ <input name="extend_desc" id="extend_desc" type="checkbox" <% if preferences.extend_desc %>checked<% end %>>
+ </div>
+
+
<legend><%= translate(locale, "Visual preferences") %></legend>
<div class="pure-control-group">
diff --git a/src/invidious/views/search_homepage.ecr b/src/invidious/views/search_homepage.ecr
index b36500e9..8927c3f1 100644
--- a/src/invidious/views/search_homepage.ecr
+++ b/src/invidious/views/search_homepage.ecr
@@ -16,7 +16,7 @@
<div class="pure-u-1 pure-u-md-12-24 searchbar">
<form class="pure-form" action="/search" method="get">
<fieldset>
- <input type="search" style="width:100%" name="q" placeholder="<%= translate(locale, "search") %>" value="<%= env.get?("search").try {|x| HTML.escape(x.as(String)) } %>">
+ <input autofocus type="search" style="width:100%" name="q" placeholder="<%= translate(locale, "search") %>" value="<%= env.get?("search").try {|x| HTML.escape(x.as(String)) } %>">
</fieldset>
</form>
</div>
diff --git a/src/invidious/views/watch.ecr b/src/invidious/views/watch.ecr
index a86e23b2..8b587eb3 100644
--- a/src/invidious/views/watch.ecr
+++ b/src/invidious/views/watch.ecr
@@ -25,6 +25,19 @@
<link rel="alternate" href="https://www.youtube.com/watch?v=<%= video.id %>">
<%= rendered "components/player_sources" %>
<title><%= HTML.escape(video.title) %> - Invidious</title>
+
+<!-- Description expansion also updates the 'Show more' button to 'Show less' so
+we're going to need to do it here in order to allow for translations.
+ -->
+<style>
+#descexpansionbutton + label > a::after {
+ content: "<%= translate(locale, "Show more") %>"
+}
+
+#descexpansionbutton:checked + label > a::after {
+ content: "<%= translate(locale, "Show less") %>"
+}
+</style>
<% end %>
<script id="video_data" type="application/json">
@@ -227,8 +240,18 @@
<% end %>
</p>
- <div>
- <%= video.description_html %>
+ <div id="description-box"> <!-- Description -->
+ <% if video.description.size < 200 || params.extend_desc %>
+ <%= video.description_html %>
+ <% else %>
+ <input id="descexpansionbutton" type="checkbox"/>
+ <label for="descexpansionbutton" style="order: 1;">
+ <a></a>
+ </label>
+ <div id="descriptionWrapper">
+ <%= video.description_html %>
+ </div>
+ <% end %>
</div>
<hr>