private Task CreateEvent(Event newEvent, IUser leaderUser, IMessage commandMessage)
        {
            var embed       = GetEmbedForEvent(newEvent, leaderUser);
            var messageTask = ReplyAsync(message: "@everyone", embed: embed);

            messageTask.ContinueWith(cont => cont.Result.PinAsync());
            messageTask.ContinueWith(cont => newEvent.UpdateSignupsOnMessageAsync(cont.Result, Context.Guild));
            messageTask.ContinueWith(cont => newEvent.AddReactionsToMessageAsync(cont.Result));

            Logger.Log(new LogMessage(LogSeverity.Verbose, "NewEvent", $"Assigning event with ID {newEvent.EventId} a messageID of {messageTask.Result.Id}"));
            newEvent.EventMessageId   = messageTask.Result.Id;
            newEvent.CommandMessageId = commandMessage.Id;

            DbContext.Events.Add(newEvent);
            DbContext.SaveChanges();

            return(messageTask);
        }
Exemple #2
0
        public Task RunModule(string templateName)
        {
            var template = DbContext.Templates.FirstOrDefault(e => e.TemplateName == templateName);

            if (template == null)
            {
                return(ReplyAsync($"No template found with name {templateName}"));
            }

            DbContext.Templates.Remove(template);
            DbContext.SaveChanges();

            return(ReplyAsync($"Deleted template with name {templateName}"));
        }
        public Task RunModule(string templateName, int tanks, int healers, int dds, int runners = 0)
        {
            Logger.Log(new LogMessage(LogSeverity.Verbose, "NewTemplate", $"Creating new template {templateName}, {tanks}, {healers}, {dds}, {runners}"));

            if (DbContext.Templates.AsQueryable().Any(e => e.TemplateName == templateName))
            {
                return(ReplyAsync($"Template already exists with name {templateName}, did you mean to use $EditTemplate?"));
            }

            var newTemplate = new Template(templateName, tanks, healers, dds, runners);

            DbContext.Templates.Add(newTemplate);
            DbContext.SaveChanges();

            return(ReplyAsync($"Created new template named {templateName}"));
        }
        public Task RunModule(string templateName, int tanks, int healers, int dds, int runners = 0)
        {
            Logger.Log(new LogMessage(LogSeverity.Verbose, "EditTemplate", $"Editing existing template {templateName}, {tanks}, {healers}, {dds}, {runners}"));

            var existingTemplate = DbContext.Templates.AsQueryable().FirstOrDefault(e => e.TemplateName == templateName);

            if (existingTemplate == null)
            {
                return(ReplyAsync($"Template with name {templateName} does not exist"));
            }

            existingTemplate.Tanks   = tanks;
            existingTemplate.Healers = healers;
            existingTemplate.DDs     = dds;
            existingTemplate.Runners = runners;

            DbContext.SaveChanges();

            return(ReplyAsync($"Edited template named {templateName}"));
        }