nonebot-plugin-jmdownloader 1.0.3__tar.gz → 1.0.4__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (14) hide show
  1. {nonebot_plugin_jmdownloader-1.0.3 → nonebot_plugin_jmdownloader-1.0.4}/PKG-INFO +1 -1
  2. {nonebot_plugin_jmdownloader-1.0.3 → nonebot_plugin_jmdownloader-1.0.4}/nonebot_plugin_jmdownloader/__init__.py +16 -14
  3. {nonebot_plugin_jmdownloader-1.0.3 → nonebot_plugin_jmdownloader-1.0.4}/nonebot_plugin_jmdownloader/utils.py +6 -4
  4. {nonebot_plugin_jmdownloader-1.0.3 → nonebot_plugin_jmdownloader-1.0.4}/nonebot_plugin_jmdownloader.egg-info/PKG-INFO +1 -1
  5. {nonebot_plugin_jmdownloader-1.0.3 → nonebot_plugin_jmdownloader-1.0.4}/pyproject.toml +1 -1
  6. {nonebot_plugin_jmdownloader-1.0.3 → nonebot_plugin_jmdownloader-1.0.4}/LICENSE +0 -0
  7. {nonebot_plugin_jmdownloader-1.0.3 → nonebot_plugin_jmdownloader-1.0.4}/README.md +0 -0
  8. {nonebot_plugin_jmdownloader-1.0.3 → nonebot_plugin_jmdownloader-1.0.4}/nonebot_plugin_jmdownloader/config.py +0 -0
  9. {nonebot_plugin_jmdownloader-1.0.3 → nonebot_plugin_jmdownloader-1.0.4}/nonebot_plugin_jmdownloader/data_source.py +0 -0
  10. {nonebot_plugin_jmdownloader-1.0.3 → nonebot_plugin_jmdownloader-1.0.4}/nonebot_plugin_jmdownloader.egg-info/SOURCES.txt +0 -0
  11. {nonebot_plugin_jmdownloader-1.0.3 → nonebot_plugin_jmdownloader-1.0.4}/nonebot_plugin_jmdownloader.egg-info/dependency_links.txt +0 -0
  12. {nonebot_plugin_jmdownloader-1.0.3 → nonebot_plugin_jmdownloader-1.0.4}/nonebot_plugin_jmdownloader.egg-info/requires.txt +0 -0
  13. {nonebot_plugin_jmdownloader-1.0.3 → nonebot_plugin_jmdownloader-1.0.4}/nonebot_plugin_jmdownloader.egg-info/top_level.txt +0 -0
  14. {nonebot_plugin_jmdownloader-1.0.3 → nonebot_plugin_jmdownloader-1.0.4}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: nonebot-plugin-jmdownloader
3
- Version: 1.0.3
3
+ Version: 1.0.4
4
4
  Summary: 基于 Nonebot2 的 JMComic 插件
5
5
  Author-email: Misty02600 <xiao02600@gmail.com>
6
6
  Project-URL: Repository, https://github.com/Misty02600/nonebot-plugin-jmdownloader
@@ -61,11 +61,12 @@ jm_download = on_command("jm下载", aliases={"JM下载"}, block=True, rule=chec
61
61
  async def _(bot: Bot, event: MessageEvent, arg: Message = CommandArg()):
62
62
  photo_id = arg.extract_plain_text().strip()
63
63
  user_id = event.user_id
64
+ is_superuser = str(user_id) in bot.config.superusers
64
65
 
65
66
  if not photo_id.isdigit():
66
67
  await jm_download.finish("请输入要下载的jm号")
67
68
 
68
- if str(user_id) not in bot.config.superusers:
69
+ if not is_superuser:
69
70
  user_limit = data_manager.get_user_limit(user_id)
70
71
  if user_limit <= 0:
71
72
  await jm_download.finish(MessageSegment.at(user_id) + f"你的下载次数已经用完了!")
@@ -79,18 +80,24 @@ async def _(bot: Bot, event: MessageEvent, arg: Message = CommandArg()):
79
80
  await jm_download.finish("查询时发生错误")
80
81
 
81
82
  if data_manager.is_jm_id_restricted(photo.id) or data_manager.has_restricted_tag(photo.tags):
83
+
82
84
  if isinstance(event, GroupMessageEvent):
83
- try:
84
- await bot.set_group_ban(group_id=event.group_id, user_id=user_id, duration=86400)
85
- except ActionFailed:
86
- pass
87
- data_manager.add_blacklist(event.group_id, user_id)
88
- await jm_download.finish(MessageSegment.at(user_id) + "该本子(或其tag)被禁止下载!你已被加入本群jm黑名单")
85
+ if not is_superuser:
86
+ try:
87
+ await bot.set_group_ban(group_id=event.group_id, user_id=user_id, duration=86400)
88
+ except ActionFailed:
89
+ pass
90
+ data_manager.add_blacklist(event.group_id, user_id)
91
+ await jm_download.finish(MessageSegment.at(user_id) + "该本子(或其tag)被禁止下载!你已被加入本群jm黑名单")
92
+
93
+ else:
94
+ await jm_download.finish("该本子(或其tag)被禁止下载!")
95
+
89
96
  else:
90
97
  await jm_download.finish("该本子(或其tag)被禁止下载!")
91
98
 
92
99
  try:
93
- if str(user_id) not in bot.config.superusers:
100
+ if not is_superuser:
94
101
  data_manager.decrease_user_limit(user_id, 1)
95
102
  user_limit_new = data_manager.get_user_limit(user_id)
96
103
  message = Message()
@@ -415,9 +422,6 @@ async def _(bot: Bot, event: GroupMessageEvent, arg: Message = CommandArg()):
415
422
  group_id = event.group_id
416
423
  operator_id = event.user_id
417
424
 
418
- if user_id == operator_id:
419
- await jm_ban_user.finish("你拉黑你自己?")
420
-
421
425
  has_permission = await check_permission(bot, group_id, operator_id, user_id)
422
426
  if not has_permission:
423
427
  await jm_unban_user.finish("权限不足")
@@ -440,9 +444,6 @@ async def handle_jm_unban_user(bot: Bot, event: GroupMessageEvent, arg: Message
440
444
  group_id = event.group_id
441
445
  operator_id = event.user_id
442
446
 
443
- if user_id == operator_id:
444
- await jm_ban_user.finish("想都别想!")
445
-
446
447
  has_permission = await check_permission(bot, group_id, operator_id, user_id)
447
448
  if not has_permission:
448
449
  await jm_unban_user.finish("权限不足")
@@ -609,6 +610,7 @@ async def clear_cache_dir():
609
610
  except Exception as e:
610
611
  logger.error(f"清理缓存目录失败:{e}")
611
612
 
613
+
612
614
  @scheduler.scheduled_job("interval", minutes=10)
613
615
  async def clean_expired_search_states():
614
616
  """ 定期清理过期的搜索状态 """
@@ -128,7 +128,7 @@ async def send_forward_message(bot: Bot, event: MessageEvent, messages: list):
128
128
 
129
129
  #region 权限相关
130
130
  async def check_permission(bot: Bot, group_id: int, operator_id: int, target_id: int) -> bool:
131
- """增减群黑名单权限检查"""
131
+ """增减群黑名单权限检查,群主和超管拥有所有权限,管理员只能操作普通成员"""
132
132
  if str(operator_id) in bot.config.superusers:
133
133
  return True
134
134
 
@@ -142,10 +142,12 @@ async def check_permission(bot: Bot, group_id: int, operator_id: int, target_id:
142
142
  if operator_role == "owner":
143
143
  return True
144
144
 
145
- if operator_role == "admin" and target_role in ["admin", "owner"]:
146
- return False
145
+ if operator_role == "admin":
146
+ if target_role not in ["admin", "owner"]:
147
+ return True
148
+
149
+ return False
147
150
 
148
- return True
149
151
  except ActionFailed as e:
150
152
  logger.error(f"无法获取群成员信息:{e}")
151
153
  return False
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: nonebot-plugin-jmdownloader
3
- Version: 1.0.3
3
+ Version: 1.0.4
4
4
  Summary: 基于 Nonebot2 的 JMComic 插件
5
5
  Author-email: Misty02600 <xiao02600@gmail.com>
6
6
  Project-URL: Repository, https://github.com/Misty02600/nonebot-plugin-jmdownloader
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "nonebot-plugin-jmdownloader"
3
- version = "1.0.3"
3
+ version = "1.0.4"
4
4
  description = "基于 Nonebot2 的 JMComic 插件"
5
5
  readme = "README.md"
6
6
  authors = [{ name = "Misty02600", email = "xiao02600@gmail.com" }]