diff --git a/_locales/en/messages.json b/_locales/en/messages.json
index c0cb80bf..d5684bb0 100644
--- a/_locales/en/messages.json
+++ b/_locales/en/messages.json
@@ -320,5 +320,17 @@
},
"statusReminder": {
"message": "Check status.sponsor.ajay.app for server status."
+ },
+ "changeUserID": {
+ "message": "Import/Export Your UserID"
+ },
+ "whatChangeUserID": {
+ "message": "This should be kept private. This is like a password and should not be shared with anyone. If someone has this, they can impersonate you."
+ },
+ "setUserID": {
+ "message": "Set UserID"
+ },
+ "userIDChangeWarning": {
+ "message": "Warning: Changing the UserID is permanent. Are you sure you would like to do this? Make sure to backup your old one just in case."
}
}
diff --git a/popup.html b/popup.html
index a9130680..dffd393d 100644
--- a/popup.html
+++ b/popup.html
@@ -253,6 +253,28 @@
+
+
+
+
+
+
+
+
+
+
diff --git a/popup.js b/popup.js
index 15cc4dd2..af4d3f26 100644
--- a/popup.js
+++ b/popup.js
@@ -82,6 +82,11 @@ function runThePopup() {
"setUsername",
"usernameInput",
"submitUsername",
+ // UserID
+ "changeUserID",
+ "changeUserIDButton",
+ "userIDInput",
+ "setUserID",
// More
"submissionSection",
"mainControls",
@@ -118,6 +123,8 @@ function runThePopup() {
SB.enableSponsorViewTracking.addEventListener("click", enableSponsorViewTracking);
SB.setUsernameButton.addEventListener("click", setUsernameButton);
SB.submitUsername.addEventListener("click", submitUsername);
+ SB.changeUserIDButton.addEventListener("click", changeUserIDButton);
+ SB.setUserID.addEventListener("click", setUserID);
SB.optionsButton.addEventListener("click", openOptions);
SB.reportAnIssue.addEventListener("click", reportAnIssue);
SB.hideDiscordButton.addEventListener("click", hideDiscordButton);
@@ -1158,6 +1165,22 @@ function runThePopup() {
SB.setUsernameContainer.style.display = "none";
SB.setUsername.style.display = "unset";
}
+
+ function changeUserIDButton() {
+ //get the user ID
+ chrome.storage.sync.get(["userID"], function(result) {
+ SB.userIDInput.value = result.userID;
+ SB.setUserID.style.display = "unset";
+ SB.userIDInput.style.display = "unset";
+ SB.changeUserID.style.display = "unset";
+ });
+ }
+
+ function setUserID() {
+ if (!confirm(chrome.i18n.getMessage("userIDChangeWarning"))) return;
+
+ chrome.storage.sync.set({"userID": SB.userIDInput.value});
+ }
//this is not a YouTube video page
function displayNoVideo() {