maybe fix usenet

This commit is contained in:
zefie
2022-10-14 11:34:34 -04:00
parent 7bdc796455
commit e82328cab5
2 changed files with 14 additions and 6 deletions

View File

@@ -37,9 +37,16 @@ function isToday (chkdate) {
async function WebTVListGroup(group) {
var page_limit_default = 100;
wtvnews.connectUsenet().then(() => {
wtvnews.selectGroup(group).then(() => {
wtvnews.selectGroup(group).then((response) => {
var limit_per_page = (request_headers.query.limit) ? parseInt(request_headers.query.limit) : page_limit_default;
var page = (request_headers.query.chunk) ? parseInt(request_headers.query.chunk) : 0;
console.log(response);
var page_start = (limit_per_page * page) + 1;
var page_end = (page + 1) * limit_per_page;
if (page_end > response.group.high) {
page_end = response.group.high;
limit_per_page = (page_end - (limit_per_page / (page + 1))) + limit_per_page;
}
wtvnews.listGroup(group, page, limit_per_page).then((response) => {
if (response.code == 211) {
@@ -47,7 +54,6 @@ async function WebTVListGroup(group) {
NGArticles = response.group.articleNumbers;
page_start = (limit_per_page * page) + 1;
page_end = (page + 1) * limit_per_page;
if (page_end > NGCount) page_end = NGCount;
wtvnews.getHeaderObj(NGArticles).then((messages) => {
messages = wtvnews.sortByResponse(messages);
wtvnews.quitUsenet();
@@ -654,7 +660,6 @@ ${wtvshared.htmlEntitize(message_body, true)}
function WebTVSearchGroups(search) {
wtvnews.connectUsenet().then(() => {
wtvnews.listGroups(search).then((response) => {
console.log('WebTVSearchGroups listGroups response', response)
wtvnews.quitUsenet();
headers = `200 OK
Content-type: text/html

View File

@@ -315,6 +315,7 @@ class WTVNewsServer {
var meta = this.getMetadata(group);
var out = { ...meta }
}
if (meta.min_index == 0) force_update = true;
if (this.featuredGroups) {
Object.keys(this.featuredGroups).forEach((k) => {
if (group == this.featuredGroups[k].group) {
@@ -325,13 +326,15 @@ class WTVNewsServer {
}
try {
if (force_update || this.doesMetaNeedRefreshing(meta)) {
out.total = 0;
this.fs.readdirSync(g).forEach(file => {
if (file == "meta.json") return;
var articleNumber = parseInt(file.split('.')[0]);
if (out.min_index == null) out.min_index = articleNumber;
if (out.min_index == 0) out.min_index = articleNumber;
else if (articleNumber < out.min_index) out.min_index = articleNumber;
else if (articleNumber > out.max_index) out.max_index = articleNumber;
if (articleNumber > out.max_index) out.max_index = articleNumber;
out.total++;
});
if (initial_update) {
@@ -438,7 +441,6 @@ class WTVNewsServer {
var articles = [];
try {
var meta = this.getMetadata(group);
if (force_update || this.doesMetaNeedRefreshing(meta)) {
this.fs.readdirSync(g).forEach(file => {
if (file == "meta.json") return;
var articleNumber = parseInt(file.split('.')[0]);
@@ -451,6 +453,7 @@ class WTVNewsServer {
articles.push(this.getArticle(group, articleNumber));
out.total++;
});
if (force_update || this.doesMetaNeedRefreshing(meta)) {
meta = { ...meta, ...out }
meta.last_scan = Math.floor(Date.now() / 1000);
this.saveMetadata(group, meta);