Esempio n. 1
0
 public DbController(Db.Db db)
 {
     _db = db;
 }
Esempio n. 2
0
 public static async Task <FeatureRequest <Response.Unsubscribe, Error.Unsubscribe> > Unsubscribe(IGuild guild, Db.Db db)
 {
     if (!await db.RemoveAnimeSubscription(guild))
     {
         return(new FeatureRequest <Response.Unsubscribe, Error.Unsubscribe>(null, Error.Unsubscribe.NoSubscription));
     }
     return(new FeatureRequest <Response.Unsubscribe, Error.Unsubscribe>(new Response.Unsubscribe(), Error.Unsubscribe.None));
 }
Esempio n. 3
0
        public static async Task <FeatureRequest <Response.Subscribe, Error.Subscribe> > Subscribe(IGuild guild, Db.Db db, string[] args)
        {
            string channel = string.Join(" ", args);

            if (channel.Length == 0)
            {
                return(new FeatureRequest <Response.Subscribe, Error.Subscribe>(null, Error.Subscribe.Help));
            }
            ITextChannel chan = await Utilities.GetTextChannelAsync(channel, guild);

            if (chan == null)
            {
                return(new FeatureRequest <Response.Subscribe, Error.Subscribe>(null, Error.Subscribe.InvalidChannel));
            }
            await db.AddAnimeSubscription(chan);

            return(new FeatureRequest <Response.Subscribe, Error.Subscribe>(new Response.Subscribe
            {
                chan = chan
            }, Error.Subscribe.None));
        }
Esempio n. 4
0
 public static async Task <FeatureRequest <Response.Unsubscribe, Error.Unsubscribe> > Unsubscribe(IGuild guild, Db.Db db, bool isChanSafe)
 {
     if (isChanSafe)
     {
         return(new FeatureRequest <Response.Unsubscribe, Error.Unsubscribe>(null, Error.Unsubscribe.ChanNotSafe));
     }
     if (!await db.RemoveNHentaiSubscription(guild))
     {
         return(new FeatureRequest <Response.Unsubscribe, Error.Unsubscribe>(null, Error.Unsubscribe.NoSubscription));
     }
     return(new FeatureRequest <Response.Unsubscribe, Error.Unsubscribe>(new Response.Unsubscribe(), Error.Unsubscribe.None));
 }
Esempio n. 5
0
        public static async Task <FeatureRequest <Response.Subscribe, Error.Subscribe> > Subscribe(IGuild guild, Db.Db db, string[] args, bool isChanSafe)
        {
            if (isChanSafe)
            {
                return(new FeatureRequest <Response.Subscribe, Error.Subscribe>(null, Error.Subscribe.ChanNotSafe));
            }
            if (args.Length == 0)
            {
                return(new FeatureRequest <Response.Subscribe, Error.Subscribe>(null, Error.Subscribe.Help));
            }
            ITextChannel chan = await Utilities.GetTextChannelAsync(args[0], guild);

            if (chan == null)
            {
                return(new FeatureRequest <Response.Subscribe, Error.Subscribe>(null, Error.Subscribe.InvalidChannel));
            }
            if (!chan.IsNsfw)
            {
                return(new FeatureRequest <Response.Subscribe, Error.Subscribe>(null, Error.Subscribe.DestChanNotSafe));
            }
            Subscription.SubscriptionTags sub;
            try
            {
                sub = Subscription.SubscriptionTags.ParseSubscriptionTags(args.Skip(1).ToArray());
                await db.AddNHentaiSubscription(chan, sub);
            }
            catch (ArgumentException)
            {
                return(new FeatureRequest <Response.Subscribe, Error.Subscribe>(null, Error.Subscribe.Help));
            }
            return(new FeatureRequest <Response.Subscribe, Error.Subscribe>(new Response.Subscribe
            {
                chan = chan,
                subscription = sub
            }, Error.Subscribe.None));
        }
Esempio n. 6
0
 public Repository()
 {
     _db = new Db.Db();
 }