mirror of
https://github.com/ajayyy/SponsorBlock.git
synced 2026-01-01 22:29:20 +03:00
Sponsor time submission now has proper error messages.
This commit is contained in:
@@ -21,11 +21,10 @@ chrome.tabs.onUpdated.addListener( // On tab update
|
|||||||
|
|
||||||
chrome.runtime.onMessage.addListener(function (request, sender, callback) {
|
chrome.runtime.onMessage.addListener(function (request, sender, callback) {
|
||||||
if (request.message == "submitTimes") {
|
if (request.message == "submitTimes") {
|
||||||
submitTimes(request.videoID);
|
submitTimes(request.videoID, callback);
|
||||||
|
|
||||||
callback({
|
//this allows the callback to be called later by the submitTimes function
|
||||||
success: true
|
return true;
|
||||||
});
|
|
||||||
} else if (request.message == "ytvideoid") {
|
} else if (request.message == "ytvideoid") {
|
||||||
if (previousVideoID != request.videoID) {
|
if (previousVideoID != request.videoID) {
|
||||||
videoIDChange(request.videoID);
|
videoIDChange(request.videoID);
|
||||||
@@ -107,7 +106,7 @@ function submitVote(type, UUID, callback) {
|
|||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
function submitTimes(videoID) {
|
function submitTimes(videoID, callback) {
|
||||||
//get the video times from storage
|
//get the video times from storage
|
||||||
let sponsorTimeKey = 'sponsorTimes' + videoID;
|
let sponsorTimeKey = 'sponsorTimes' + videoID;
|
||||||
chrome.storage.local.get([sponsorTimeKey], function(result) {
|
chrome.storage.local.get([sponsorTimeKey], function(result) {
|
||||||
@@ -119,7 +118,17 @@ function submitTimes(videoID) {
|
|||||||
getUserID(function(userIDStorage) {
|
getUserID(function(userIDStorage) {
|
||||||
//submit the sponsorTime
|
//submit the sponsorTime
|
||||||
sendRequestToServer('GET', "/api/postVideoSponsorTimes?videoID=" + videoID + "&startTime=" + sponsorTimes[i][0] + "&endTime=" + sponsorTimes[i][1]
|
sendRequestToServer('GET', "/api/postVideoSponsorTimes?videoID=" + videoID + "&startTime=" + sponsorTimes[i][0] + "&endTime=" + sponsorTimes[i][1]
|
||||||
+ "&userID=" + userIDStorage);
|
+ "&userID=" + userIDStorage, function(xmlhttp, error) {
|
||||||
|
if (xmlhttp.readyState == 4 && !error) {
|
||||||
|
callback({
|
||||||
|
statusCode: xmlhttp.status
|
||||||
|
});
|
||||||
|
} else if (error) {
|
||||||
|
callback({
|
||||||
|
statusCode: -1
|
||||||
|
});
|
||||||
|
}
|
||||||
|
});
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
12
popup.html
12
popup.html
@@ -63,7 +63,17 @@
|
|||||||
<br/>
|
<br/>
|
||||||
<br/>
|
<br/>
|
||||||
|
|
||||||
<button id="submitTimes" style="display: none" class="smallButton">Submit Times</button>
|
<div id="submitTimesContainer" style="display: none">
|
||||||
|
<button id="submitTimes" class="smallButton">Submit Times</button>
|
||||||
|
|
||||||
|
<div id="submitTimesInfoMessageContainer" style="display: none">
|
||||||
|
<h3 id="submitTimesInfoMessage">
|
||||||
|
|
||||||
|
</h3>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div id="optionsButtonContainer">
|
<div id="optionsButtonContainer">
|
||||||
|
|||||||
33
popup.js
33
popup.js
@@ -268,12 +268,35 @@ function clearTimes() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
function submitTimes() {
|
function submitTimes() {
|
||||||
|
//make info message say loading
|
||||||
|
document.getElementById("submitTimesInfoMessage").innerText = "Loading...";
|
||||||
|
document.getElementById("submitTimesInfoMessageContainer").style.display = "unset";
|
||||||
|
|
||||||
if (sponsorTimes.length > 0) {
|
if (sponsorTimes.length > 0) {
|
||||||
chrome.runtime.sendMessage({
|
chrome.runtime.sendMessage({
|
||||||
message: "submitTimes",
|
message: "submitTimes",
|
||||||
videoID: currentVideoID
|
videoID: currentVideoID
|
||||||
}, function(request) {
|
}, function(response) {
|
||||||
clearTimes();
|
if (response != undefined) {
|
||||||
|
if (response.statusCode == 200) {
|
||||||
|
//hide loading message
|
||||||
|
document.getElementById("submitTimesInfoMessageContainer").style.display = "none";
|
||||||
|
|
||||||
|
clearTimes();
|
||||||
|
} else if(response.statusCode == 400) {
|
||||||
|
document.getElementById("submitTimesInfoMessage").innerText = "Server said this request was invalid";
|
||||||
|
document.getElementById("submitTimesInfoMessageContainer").style.display = "unset";
|
||||||
|
} else if(response.statusCode == 429) {
|
||||||
|
document.getElementById("submitTimesInfoMessage").innerText = "You have submitted too many sponsor times for this one video, are you sure there are this many?";
|
||||||
|
document.getElementById("submitTimesInfoMessageContainer").style.display = "unset";
|
||||||
|
} else if(response.statusCode == 409) {
|
||||||
|
document.getElementById("submitTimesInfoMessage").innerText = "This has already been submitted before";
|
||||||
|
document.getElementById("submitTimesInfoMessageContainer").style.display = "unset";
|
||||||
|
} else {
|
||||||
|
document.getElementById("submitTimesInfoMessage").innerText = "There was an error submitting your sponsor times, please try again later";
|
||||||
|
document.getElementById("submitTimesInfoMessageContainer").style.display = "unset";
|
||||||
|
}
|
||||||
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -343,13 +366,15 @@ function resetStartTimeChosen() {
|
|||||||
document.getElementById("sponsorStart").innerHTML = "Sponsorship Starts Now";
|
document.getElementById("sponsorStart").innerHTML = "Sponsorship Starts Now";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//hides and shows the submit times button when needed
|
||||||
function showSubmitTimesIfNecessary() {
|
function showSubmitTimesIfNecessary() {
|
||||||
//check if an end time has been specified for the latest sponsor time
|
//check if an end time has been specified for the latest sponsor time
|
||||||
if (sponsorTimes.length > 0 && sponsorTimes[sponsorTimes.length - 1].length > 1) {
|
if (sponsorTimes.length > 0 && sponsorTimes[sponsorTimes.length - 1].length > 1) {
|
||||||
//show submit times button
|
//show submit times button
|
||||||
document.getElementById("submitTimes").style.display = "unset";
|
document.getElementById("submitTimesContainer").style.display = "unset";
|
||||||
} else {
|
} else {
|
||||||
document.getElementById("submitTimes").style.display = "none";
|
//hide submit times button
|
||||||
|
document.getElementById("submitTimesContainer").style.display = "none";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user