aboutsummaryrefslogtreecommitdiff
path: root/code/cogs/request.py
blob: fb1706cb8ba4a0891345544f2c148b6fb183853f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
import discord
from discord import app_commands
from discord.ext import commands

from func.radarr import get_movies, AddMovieView


class Request(commands.GroupCog, name="request"):
    def __init__(self, bot):
        self.bot = bot

    @app_commands.command(name="movie")
    @app_commands.describe(name="Name of the movie to add")
    async def request_movie(self, interaction: discord.Interaction, name: str):
        "Request a movie to be added to the Radarr library"
        movie_data = get_movies(name)
        if movie_data == "NO RESULTS":
            embed = discord.Embed(
                title="No Results",
                description="No results were found for the given movie name. If you are unable to find the movie, contact an administrator to have it added manually.",
                color=0xD01B86
            )
            return await interaction.response.send_message(embed=embed, ephemeral=True)

        if movie_data == "ALREADY ADDED":
            embed = discord.Embed(
                title="Already Added",
                description="The movie you are trying to add has already been added to the Radarr library.\n\nYou can check the download status of your requests movies by running the `/status` command.",
                color=0xD01B86
            )
            return await interaction.response.send_message(embed=embed, ephemeral=True)

        embed = discord.Embed(
            title="Results Found",
            description="Please select the movie you would like to add from the dropdown below.",
            color=0xD01B86
        )
        view = AddMovieView(movie_data)
        await interaction.response.send_message(embed=embed, view=view, ephemeral=True)

    @app_commands.command(name="show")
    @app_commands.describe(name="Name of the show/series to add")
    async def request_show(self, interaction: discord.Interaction, name: str):
        "Request a show/series to be added to the Sonarr library"
        embed = discord.Embed(
            title="Coming Soon",
            description="This feature is not yet implemented. Check back later.",
            color=0xD01B86
        )
        await interaction.response.send_message(embed=embed, ephemeral=True)


async def setup(bot):
    await bot.add_cog(Request(bot))