|
@@ -16,8 +16,7 @@ class unit(commands.Cog):
|
|
|
self,
|
|
self,
|
|
|
ctx,
|
|
ctx,
|
|
|
user: str = Option(discord.User, "Select User", required=True),
|
|
user: str = Option(discord.User, "Select User", required=True),
|
|
|
- #unit: str = Option(str, "Select Unit", required=True),
|
|
|
|
|
- unit=["Detective", "SWAT", "Canine", "Air Support"]
|
|
|
|
|
|
|
+ unit: str = Option(str, "Select Unit", required=True)
|
|
|
):
|
|
):
|
|
|
if user not in ctx.guild.members:
|
|
if user not in ctx.guild.members:
|
|
|
await ctx.respond("The selected user is not a member on this Server!", ephemeral=True)
|
|
await ctx.respond("The selected user is not a member on this Server!", ephemeral=True)
|
|
@@ -34,20 +33,32 @@ class unit(commands.Cog):
|
|
|
config.read_file(open(configFilePath))
|
|
config.read_file(open(configFilePath))
|
|
|
|
|
|
|
|
#Role configuration
|
|
#Role configuration
|
|
|
- department1_role_id = config.get('Einweisung', 'department1_role_id').split(', ')
|
|
|
|
|
|
|
+ department1_role_id = config.get('Einweisung', 'department1_role_id')
|
|
|
department1_role = ctx.guild.get_role(int(department1_role_id))
|
|
department1_role = ctx.guild.get_role(int(department1_role_id))
|
|
|
- #department2_role_id = config.get('Role Management', 'department2_role_id').split(', ')
|
|
|
|
|
|
|
+ #department2_role_id = config.get('Role Management', 'department2_role_id')
|
|
|
#department2_role = ctx.guild.get_role(int(department2_role_id))
|
|
#department2_role = ctx.guild.get_role(int(department2_role_id))
|
|
|
|
|
+ department1_head_unit_id = int(config.get('Role Management', 'department1_head_unit'))
|
|
|
|
|
+ department1_head_unit = server.get_role(department1_head_unit_id)
|
|
|
|
|
+ department1_supervisor_role_id = int(config.get('Einweisung', 'department1_supervisor_id'))
|
|
|
|
|
+ department1_supervisor_role = server.get_role(department1_supervisor_role_id)
|
|
|
|
|
|
|
|
department1_units_id = config.get('Role Management', 'department1_units').split(', ')
|
|
department1_units_id = config.get('Role Management', 'department1_units').split(', ')
|
|
|
department1_units = [ctx.guild.get_role(int(role_id)) for role_id in department1_units_id]
|
|
department1_units = [ctx.guild.get_role(int(role_id)) for role_id in department1_units_id]
|
|
|
#department2_units_id = config.get('Role Management', 'department2_units').split(', ')
|
|
#department2_units_id = config.get('Role Management', 'department2_units').split(', ')
|
|
|
#department2_units = [ctx.guild.get_role(int(role_id)) for role_id in
|
|
#department2_units = [ctx.guild.get_role(int(role_id)) for role_id in
|
|
|
|
|
+ #department2_head_unit_id = int(config.get('Role Management', 'department2_head_unit'))
|
|
|
|
|
+ #department2_head_unit = server.get_role(department2_head_unit_id)
|
|
|
|
|
+ #department2_supervisor_role_id = int(config.get('Einweisung', 'department2_supervisor_id'))
|
|
|
|
|
+ #department2_supervisor_role = server.get_role(department2_supervisor_role_id)
|
|
|
|
|
|
|
|
if department1_role in user.roles:
|
|
if department1_role in user.roles:
|
|
|
- units = "department1"
|
|
|
|
|
|
|
+ units = department1_units
|
|
|
|
|
+ supervisor_role = department1_supervisor_role
|
|
|
|
|
+ head_unit_role = department1_head_unit
|
|
|
#elif department2_role in user.roles:
|
|
#elif department2_role in user.roles:
|
|
|
#units = "department2"
|
|
#units = "department2"
|
|
|
|
|
+ #supervisor_role = department2_supervisor_role
|
|
|
|
|
+ #head_unit_role = department2_head_unit
|
|
|
else:
|
|
else:
|
|
|
await ctx.respond("The selected user is not a member of any department!", ephemeral=True)
|
|
await ctx.respond("The selected user is not a member of any department!", ephemeral=True)
|
|
|
return
|
|
return
|
|
@@ -55,16 +66,31 @@ class unit(commands.Cog):
|
|
|
|
|
|
|
|
#Command implementation
|
|
#Command implementation
|
|
|
if unit == "Detective":
|
|
if unit == "Detective":
|
|
|
- unit_role = int(department1_units[0])
|
|
|
|
|
|
|
+ unit_role = int(units[0])
|
|
|
elif unit == "SWAT":
|
|
elif unit == "SWAT":
|
|
|
- unit_role = int(department1_units[1])
|
|
|
|
|
|
|
+ unit_role = int(units[1])
|
|
|
elif unit == "Canine":
|
|
elif unit == "Canine":
|
|
|
- unit_role = int(department1_units[2])
|
|
|
|
|
|
|
+ unit_role = int(units[2])
|
|
|
elif unit == "Air Support":
|
|
elif unit == "Air Support":
|
|
|
- unit_role = int(department1_units[3])
|
|
|
|
|
|
|
+ unit_role = int(units[3])
|
|
|
else:
|
|
else:
|
|
|
await ctx.respond("The selected unit does not exist!", ephemeral=True)
|
|
await ctx.respond("The selected unit does not exist!", ephemeral=True)
|
|
|
return
|
|
return
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
|
|
+ unit_role = server.get_role(unit_role)
|
|
|
|
|
+ if ctx.author == supervisor_role or ctx.author == head_unit_role:
|
|
|
|
|
+ if unit_role in user.roles:
|
|
|
|
|
+ await user.remove_roles(unit_role)
|
|
|
|
|
+ await ctx.respond(f"The user {user.mention} has been removed from the unit successfully!", ephemeral=True)
|
|
|
|
|
+ else:
|
|
|
|
|
+ await user.add_roles(unit_role)
|
|
|
|
|
+ await ctx.respond(f"The user {user.mention} has been added to the unit successfully!", ephemeral=True)
|
|
|
|
|
+ else:
|
|
|
|
|
+ await ctx.respond("You do not have permission to use this command!", ephemeral=True)
|
|
|
|
|
+ return
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|