|
@@ -7,6 +7,8 @@ const LIKED_STATE = "LIKED_STATE";
|
|
const DISLIKED_STATE = "DISLIKED_STATE";
|
|
const DISLIKED_STATE = "DISLIKED_STATE";
|
|
const NEUTRAL_STATE = "NEUTRAL_STATE";
|
|
const NEUTRAL_STATE = "NEUTRAL_STATE";
|
|
|
|
|
|
|
|
+const DISLIKES_DISABLED_TEXT = "DISLIKES DISABLED";
|
|
|
|
+
|
|
let extConfig = {
|
|
let extConfig = {
|
|
disableVoteSubmission: false,
|
|
disableVoteSubmission: false,
|
|
};
|
|
};
|
|
@@ -17,6 +19,8 @@ let storedData = {
|
|
previousState: NEUTRAL_STATE,
|
|
previousState: NEUTRAL_STATE,
|
|
};
|
|
};
|
|
|
|
|
|
|
|
+let likesDisabledState = true;
|
|
|
|
+
|
|
function isMobile() {
|
|
function isMobile() {
|
|
return location.hostname == "m.youtube.com";
|
|
return location.hostname == "m.youtube.com";
|
|
}
|
|
}
|
|
@@ -57,12 +61,25 @@ function setLikes(likesCount) {
|
|
}
|
|
}
|
|
|
|
|
|
function setDislikes(dislikesCount) {
|
|
function setDislikes(dislikesCount) {
|
|
- if (isMobile()) {
|
|
|
|
- getButtons().children[1].querySelector(".button-renderer-text").innerText =
|
|
|
|
- dislikesCount;
|
|
|
|
- return;
|
|
|
|
|
|
+ if (!likesDisabledState) {
|
|
|
|
+ if (isMobile()) {
|
|
|
|
+ getButtons().children[1].querySelector(
|
|
|
|
+ ".button-renderer-text"
|
|
|
|
+ ).innerText = dislikesCount;
|
|
|
|
+ return;
|
|
|
|
+ }
|
|
|
|
+ getButtons().children[1].querySelector("#text").innerText = dislikesCount;
|
|
|
|
+ } else {
|
|
|
|
+ cLog("likes count diabled by creator");
|
|
|
|
+ if (isMobile()) {
|
|
|
|
+ getButtons().children[1].querySelector(
|
|
|
|
+ ".button-renderer-text"
|
|
|
|
+ ).innerText = DISLIKES_DISABLED_TEXT;
|
|
|
|
+ return;
|
|
|
|
+ }
|
|
|
|
+ getButtons().children[1].querySelector("#text").innerText =
|
|
|
|
+ DISLIKES_DISABLED_TEXT;
|
|
}
|
|
}
|
|
- getButtons().children[1].querySelector("#text").innerText = dislikesCount;
|
|
|
|
}
|
|
}
|
|
|
|
|
|
function getLikeCountFromButton() {
|
|
function getLikeCountFromButton() {
|
|
@@ -99,9 +116,12 @@ function setState(storedData) {
|
|
function (response) {
|
|
function (response) {
|
|
cLog("response from api:");
|
|
cLog("response from api:");
|
|
cLog(JSON.stringify(response));
|
|
cLog(JSON.stringify(response));
|
|
|
|
+ likesDisabledState =
|
|
|
|
+ numberFormat(response.dislikes) == 0 &&
|
|
|
|
+ numberFormat(response.likes) == 0 &&
|
|
|
|
+ numberFormat(response.viewCount) == 0;
|
|
if (response !== undefined && !("traceId" in response) && !statsSet) {
|
|
if (response !== undefined && !("traceId" in response) && !statsSet) {
|
|
processResponse(response, storedData);
|
|
processResponse(response, storedData);
|
|
- } else {
|
|
|
|
}
|
|
}
|
|
}
|
|
}
|
|
);
|
|
);
|
|
@@ -119,11 +139,10 @@ function initExtConfig() {
|
|
}
|
|
}
|
|
|
|
|
|
function initializeDisableVoteSubmission() {
|
|
function initializeDisableVoteSubmission() {
|
|
- getBrowser().storage.sync.get(['disableVoteSubmission'], (res) => {
|
|
|
|
|
|
+ getBrowser().storage.sync.get(["disableVoteSubmission"], (res) => {
|
|
if (res.disableVoteSubmission === undefined) {
|
|
if (res.disableVoteSubmission === undefined) {
|
|
- getBrowser().storage.sync.set({disableVoteSubmission: false});
|
|
|
|
- }
|
|
|
|
- else {
|
|
|
|
|
|
+ getBrowser().storage.sync.set({ disableVoteSubmission: false });
|
|
|
|
+ } else {
|
|
extConfig.disableVoteSubmission = res.disableVoteSubmission;
|
|
extConfig.disableVoteSubmission = res.disableVoteSubmission;
|
|
}
|
|
}
|
|
});
|
|
});
|
|
@@ -145,4 +164,5 @@ export {
|
|
extConfig,
|
|
extConfig,
|
|
initExtConfig,
|
|
initExtConfig,
|
|
storedData,
|
|
storedData,
|
|
|
|
+ likesDisabledState,
|
|
};
|
|
};
|