fix: resolve [Object Object] bug and add sort/source API params

Rename duplicate "sync" locale key to "syncResult" to fix the sources
list page showing [Object Object] instead of the Sync button label.

Add sort=recent and source= query params to the blogs API for the
sidebar widget tabs feature. Tag FeedLand blogs with source: "feedland"
and expose source field for all blogs in API responses.

Bump version to 1.0.22.
This commit is contained in:
Ricardo
2026-02-17 14:20:10 +01:00
parent 129dc78e09
commit f02d46e76e
20 changed files with 40 additions and 28 deletions

View File

@@ -77,13 +77,13 @@ async function sync(request, response) {
if (result.skipped) {
request.session.messages = [
{ type: "warning", content: request.__("blogroll.sync.already_running") },
{ type: "warning", content: request.__("blogroll.syncResult.already_running") },
];
} else if (result.success) {
request.session.messages = [
{
type: "success",
content: request.__("blogroll.sync.success", {
content: request.__("blogroll.syncResult.success", {
blogs: result.blogs.success,
items: result.items.added,
}),
@@ -91,13 +91,13 @@ async function sync(request, response) {
];
} else {
request.session.messages = [
{ type: "error", content: request.__("blogroll.sync.error", { error: result.error }) },
{ type: "error", content: request.__("blogroll.syncResult.error", { error: result.error }) },
];
}
} catch (error) {
console.error("[Blogroll] Manual sync error:", error);
request.session.messages = [
{ type: "error", content: request.__("blogroll.sync.error", { error: error.message }) },
{ type: "error", content: request.__("blogroll.syncResult.error", { error: error.message }) },
];
}
@@ -118,7 +118,7 @@ async function clearResync(request, response) {
request.session.messages = [
{
type: "success",
content: request.__("blogroll.sync.cleared_success", {
content: request.__("blogroll.syncResult.cleared_success", {
blogs: result.blogs.success,
items: result.items.added,
}),
@@ -126,13 +126,13 @@ async function clearResync(request, response) {
];
} else {
request.session.messages = [
{ type: "error", content: request.__("blogroll.sync.error", { error: result.error }) },
{ type: "error", content: request.__("blogroll.syncResult.error", { error: result.error }) },
];
}
} catch (error) {
console.error("[Blogroll] Clear resync error:", error);
request.session.messages = [
{ type: "error", content: request.__("blogroll.sync.error", { error: error.message }) },
{ type: "error", content: request.__("blogroll.syncResult.error", { error: error.message }) },
];
}