Skip to content

Commit fcca745

Browse files
committed
Added multi-guild support
1 parent b6f528b commit fcca745

File tree

1 file changed

+22
-17
lines changed

1 file changed

+22
-17
lines changed

bot.py

Lines changed: 22 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -141,6 +141,7 @@ async def setup(self, ctx):
141141

142142
categ = await ctx.guild.create_category(name='modmail', overwrites=self.overwrites(ctx))
143143
await categ.edit(position=0)
144+
await ctx.guild.create_text_channel(name='discussion', category=categ)
144145
await ctx.send('Successfully set up server.')
145146

146147
@commands.command(name='close')
@@ -169,31 +170,35 @@ def guess_modroles(self, ctx):
169170
def format_info(self, user):
170171
'''Get information about a member of a server'''
171172
server = self.guild
172-
user = self.guild.get_member(user.id)
173-
avi = user.avatar_url
174-
roles = sorted(user.roles, key=lambda c: c.position)
175-
176-
for role in roles:
177-
if str(role.color) != "#000000":
178-
color = role.color
179-
if 'color' not in locals():
180-
color = 0
181-
182-
rolenames = ', '.join([r.name for r in roles if r.name != "@everyone"]) or 'None'
173+
member = self.guild.get_member(user.id)
174+
avi = member.avatar_url
183175
time = datetime.datetime.utcnow()
184176
desc = 'Modmail thread started.'
185-
member_number = sorted(server.members, key=lambda m: m.joined_at).index(user) + 1
177+
color = 0
186178

179+
if member:
180+
for role in roles:
181+
if str(role.color) != "#000000":
182+
color = role.color
183+
187184
em = discord.Embed(colour=color, description=desc, timestamp=time)
188-
em.add_field(name='Nick', value=user.nick, inline=True)
189-
em.add_field(name='Member No.',value=str(member_number),inline = True)
185+
190186
em.add_field(name='Account Created', value=str((time - user.created_at).days)+' days ago.')
191-
em.add_field(name='Joined', value=str((time - user.joined_at).days)+' days ago.')
192-
em.add_field(name='Roles', value=rolenames, inline=True)
193187
em.set_footer(text='User ID: '+str(user.id))
194188
em.set_thumbnail(url=avi)
195189
em.set_author(name=user, icon_url=server.icon_url)
196190

191+
if member:
192+
roles = sorted(member.roles, key=lambda c: c.position)
193+
rolenames = ', '.join([r.name for r in roles if r.name != "@everyone"]) or 'None'
194+
member_number = sorted(server.members, key=lambda m: m.joined_at).index(member) + 1
195+
196+
em.add_field(name='Joined', value=str((time - member.joined_at).days)+' days ago.')
197+
em.add_field(name='Member No.',value=str(member_number),inline = True)
198+
em.add_field(name='Nick', value=member.nick, inline=True)
199+
em.add_field(name='Roles', value=rolenames, inline=True)
200+
201+
197202
return em
198203

199204
async def send_mail(self, message, channel):
@@ -259,4 +264,4 @@ async def on_message(self, message):
259264
await self.process_reply(message)
260265

261266
if __name__ == '__main__':
262-
Modmail.init()
267+
Modmail.init('MzYxNDgyNjcxNDUwMzU3NzYy.DLXz9g.uCsZWMhzTCwHR6LBW35bS8cfeVw')

0 commit comments

Comments
 (0)