fix: use dynamic badges for auto-updated timestamp to ensure real-time accuracy
This commit is contained in:
@@ -7,7 +7,7 @@ A collection of enhancements, plugins, and prompts for [OpenWebUI](https://githu
|
|||||||
|
|
||||||
<!-- STATS_START -->
|
<!-- STATS_START -->
|
||||||
## 📊 Community Stats
|
## 📊 Community Stats
|
||||||
> 🕐 Auto-updated: 2026-02-11 12:51
|
> 
|
||||||
|
|
||||||
| 👤 Author | 👥 Followers | ⭐ Points | 🏆 Contributions |
|
| 👤 Author | 👥 Followers | ⭐ Points | 🏆 Contributions |
|
||||||
| :---: | :---: | :---: | :---: |
|
| :---: | :---: | :---: | :---: |
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ OpenWebUI 增强功能集合。包含个人开发与收集的插件、提示词
|
|||||||
|
|
||||||
<!-- STATS_START -->
|
<!-- STATS_START -->
|
||||||
## 📊 社区统计
|
## 📊 社区统计
|
||||||
> 🕐 自动更新于 2026-02-11 12:51
|
> 
|
||||||
|
|
||||||
| 👤 作者 | 👥 粉丝 | ⭐ 积分 | 🏆 贡献 |
|
| 👤 作者 | 👥 粉丝 | ⭐ 积分 | 🏆 贡献 |
|
||||||
| :---: | :---: | :---: | :---: |
|
| :---: | :---: | :---: | :---: |
|
||||||
|
|||||||
@@ -525,7 +525,7 @@ class OpenWebUIStats:
|
|||||||
texts = {
|
texts = {
|
||||||
"zh": {
|
"zh": {
|
||||||
"title": "# 📊 OpenWebUI 社区统计报告",
|
"title": "# 📊 OpenWebUI 社区统计报告",
|
||||||
"updated": f"> 📅 更新时间: {get_beijing_time().strftime('%Y-%m-%d %H:%M')}",
|
"updated_label": "更新时间",
|
||||||
"overview_title": "## 📈 总览",
|
"overview_title": "## 📈 总览",
|
||||||
"overview_header": "| 指标 | 数值 |",
|
"overview_header": "| 指标 | 数值 |",
|
||||||
"posts": "📝 发布数量",
|
"posts": "📝 发布数量",
|
||||||
@@ -542,7 +542,7 @@ class OpenWebUIStats:
|
|||||||
},
|
},
|
||||||
"en": {
|
"en": {
|
||||||
"title": "# 📊 OpenWebUI Community Stats Report",
|
"title": "# 📊 OpenWebUI Community Stats Report",
|
||||||
"updated": f"> 📅 Updated: {get_beijing_time().strftime('%Y-%m-%d %H:%M')}",
|
"updated_label": "Updated",
|
||||||
"overview_title": "## 📈 Overview",
|
"overview_title": "## 📈 Overview",
|
||||||
"overview_header": "| Metric | Value |",
|
"overview_header": "| Metric | Value |",
|
||||||
"posts": "📝 Total Posts",
|
"posts": "📝 Total Posts",
|
||||||
@@ -565,7 +565,9 @@ class OpenWebUIStats:
|
|||||||
md = []
|
md = []
|
||||||
md.append(t["title"])
|
md.append(t["title"])
|
||||||
md.append("")
|
md.append("")
|
||||||
md.append(t["updated"])
|
|
||||||
|
updated_key = "updated_zh" if lang == "zh" else "updated"
|
||||||
|
md.append(f"> {self.get_badge(updated_key, stats, user, delta)}")
|
||||||
md.append("")
|
md.append("")
|
||||||
|
|
||||||
# 插入趋势图 (使用 Kroki SVG 链接)
|
# 插入趋势图 (使用 Kroki SVG 链接)
|
||||||
@@ -869,6 +871,29 @@ class OpenWebUIStats:
|
|||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
# 生成更新时间徽章
|
||||||
|
now_str = get_beijing_time().strftime("%Y-%m-%d %H:%M")
|
||||||
|
files_payload["badge_updated.json"] = {
|
||||||
|
"content": json.dumps(
|
||||||
|
{
|
||||||
|
"schemaVersion": 1,
|
||||||
|
"label": "Auto-updated",
|
||||||
|
"message": now_str,
|
||||||
|
"color": "gray",
|
||||||
|
}
|
||||||
|
)
|
||||||
|
}
|
||||||
|
files_payload["badge_updated_zh.json"] = {
|
||||||
|
"content": json.dumps(
|
||||||
|
{
|
||||||
|
"schemaVersion": 1,
|
||||||
|
"label": "自动更新于",
|
||||||
|
"message": now_str,
|
||||||
|
"color": "gray",
|
||||||
|
}
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
# 将生成的 Markdown 报告也作为一个普通 JSON 文件上传到 Gist
|
# 将生成的 Markdown 报告也作为一个普通 JSON 文件上传到 Gist
|
||||||
for lang in ["zh", "en"]:
|
for lang in ["zh", "en"]:
|
||||||
report_content = self.generate_markdown(stats, lang=lang)
|
report_content = self.generate_markdown(stats, lang=lang)
|
||||||
@@ -919,6 +944,8 @@ class OpenWebUIStats:
|
|||||||
val = stats.get("total_posts", 0)
|
val = stats.get("total_posts", 0)
|
||||||
if key == "saves":
|
if key == "saves":
|
||||||
val = stats.get("total_saves", 0)
|
val = stats.get("total_saves", 0)
|
||||||
|
if key.startswith("updated"):
|
||||||
|
return f"🕐 {get_beijing_time().strftime('%Y-%m-%d %H:%M')}"
|
||||||
return f"**{val}**{_fmt_delta(key)}"
|
return f"**{val}**{_fmt_delta(key)}"
|
||||||
|
|
||||||
raw_url = f"https://gist.githubusercontent.com/{gist_user}/{self.gist_id}/raw/badge_{key}.json"
|
raw_url = f"https://gist.githubusercontent.com/{gist_user}/{self.gist_id}/raw/badge_{key}.json"
|
||||||
@@ -949,7 +976,6 @@ class OpenWebUIStats:
|
|||||||
texts = {
|
texts = {
|
||||||
"zh": {
|
"zh": {
|
||||||
"title": "## 📊 社区统计",
|
"title": "## 📊 社区统计",
|
||||||
"updated": f"🕐 自动更新于 {get_beijing_time().strftime('%Y-%m-%d %H:%M')}",
|
|
||||||
"author_header": "| 👤 作者 | 👥 粉丝 | ⭐ 积分 | 🏆 贡献 |",
|
"author_header": "| 👤 作者 | 👥 粉丝 | ⭐ 积分 | 🏆 贡献 |",
|
||||||
"header": "| 📝 发布 | ⬇️ 下载 | 👁️ 浏览 | 👍 点赞 | 💾 收藏 |",
|
"header": "| 📝 发布 | ⬇️ 下载 | 👁️ 浏览 | 👍 点赞 | 💾 收藏 |",
|
||||||
"top6_title": "### 🔥 热门插件 Top 6",
|
"top6_title": "### 🔥 热门插件 Top 6",
|
||||||
@@ -958,7 +984,6 @@ class OpenWebUIStats:
|
|||||||
},
|
},
|
||||||
"en": {
|
"en": {
|
||||||
"title": "## 📊 Community Stats",
|
"title": "## 📊 Community Stats",
|
||||||
"updated": f"🕐 Auto-updated: {get_beijing_time().strftime('%Y-%m-%d %H:%M')}",
|
|
||||||
"author_header": "| 👤 Author | 👥 Followers | ⭐ Points | 🏆 Contributions |",
|
"author_header": "| 👤 Author | 👥 Followers | ⭐ Points | 🏆 Contributions |",
|
||||||
"header": "| 📝 Posts | ⬇️ Downloads | 👁️ Views | 👍 Upvotes | 💾 Saves |",
|
"header": "| 📝 Posts | ⬇️ Downloads | 👁️ Views | 👍 Upvotes | 💾 Saves |",
|
||||||
"top6_title": "### 🔥 Top 6 Popular Plugins",
|
"top6_title": "### 🔥 Top 6 Popular Plugins",
|
||||||
@@ -973,7 +998,9 @@ class OpenWebUIStats:
|
|||||||
lines = []
|
lines = []
|
||||||
lines.append("<!-- STATS_START -->")
|
lines.append("<!-- STATS_START -->")
|
||||||
lines.append(t["title"])
|
lines.append(t["title"])
|
||||||
lines.append(f"> {t['updated']}")
|
|
||||||
|
updated_key = "updated_zh" if lang == "zh" else "updated"
|
||||||
|
lines.append(f"> {self.get_badge(updated_key, stats, user, delta)}")
|
||||||
lines.append("")
|
lines.append("")
|
||||||
|
|
||||||
delta = self.get_stat_delta(stats)
|
delta = self.get_stat_delta(stats)
|
||||||
|
|||||||
Reference in New Issue
Block a user