Loading spinner by feed
This commit is contained in:
@@ -29,11 +29,17 @@ document.addEventListener('click', (e) => {
|
||||
}
|
||||
});
|
||||
|
||||
function renderFeedItem(feed) {
|
||||
function openFeed(feed) {
|
||||
const name = document.createElement('span');
|
||||
name.className = 'feed-name';
|
||||
name.textContent = feed.name;
|
||||
|
||||
const spinner = document.createElement('div');
|
||||
spinner.className = 'feed-spinner';
|
||||
name.appendChild(spinner);
|
||||
|
||||
name.onclick = async () => {
|
||||
name.classList.add('loading');
|
||||
try {
|
||||
const response = await fetch(`/poll/${feed.feed_id}`, {
|
||||
method: 'POST'
|
||||
@@ -46,6 +52,8 @@ function renderFeedItem(feed) {
|
||||
}
|
||||
} catch (error) {
|
||||
console.error('Error polling feed:', error);
|
||||
} finally {
|
||||
name.classList.remove('loading');
|
||||
}
|
||||
};
|
||||
|
||||
@@ -104,7 +112,7 @@ async function handleFeeds() {
|
||||
feedList.appendChild(emptyMessage);
|
||||
} else {
|
||||
feeds.forEach(feed => {
|
||||
feedList.appendChild(renderFeedItem(feed));
|
||||
feedList.appendChild(openFeed(feed));
|
||||
});
|
||||
}
|
||||
} else {
|
||||
|
||||
Reference in New Issue
Block a user