mirror of
https://github.com/ajayyy/SponsorBlock.git
synced 2024-11-11 09:30:46 +01:00
Merge branch 'master' into add-invidious
This commit is contained in:
commit
f25aeefe83
8 changed files with 86 additions and 21 deletions
|
@ -82,10 +82,10 @@
|
|||
"message": "Bist du sicher, dass du Folgendes löschen möchtest?\n\n"
|
||||
},
|
||||
"Unknown": {
|
||||
"message": "Deine Segmente konnte nicht gesendet werden, bitte versuche es später erneut."
|
||||
"message": "Deine Segmente konnten nicht gesendet werden, bitte versuche es später erneut."
|
||||
},
|
||||
"sponsorFound": {
|
||||
"message": "Die gesponsorten Inhalte dieses Videos befindet sich bereits in der Datenbank!"
|
||||
"message": "Die gesponsorten Inhalte dieses Videos befinden sich bereits in der Datenbank!"
|
||||
},
|
||||
"sponsor404": {
|
||||
"message": "Keine Sponsoren gefunden"
|
||||
|
@ -214,10 +214,10 @@
|
|||
"message": "Dieser Knopf entfernt sämtlich Segmente in der Youtube-Zeitleiste."
|
||||
},
|
||||
"disableViewTracking": {
|
||||
"message": "Deaktiviere mitzählen übersprungener Sponsoren"
|
||||
"message": "Deaktiviere das Mitzählen übersprungener Sponsoren"
|
||||
},
|
||||
"enableViewTracking": {
|
||||
"message": "Aktiviere mitzählen übersprungener Sponsoren"
|
||||
"message": "Aktiviere das Mitzählen übersprungener Sponsoren"
|
||||
},
|
||||
"whatViewTracking": {
|
||||
"message": "Diese Funktion hält fest, welche Sponsoren von dir übersprungen wurden und hilft anderen zu erfahren, was ihre Einsendungen bewirkt haben.\n Außerdem dienen die Werte zusammen mit positiven Rückmeldungen als Anti-Spam-Schutz. \n Wenn ein gesponsorter Inhalt übersprungen wird, sendet die Erweiterung eine Nachricht an den Server. \n Hoffentlich wird diese Funktion auch weiterhin genutzt, damit der Algorithmus funktioniert. :)"
|
||||
|
@ -292,10 +292,10 @@
|
|||
"message": "Auto-Überspringen überspringt gesponsorte Inhalte für dich. Wenn deaktiviert, fragt die Benachrichtigung, ob übersprungen werden soll."
|
||||
},
|
||||
"youHaveSkipped": {
|
||||
"message": "Du hast übersprungen "
|
||||
"message": "Du übersprangst "
|
||||
},
|
||||
"youHaveSaved": {
|
||||
"message": "Du hast dir erspart "
|
||||
"message": "Du erspartest dir "
|
||||
},
|
||||
"minLower": {
|
||||
"message": "Minute"
|
||||
|
|
|
@ -320,5 +320,17 @@
|
|||
},
|
||||
"statusReminder": {
|
||||
"message": "Check status.sponsor.ajay.app for server status."
|
||||
},
|
||||
"changeUserID": {
|
||||
"message": "Import/Export Your UserID"
|
||||
},
|
||||
"whatChangeUserID": {
|
||||
"message": "This should be kept private. This is like a password and should not be shared with anyone. If someone has this, they can impersonate you."
|
||||
},
|
||||
"setUserID": {
|
||||
"message": "Set UserID"
|
||||
},
|
||||
"userIDChangeWarning": {
|
||||
"message": "Warning: Changing the UserID is permanent. Are you sure you would like to do this? Make sure to backup your old one just in case."
|
||||
}
|
||||
}
|
||||
|
|
|
@ -109,7 +109,7 @@ function submitVote(type, UUID, callback) {
|
|||
}
|
||||
|
||||
//publish this vote
|
||||
sendRequestToServer("GET", "/api/voteOnSponsorTime?UUID=" + UUID + "&userID=" + userID + "&type=" + type, function(xmlhttp, error) {
|
||||
sendRequestToServer("POST", "/api/voteOnSponsorTime?UUID=" + UUID + "&userID=" + userID + "&type=" + type, function(xmlhttp, error) {
|
||||
if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
|
||||
callback({
|
||||
successType: 1
|
||||
|
|
17
content.js
17
content.js
|
@ -514,12 +514,11 @@ function updatePreviewBar() {
|
|||
|
||||
function getChannelID() {
|
||||
//get channel id
|
||||
let channelNameContainer = document.getElementById("channel-name");
|
||||
|
||||
let channelURLContainer = null;
|
||||
|
||||
if (channelNameContainer !== null) {
|
||||
channelURLContainer = channelNameContainer.querySelector("#container").querySelector("#text-container").querySelector("#text").firstElementChild;
|
||||
channelURLContainer = document.querySelector("#channel-name > #container > #text-container > #text");
|
||||
if (channelURLContainer !== null) {
|
||||
channelURLContainer = channelURLContainer.firstElementChild;
|
||||
} else if (onInvidious) {
|
||||
// Unfortunately, the Invidious HTML doesn't have much in the way of element identifiers...
|
||||
channelContainers = document.querySelector("body > div > div.pure-u-1.pure-u-md-20-24 div.pure-u-1.pure-u-lg-3-5 > div > a");
|
||||
|
@ -677,9 +676,9 @@ function skipToTime(v, index, sponsorTimes, openNotice) {
|
|||
}
|
||||
}
|
||||
|
||||
//send telemetry that a this sponsor was skipped happened
|
||||
//send telemetry that a this sponsor was skipped
|
||||
if (trackViewCount && !sponsorSkipped[index]) {
|
||||
sendRequestToServer("GET", "/api/viewedVideoSponsorTime?UUID=" + currentUUID);
|
||||
sendRequestToServer("POST", "/api/viewedVideoSponsorTime?UUID=" + currentUUID);
|
||||
|
||||
if (!disableAutoSkip) {
|
||||
// Count this as a skip
|
||||
|
@ -973,11 +972,13 @@ function vote(type, UUID, skipNotice) {
|
|||
|
||||
let sponsorIndex = UUIDs.indexOf(UUID);
|
||||
|
||||
// See if the local time saved count and skip count should be reverted
|
||||
// See if the local time saved count and skip count should be saved
|
||||
if (type == 0 && sponsorSkipped[sponsorIndex] || type == 1 && !sponsorSkipped[sponsorIndex]) {
|
||||
let factor = 1;
|
||||
if (type == 0) {
|
||||
factor = -1;
|
||||
|
||||
sponsorSkipped[sponsorIndex] = false;
|
||||
}
|
||||
|
||||
// Count this as a skip
|
||||
|
@ -991,8 +992,6 @@ function vote(type, UUID, skipNotice) {
|
|||
|
||||
chrome.storage.sync.set({"skipCount": result.skipCount + factor * 1 });
|
||||
});
|
||||
|
||||
sponsorSkipped[sponsorIndex] = !sponsorSkipped[sponsorIndex];
|
||||
}
|
||||
|
||||
chrome.runtime.sendMessage({
|
||||
|
|
9
crowdin.yml
Normal file
9
crowdin.yml
Normal file
|
@ -0,0 +1,9 @@
|
|||
files:
|
||||
- source: /_locales/en/*
|
||||
translation: /_locales/%two_letters_code%/%original_file_name%
|
||||
languages_mapping:
|
||||
two_letters_code:
|
||||
pr-BR: "pt_BR"
|
||||
pr-PT: "pt_PT"
|
||||
zh-CN: "zh_CH"
|
||||
zh-TW: "zh_TW"
|
|
@ -1,7 +1,7 @@
|
|||
{
|
||||
"name": "__MSG_fullName__",
|
||||
"short_name": "__MSG_Name__",
|
||||
"version": "1.2.0",
|
||||
"version": "1.2.2",
|
||||
"default_locale": "en",
|
||||
"description": "__MSG_Description__",
|
||||
"content_scripts": [
|
||||
|
|
22
popup.html
22
popup.html
|
@ -253,6 +253,28 @@
|
|||
<br/>
|
||||
<br/>
|
||||
|
||||
|
||||
<button id="changeUserIDButton" class="warningButton popupElement">__MSG_changeUserID__</button>
|
||||
<br/>
|
||||
<sub class="popupElement">
|
||||
__MSG_whatChangeUserID__
|
||||
</sub>
|
||||
|
||||
<div id="changeUserID" class="popupElement" style="display: none">
|
||||
<br/>
|
||||
<br/>
|
||||
|
||||
<input id="userIDInput" hint="userID"></input>
|
||||
|
||||
<br/>
|
||||
<br/>
|
||||
|
||||
<button id="setUserID" class="warningButton popupElement">__MSG_setUserID__</button>
|
||||
</div>
|
||||
|
||||
<br/>
|
||||
<br/>
|
||||
|
||||
<button id="disableSponsorViewTracking" class="warningButton popupElement">__MSG_disableViewTracking__</button>
|
||||
<button id="enableSponsorViewTracking" style="display: none" class="warningButton popupElement">__MSG_enableViewTracking__</button>
|
||||
<br/>
|
||||
|
|
31
popup.js
31
popup.js
|
@ -82,6 +82,11 @@ function runThePopup() {
|
|||
"setUsername",
|
||||
"usernameInput",
|
||||
"submitUsername",
|
||||
// UserID
|
||||
"changeUserID",
|
||||
"changeUserIDButton",
|
||||
"userIDInput",
|
||||
"setUserID",
|
||||
// More
|
||||
"submissionSection",
|
||||
"mainControls",
|
||||
|
@ -118,6 +123,8 @@ function runThePopup() {
|
|||
SB.enableSponsorViewTracking.addEventListener("click", enableSponsorViewTracking);
|
||||
SB.setUsernameButton.addEventListener("click", setUsernameButton);
|
||||
SB.submitUsername.addEventListener("click", submitUsername);
|
||||
SB.changeUserIDButton.addEventListener("click", changeUserIDButton);
|
||||
SB.setUserID.addEventListener("click", setUserID);
|
||||
SB.optionsButton.addEventListener("click", openOptions);
|
||||
SB.reportAnIssue.addEventListener("click", reportAnIssue);
|
||||
SB.hideDiscordButton.addEventListener("click", hideDiscordButton);
|
||||
|
@ -740,8 +747,8 @@ function runThePopup() {
|
|||
tabs[0].id,
|
||||
{message: "getCurrentTime"},
|
||||
function (response) {
|
||||
let minutes = document.getElementById(idStartName + chrome.i18n.getMessage("Mins") + index);
|
||||
let seconds = document.getElementById(idStartName + chrome.i18n.getMessage("Secs") + index);
|
||||
let minutes = document.getElementById(idStartName + "Minutes" + index);
|
||||
let seconds = document.getElementById(idStartName + "Seconds" + index);
|
||||
|
||||
minutes.value = getTimeInMinutes(response.currentTime);
|
||||
seconds.value = getTimeInFormattedSeconds(response.currentTime);
|
||||
|
@ -752,8 +759,8 @@ function runThePopup() {
|
|||
//id start name is whether it is the startTime or endTime
|
||||
//gives back the time in seconds
|
||||
function getSponsorTimeEditTimes(idStartName, index) {
|
||||
let minutes = document.getElementById(idStartName + chrome.i18n.getMessage("Mins") + index);
|
||||
let seconds = document.getElementById(idStartName + chrome.i18n.getMessage("Secs") + index);
|
||||
let minutes = document.getElementById(idStartName + "Minutes" + index);
|
||||
let seconds = document.getElementById(idStartName + "Seconds" + index);
|
||||
|
||||
return parseInt(minutes.value) * 60 + parseFloat(seconds.value);
|
||||
}
|
||||
|
@ -1158,6 +1165,22 @@ function runThePopup() {
|
|||
SB.setUsernameContainer.style.display = "none";
|
||||
SB.setUsername.style.display = "unset";
|
||||
}
|
||||
|
||||
function changeUserIDButton() {
|
||||
//get the user ID
|
||||
chrome.storage.sync.get(["userID"], function(result) {
|
||||
SB.userIDInput.value = result.userID;
|
||||
SB.setUserID.style.display = "unset";
|
||||
SB.userIDInput.style.display = "unset";
|
||||
SB.changeUserID.style.display = "unset";
|
||||
});
|
||||
}
|
||||
|
||||
function setUserID() {
|
||||
if (!confirm(chrome.i18n.getMessage("userIDChangeWarning"))) return;
|
||||
|
||||
chrome.storage.sync.set({"userID": SB.userIDInput.value});
|
||||
}
|
||||
|
||||
//this is not a YouTube video page
|
||||
function displayNoVideo() {
|
||||
|
|
Loading…
Reference in a new issue