From 1c043c25071427ee42b73ff431cd140bcfb04186 Mon Sep 17 00:00:00 2001 From: SideMatter Date: Mon, 28 Jun 2021 00:44:47 +0000 Subject: [PATCH] Delete dbrand.py --- dbrand.py | 160 ------------------------------------------------------ 1 file changed, 160 deletions(-) delete mode 100644 dbrand.py diff --git a/dbrand.py b/dbrand.py deleted file mode 100644 index b4da455..0000000 --- a/dbrand.py +++ /dev/null @@ -1,160 +0,0 @@ -import jarvis -import re -import aiohttp -import html -from jarvis.config import get_config -from jarvis.utils import build_embed -from jarvis.utils.field import Field -from jarvis.data.dbrand import shipping_lookup -from discord.ext import commands - - -class DbrandCog(commands.Cog): - """ - dbrand functions for J.A.R.V.I.S. - - Mostly support functions. Credit @cpixl for the shipping API - """ - - def __init__(self, bot): - self.bot = bot - self.base_url = "https://dbrand.com/" - self._session = aiohttp.ClientSession() - self._session.headers.update({"Content-Type": "application/json"}) - self.api_url = get_config().urls["dbrand_shipping"] - - @commands.group(name="db", aliases=["dbrand"], pass_context=True) - async def _db(self, ctx): - if ctx.invoked_subcommand is None: - await ctx.send( - "Available subcommands: `grip`, `support`, " - + "`skin`, `prism`, `shipping`" - ) - - @_db.command(name="skin", aliases=["skins", "tape"]) - async def _skin(self, ctx): - await ctx.send(self.base_url + "shop/skins") - - @_db.command(name="robotcamo", aliases=["rc", "robot"]) - async def _skin(self, ctx): - await ctx.send(self.base_url + "shop/special-edition/robot-camo") - - @_db.command(name="grip", aliases=["g", "case"]) - async def _grip(self, ctx): - await ctx.send(self.base_url + "shop/grip/#grip-devices") - - @_db.command(name="support", aliases=["help", "contact"]) - async def _support(self, ctx): - await ctx.send(self.base_url + "contact") - - @_db.command(name="shipping", aliases=["ship", "s"]) - async def _shipping(self, ctx, *, search: str): - if not re.match(r"^[A-Z- ]+$", search, re.IGNORECASE): - if re.match( - r"^[\U0001f1e6-\U0001f1ff]{2}$", - search, - re.IGNORECASE, - ): - # Magic number, subtract from flag char to get ascii char - uni2ascii = 127365 - search = chr(ord(search[0]) - uni2ascii) + chr( - ord(search[1]) - uni2ascii - ) - else: - await ctx.send("Please use text to search for shipping.") - return - if len(search) > 2: - matches = [ - x["code"] - for x in shipping_lookup - if search.lower() in x["country"] - ] - if len(matches) > 0: - search = matches[0] - dest = search - api_link = self.api_url + dest - try: - data = await self._session.get(api_link) - except Exception as e: - print(e) - fields = None - if 200 <= data.status < 400: - data = await data.json() - else: - data = None - if ( - data is not None - and data["is_valid"] - and data["shipping_available"] - ): - fields = [] - fields.append(Field(data["short-name"], data["time-title"])) - for service in data["shipping_services_available"][1:]: - service_data = await self._session.get( - self.api_url + dest + "/" + service["url"] - ) - if service_data.status > 400: - continue - service_data = await service_data.json() - fields.append( - Field( - service_data["short-name"], - service_data["time-title"], - ) - ) - country = "-".join( - x for x in data["country"].split(" ") if x != "the" - ) - country_urlsafe = country.replace("-", "%20") - description = f"Click the link above to see shipping time to {data['country']}." - description += "\n[View all shipping destinations](https://dbrand.com/shipping)" - description += " | [Check shipping status]" - description += f"(https://dbrand.com/status#main-content:~:text={country_urlsafe})" - embed = build_embed( - title="Shipping to {}".format(data["country"]), - description=description, - color="#FFBB00", - fields=fields, - url=self.base_url + "shipping/" + country, - ) - embed.set_thumbnail(url=self.base_url + data["country_flag"][1:]) - embed.set_footer( - text="dbrand.com", - icon_url="https://dev.zevaryx.com/db_logo.png", - ) - await ctx.send(embed=embed) - elif not data["is_valid"]: - embed = build_embed( - title="Check Shipping Times", - description="Country not found.\nYou can [view all shipping " - + "destinations here](https://dbrand.com/shipping)", - fields=[], - url="https://dbrand.com/shipping", - color="#FFBB00", - ) - embed.set_thumbnail(url="https://dev.zevaryx.com/db_logo.png") - embed.set_footer( - text="dbrand.com", - icon_url="https://dev.zevaryx.com/db_logo.png", - ) - await ctx.send(embed=embed) - elif not data["shipping_available"]: - embed = build_embed( - title="Shipping to {}".format(data["country"]), - description="No shipping available.\nTime to move to a country" - + " that has shipping available.\nYou can [find a new country " - + "to live in here](https://dbrand.com/shipping)", - fields=[], - url="https://dbrand.com/shipping", - color="#FFBB00", - ) - embed.set_thumbnail(url=self.base_url + data["country_flag"][1:]) - embed.set_footer( - text="dbrand.com", - icon_url="https://dev.zevaryx.com/db_logo.png", - ) - await ctx.send(embed=embed) - - -def setup(bot): - bot.add_cog(DbrandCog(bot))