Skip to content
This repository has been archived by the owner on Oct 11, 2022. It is now read-only.

Commit

Permalink
Temp fix for new Bot ToS + Spelling update
Browse files Browse the repository at this point in the history
  • Loading branch information
MattBSG committed Aug 18, 2017
1 parent 74ce34f commit 93eb877
Showing 1 changed file with 28 additions and 26 deletions.
54 changes: 28 additions & 26 deletions automod/bot.py
Original file line number Diff line number Diff line change
Expand Up @@ -512,12 +512,12 @@ async def dispatch_uber_ready(self):
member_list = self.get_all_members()
for member in member_list:
if member.id not in self.user_dict:
self.user_dict[member.id] = {'names': [member.name],
'avatar_changes': 0,
self.user_dict[member.id] = {'avatar_changes': 0,
'actions_taken_against': 0,
'severs_banned_in': 0}
elif member.name not in self.user_dict[member.id]['names']:
self.user_dict[member.id]['names'].append(member.name)
'servers_banned_in': 0}
#TODO: fix this when userchanges is encrypted
# elif member.name not in self.user_dict[member.id]['names']:
# self.user_dict[member.id]['names'].append(member.name)

print('Starting Ban Update')
temp_servers = list(self.servers)
Expand Down Expand Up @@ -1889,23 +1889,25 @@ async def cmd_userinfo(self, message, mentions, author, server, option=None):
if not user:
raise CommandError('Could not find user info on "%s"' % option)
await self.user_index_check(user)
try:
this = sorted(list(self.user_dict[user.id]['names'][-20:]), key=str.lower)
new_this = [clean_string(this[0])]
for elem in this[1:]:
if len(new_this[-1]) + len(elem) < 61:
new_this[-1] = new_this[-1] + ', ' + clean_string(elem)
else:
new_this.append(elem)
names = clean_string('%s' % '\n '.join(new_this))
except Exception as e:
raise CommandError('ERROR: Something wrong in name sorting, please alert Rhino about this!')
#TODO: Encrypt userchanges so this can be used again
#
# try:
# this = sorted(list(self.user_dict[user.id]['names'][-20:]), key=str.lower)
# new_this = [clean_string(this[0])]
# for elem in this[1:]:
# if len(new_this[-1]) + len(elem) < 61:
# new_this[-1] = new_this[-1] + ', ' + clean_string(elem)
# else:
# new_this.append(elem)
# names = clean_string('%s' % '\n '.join(new_this))
# except Exception as e:
# raise CommandError('ERROR: Something wrong in name sorting, please alert Rhino about this!')
final_dict = ['​ user: {}#{}'.format(clean_string(user.name), user.discriminator),
' names: {}'.format(names),
# ' names: {}'.format(names),
' id: {}'.format(user.id),
' created at: {}'.format(snowflake_time(user.id).strftime("%c")),
' joined: {}'.format(join_str),
' # of bans: {}'.format(self.user_dict[user.id]['severs_banned_in']),
' # of bans: {}'.format(self.user_dict[user.id]['servers_banned_in']),
' infractions: {}'.format(self.user_dict[user.id]['actions_taken_against']),
'shared servers: {}'.format(len([servers for servers in self.servers if discord.utils.get(
servers.members, id=user.id)])),
Expand Down Expand Up @@ -2523,8 +2525,9 @@ async def on_member_update(self, before, after):
await self.user_index_check(before)
if before.name != after.name:
await self.do_server_log(before=before, after=after, log_flag='name')
if after.name not in self.user_dict[before.id]['names']:
self.user_dict[before.id]['names'].append(after.name)
# TODO: reenable this when userchanges is encrypted
#if after.name not in self.user_dict[before.id]['names']:
# self.user_dict[before.id]['names'].append(after.name)
if before.avatar != after.avatar:
# await self.do_server_log(before=before, after=after, log_flag='avatar')
pass
Expand Down Expand Up @@ -2574,30 +2577,29 @@ async def on_member_ban(self, member):
await self.user_index_check(member)
self.ban_dict[member.server.id].append(member)
if member.id in self.user_dict:
self.user_dict[member.id]['severs_banned_in'] += 1
self.user_dict[member.id]['servers_banned_in'] += 1
if member.server.id in self.server_index and 'LURK' in self.server_index[member.server.id]:
return
await self.do_server_log(self, member=member, log_flag='ban')

async def on_member_unban(self, server, user):
if not self.uber_ready: return
if user.id in self.user_dict:
self.user_dict[user.id]['severs_banned_in'] -= 1
self.user_dict[user.id]['servers_banned_in'] -= 1
if server.id in self.server_index and 'LURK' in self.server_index[server.id]:
return
await self.do_server_log(self, member=user, log_flag='unban', server=server)

async def user_index_check(self, member):
if member.id not in self.user_dict:
self.user_dict[member.id] = {'names': [member.name],
'avatar_changes': 0,
self.user_dict[member.id] = {'avatar_changes': 0,
'actions_taken_against': 0,
'severs_banned_in': 0}
'servers_banned_in': 0}
try:
for banlist in self.ban_dict:
for user in banlist:
if member.id == user.id:
self.user_dict[member.id]['severs_banned_in'] += 1
self.user_dict[member.id]['servers_banned_in'] += 1
except:
pass

Expand Down

0 comments on commit 93eb877

Please sign in to comment.