blob: 15863b04d9d448e4164eb10a4c49d1aa4632946f (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
|
#!/usr/bin/node
/* jshint esnext:true */
"use strict";
const View = require("./view"),
GuildMemberView = require("./guild_member"),
util = require("../util"),
api = require("../api"),
strings = require("../strings"),
Promise = require("bluebird"),
oneLine = require("common-tags").oneLine;
const GuildOverviewView = module.exports;
// match detail view
module.exports = class extends View {
text(members) {
// TODO remove when API supports server side sort
return members.sort((m1, m2) => m1.fame < m2.fame).map((m) =>
new GuildMemberView().text(m)).join("\n");
}
async embed(guild) {
const embed = util.vainsocialEmbed(`${guild.name} - ${guild.shard_id}`,
"", "vainsocial-guild-view")
.setDescription(await this.text(guild.members));
return embed;
}
async respond(guild, extra="") {
this.response = await util.respond(this.msg,
await this.embed(guild), this.response);
return this.response;
}
}
|