Yung Mi 313 (Who dat) on Youtube
Yung Mi 313 (Who dat) on Youtube
= document.body.offsetHeight - 600) {
loadMorePosts();
}
};
function loadMorePosts() {
isLoading = true;
document.getElementById('loading-indicator').style.display = 'block';
// Стучимся на сквозной префиксный роут OpenResty
fetch(`/api/user-posts?username=${username}&offset=${currentOffset}`)
.then(response => response.json())
.then(data => {
document.getElementById('loading-indicator').style.display = 'none';
if (data && data.length > 0) {
const container = document.getElementById('posts-container');
const emptyMsg = document.getElementById('empty-message');
if (emptyMsg) emptyMsg.remove();
// Разбираем прилетевшие посты и на лету встраиваем в HTML
data.forEach(post => {
const card = document.createElement('div');
card.className = 'post-card';
let mediaHtml = '';
if (post.media && post.media.length > 0) {
mediaHtml = '
';
post.media.forEach(path => {
const ext = path.split('.').pop().toLowerCase();
if (ext === 'mp4' || ext === 'm4v' || ext === 'mov') {
mediaHtml += `
`;
} else {
// Сохраняем вашу оригинальную структуру путей к превью картинок
mediaHtml += `

`;
}
});
mediaHtml += '
';
}
card.innerHTML = `
${post.title || 'Untitled'}
${post.content || ''}
${mediaHtml}
Posted on: ${post.date || ''}
`;
container.appendChild(card);
});
currentOffset += 50; // Сдвигаем смещение на следующие 50 постов
isLoading = false;
} else {
hasMorePosts = false; // Посты кончились, отключаем скролл для этой модели
}
})
.catch(err => {
console.error("Infinite Scroll AJAX Error:", err);
isLoading = false;
document.getElementById('loading-indicator').style.display = 'none';
});
}