diff options
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> |
