add siteuserdata

This commit is contained in:
jxxghp
2024-07-04 19:42:09 +08:00
parent 965e40e630
commit 28345817d9
14 changed files with 145 additions and 37 deletions
+16 -3
View File
@@ -59,13 +59,26 @@ class SiteChain(ChainBase):
"yemapt.org": self.__yema_test,
}
def site_userdata(self, site: CommentedMap) -> Optional[SiteUserData]:
def refresh_userdata(self, site: CommentedMap = None) -> Optional[SiteUserData]:
"""
获取站点的所有用户数据
刷新站点的用户数据
:param site: 站点
:return: 用户数据
"""
return self.run_module("site_userdata", site=site)
userdata = self.run_module("refresh_userdata", site=site)
if userdata:
self.siteoper.update_userdata(domain=StringUtils.get_url_domain(site.get("domain")),
payload=userdata)
return userdata
def refresh_userdatas(self) -> None:
"""
刷新所有站点的用户数据
"""
sites = self.siteshelper.get_indexers()
for site in sites:
if site.get("is_active"):
self.refresh_userdata(site)
def is_special_site(self, domain: str) -> bool:
"""
+3 -3
View File
@@ -487,7 +487,7 @@ class SubscribeChain(ChainBase):
# 如果交集与原始订阅不一致,更新数据库
if set(intersection_sites) != set(user_sites):
self.subscribeoper.update(subscribe.id, {
"sites": json.dumps(intersection_sites)
"sites": intersection_sites
})
# 如果交集为空,返回默认站点
return intersection_sites if intersection_sites else default_sites
@@ -857,7 +857,7 @@ class SubscribeChain(ChainBase):
note = list(set(note).union(set(episodes)))
# 更新订阅
self.subscribeoper.update(subscribe.id, {
"note": json.dumps(note)
"note": note
})
@staticmethod
@@ -1140,7 +1140,7 @@ class SubscribeChain(ChainBase):
continue
sites.remove(site_id)
self.subscribeoper.update(subscribe.id, {
"sites": json.dumps(sites)
"sites": sites
})
@staticmethod