diff options
author | sh4dow <shadoxxhd@users.noreply.github.com> | 2022-08-01 22:49:35 +0300 |
---|---|---|
committer | sh4dow <shadoxxhd@users.noreply.github.com> | 2022-08-01 22:49:35 +0300 |
commit | 596c0d730c4c77b61452b66230d80531ad3af523 (patch) | |
tree | 7d31e89bbfe5126049b8b5c3f5144307578c4da3 /Extensions | |
parent | dfa541ad1c4a8718705e2bbf2756c216aa8a7d83 (diff) |
fix dislike text box not being found for some users
Diffstat (limited to 'Extensions')
-rw-r--r-- | Extensions/UserScript/Return Youtube Dislike.user.js | 19 | ||||
-rw-r--r-- | Extensions/combined/src/buttons.js | 17 | ||||
-rw-r--r-- | Extensions/combined/src/state.js | 9 |
3 files changed, 37 insertions, 8 deletions
diff --git a/Extensions/UserScript/Return Youtube Dislike.user.js b/Extensions/UserScript/Return Youtube Dislike.user.js index 253344c..c45efd1 100644 --- a/Extensions/UserScript/Return Youtube Dislike.user.js +++ b/Extensions/UserScript/Return Youtube Dislike.user.js @@ -94,10 +94,25 @@ function getLikeButton() { return getButtons().children[0]; } +function getLikeTextContainer() { + return ( + getLikeButton().querySelector("#text") ?? + getLikeButton().getElementsByTagName("yt-formatted-string")[0] + ); +} + function getDislikeButton() { return getButtons().children[1]; } +function getDislikeTextContainer() { + return ( + getDislikeButton().querySelector("#text") ?? + getDislikeButton().getElementsByTagName("yt-formatted-string")[0] + ); +} + + let mutationObserver = new Object(); if (isShorts() && mutationObserver.exists !== true) { @@ -197,7 +212,7 @@ function setLikes(likesCount) { likesCount; return; } - getButtons().children[0].querySelector("#text").innerText = likesCount; + getLikeTextContainer().innerText = likesCount; } function setDislikes(dislikesCount) { @@ -205,7 +220,7 @@ function setDislikes(dislikesCount) { mobileDislikes = dislikesCount; return; } - getButtons().children[1].querySelector("#text").innerText = dislikesCount; + getDislikeTextContainer().innerText = dislikesCount; } function getLikeCountFromButton() { diff --git a/Extensions/combined/src/buttons.js b/Extensions/combined/src/buttons.js index 95ba1c6..ffb6137 100644 --- a/Extensions/combined/src/buttons.js +++ b/Extensions/combined/src/buttons.js @@ -36,10 +36,25 @@ function getLikeButton() { return getButtons().children[0]; } +function getLikeTextContainer() { + return ( + getLikeButton().querySelector("#text") ?? + getLikeButton().getElementsByTagName("yt-formatted-string")[0] + ); +} + function getDislikeButton() { return getButtons().children[1]; } +function getDislikeTextContainer() { + return ( + getDislikeButton().querySelector("#text") ?? + getDislikeButton().getElementsByTagName("yt-formatted-string")[0] + ); +} + + function checkForSignInButton() { if ( document.querySelector( @@ -52,4 +67,4 @@ function checkForSignInButton() { } } -export { getButtons, getLikeButton, getDislikeButton, checkForSignInButton }; +export { getButtons, getLikeButton, getDislikeButton, getLikeTextContainer, getDislikeTextContainer, checkForSignInButton }; diff --git a/Extensions/combined/src/state.js b/Extensions/combined/src/state.js index 73eb905..2f3a956 100644 --- a/Extensions/combined/src/state.js +++ b/Extensions/combined/src/state.js @@ -1,4 +1,4 @@ -import { getLikeButton, getDislikeButton, getButtons } from "./buttons"; +import { getLikeButton, getDislikeButton, getButtons, getLikeTextContainer, getDislikeTextContainer } from "./buttons"; import { createRateBar } from "./bar"; import { getBrowser, @@ -127,7 +127,7 @@ function getState(storedData) { //--- Sets The Likes And Dislikes Values ---// function setLikes(likesCount) { - getButtons().children[0].querySelector("#text").innerText = likesCount; + getLikeTextContainer().innerText = likesCount; } function setDislikes(dislikesCount) { @@ -138,7 +138,7 @@ function setDislikes(dislikesCount) { ).innerText = dislikesCount; return; } - getButtons().children[1].querySelector("#text").innerText = dislikesCount; + getDislikeTextContainer().innerText = dislikesCount; } else { cLog("likes count disabled by creator"); if (isMobile()) { @@ -147,8 +147,7 @@ function setDislikes(dislikesCount) { ).innerText = localize("TextLikesDisabled"); return; } - getButtons().children[1].querySelector("#text").innerText = - localize("TextLikesDisabled"); + getDislikeTextContainer().innerText = localize("TextLikesDisabled"); } } |