Esempio n. 1
0
        private async Task InternalStartPoll(IUserMessage umsg, string arg, bool isPublic = false)
        {
            var channel = (ITextChannel)umsg.Channel;

            if (!(umsg.Author as IGuildUser).GuildPermissions.ManageChannels)
                return;
            if (string.IsNullOrWhiteSpace(arg) || !arg.Contains(";"))
                return;
            var data = arg.Split(';');
            if (data.Length < 3)
                return;

            var poll = new Poll(umsg, data[0], data.Skip(1), isPublic: isPublic);
            if (ActivePolls.TryAdd(channel.Guild, poll))
            {
                await poll.StartPoll().ConfigureAwait(false);
            }
            else
                await channel.SendMessageAsync("`Poll is already running on this server.`").ConfigureAwait(false);
        }