Merge branch 'patch-21' into experimental-ajay

This commit is contained in:
Ajay Ramachandran
2019-08-24 13:54:24 -04:00
2 changed files with 39 additions and 30 deletions

View File

@@ -666,9 +666,12 @@ function isSubmitButtonLoaded() {
return document.getElementById("submitButton") !== null;
}
function changeStartSponsorButton(showStartSponsor, uploadButtonVisible) {
async function changeStartSponsorButton(showStartSponsor, uploadButtonVisible) {
if(!sponsorVideoID) return false;
wait(isSubmitButtonLoaded).then(result => {
//make sure submit button is loaded
await wait(isSubmitButtonLoaded);
//if it isn't visible, there is no data
let shouldHide = (uploadButtonVisible && !hideDeleteButtonPlayerControls) ? "unset" : "none"
document.getElementById("deleteButton").style.display = shouldHide;
@@ -692,7 +695,6 @@ function changeStartSponsorButton(showStartSponsor, uploadButtonVisible) {
//disable submit button
document.getElementById("submitButton").style.display = "none";
}
});
}
function toggleStartSponsorButton() {

View File

@@ -1,14 +1,20 @@
// Function that can be used to wait for a condition before returning
async function wait(condition, timeout = 5000, check = 100) {
return await new Promise((resolve, reject) => {
setTimeout(() => {reject("TIMEOUT")}, timeout);
const interval = setInterval(() => {
setTimeout(() => reject("TIMEOUT"), timeout);
let intervalCheck = () => {
let result = condition();
if (result !== false) {
resolve(result);
clearInterval(interval);
};
}, check);
};
let interval = setInterval(intervalCheck, check);
//run the check once first, this speeds it up a lot
intervalCheck();
});
}
@@ -37,5 +43,6 @@ function getYouTubeVideoID(url) {
return false;
}
}
return false;
}