|
import discord
|
|
from redbot.core import commands, checks
|
|
import random
|
|
|
|
|
|
class ArticlesButton(discord.ui.Button["Articles"]):
|
|
|
|
def __init__(self):
|
|
super().__init__(style=discord.ButtonStyle.secondary, label='Créer un article')
|
|
|
|
async def callback(self, interaction : discord.Interaction):
|
|
assert self.view is not None
|
|
view : discord.ui.View = self.view
|
|
|
|
original_msg = interaction.message
|
|
category = original_msg.channel.category
|
|
user = interaction.user
|
|
|
|
overwrites = {
|
|
user: discord.PermissionOverwrite(read_messages = True, send_messages= True, manage_channels = True),
|
|
interaction.guild.default_role: discord.PermissionOverwrite(read_messages = False)
|
|
}
|
|
|
|
channel = await category.create_text_channel(str(user.name) + str(random.randint(1,5000)), overwrites=overwrites)
|
|
embed = original_msg.embeds[0]
|
|
embed.add_field(name= "Article:", value=interaction.user.mention + "\n" + channel.mention, inline=False)
|
|
await interaction.response.edit_message(embed=embed, view=view)
|
|
|
|
|
|
class TicketButton(discord.ui.Button["Tickets"]):
|
|
|
|
def __init__(self):
|
|
super().__init__(style=discord.ButtonStyle.secondary, label='Ouvrir un ticket', custom_id="tickets")
|
|
|
|
async def callback(self, interaction : discord.Interaction):
|
|
assert self.view is not None
|
|
view : discord.ui.View = self.view
|
|
|
|
original_msg = interaction.message
|
|
category = discord.utils.get(interaction.guild.categories, id=1044997871998615552)
|
|
user = interaction.user
|
|
|
|
overwrites = {
|
|
user: discord.PermissionOverwrite(read_messages = True, send_messages= True),
|
|
interaction.guild.default_role: discord.PermissionOverwrite(read_messages = False)
|
|
}
|
|
|
|
channel = await category.create_text_channel(str(user.name) + str(random.randint(1,5000)), overwrites=overwrites)
|
|
await interaction.response.edit_message(view=view)
|
|
|
|
class RecrutButton(discord.ui.Button["Recrut"]):
|
|
|
|
def __init__(self):
|
|
super().__init__(style=discord.ButtonStyle.secondary, label='Postuler au Weazel', custom_id="recrut")
|
|
|
|
async def callback(self, interaction : discord.Interaction):
|
|
assert self.view is not None
|
|
view : discord.ui.View = self.view
|
|
|
|
category = discord.utils.get(interaction.guild.categories, id=1044997805271433266)
|
|
user = interaction.user
|
|
|
|
overwrites = {
|
|
user: discord.PermissionOverwrite(read_messages = True, send_messages= True),
|
|
interaction.guild.default_role: discord.PermissionOverwrite(read_messages = False)
|
|
}
|
|
|
|
channel = await category.create_text_channel(str(user.name) + str(random.randint(1,5000)), overwrites=overwrites)
|
|
await interaction.response.edit_message(view=view) |