@@ -141,6 +141,7 @@ async def setup(self, ctx):
141
141
142
142
categ = await ctx .guild .create_category (name = 'modmail' , overwrites = self .overwrites (ctx ))
143
143
await categ .edit (position = 0 )
144
+ await ctx .guild .create_text_channel (name = 'discussion' , category = categ )
144
145
await ctx .send ('Successfully set up server.' )
145
146
146
147
@commands .command (name = 'close' )
@@ -169,31 +170,35 @@ def guess_modroles(self, ctx):
169
170
def format_info (self , user ):
170
171
'''Get information about a member of a server'''
171
172
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
183
175
time = datetime .datetime .utcnow ()
184
176
desc = 'Modmail thread started.'
185
- member_number = sorted ( server . members , key = lambda m : m . joined_at ). index ( user ) + 1
177
+ color = 0
186
178
179
+ if member :
180
+ for role in roles :
181
+ if str (role .color ) != "#000000" :
182
+ color = role .color
183
+
187
184
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
+
190
186
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 )
193
187
em .set_footer (text = 'User ID: ' + str (user .id ))
194
188
em .set_thumbnail (url = avi )
195
189
em .set_author (name = user , icon_url = server .icon_url )
196
190
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
+
197
202
return em
198
203
199
204
async def send_mail (self , message , channel ):
@@ -259,4 +264,4 @@ async def on_message(self, message):
259
264
await self .process_reply (message )
260
265
261
266
if __name__ == '__main__' :
262
- Modmail .init ()
267
+ Modmail .init ('MzYxNDgyNjcxNDUwMzU3NzYy.DLXz9g.uCsZWMhzTCwHR6LBW35bS8cfeVw' )
0 commit comments