diff --git a/Extensions/UserScript/Return Youtube Dislike.user.js b/Extensions/UserScript/Return Youtube Dislike.user.js index e9bc71c..c72ed52 100644 --- a/Extensions/UserScript/Return Youtube Dislike.user.js +++ b/Extensions/UserScript/Return Youtube Dislike.user.js @@ -35,7 +35,7 @@ const extConfig = { numberDisplayRoundDown: true, // [true*, false] Round down numbers (Show rounded down numbers) // READING THIS ^ INFO IS NOT IMPLEMENTED HERE (LOOK AT PULL REQUEST #540) - tooltipPercentageDisplayOption: "none", // [none*, dash_like, dash_dislike, both, only_like, only_dislike] Mode of showing percentage in like/dislike bar tooltip. + tooltipPercentageMode: "none", // [none*, dash_like, dash_dislike, both, only_like, only_dislike] Mode of showing percentage in like/dislike bar tooltip. // END USER OPTIONS }; @@ -224,18 +224,27 @@ function createRateBar(likes, dislikes) { var likePercentage = parseFloat(widthPercent.toFixed(1)); const dislikePercentage = (100 - likePercentage).toLocaleString(); likePercentage = likePercentage.toLocaleString(); - const tooltipPercentageDisplayModes = { - "none": `${likes.toLocaleString()} / ${dislikes.toLocaleString()}`, - "dash_like": `${likes.toLocaleString()} / ${dislikes.toLocaleString()}  -  ${likePercentage}%`, - "dash_dislike": `${likes.toLocaleString()} / ${dislikes.toLocaleString()}  -  ${dislikePercentage}%`, - "both": `${likePercentage}% / ${dislikePercentage}%`, - "only_like": `${likePercentage}%`, - "only_dislike": `${dislikePercentage}%` - }; - - if (tooltipPercentageDisplayModes[extConfig.tooltipPercentageDisplayOption] === undefined) { - extConfig.tooltipPercentageDisplayOption = "none"; - }; + + var tooltipInnerHTML; + switch (extConfig.tooltipPercentageMode) { + case "dash_like": + tooltipInnerHTML = `${likes.toLocaleString()} / ${dislikes.toLocaleString()}  -  ${likePercentage}%` + break; + case "dash_dislike": + tooltipInnerHTML = `${likes.toLocaleString()} / ${dislikes.toLocaleString()}  -  ${dislikePercentage}%` + break; + case "both": + tooltipInnerHTML = `${likePercentage}% / ${dislikePercentage}%` + break; + case "only_like": + tooltipInnerHTML = `${likePercentage}%` + break; + case "only_dislike": + tooltipInnerHTML = `${dislikePercentage}%` + break; + default: + tooltipInnerHTML = `${likes.toLocaleString()} / ${dislikes.toLocaleString()}` + } if (!rateBar && !isMobile) { @@ -255,7 +264,7 @@ function createRateBar(likes, dislikes) { - ${tooltipPercentageDisplayModes[extConfig.tooltipPercentageDisplayOption]} + ${tooltipInnerHTML} ` @@ -269,7 +278,7 @@ function createRateBar(likes, dislikes) { document.querySelector( "#ryd-dislike-tooltip > #tooltip" - ).innerHTML = tooltipPercentageDisplayModes[extConfig.tooltipPercentageDisplayOption]; + ).innerHTML = tooltipInnerHTML; } } diff --git a/Extensions/combined/src/bar.js b/Extensions/combined/src/bar.js index 3e8dfe7..3ebb30b 100644 --- a/Extensions/combined/src/bar.js +++ b/Extensions/combined/src/bar.js @@ -16,19 +16,28 @@ function createRateBar(likes, dislikes) { var likePercentage = parseFloat(widthPercent.toFixed(1)); const dislikePercentage = (100 - likePercentage).toLocaleString(); likePercentage = likePercentage.toLocaleString(); - const tooltipPercentageDisplayModes = { - "classic": `${likes.toLocaleString()} / ${dislikes.toLocaleString()}`, - "dash_like": `${likes.toLocaleString()} / ${dislikes.toLocaleString()}  -  ${likePercentage}%`, - "dash_dislike": `${likes.toLocaleString()} / ${dislikes.toLocaleString()}  -  ${dislikePercentage}%`, - "both": `${likePercentage}% / ${dislikePercentage}%`, - "only_like": `${likePercentage}%`, - "only_dislike": `${dislikePercentage}%` - }; - var tooltipOption = "classic"; if (extConfig.showTooltipPercentage) { - tooltipOption = extConfig.tooltipPercentageMode; - }; + var tooltipInnerHTML; + switch (extConfig.tooltipPercentageMode) { + case "dash_dislike": + tooltipInnerHTML = `${likes.toLocaleString()} / ${dislikes.toLocaleString()}  -  ${dislikePercentage}%` + break; + case "both": + tooltipInnerHTML = `${likePercentage}% / ${dislikePercentage}%` + break; + case "only_like": + tooltipInnerHTML = `${likePercentage}%` + break; + case "only_dislike": + tooltipInnerHTML = `${dislikePercentage}%` + break; + default: // dash_like + tooltipInnerHTML = `${likes.toLocaleString()} / ${dislikes.toLocaleString()}  -  ${likePercentage}%` + } + } else { + tooltipInnerHTML = `${likes.toLocaleString()} / ${dislikes.toLocaleString()}` + } if (!rateBar && !isMobile()) { @@ -58,7 +67,7 @@ function createRateBar(likes, dislikes) { - ${tooltipPercentageDisplayModes[tooltipOption]} + ${tooltipInnerHTML} ` @@ -68,7 +77,7 @@ function createRateBar(likes, dislikes) { document.getElementById("ryd-bar").style.width = widthPercent + "%"; document.querySelector( "#ryd-dislike-tooltip > #tooltip" - ).innerHTML = tooltipPercentageDisplayModes[tooltipOption]; + ).innerHTML = tooltipInnerHTML; if (extConfig.coloredBar) { document.getElementById("ryd-bar-container").style.backgroundColor = getColorFromTheme(false);