Files
whats-that-music/extension/popup.js
T

51 lines
1.4 KiB
JavaScript
Raw Normal View History

// YTMusic Now Playing - Popup Script
(function () {
"use strict";
const DEFAULT_SERVER_URL = "http://localhost:9095";
const serverUrlInput = document.getElementById("serverUrl");
const saveBtn = document.getElementById("save");
const statusEl = document.getElementById("status");
function setStatus(message, type) {
statusEl.textContent = message;
statusEl.className = `status-${type}`;
}
// Load saved URL on popup open
chrome.storage.sync.get({ serverUrl: DEFAULT_SERVER_URL }, (result) => {
serverUrlInput.value = result.serverUrl;
checkConnection(result.serverUrl);
});
// Save button handler
saveBtn.addEventListener("click", () => {
const url = serverUrlInput.value.trim().replace(/\/+$/, "");
if (!url) {
setStatus("Please enter a valid URL.", "err");
return;
}
chrome.storage.sync.set({ serverUrl: url }, () => {
setStatus("Saved!", "ok");
checkConnection(url);
});
});
// Check connection to the server
async function checkConnection(url) {
try {
const response = await fetch(`${url}/api/now-playing`, {
method: "GET",
});
if (response.ok) {
setStatus("Connected to server.", "ok");
} else {
setStatus(`Server returned ${response.status}.`, "err");
}
} catch (err) {
setStatus("Cannot reach server.", "err");
}
}
})();