Merge pull request #1003 from thsrite/main
This commit is contained in:
commit
7ac881e3e3
@ -96,9 +96,10 @@ class AutoSignIn(_PluginBase):
|
|||||||
self._clean = config.get("clean")
|
self._clean = config.get("clean")
|
||||||
|
|
||||||
# 过滤掉已删除的站点
|
# 过滤掉已删除的站点
|
||||||
all_sites = [site for site in self.sites.get_indexers() if not site.get("public")] + self.__custom_sites()
|
all_sites = [site.id for site in self.siteoper.list_order_by_pri()] + [site.get("id") for site in
|
||||||
self._sign_sites = [site.get("id") for site in all_sites if site.get("id") in self._sign_sites]
|
self.__custom_sites()]
|
||||||
self._login_sites = [site.get("id") for site in all_sites if site.get("id") in self._login_sites]
|
self._sign_sites = [site_id for site_id in all_sites if site_id in self._sign_sites]
|
||||||
|
self._login_sites = [site_id for site_id in all_sites if site_id in self._login_sites]
|
||||||
# 保存配置
|
# 保存配置
|
||||||
self.__update_config()
|
self.__update_config()
|
||||||
|
|
||||||
|
@ -88,6 +88,7 @@ class DirMonitor(_PluginBase):
|
|||||||
_transfer_type = settings.TRANSFER_TYPE
|
_transfer_type = settings.TRANSFER_TYPE
|
||||||
_monitor_dirs = ""
|
_monitor_dirs = ""
|
||||||
_exclude_keywords = ""
|
_exclude_keywords = ""
|
||||||
|
_interval = 10
|
||||||
# 存储源目录与目的目录关系
|
# 存储源目录与目的目录关系
|
||||||
_dirconf: Dict[str, Optional[Path]] = {}
|
_dirconf: Dict[str, Optional[Path]] = {}
|
||||||
# 存储源目录转移方式
|
# 存储源目录转移方式
|
||||||
@ -114,6 +115,7 @@ class DirMonitor(_PluginBase):
|
|||||||
self._transfer_type = config.get("transfer_type")
|
self._transfer_type = config.get("transfer_type")
|
||||||
self._monitor_dirs = config.get("monitor_dirs") or ""
|
self._monitor_dirs = config.get("monitor_dirs") or ""
|
||||||
self._exclude_keywords = config.get("exclude_keywords") or ""
|
self._exclude_keywords = config.get("exclude_keywords") or ""
|
||||||
|
self._interval = config.get("interval") or 10
|
||||||
|
|
||||||
# 停止现有任务
|
# 停止现有任务
|
||||||
self.stop_service()
|
self.stop_service()
|
||||||
@ -227,7 +229,8 @@ class DirMonitor(_PluginBase):
|
|||||||
"mode": self._mode,
|
"mode": self._mode,
|
||||||
"transfer_type": self._transfer_type,
|
"transfer_type": self._transfer_type,
|
||||||
"monitor_dirs": self._monitor_dirs,
|
"monitor_dirs": self._monitor_dirs,
|
||||||
"exclude_keywords": self._exclude_keywords
|
"exclude_keywords": self._exclude_keywords,
|
||||||
|
"interval": self._interval
|
||||||
})
|
})
|
||||||
|
|
||||||
@eventmanager.register(EventType.DirectorySync)
|
@eventmanager.register(EventType.DirectorySync)
|
||||||
@ -536,7 +539,8 @@ class DirMonitor(_PluginBase):
|
|||||||
file_meta = media_files[0].get("file_meta")
|
file_meta = media_files[0].get("file_meta")
|
||||||
mediainfo = media_files[0].get("mediainfo")
|
mediainfo = media_files[0].get("mediainfo")
|
||||||
# 判断剧集最后更新时间距现在是已超过10秒或者电影,发送消息
|
# 判断剧集最后更新时间距现在是已超过10秒或者电影,发送消息
|
||||||
if (datetime.datetime.now() - last_update_time).total_seconds() > 10 or mediainfo.type == MediaType.MOVIE:
|
if (datetime.datetime.now() - last_update_time).total_seconds() > self._interval \
|
||||||
|
or mediainfo.type == MediaType.MOVIE:
|
||||||
# 发送通知
|
# 发送通知
|
||||||
if self._notify:
|
if self._notify:
|
||||||
|
|
||||||
@ -681,7 +685,7 @@ class DirMonitor(_PluginBase):
|
|||||||
'component': 'VCol',
|
'component': 'VCol',
|
||||||
'props': {
|
'props': {
|
||||||
'cols': 12,
|
'cols': 12,
|
||||||
'md': 6
|
'md': 4
|
||||||
},
|
},
|
||||||
'content': [
|
'content': [
|
||||||
{
|
{
|
||||||
@ -701,7 +705,7 @@ class DirMonitor(_PluginBase):
|
|||||||
'component': 'VCol',
|
'component': 'VCol',
|
||||||
'props': {
|
'props': {
|
||||||
'cols': 12,
|
'cols': 12,
|
||||||
'md': 6
|
'md': 4
|
||||||
},
|
},
|
||||||
'content': [
|
'content': [
|
||||||
{
|
{
|
||||||
@ -720,6 +724,23 @@ class DirMonitor(_PluginBase):
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
'component': 'VCol',
|
||||||
|
'props': {
|
||||||
|
'cols': 12,
|
||||||
|
'md': 4
|
||||||
|
},
|
||||||
|
'content': [
|
||||||
|
{
|
||||||
|
'component': 'VTextField',
|
||||||
|
'props': {
|
||||||
|
'model': 'interval',
|
||||||
|
'label': '入库消息延迟',
|
||||||
|
'placeholder': '10'
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
@ -770,6 +791,25 @@ class DirMonitor(_PluginBase):
|
|||||||
]
|
]
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
'component': 'VRow',
|
||||||
|
'content': [
|
||||||
|
{
|
||||||
|
'component': 'VCol',
|
||||||
|
'props': {
|
||||||
|
'cols': 12,
|
||||||
|
},
|
||||||
|
'content': [
|
||||||
|
{
|
||||||
|
'component': 'VAlert',
|
||||||
|
'props': {
|
||||||
|
'text': '入库消息延迟默认10s,如网络较慢可酌情调大,有助于发送统一入库消息。'
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
@ -780,7 +820,8 @@ class DirMonitor(_PluginBase):
|
|||||||
"mode": "fast",
|
"mode": "fast",
|
||||||
"transfer_type": settings.TRANSFER_TYPE,
|
"transfer_type": settings.TRANSFER_TYPE,
|
||||||
"monitor_dirs": "",
|
"monitor_dirs": "",
|
||||||
"exclude_keywords": ""
|
"exclude_keywords": "",
|
||||||
|
"interval": 10
|
||||||
}
|
}
|
||||||
|
|
||||||
def get_page(self) -> List[dict]:
|
def get_page(self) -> List[dict]:
|
||||||
|
@ -115,8 +115,9 @@ class IYUUAutoSeed(_PluginBase):
|
|||||||
self._success_caches = [] if self._clearcache else config.get("success_caches") or []
|
self._success_caches = [] if self._clearcache else config.get("success_caches") or []
|
||||||
|
|
||||||
# 过滤掉已删除的站点
|
# 过滤掉已删除的站点
|
||||||
self._sites = [site.get("id") for site in self.sites.get_indexers() if
|
all_sites = [site.id for site in self.siteoper.list_order_by_pri()] + [site.get("id") for site in
|
||||||
not site.get("public") and site.get("id") in self._sites]
|
self.__custom_sites()]
|
||||||
|
self._sites = [site_id for site_id in all_sites if site_id in self._sites]
|
||||||
self.__update_config()
|
self.__update_config()
|
||||||
|
|
||||||
# 停止现有任务
|
# 停止现有任务
|
||||||
@ -175,9 +176,14 @@ class IYUUAutoSeed(_PluginBase):
|
|||||||
"""
|
"""
|
||||||
拼装插件配置页面,需要返回两块数据:1、页面配置;2、数据结构
|
拼装插件配置页面,需要返回两块数据:1、页面配置;2、数据结构
|
||||||
"""
|
"""
|
||||||
|
# 站点的可选项(内置站点 + 自定义站点)
|
||||||
|
customSites = self.__custom_sites()
|
||||||
|
|
||||||
# 站点的可选项
|
# 站点的可选项
|
||||||
site_options = [{"title": site.name, "value": site.id}
|
site_options = ([{"title": site.name, "value": site.id}
|
||||||
for site in self.siteoper.list_order_by_pri()]
|
for site in self.siteoper.list_order_by_pri()]
|
||||||
|
+ [{"title": site.get("name"), "value": site.get("id")}
|
||||||
|
for site in customSites])
|
||||||
return [
|
return [
|
||||||
{
|
{
|
||||||
'component': 'VForm',
|
'component': 'VForm',
|
||||||
@ -986,6 +992,13 @@ class IYUUAutoSeed(_PluginBase):
|
|||||||
except Exception as e:
|
except Exception as e:
|
||||||
print(str(e))
|
print(str(e))
|
||||||
|
|
||||||
|
def __custom_sites(self) -> List[Any]:
|
||||||
|
custom_sites = []
|
||||||
|
custom_sites_config = self.get_config("CustomSites")
|
||||||
|
if custom_sites_config and custom_sites_config.get("enabled"):
|
||||||
|
custom_sites = custom_sites_config.get("sites")
|
||||||
|
return custom_sites
|
||||||
|
|
||||||
@eventmanager.register(EventType.SiteDeleted)
|
@eventmanager.register(EventType.SiteDeleted)
|
||||||
def site_deleted(self, event):
|
def site_deleted(self, event):
|
||||||
"""
|
"""
|
||||||
|
@ -89,9 +89,9 @@ class SiteStatistic(_PluginBase):
|
|||||||
self._statistic_sites = config.get("statistic_sites") or []
|
self._statistic_sites = config.get("statistic_sites") or []
|
||||||
|
|
||||||
# 过滤掉已删除的站点
|
# 过滤掉已删除的站点
|
||||||
all_sites = [site for site in self.sites.get_indexers() if not site.get("public")] + self.__custom_sites()
|
all_sites = [site.id for site in self.siteoper.list_order_by_pri()] + [site.get("id") for site in
|
||||||
self._statistic_sites = [site.get("id") for site in all_sites if
|
self.__custom_sites()]
|
||||||
not site.get("public") and site.get("id") in self._statistic_sites]
|
self._statistic_sites = [site_id for site_id in all_sites if site_id in self._statistic_sites]
|
||||||
self.__update_config()
|
self.__update_config()
|
||||||
|
|
||||||
if self._enabled or self._onlyonce:
|
if self._enabled or self._onlyonce:
|
||||||
|
Loading…
x
Reference in New Issue
Block a user