Update previous links
This commit is contained in:
+21
-2
@@ -142,6 +142,24 @@ async function populateCurrentTab() {
|
||||
urlInput.value = tab.url || '';
|
||||
}
|
||||
|
||||
async function checkExistingLink() {
|
||||
const settings = await getSettings();
|
||||
if (!settings.backendUrl || !settings.accessToken || !titleInput.value || !urlInput.value) return;
|
||||
try {
|
||||
const response = await fetch(`${settings.backendUrl}/api/links/check?${new URLSearchParams({
|
||||
title: titleInput.value,
|
||||
url: removeKnownTrackingParams(urlInput.value),
|
||||
})}`, {
|
||||
headers: {'Authorization': `Bearer ${settings.accessToken}`},
|
||||
});
|
||||
if (response.ok && (await response.json()).exists) {
|
||||
setStatus(t('duplicateLinkWarning'), true);
|
||||
}
|
||||
} catch (error) {
|
||||
// Duplicate checking is advisory; submission remains available.
|
||||
}
|
||||
}
|
||||
|
||||
async function handleSubmit(event) {
|
||||
event.preventDefault();
|
||||
setStatus(t('submitting'), false);
|
||||
@@ -190,7 +208,8 @@ async function handleSubmit(event) {
|
||||
throw new Error(t('submissionFailed'));
|
||||
}
|
||||
|
||||
setStatus(t('linkSaved'));
|
||||
const result = await response.json();
|
||||
setStatus(result.duplicate ? t('linkAlreadyExists') : t('linkSaved'), Boolean(result.duplicate));
|
||||
} catch (error) {
|
||||
setStatus(t('submissionFailedConnection'), true);
|
||||
}
|
||||
@@ -199,6 +218,6 @@ async function handleSubmit(event) {
|
||||
openSettingsButton.addEventListener('click', () => browser.runtime.openOptionsPage());
|
||||
warningSettingsButton.addEventListener('click', () => browser.runtime.openOptionsPage());
|
||||
form.addEventListener('submit', handleSubmit);
|
||||
populateCurrentTab();
|
||||
populateCurrentTab().then(checkExistingLink);
|
||||
loadExistingTags();
|
||||
updateFeedLink();
|
||||
|
||||
Reference in New Issue
Block a user