2026-01-25 23:01:49 +00:00

51 lines
1.6 KiB
JavaScript

document.addEventListener('DOMContentLoaded', restoreOptions);
document.getElementById('saveBtn').addEventListener('click', saveOptions);
document.getElementById('openDashboard').addEventListener('click', () => {
chrome.tabs.create({ url: 'http://localhost:3001' });
});
function saveOptions() {
const backendUrl = document.getElementById('backendUrl').value;
const status = document.getElementById('status-msg');
if (!backendUrl) {
status.textContent = 'Error: Backend URL is required.';
status.className = 'error';
return;
}
chrome.storage.local.set({
backendUrl: backendUrl
}, () => {
// Validate connection
status.textContent = 'Testing connection...';
status.className = '';
const headers = { 'Content-Type': 'application/json' };
// We try to fetch profiles to verify connection (as auth is now removed for this endpoint)
// Or just check if server responds
fetch(`${backendUrl}/profiles`, { headers })
.then(response => {
if (response.ok) {
status.textContent = '✅ Connected successfully!';
status.className = 'success';
} else {
status.textContent = '⚠️ Saved, but connection failed (Check URL).';
status.className = 'error';
}
})
.catch(err => {
status.textContent = '❌ Connection Error: ' + err.message;
status.className = 'error';
});
});
}
function restoreOptions() {
chrome.storage.local.get(['backendUrl'], (items) => {
if (items.backendUrl) {
document.getElementById('backendUrl').value = items.backendUrl;
}
});
}