mirror of
https://github.com/ajayyy/SponsorBlock.git
synced 2025-12-09 04:57:09 +03:00
Compare commits
16 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
e9e53d1d43 | ||
|
|
07ab99a8d0 | ||
|
|
896120d311 | ||
|
|
3dc6563048 | ||
|
|
2d74ce2093 | ||
|
|
eac4ca4d71 | ||
|
|
399a5af990 | ||
|
|
48861439b7 | ||
|
|
bd60875c66 | ||
|
|
fe8f25fe23 | ||
|
|
87f3cf3881 | ||
|
|
0b9df8a45c | ||
|
|
59c5b7eefe | ||
|
|
dea9dac20a | ||
|
|
684cd676e5 | ||
|
|
929e3396cd |
@@ -12,6 +12,7 @@
|
||||
<a href="https://chrome.google.com/webstore/detail/mnjggcdmjocbbbhaepdhchncahnbgone">Chrome/Chromium</a> |
|
||||
<a href="https://addons.mozilla.org/addon/sponsorblock/?src=external-github">Firefox</a> |
|
||||
<a href="https://github.com/ajayyy/SponsorBlock/wiki/Android">Android</a> |
|
||||
<a href="https://github.com/ajayyy/SponsorBlock/wiki/Edge">Edge</a> |
|
||||
<a href="https://sponsor.ajay.app">Website</a> |
|
||||
<a href="https://sponsor.ajay.app/stats">Stats</a>
|
||||
</p>
|
||||
@@ -26,7 +27,7 @@
|
||||
<p align="center">
|
||||
<a href="https://addons.mozilla.org/addon/sponsorblock/?src=external-github"><img src="https://img.shields.io/amo/users/sponsorblock?label=Firefox%20Users" alt="Badge"></img></a>
|
||||
<a href="https://chrome.google.com/webstore/detail/mnjggcdmjocbbbhaepdhchncahnbgone"><img src="https://img.shields.io/chrome-web-store/users/mnjggcdmjocbbbhaepdhchncahnbgone?label=Chrome%20Users" alt="Badge"></img></a>
|
||||
<a href="https://sponsor.ajay.app/stats"><img src="https://img.shields.io/badge/dynamic/json?label=Sponsors%20Submitted&query=totalSubmissions&suffix=%20sponsors&url=http%3A%2F%2Fsponsor.ajay.app%2Fapi%2FgetTotalStats&color=darkred" alt="Badge"></img></a>
|
||||
<a href="https://sponsor.ajay.app/stats"><img src="https://img.shields.io/badge/dynamic/json?label=Submissions&query=totalSubmissions&suffix=%20segments&url=http%3A%2F%2Fsponsor.ajay.app%2Fapi%2FgetTotalStats&color=darkred" alt="Badge"></img></a>
|
||||
<a href="https://sponsor.ajay.app/stats"><img src="https://img.shields.io/badge/dynamic/json?label=Contributing%20Users&query=userCount&url=http%3A%2F%2Fsponsor.ajay.app%2Fapi%2FgetTotalStats&color=darkblue" alt="Badge"></img></a>
|
||||
<a href="https://sponsor.ajay.app/stats"><img src="https://img.shields.io/badge/dynamic/json?label=Time%20Saved%20From%20Skips&query=daysSaved&url=http%3A%2F%2Fsponsor.ajay.app%2Fapi%2FgetDaysSavedFormatted&color=darkgreen&suffix=%20days" alt="Badge"></img></a>
|
||||
</p>
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"name": "__MSG_fullName__",
|
||||
"short_name": "SponsorBlock",
|
||||
"version": "2.0.3",
|
||||
"version": "2.0.4",
|
||||
"default_locale": "en",
|
||||
"description": "__MSG_Description__",
|
||||
"content_scripts": [{
|
||||
|
||||
@@ -1,8 +1,4 @@
|
||||
{
|
||||
"Name": {
|
||||
"message": "SponsorBlock",
|
||||
"description": "Name of the extension."
|
||||
},
|
||||
"fullName": {
|
||||
"message": "SponsorBlock за YouTube - пропускай спонсорства",
|
||||
"description": "Name of the extension."
|
||||
|
||||
@@ -1,8 +1,4 @@
|
||||
{
|
||||
"Name": {
|
||||
"message": "SponsorBlock",
|
||||
"description": "Name of the extension."
|
||||
},
|
||||
"fullName": {
|
||||
"message": "SponsorBlock für YouTube - Überspringe Sponsor Anzeigen",
|
||||
"description": "Name of the extension."
|
||||
@@ -12,10 +8,10 @@
|
||||
"description": "Description of the extension."
|
||||
},
|
||||
"400": {
|
||||
"message": "Ungültige Anforderung"
|
||||
"message": "Der Server meldet, dass diese Anfrage ungültig war"
|
||||
},
|
||||
"429": {
|
||||
"message": "Du hast zu viele Segmente in diesem Video eingereicht. Bist du dir sicher?"
|
||||
"message": "Du hast zu viele Segmente in diesem Video eingereicht. Sind es wirklich so viele?"
|
||||
},
|
||||
"409": {
|
||||
"message": "Dieser Inhalt wurde bereits eingereicht."
|
||||
@@ -123,7 +119,7 @@
|
||||
"message": "Öffne SponsorBlock-Popup"
|
||||
},
|
||||
"SubmitTimes": {
|
||||
"message": "Sende Auswahl"
|
||||
"message": "Diese Zeiten einreichen"
|
||||
},
|
||||
"submitCheck": {
|
||||
"message": "Bist du sicher, dass die Auswahl abgeschickt werden soll?"
|
||||
@@ -222,7 +218,7 @@
|
||||
"message": "Benachrichtigung wieder zeigen"
|
||||
},
|
||||
"longDescription": {
|
||||
"message": "SponsorBlock ist eine Erweiterung, die gesponsorte Segmente in YouTube-Videos überspringt. SponsorBlock ist ein Benutzernetzwerk, bei dem jeder Anfang und Ende eines Werbeblocks einreichen kann. Sobald die Information von einem Nutzer eingereicht wurde, überspringen die Erweiterungen der anderen dieses Segment automatisch.",
|
||||
"message": "SponsorBlock ist eine Erweiterung, die gesponserte Segmente von YouTube Videos überspringt. SponsorBlock ist eine durch Crowdsourcing betriebene Browsererweiterung, die es jedem erlaubt, die Beginn- und Endzeitpunkte von gesponserten Segmenten in YouTube Videos einzureichen. Nachdem diese Information eingereicht wurde, wird das Segment für alle anderen Nutzer mit dieser Erweiterung direkt übersprungen.\n\nDu kannst auch den Vorspann, Nachspann, Erinnerungen zu abonnieren und andere Kategorien überspringen.",
|
||||
"description": "Full description of the extension on the store pages."
|
||||
},
|
||||
"website": {
|
||||
@@ -282,7 +278,7 @@
|
||||
"message": "Auto-Überspringen deaktivieren"
|
||||
},
|
||||
"enableAutoSkip": {
|
||||
"message": "Auto-Überspringen aktivieren"
|
||||
"message": "Automatisches Überspringen aktivieren"
|
||||
},
|
||||
"autoSkipDescription": {
|
||||
"message": "Auto-Überspringen überspringt gesponsorte Inhalte für dich. Wenn deaktiviert, fragt die Benachrichtigung, ob übersprungen werden soll."
|
||||
@@ -293,6 +289,12 @@
|
||||
"audioNotificationDescription": {
|
||||
"message": "Audio-Benachrichtigung beim Überspringen wird einen Ton abspielen, wenn ein Sponsor übersprungen wird. Wenn deaktiviert (oder wenn Automatisches-Überspringen deaktiviert ist), wird kein Ton abgespielt."
|
||||
},
|
||||
"showTimeWithSkips": {
|
||||
"message": "Zeit mit entfernten Überspringungen anzeigen"
|
||||
},
|
||||
"showTimeWithSkipsDescription": {
|
||||
"message": "Diese Zeit wird in Klammern neben der aktuellen Zeit in der Suchleiste angezeigt. Diese Zeit die gesamte Dauer des Videos ohne jeglicher Segmente. Dies inkludiert auch Segmente, die als \"In Suchleiste anzeigen\" markiert sind."
|
||||
},
|
||||
"youHaveSkipped": {
|
||||
"message": "Du übersprangst "
|
||||
},
|
||||
@@ -470,9 +472,6 @@
|
||||
"theKey": {
|
||||
"message": "Die Taste"
|
||||
},
|
||||
"keyAlreadyUsedByYouTube": {
|
||||
"message": "wird bereits von Youtube verwendet. Bitte wählen Sie eine andere Taste."
|
||||
},
|
||||
"keyAlreadyUsed": {
|
||||
"message": "an eine andere Aktion gebunden. Bitte wählen Sie eine andere Taste."
|
||||
},
|
||||
@@ -487,13 +486,13 @@
|
||||
"message": "Bezahlte Promotion, bezahlte Empfehlungen und direkte Werbung. Nicht für Selbstpromotion oder kostenlose Shoutouts an Ursachen/Webseiten/Produkte, die sie mögen."
|
||||
},
|
||||
"category_intro": {
|
||||
"message": "Intro Animation"
|
||||
"message": "Unterbrechung/Vorspann"
|
||||
},
|
||||
"category_intro_description": {
|
||||
"message": "Intro Animationen, die in der Serie wiederholt werden oder keinen direkten Wert haben. Dies sollte nicht für Musikvideos verwendet werden."
|
||||
"message": "Ein Intervall ohne relevanten Inhalt. Beispiele dafür wären eine Pause, ein statisches Bild oder sich wiederholende Animationen. Dies sollte nicht für Übergänge benutzt werden, die Informationen erhalten oder für Musikvideos."
|
||||
},
|
||||
"category_intro_short": {
|
||||
"message": "Intro"
|
||||
"message": "Unterbrechung"
|
||||
},
|
||||
"category_outro": {
|
||||
"message": "Endkarten/Credits"
|
||||
@@ -558,7 +557,7 @@
|
||||
"description": "Used on the options page to describe the ways to skip the segment (auto skip, manual, etc.)"
|
||||
},
|
||||
"enableTestingServer": {
|
||||
"message": "Beta-Testing Server aktivieren"
|
||||
"message": "Beta Testing Server aktivieren"
|
||||
},
|
||||
"whatEnableTestingServer": {
|
||||
"message": "Deine Einreichungen und Stimmen werden NICHT für den Hauptserver geltend. Benutze dies nur für Tests."
|
||||
@@ -585,7 +584,7 @@
|
||||
"message": "Kanal-ID wurde noch nicht geladen."
|
||||
},
|
||||
"adblockerIssue": {
|
||||
"message": "Irgendetwas hält SponsorBlock davon ab, die Videodaten abzurufen. Möglicherweise ist es dein Werbeblocker. Mehr Infos: https://github.com/ajayyy/SponsorBlock/wiki/Fix-Ad-Blocker-Blocking-SponsorBlock's-Requests"
|
||||
"message": "Irgendwas hält SponsorBlock davon ab, die Videodaten abzurufen. Möglicherweise ist das dein Werbeblocker. Mehr Infos: https://github.com/ajayyy/SponsorBlock/wiki/Fix-Ad-Blocker-Blocking-SponsorBlock's-Requests"
|
||||
},
|
||||
"itCouldBeAdblockerIssue": {
|
||||
"message": "Falls dies weiterhin geschieht, könnte dies durch Ihren Werbeblocker verursacht werden. Bitte überprüfen Sie https://github.com/ajayyy/SponsorBlock/wiki/Fix-Ad-Blocker-Blocking-SponsorBlock's-Requests"
|
||||
|
||||
@@ -571,6 +571,12 @@
|
||||
"moreCategories": {
|
||||
"message": "More Categories"
|
||||
},
|
||||
"chooseACategory": {
|
||||
"message": "Choose a Category"
|
||||
},
|
||||
"youMustSelectACategory": {
|
||||
"message": "You must select a category for all segments you are submitting!"
|
||||
},
|
||||
"bracketEnd": {
|
||||
"message": "(End)"
|
||||
},
|
||||
|
||||
@@ -1,8 +1,4 @@
|
||||
{
|
||||
"Name": {
|
||||
"message": "SponsorBlock",
|
||||
"description": "Name of the extension."
|
||||
},
|
||||
"fullName": {
|
||||
"message": "SponsorBlock para YouTube - Omitir Sponsors",
|
||||
"description": "Name of the extension."
|
||||
@@ -221,10 +217,6 @@
|
||||
"showNotice": {
|
||||
"message": "Mostrar aviso de nuevo"
|
||||
},
|
||||
"longDescription": {
|
||||
"message": "SponsorBlock es una extensión que se omitira segmentos de sponsor de vídeos de YouTube. SponsorBlock es una extensión de navegador que permite a cualquiera enviar los tiempos de comienzo y fin de segmentos de sponsor de vídeos de YouTube. Una vez que una persona envíe esta información, todos los demás con esta extensión pueden omitir directamente el segmento de sponsor.",
|
||||
"description": "Full description of the extension on the store pages."
|
||||
},
|
||||
"website": {
|
||||
"message": "Sitio Web",
|
||||
"description": "Used on Firefox Store Page"
|
||||
@@ -440,18 +432,12 @@
|
||||
"theKey": {
|
||||
"message": "El botón"
|
||||
},
|
||||
"keyAlreadyUsedByYouTube": {
|
||||
"message": "ya está en uso por youtube. Por favor, seleccione otro botón."
|
||||
},
|
||||
"keyAlreadyUsed": {
|
||||
"message": "está enlazado a otra acción. Por favor, seleccione otro botón."
|
||||
},
|
||||
"category_sponsor": {
|
||||
"message": "Sponsor"
|
||||
},
|
||||
"category_intro": {
|
||||
"message": "Animación de introducción"
|
||||
},
|
||||
"category_outro": {
|
||||
"message": "Tarjetas/Créditos"
|
||||
},
|
||||
|
||||
@@ -1,8 +1,4 @@
|
||||
{
|
||||
"Name": {
|
||||
"message": "SponsorBlock",
|
||||
"description": "Name of the extension."
|
||||
},
|
||||
"fullName": {
|
||||
"message": "SponsorBlock YouTubelle - Ohita sponsoroinnit",
|
||||
"description": "Name of the extension."
|
||||
@@ -314,9 +310,6 @@
|
||||
"theKey": {
|
||||
"message": "Näppäin"
|
||||
},
|
||||
"keyAlreadyUsedByYouTube": {
|
||||
"message": "on jo YouTuben käytössä. Valitse toinen näppäin."
|
||||
},
|
||||
"keyAlreadyUsed": {
|
||||
"message": "on jo liitetty toiseen toimintoon. Valitse toinen näppäin."
|
||||
},
|
||||
@@ -327,9 +320,6 @@
|
||||
"category_sponsor": {
|
||||
"message": "Sponsori"
|
||||
},
|
||||
"category_intro": {
|
||||
"message": "Intro-animaatio"
|
||||
},
|
||||
"category_outro": {
|
||||
"message": "Loppukortit/-tekstit"
|
||||
},
|
||||
|
||||
@@ -1,8 +1,4 @@
|
||||
{
|
||||
"Name": {
|
||||
"message": "SponsorBlock",
|
||||
"description": "Name of the extension."
|
||||
},
|
||||
"fullName": {
|
||||
"message": "SponsorBlock pour YouTube - Supprime les messages commerciaux et publicités intégrées",
|
||||
"description": "Name of the extension."
|
||||
@@ -221,10 +217,6 @@
|
||||
"showNotice": {
|
||||
"message": "Afficher la notification"
|
||||
},
|
||||
"longDescription": {
|
||||
"message": "SponsorBlock est une extension qui permet de passer les messages commerciaux des vidéos YouTube. SponsorBlock est une extension pour navigateur basée sur le crowdsourcing permettant à n'importe qui de soumettre le début et la fin des segments commerciaux sur les vidéos YouTube. Dès qu'une personne a soumis ces informations, les autres utilisateurs de l'extension en bénéficieront et verront les messages commerciaux automatiquement sautés.",
|
||||
"description": "Full description of the extension on the store pages."
|
||||
},
|
||||
"website": {
|
||||
"message": "Site web",
|
||||
"description": "Used on Firefox Store Page"
|
||||
@@ -470,9 +462,6 @@
|
||||
"theKey": {
|
||||
"message": "La clé"
|
||||
},
|
||||
"keyAlreadyUsedByYouTube": {
|
||||
"message": "est déjà utilisé par YouTube. Veuillez sélectionner une autre clé."
|
||||
},
|
||||
"keyAlreadyUsed": {
|
||||
"message": "est lié à une autre action. Veuillez sélectionner une autre clé."
|
||||
},
|
||||
@@ -486,15 +475,6 @@
|
||||
"category_sponsor_description": {
|
||||
"message": "Promotion rémunérée, parrainage rémunéré et publicité directe. Pas pour l'autopromotion ou les présentations gratuites de causes, de créateurs, de sites web ou de produits qu'ils aiment."
|
||||
},
|
||||
"category_intro": {
|
||||
"message": "Générique d'introduction"
|
||||
},
|
||||
"category_intro_description": {
|
||||
"message": "Introductions animées qui sont récurrentes ou qui n'ont pas de valeur ajoutée directe dans la série. Ne doit pas être utilisé pour les vidéos musicales."
|
||||
},
|
||||
"category_intro_short": {
|
||||
"message": "Introduction"
|
||||
},
|
||||
"category_outro": {
|
||||
"message": "Générique de fin"
|
||||
},
|
||||
@@ -528,6 +508,9 @@
|
||||
"category_livestream_messages": {
|
||||
"message": "Stream : lecture de dons et messages"
|
||||
},
|
||||
"category_livestream_messages_short": {
|
||||
"message": "Lecture de messages"
|
||||
},
|
||||
"disable": {
|
||||
"message": "Désactiver"
|
||||
},
|
||||
|
||||
@@ -1,8 +1,4 @@
|
||||
{
|
||||
"Name": {
|
||||
"message": "સ્પોન્સરબ્લોક",
|
||||
"description": "Name of the extension."
|
||||
},
|
||||
"fullName": {
|
||||
"message": "યુટ્યુબ માટે સ્પોન્સરબ્લોક - સ્પોન્સરશિપ છોડી દો",
|
||||
"description": "Name of the extension."
|
||||
|
||||
@@ -1,8 +1,4 @@
|
||||
{
|
||||
"Name": {
|
||||
"message": "SponsorBlock",
|
||||
"description": "Name of the extension."
|
||||
},
|
||||
"Loading": {
|
||||
"message": "Betöltés..."
|
||||
},
|
||||
|
||||
@@ -205,10 +205,6 @@
|
||||
"showNotice": {
|
||||
"message": "Mostra di Nuovo l'Avviso"
|
||||
},
|
||||
"longDescription": {
|
||||
"message": "SponsorBlock è un'estensione che salta gli spezzoni con contenuti sponsorizzati nei video di YouTube. SponsorBlock è un'estensione crowdsourced per i browser che permette a chiunque di inviare i minutaggi degli spezzoni sponsorizzati nei video di YouTube. Quando una persona avrà inviato questa informazione, tutti gli utenti che utilizzano questa estensione potranno saltare lo spezzone sponsorizzato.",
|
||||
"description": "Full description of the extension on the store pages."
|
||||
},
|
||||
"website": {
|
||||
"message": "Sito Web",
|
||||
"description": "Used on Firefox Store Page"
|
||||
|
||||
@@ -1,8 +1,4 @@
|
||||
{
|
||||
"Name": {
|
||||
"message": "SponsorBlock",
|
||||
"description": "Name of the extension."
|
||||
},
|
||||
"fullName": {
|
||||
"message": "SponsorBlock voor YouTube - Sla sponsorberichten over",
|
||||
"description": "Name of the extension."
|
||||
|
||||
@@ -1,8 +1,4 @@
|
||||
{
|
||||
"Name": {
|
||||
"message": "SponsorBlock",
|
||||
"description": "Name of the extension."
|
||||
},
|
||||
"fullName": {
|
||||
"message": "SponsorBlock na YouTube - Omiń reklamy sponsorów",
|
||||
"description": "Name of the extension."
|
||||
@@ -209,10 +205,6 @@
|
||||
"showNotice": {
|
||||
"message": "Pokaż informacje ponownie"
|
||||
},
|
||||
"longDescription": {
|
||||
"message": "SponsorBlock jest rozszerzeniem które przewinie segmenty sponsorów w filmach na YouTube. SponsorBlock jest opartym na crowdsourcing rozszerzeniem które pozwala każdemu zgłaszać początek i koniec segmentu reklamowego w filmach na YouTube. Kiedy ktoś zgłosi taki fragment zostanie on pominięty przez innych użytkowników rozszerzenia.",
|
||||
"description": "Full description of the extension on the store pages."
|
||||
},
|
||||
"website": {
|
||||
"message": "Strona",
|
||||
"description": "Used on Firefox Store Page"
|
||||
|
||||
@@ -1,8 +1,4 @@
|
||||
{
|
||||
"Name": {
|
||||
"message": "SponsorBlock",
|
||||
"description": "Name of the extension."
|
||||
},
|
||||
"fullName": {
|
||||
"message": "SponsorBlock para YouTube - Pule patrocínios",
|
||||
"description": "Name of the extension."
|
||||
@@ -38,6 +34,9 @@
|
||||
"reportButtonTitle": {
|
||||
"message": "Reportar"
|
||||
},
|
||||
"reportButtonInfo": {
|
||||
"message": "Reportar esse segmento como inválido."
|
||||
},
|
||||
"Dismiss": {
|
||||
"message": "Ignorar"
|
||||
},
|
||||
@@ -54,7 +53,7 @@
|
||||
"message": "Nunca mostrar"
|
||||
},
|
||||
"hitGoBack": {
|
||||
"message": "Aperta reverter pulo para voltar onde estava"
|
||||
"message": "Aperta \"reverter pulo\" para voltar onde estava."
|
||||
},
|
||||
"unskip": {
|
||||
"message": "Reverter pulo"
|
||||
@@ -95,6 +94,9 @@
|
||||
"voted": {
|
||||
"message": "Votado!"
|
||||
},
|
||||
"serverDown": {
|
||||
"message": "Parece que o servidor caiu. Contate o desenvolvedor o quanto antes."
|
||||
},
|
||||
"connectionError": {
|
||||
"message": "Ocorreu um erro de conexão. Código de erro: "
|
||||
},
|
||||
@@ -209,10 +211,6 @@
|
||||
"showNotice": {
|
||||
"message": "Mostrar notificação outra vez"
|
||||
},
|
||||
"longDescription": {
|
||||
"message": "SponsorBlock é uma extensão que salta segmentos patrocinados em vídeos do YouTube. SponsorBlock é uma extenção crowdfunded que permite a qualquer um submeter o início e o fim de segmentos patrocinados. Assim que uma pessoa submete essa informação todos com a extenção poderam saltar automaticamete o patrocínio.",
|
||||
"description": "Full description of the extension on the store pages."
|
||||
},
|
||||
"website": {
|
||||
"message": "Site",
|
||||
"description": "Used on Firefox Store Page"
|
||||
@@ -263,6 +261,9 @@
|
||||
"skip": {
|
||||
"message": "Pular"
|
||||
},
|
||||
"skipped": {
|
||||
"message": "Pulado"
|
||||
},
|
||||
"disableAutoSkip": {
|
||||
"message": "Desativar Salto Automático"
|
||||
},
|
||||
@@ -455,9 +456,6 @@
|
||||
"theKey": {
|
||||
"message": "A tecla"
|
||||
},
|
||||
"keyAlreadyUsedByYouTube": {
|
||||
"message": "já está sendo usado pelo youtube. Por favor, selecione outra tecla."
|
||||
},
|
||||
"keyAlreadyUsed": {
|
||||
"message": "está vinculado a outra ação. Por favor, selecione outra tecla."
|
||||
},
|
||||
@@ -468,21 +466,24 @@
|
||||
"category_sponsor": {
|
||||
"message": "Patrocinador"
|
||||
},
|
||||
"category_intro": {
|
||||
"message": "Animação de Introdução"
|
||||
},
|
||||
"category_outro": {
|
||||
"message": "Finalização/Créditos"
|
||||
},
|
||||
"category_interaction": {
|
||||
"message": "Lembrete de interação (inscrever-se)"
|
||||
},
|
||||
"category_interaction_short": {
|
||||
"message": "Lembrete de interação"
|
||||
},
|
||||
"category_music_offtopic": {
|
||||
"message": "Música: Seção sem música"
|
||||
},
|
||||
"category_livestream_messages": {
|
||||
"message": "Livestream: Leituras de Doação/Mensagem"
|
||||
},
|
||||
"category_livestream_messages_short": {
|
||||
"message": "Leitura de mensagens"
|
||||
},
|
||||
"disable": {
|
||||
"message": "Desativar"
|
||||
},
|
||||
@@ -492,6 +493,20 @@
|
||||
"showOverlay": {
|
||||
"message": "Mostrar barra de progresso"
|
||||
},
|
||||
"previewColor": {
|
||||
"message": "Cor de pré-visualização",
|
||||
"description": "Referring to submissions that have not been sent to the server yet."
|
||||
},
|
||||
"seekBarColor": {
|
||||
"message": "Cor da barra"
|
||||
},
|
||||
"category": {
|
||||
"message": "Categoria"
|
||||
},
|
||||
"skipOption": {
|
||||
"message": "Opção de pulo",
|
||||
"description": "Used on the options page to describe the ways to skip the segment (auto skip, manual, etc.)"
|
||||
},
|
||||
"enableTestingServer": {
|
||||
"message": "Habilitar Servidor em teste Beta"
|
||||
},
|
||||
@@ -534,10 +549,25 @@
|
||||
"forceChannelCheckPopup": {
|
||||
"message": "Considere habilitar a verificação de canal forçada antes de pular os patrocinadores"
|
||||
},
|
||||
"downvoteDescription": {
|
||||
"message": "Incorreto/tempo errado"
|
||||
},
|
||||
"incorrectCategory": {
|
||||
"message": "Categoria errada"
|
||||
},
|
||||
"nonMusicCategoryOnMusic": {
|
||||
"message": "Este vídeo é classificado como música. Você tem certeza que deseja enviar segmentos com categorias que não são músicas? A menos que esse vídeo não seja de fato música, você não deve enviar esse segmento. Por favor leia as orientações se estiver em dúvidas."
|
||||
},
|
||||
"multipleSegments": {
|
||||
"message": "Multiplos segmentos"
|
||||
},
|
||||
"categoryUpdate1": {
|
||||
"message": "As categorias estão aqui!"
|
||||
},
|
||||
"unsubmittedWarning": {
|
||||
"message": "Notificação de segmentos não enviados"
|
||||
},
|
||||
"unsubmittedWarningDescription": {
|
||||
"message": "Enviar uma notificação quando você sair de um vídeo com segmentos que não foram enviados"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -205,10 +205,6 @@
|
||||
"showNotice": {
|
||||
"message": "Mostrar notificação outra vez"
|
||||
},
|
||||
"longDescription": {
|
||||
"message": "SponsorBlock é uma extensão que salta segmentos patrocinados em vídeos do YouTube. SponsorBlock é uma extenção crowdfunded que permite a qualquer um submeter o início e o fim de segmentos patrocinados. Assim que uma pessoa submete essa informação todos com a extenção poderam saltar automaticamete o patrocínio.",
|
||||
"description": "Full description of the extension on the store pages."
|
||||
},
|
||||
"website": {
|
||||
"message": "Site",
|
||||
"description": "Used on Firefox Store Page"
|
||||
|
||||
@@ -1,8 +1,4 @@
|
||||
{
|
||||
"Name": {
|
||||
"message": "SponsorBlock",
|
||||
"description": "Name of the extension."
|
||||
},
|
||||
"fullName": {
|
||||
"message": "SponsorBlock pentru YouTube - Sari peste sponsorizări",
|
||||
"description": "Name of the extension."
|
||||
@@ -221,10 +217,6 @@
|
||||
"showNotice": {
|
||||
"message": "Arată Notificarea Din Nou"
|
||||
},
|
||||
"longDescription": {
|
||||
"message": "SponsorBlock este o extensie care va sări peste segmentele sponsorizate din videoclipurile de pe YouTube. SponsorBlock este o extensie crowdsourced care lasă pe oricine să trimită începutul și finalul segmentelor sponsorizate din videoclipurile de pe YouTube. Odată ce o persoană trimite aceste informații, toată lumea cu această extensie va sări peste acel segment sponsorizat.",
|
||||
"description": "Full description of the extension on the store pages."
|
||||
},
|
||||
"website": {
|
||||
"message": "Website",
|
||||
"description": "Used on Firefox Store Page"
|
||||
@@ -470,9 +462,6 @@
|
||||
"theKey": {
|
||||
"message": "Tasta"
|
||||
},
|
||||
"keyAlreadyUsedByYouTube": {
|
||||
"message": "este deja utilizat de YouTube. Vă rugăm selectați o altă tastă."
|
||||
},
|
||||
"keyAlreadyUsed": {
|
||||
"message": "este deja setată la o altă acțiune. Vă rugăm să selectați o altă tastă."
|
||||
},
|
||||
@@ -486,15 +475,6 @@
|
||||
"category_sponsor_description": {
|
||||
"message": "Promovare plătită, refferali plătiți și reclame directe. Nu pentru autopromovări sau promovări gratis ale cauzelor/creatorilor/website-urilor/produselor."
|
||||
},
|
||||
"category_intro": {
|
||||
"message": "Animație de Început"
|
||||
},
|
||||
"category_intro_description": {
|
||||
"message": "Animațiile de introducere care se repetă în serie sau care nu oferă nici o valoare directă. Această opțiune nu ar trebui folosită în videoclipurile muzicale."
|
||||
},
|
||||
"category_intro_short": {
|
||||
"message": "Intro"
|
||||
},
|
||||
"category_outro": {
|
||||
"message": "Ecran De Final/Credite"
|
||||
},
|
||||
|
||||
@@ -1,8 +1,4 @@
|
||||
{
|
||||
"Name": {
|
||||
"message": "SponsorBlock",
|
||||
"description": "Name of the extension."
|
||||
},
|
||||
"fullName": {
|
||||
"message": "SponsorBlock для YouTube - Пропускайте спонсорские вставки",
|
||||
"description": "Name of the extension."
|
||||
@@ -65,6 +61,9 @@
|
||||
"paused": {
|
||||
"message": "Пауза"
|
||||
},
|
||||
"manualPaused": {
|
||||
"message": "Таймер остановлен"
|
||||
},
|
||||
"confirmMSG": {
|
||||
"message": "\n\nЧтобы изменить или удалить отдельные значения, нажмите кнопку «Информация» или откройте всплывающее окно расширения, щелкнув значок расширения в правом верхнем углу."
|
||||
},
|
||||
@@ -107,6 +106,9 @@
|
||||
"clearTimes": {
|
||||
"message": "Удалить отмеченные сегменты"
|
||||
},
|
||||
"openPopup": {
|
||||
"message": "Открыть всплывающее окно SponsorBlock"
|
||||
},
|
||||
"SubmitTimes": {
|
||||
"message": "Отправить отмеченные сегменты"
|
||||
},
|
||||
@@ -206,10 +208,6 @@
|
||||
"showNotice": {
|
||||
"message": "Показывать уведомление снова"
|
||||
},
|
||||
"longDescription": {
|
||||
"message": "SponsorBlock — это расширение, которое пропускает спонсорские вставки в видео на YouTube. SponsorBlock — это краудсорсинговое расширение, которое позволяет каждому отправить время начала и конца спонсорских сегментов в видео на YouTube. После того, как кто-нибудь отправляет эту информацию, все остальные пользователи расширения будут автоматически пропускать спонсорские сегменты.",
|
||||
"description": "Full description of the extension on the store pages."
|
||||
},
|
||||
"website": {
|
||||
"message": "Сайт",
|
||||
"description": "Used on Firefox Store Page"
|
||||
@@ -413,6 +411,24 @@
|
||||
"whatExportOptions": {
|
||||
"message": "Это вся конфигурация в формате JSON. Этот файл содержит Ваш идентификатор пользователя, поэтому не забудьте общаться с этим разумно."
|
||||
},
|
||||
"submit": {
|
||||
"message": "Отправить"
|
||||
},
|
||||
"cancel": {
|
||||
"message": "Отменить"
|
||||
},
|
||||
"delete": {
|
||||
"message": "Удалить"
|
||||
},
|
||||
"preview": {
|
||||
"message": "Превью"
|
||||
},
|
||||
"edit": {
|
||||
"message": "Редактировать"
|
||||
},
|
||||
"copyDebugInformation": {
|
||||
"message": "Скопировать отладочную информацию в буфер обмена"
|
||||
},
|
||||
"bracketNow": {
|
||||
"message": "(Сейчас)"
|
||||
},
|
||||
|
||||
@@ -1,8 +1,4 @@
|
||||
{
|
||||
"Name": {
|
||||
"message": "SponsorBlock",
|
||||
"description": "Name of the extension."
|
||||
},
|
||||
"Sponsor": {
|
||||
"message": "sponzor"
|
||||
},
|
||||
|
||||
@@ -1,14 +1,10 @@
|
||||
{
|
||||
"Name": {
|
||||
"message": "SponsorBlock",
|
||||
"description": "Name of the extension."
|
||||
},
|
||||
"fullName": {
|
||||
"message": "SponsorBlock för YouTube - Hoppa över sponsring",
|
||||
"description": "Name of the extension."
|
||||
},
|
||||
"Description": {
|
||||
"message": "Hoppa över sponsormeddelanden på YouTube-videor. Rapportera sponsring på videor du ser på för att spara tid för andra.",
|
||||
"message": "Hoppa över sponsormeddelanden på YouTube-videor. Rapportera sponsring på videor du ser på för att spara tid åt andra.",
|
||||
"description": "Description of the extension."
|
||||
},
|
||||
"400": {
|
||||
@@ -18,7 +14,7 @@
|
||||
"message": "Du har rapporterat för många sponsormeddelanden för den här videon, är du säker att det finns så många?"
|
||||
},
|
||||
"409": {
|
||||
"message": "Den här har redan blivit rapporterad."
|
||||
"message": "Den här har redan blivit rapporterad"
|
||||
},
|
||||
"channelWhitelisted": {
|
||||
"message": "Kanal vitlistad!"
|
||||
@@ -54,7 +50,7 @@
|
||||
"message": "Sekunder"
|
||||
},
|
||||
"Hide": {
|
||||
"message": "\"Visa aldrig\"-knappen. "
|
||||
"message": "Visa Aldrig"
|
||||
},
|
||||
"hitGoBack": {
|
||||
"message": "Tryck på Tillbaka för att ångra åtgärden."
|
||||
@@ -63,7 +59,7 @@
|
||||
"message": "Tillbaka"
|
||||
},
|
||||
"reskip": {
|
||||
"message": "Frammåt"
|
||||
"message": "Framåt"
|
||||
},
|
||||
"paused": {
|
||||
"message": "Pausad"
|
||||
@@ -218,10 +214,6 @@
|
||||
"showNotice": {
|
||||
"message": "Visa Notisen Igen"
|
||||
},
|
||||
"longDescription": {
|
||||
"message": "SponsorBlock är ett webbläsartillägg som hoppar över sponsormeddelanden på YouTube-videor. SponsorBlock är ett crowdsourcat webbläsartillägg som låter vem som hellst att rapportera start och sluttider för sponsorsegment på YouTube-videor. När informationen väl har rapporterats kommer alla andra med detta tillägg att hoppa över sponsorsegmentet.",
|
||||
"description": "Full description of the extension on the store pages."
|
||||
},
|
||||
"website": {
|
||||
"message": "Hemsida",
|
||||
"description": "Used on Firefox Store Page"
|
||||
@@ -467,9 +459,6 @@
|
||||
"theKey": {
|
||||
"message": "Nyckeln"
|
||||
},
|
||||
"keyAlreadyUsedByYouTube": {
|
||||
"message": "används redan av YouTube. Välj en annan nyckel."
|
||||
},
|
||||
"keyAlreadyUsed": {
|
||||
"message": "är kopplad till en annan funktion. Välj en annan knapp."
|
||||
},
|
||||
@@ -480,15 +469,6 @@
|
||||
"category_sponsor": {
|
||||
"message": "Sponsormeddelande"
|
||||
},
|
||||
"category_intro": {
|
||||
"message": "Intro-animation"
|
||||
},
|
||||
"category_intro_description": {
|
||||
"message": "Intro-animationer som är återkommande i serien eller inte ger direkt värde. Detta bör inte användas på musikvideor."
|
||||
},
|
||||
"category_intro_short": {
|
||||
"message": "Intro"
|
||||
},
|
||||
"category_music_offtopic_description": {
|
||||
"message": "Endast för användning i musikvideor. Detta inkluderar intros och outros i musikvideor."
|
||||
},
|
||||
|
||||
@@ -1,8 +1,4 @@
|
||||
{
|
||||
"Name": {
|
||||
"message": "SponsorBlock",
|
||||
"description": "Name of the extension."
|
||||
},
|
||||
"fullName": {
|
||||
"message": "Youtube için SponsorBlock - Sponsorlukları Atla",
|
||||
"description": "Name of the extension."
|
||||
@@ -221,10 +217,6 @@
|
||||
"showNotice": {
|
||||
"message": "Uyarıyı Tekrar Göster"
|
||||
},
|
||||
"longDescription": {
|
||||
"message": "SponsorBlock, YouTube'da sponsorlu bölümleri atlamanıza yardımcı olan bir eklentidir. SponsorBlock, herkesin YouTube videolarında bulunan sponsorlu bölümlerin başını ve sonunu göndermesine izin veren kitlekaynaklı bir tarayıcı eklentisidir. Bu bilgiyi biri yolladığında, bu sponsorlu bölüm herkeste atlanır.",
|
||||
"description": "Full description of the extension on the store pages."
|
||||
},
|
||||
"website": {
|
||||
"message": "Website",
|
||||
"description": "Used on Firefox Store Page"
|
||||
@@ -470,9 +462,6 @@
|
||||
"theKey": {
|
||||
"message": "Anahtar"
|
||||
},
|
||||
"keyAlreadyUsedByYouTube": {
|
||||
"message": "YouTube tarafından zaten kullanımda. Lütfen başka bir anahtar seçin."
|
||||
},
|
||||
"keyAlreadyUsed": {
|
||||
"message": "başka bir eyleme bağlı. Lütfen başka bir anahtar seçin."
|
||||
},
|
||||
@@ -483,9 +472,6 @@
|
||||
"category_sponsor": {
|
||||
"message": "Sponsor"
|
||||
},
|
||||
"category_intro": {
|
||||
"message": "Giriş Animasyonu"
|
||||
},
|
||||
"category_outro": {
|
||||
"message": "Bitiş Ekranı/Jenerik"
|
||||
},
|
||||
@@ -510,6 +496,20 @@
|
||||
"showOverlay": {
|
||||
"message": "Arama Çubuğunda Göster"
|
||||
},
|
||||
"previewColor": {
|
||||
"message": "Önizleme Rengi",
|
||||
"description": "Referring to submissions that have not been sent to the server yet."
|
||||
},
|
||||
"seekBarColor": {
|
||||
"message": "Oynatma Çubuğu Rengi"
|
||||
},
|
||||
"category": {
|
||||
"message": "Kategori"
|
||||
},
|
||||
"skipOption": {
|
||||
"message": "Atlama Seçeneği",
|
||||
"description": "Used on the options page to describe the ways to skip the segment (auto skip, manual, etc.)"
|
||||
},
|
||||
"enableTestingServer": {
|
||||
"message": "Beta Deneme Sunucusunu Devreye Sok"
|
||||
},
|
||||
@@ -563,5 +563,15 @@
|
||||
},
|
||||
"multipleSegments": {
|
||||
"message": "Birden Çok Bölüm"
|
||||
},
|
||||
"guidelines": {
|
||||
"message": "Kılavuz"
|
||||
},
|
||||
"readTheGuidelines": {
|
||||
"message": "Kılavuzu Oku!!",
|
||||
"description": "Show the first time they submit or if they are \"high risk\""
|
||||
},
|
||||
"categoryUpdate1": {
|
||||
"message": "Kategoriler burada!"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,8 +1,4 @@
|
||||
{
|
||||
"Name": {
|
||||
"message": "SponsorBlock",
|
||||
"description": "Name of the extension."
|
||||
},
|
||||
"fullName": {
|
||||
"message": "SponsorBlock для YouTube - Пропускайте спонсорські вставки",
|
||||
"description": "Name of the extension."
|
||||
@@ -209,10 +205,6 @@
|
||||
"showNotice": {
|
||||
"message": "Показувати сповіщення знову"
|
||||
},
|
||||
"longDescription": {
|
||||
"message": "SponsorBlock - це розширення, яке пропускає спонсорські вставки в відео на YouTube. SponsorBlock - це краудсорсінгове розширення, яке дозволяє кожному надіслати час початку і кінця спонсорських сегментів в відео на YouTube. Після того, як хто-небудь надсилає цю інформацію, всі інші користувачі розширення будуть автоматично пропускати спонсорські сегменти.",
|
||||
"description": "Full description of the extension on the store pages."
|
||||
},
|
||||
"website": {
|
||||
"message": "Сайт",
|
||||
"description": "Used on Firefox Store Page"
|
||||
|
||||
@@ -1,8 +1,4 @@
|
||||
{
|
||||
"Name": {
|
||||
"message": "SponsorBlock",
|
||||
"description": "Name of the extension."
|
||||
},
|
||||
"fullName": {
|
||||
"message": "SponsorBlock for YouTube - 跳过赞助商广告",
|
||||
"description": "Name of the extension."
|
||||
@@ -221,10 +217,6 @@
|
||||
"showNotice": {
|
||||
"message": "重新显示通知"
|
||||
},
|
||||
"longDescription": {
|
||||
"message": "SponsorBlock 是一个用于跳过 YouTube 视频的赞助商广告片段的扩展。SponsorBlock 是一个众包的浏览器扩展,可以让任何人提交 Youtube 视频的赞助商广告片段的开始和结束时间。一旦有人提交了信息,其他所有使用此扩展的人都能直接跳过赞助商广告片段。",
|
||||
"description": "Full description of the extension on the store pages."
|
||||
},
|
||||
"website": {
|
||||
"message": "网站",
|
||||
"description": "Used on Firefox Store Page"
|
||||
@@ -470,9 +462,6 @@
|
||||
"theKey": {
|
||||
"message": "按键"
|
||||
},
|
||||
"keyAlreadyUsedByYouTube": {
|
||||
"message": "已被 Youtube 使用。请选择其他按键。"
|
||||
},
|
||||
"keyAlreadyUsed": {
|
||||
"message": "已绑定其他操作。请选择其他按键。"
|
||||
},
|
||||
@@ -483,24 +472,30 @@
|
||||
"category_sponsor": {
|
||||
"message": "赞助商广告"
|
||||
},
|
||||
"category_intro": {
|
||||
"message": "开头动画"
|
||||
},
|
||||
"category_outro": {
|
||||
"message": "结束画面/结尾职员表"
|
||||
},
|
||||
"category_interaction": {
|
||||
"message": "互动提醒(订阅)"
|
||||
},
|
||||
"category_interaction_short": {
|
||||
"message": "互动提醒"
|
||||
},
|
||||
"category_selfpromo": {
|
||||
"message": "未收钱的/自我推销"
|
||||
},
|
||||
"category_music_offtopic": {
|
||||
"message": "音乐:非音乐部分"
|
||||
},
|
||||
"category_music_offtopic_short": {
|
||||
"message": "无音乐"
|
||||
},
|
||||
"category_livestream_messages": {
|
||||
"message": "直播:捐赠/消息阅读"
|
||||
},
|
||||
"category_livestream_messages_short": {
|
||||
"message": "阅读消息"
|
||||
},
|
||||
"disable": {
|
||||
"message": "禁用"
|
||||
},
|
||||
@@ -510,6 +505,20 @@
|
||||
"showOverlay": {
|
||||
"message": "在搜索栏中显示"
|
||||
},
|
||||
"previewColor": {
|
||||
"message": "预览颜色",
|
||||
"description": "Referring to submissions that have not been sent to the server yet."
|
||||
},
|
||||
"seekBarColor": {
|
||||
"message": "拖动条颜色"
|
||||
},
|
||||
"category": {
|
||||
"message": "类别"
|
||||
},
|
||||
"skipOption": {
|
||||
"message": "跳过选项",
|
||||
"description": "Used on the options page to describe the ways to skip the segment (auto skip, manual, etc.)"
|
||||
},
|
||||
"enableTestingServer": {
|
||||
"message": "启用 Beta 测试服务器"
|
||||
},
|
||||
@@ -563,5 +572,18 @@
|
||||
},
|
||||
"multipleSegments": {
|
||||
"message": "多个片段"
|
||||
},
|
||||
"guidelines": {
|
||||
"message": "指南"
|
||||
},
|
||||
"readTheGuidelines": {
|
||||
"message": "阅读指南!!",
|
||||
"description": "Show the first time they submit or if they are \"high risk\""
|
||||
},
|
||||
"categoryUpdate1": {
|
||||
"message": "类别在这里!"
|
||||
},
|
||||
"categoryUpdate2": {
|
||||
"message": "打开选项,跳过开头,结尾,商业等。"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -140,6 +140,7 @@
|
||||
color: rgb(235, 235, 235);
|
||||
border: none;
|
||||
display: inline-block;
|
||||
font-size: 13.3333px !important;
|
||||
|
||||
cursor: pointer;
|
||||
|
||||
@@ -179,6 +180,7 @@
|
||||
.sponsorSkipNoticeCloseButton {
|
||||
height: 10px;
|
||||
width: 10px;
|
||||
box-sizing: unset;
|
||||
|
||||
padding: 2px 5px;
|
||||
|
||||
|
||||
@@ -230,7 +230,12 @@ class SponsorTimeEditComponent extends React.Component<SponsorTimeEditProps, Spo
|
||||
}
|
||||
|
||||
getCategoryOptions() {
|
||||
let elements = [];
|
||||
let elements = [(
|
||||
<option value={"chooseACategory"}
|
||||
key={"chooseACategory"}>
|
||||
{chrome.i18n.getMessage("chooseACategory")}
|
||||
</option>
|
||||
)];
|
||||
|
||||
for (const category of Config.config.categorySelections) {
|
||||
elements.push(
|
||||
|
||||
@@ -167,9 +167,16 @@ class SubmissionNoticeComponent extends React.Component<SubmissionNoticeProps, S
|
||||
ref.current.saveEditTimes();
|
||||
}
|
||||
|
||||
let sponsorTimesSubmitting = this.props.contentContainer().sponsorTimesSubmitting;
|
||||
for (const sponsorTime of sponsorTimesSubmitting) {
|
||||
if (sponsorTime.category === "chooseACategory") {
|
||||
alert(chrome.i18n.getMessage("youMustSelectACategory"));
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
// Check if any non music categories are being used on a music video
|
||||
if (this.contentContainer().videoInfo?.microformat?.playerMicroformatRenderer?.category === "Music") {
|
||||
let sponsorTimesSubmitting = this.props.contentContainer().sponsorTimesSubmitting;
|
||||
for (const sponsorTime of sponsorTimesSubmitting) {
|
||||
if (!sponsorTime.category.startsWith("music_")) {
|
||||
if (!confirm(chrome.i18n.getMessage("nonMusicCategoryOnMusic"))) return;
|
||||
|
||||
@@ -8,6 +8,7 @@ interface SBConfig {
|
||||
userID: string,
|
||||
// sponsorTimes: SBMap<string, SponsorTime[]>,
|
||||
segmentTimes: SBMap<string, SponsorTime[]>,
|
||||
defaultCategory: string,
|
||||
whitelistedChannels: string[],
|
||||
forceChannelCheck: boolean,
|
||||
startSponsorKeybind: string,
|
||||
@@ -40,6 +41,7 @@ interface SBConfig {
|
||||
|
||||
// Preview bar
|
||||
barTypes: {
|
||||
"preview-chooseACategory": PreviewBarOption,
|
||||
"sponsor": PreviewBarOption,
|
||||
"preview-sponsor": PreviewBarOption,
|
||||
"intro": PreviewBarOption,
|
||||
@@ -109,7 +111,15 @@ class SBMap<T, U> extends Map {
|
||||
delete(key) {
|
||||
const result = super.delete(key);
|
||||
|
||||
this.update();
|
||||
// Make sure there are no empty elements
|
||||
for (const entry of this.entries()) {
|
||||
if (entry[1].length === 0) {
|
||||
super.delete(entry[0]);
|
||||
}
|
||||
}
|
||||
|
||||
this.update();
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
@@ -129,6 +139,7 @@ var Config: SBObject = {
|
||||
defaults: {
|
||||
userID: null,
|
||||
segmentTimes: new SBMap("segmentTimes"),
|
||||
defaultCategory: "chooseACategory",
|
||||
whitelistedChannels: [],
|
||||
forceChannelCheck: false,
|
||||
startSponsorKeybind: ";",
|
||||
@@ -163,6 +174,10 @@ var Config: SBObject = {
|
||||
|
||||
// Preview bar
|
||||
barTypes: {
|
||||
"preview-chooseACategory": {
|
||||
color: "#ffffff",
|
||||
opacity: "0.7"
|
||||
},
|
||||
"sponsor": {
|
||||
color: "#00d400",
|
||||
opacity: "0.7"
|
||||
|
||||
@@ -418,7 +418,7 @@ function createPreviewBar(): void {
|
||||
const el = document.querySelectorAll(selector);
|
||||
|
||||
if (el && el.length && el[0]) {
|
||||
previewBar = new PreviewBar(el[0], onMobileYouTube);
|
||||
previewBar = new PreviewBar(el[0], onMobileYouTube, onInvidious);
|
||||
|
||||
updatePreviewBar();
|
||||
|
||||
@@ -1011,8 +1011,6 @@ function unskipSponsorTime(segment: SponsorTime) {
|
||||
if (sponsorTimes != null) {
|
||||
//add a tiny bit of time to make sure it is not skipped again
|
||||
video.currentTime = segment.segment[0] + 0.001;
|
||||
|
||||
checkIfInsideSegment();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1020,16 +1018,6 @@ function reskipSponsorTime(segment: SponsorTime) {
|
||||
video.currentTime = segment.segment[1];
|
||||
}
|
||||
|
||||
/**
|
||||
* Checks if currently inside a segment and will trigger
|
||||
* a skip schedule if true.
|
||||
*
|
||||
* This is used for when a manual skip is finished or a reskip is complete
|
||||
*/
|
||||
function checkIfInsideSegment() {
|
||||
// for
|
||||
}
|
||||
|
||||
function createButton(baseID, title, callback, imageName, isDraggable=false): boolean {
|
||||
if (document.getElementById(baseID + "Button") != null) return false;
|
||||
|
||||
@@ -1038,18 +1026,10 @@ function createButton(baseID, title, callback, imageName, isDraggable=false): bo
|
||||
newButton.draggable = isDraggable;
|
||||
newButton.id = baseID + "Button";
|
||||
newButton.classList.add("playerButton");
|
||||
if (!onMobileYouTube) {
|
||||
newButton.classList.add("ytp-button");
|
||||
} else {
|
||||
newButton.classList.add("icon-button");
|
||||
newButton.style.padding = "0";
|
||||
}
|
||||
newButton.classList.add("ytp-button");
|
||||
newButton.setAttribute("title", chrome.i18n.getMessage(title));
|
||||
newButton.addEventListener("click", (event: Event) => {
|
||||
callback();
|
||||
|
||||
// Prevents the contols from closing when clicked
|
||||
if (onMobileYouTube) event.stopPropagation();
|
||||
});
|
||||
|
||||
// Image HTML
|
||||
@@ -1091,6 +1071,8 @@ function getControls(): HTMLElement | boolean {
|
||||
|
||||
//adds all the player controls buttons
|
||||
async function createButtons(): Promise<boolean> {
|
||||
if (onMobileYouTube) return;
|
||||
|
||||
let result = await utils.wait(getControls).catch();
|
||||
|
||||
//set global controls variable
|
||||
@@ -1168,8 +1150,7 @@ function startSponsorClicked() {
|
||||
sponsorTimesSubmitting.push({
|
||||
segment: [getRealCurrentTime()],
|
||||
UUID: null,
|
||||
// Default to sponsor
|
||||
category: "sponsor"
|
||||
category: Config.config.defaultCategory
|
||||
});
|
||||
}
|
||||
|
||||
@@ -1217,9 +1198,9 @@ async function changeStartSponsorButton(showStartSponsor, uploadButtonVisible) {
|
||||
(<HTMLImageElement> document.getElementById("startSponsorImage")).src = chrome.extension.getURL("icons/PlayerStartIconSponsorBlocker256px.png");
|
||||
document.getElementById("startSponsorButton").setAttribute("title", chrome.i18n.getMessage("sponsorStart"));
|
||||
|
||||
if (document.getElementById("startSponsorImage").style.display != "none" && uploadButtonVisible && !Config.config.hideUploadButtonPlayerControls) {
|
||||
if (document.getElementById("startSponsorImage").style.display != "none" && uploadButtonVisible && !Config.config.hideUploadButtonPlayerControls && !onInvidious) {
|
||||
document.getElementById("submitButton").style.display = "unset";
|
||||
} else if (!uploadButtonVisible) {
|
||||
} else if (!uploadButtonVisible || onInvidious) {
|
||||
//disable submit button
|
||||
document.getElementById("submitButton").style.display = "none";
|
||||
}
|
||||
@@ -1592,6 +1573,8 @@ function updateAdFlag() {
|
||||
}
|
||||
|
||||
function showTimeWithoutSkips(allSponsorTimes): void {
|
||||
if (onMobileYouTube || onInvidious) return;
|
||||
|
||||
let skipDuration = 0;
|
||||
|
||||
// Calculate skipDuration based from the segments in the preview bar
|
||||
@@ -1605,7 +1588,7 @@ function showTimeWithoutSkips(allSponsorTimes): void {
|
||||
|
||||
// YouTube player time display
|
||||
let display = document.getElementsByClassName("ytp-time-display notranslate")[0];
|
||||
if (display === undefined) return
|
||||
if (!display) return;
|
||||
|
||||
let formatedTime = utils.getFormattedTime(video.duration - skipDuration);
|
||||
|
||||
|
||||
@@ -13,16 +13,18 @@ class PreviewBar {
|
||||
container: HTMLUListElement;
|
||||
parent: any;
|
||||
onMobileYouTube: boolean;
|
||||
onInvidious: boolean;
|
||||
|
||||
timestamps: number[][];
|
||||
types: string;
|
||||
|
||||
constructor(parent, onMobileYouTube) {
|
||||
constructor(parent, onMobileYouTube, onInvidious) {
|
||||
this.container = document.createElement('ul');
|
||||
this.container.id = 'previewbar';
|
||||
this.parent = parent;
|
||||
|
||||
this.onMobileYouTube = onMobileYouTube;
|
||||
this.onInvidious = onInvidious;
|
||||
|
||||
this.updatePosition(parent);
|
||||
|
||||
@@ -30,6 +32,8 @@ class PreviewBar {
|
||||
}
|
||||
|
||||
setupHoverText() {
|
||||
if (this.onMobileYouTube || this.onInvidious) return;
|
||||
|
||||
let seekBar = document.querySelector(".ytp-progress-bar-container");
|
||||
|
||||
// Create label placeholder
|
||||
|
||||
@@ -338,7 +338,7 @@ async function runThePopup(messageListener?: MessageListener) {
|
||||
if (sponsorTimes[sponsorTimesIndex] == undefined) {
|
||||
sponsorTimes[sponsorTimesIndex] = {
|
||||
segment: [],
|
||||
category: "sponsor",
|
||||
category: Config.config.defaultCategory,
|
||||
UUID: null
|
||||
};
|
||||
}
|
||||
|
||||
@@ -331,9 +331,10 @@ class Utils {
|
||||
return seconds % 60;
|
||||
}
|
||||
|
||||
getFormattedTime(seconds: number, precise?: boolean) {
|
||||
let minutes = Math.floor(seconds / 60);
|
||||
let secondsNum: number = seconds - minutes * 60;
|
||||
getFormattedTime(seconds: number, precise?: boolean): string {
|
||||
let hours = Math.floor(seconds / 60 / 60);
|
||||
let minutes = Math.floor(seconds / 60) % 60;
|
||||
let secondsNum = seconds % 60;
|
||||
if (!precise) {
|
||||
secondsNum = Math.floor(secondsNum);
|
||||
}
|
||||
@@ -345,7 +346,7 @@ class Utils {
|
||||
secondsDisplay = "0" + secondsDisplay;
|
||||
}
|
||||
|
||||
let formatted = minutes + ":" + secondsDisplay;
|
||||
let formatted = (hours ? hours + ":" : "") + minutes + ":" + secondsDisplay;
|
||||
|
||||
return formatted;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user