mirror of
https://gitlab.com/bignutty/labscore.git
synced 2025-06-09 14:43:05 -04:00
add paging to guild features
This commit is contained in:
parent
59d3791ea2
commit
baa8e6d32b
3 changed files with 54 additions and 25 deletions
|
@ -1,8 +1,10 @@
|
||||||
const { createEmbed } = require("../../../labscore/utils/embed");
|
const { createEmbed, page, formatPaginationEmbeds } = require("../../../labscore/utils/embed");
|
||||||
const { guildFeaturesField } = require("../../../labscore/utils/fields");
|
const { guildFeaturesField } = require("../../../labscore/utils/fields");
|
||||||
const { icon, highlight, timestamp, codeblock } = require("../../../labscore/utils/markdown");
|
const { icon, highlight, timestamp, codeblock } = require("../../../labscore/utils/markdown");
|
||||||
const { editOrReply } = require("../../../labscore/utils/message");
|
const { editOrReply } = require("../../../labscore/utils/message");
|
||||||
|
|
||||||
|
const { paginator } = require('../../../labscore/client');
|
||||||
|
|
||||||
module.exports = {
|
module.exports = {
|
||||||
name: 'server',
|
name: 'server',
|
||||||
label: 'user',
|
label: 'user',
|
||||||
|
@ -81,18 +83,27 @@ module.exports = {
|
||||||
|
|
||||||
// Guild Features
|
// Guild Features
|
||||||
if(g.features.length >= 1){
|
if(g.features.length >= 1){
|
||||||
|
|
||||||
// Create an empty field so everything properly aligns on desktop
|
|
||||||
guildCard.fields.push({
|
|
||||||
name: ``,
|
|
||||||
value: ``,
|
|
||||||
inline: true
|
|
||||||
})
|
|
||||||
|
|
||||||
let featureCards = guildFeaturesField(g)
|
let featureCards = guildFeaturesField(g)
|
||||||
|
|
||||||
featureCards[0].name = `${icon("activity")} Guild Features`
|
let pages = [];
|
||||||
guildCard.fields = guildCard.fields.concat(featureCards)
|
let i = 0;
|
||||||
|
let ic = Math.ceil(featureCards.length / 2);
|
||||||
|
|
||||||
|
if(ic == 1) featureCards[0].name = `${icon("activity")} Guild Features`
|
||||||
|
while(featureCards.length >= 1){
|
||||||
|
i++;
|
||||||
|
const sub = featureCards.splice(0, 2)
|
||||||
|
sub[0].name = `${icon("activity")} Guild Features (${i}/${ic})`
|
||||||
|
|
||||||
|
pages.push(page(JSON.parse(JSON.stringify(Object.assign({ ...guildCard }, { fields: sub })))))
|
||||||
|
}
|
||||||
|
|
||||||
|
pages = formatPaginationEmbeds(pages)
|
||||||
|
const paging = await paginator.createPaginator({
|
||||||
|
context,
|
||||||
|
pages
|
||||||
|
});
|
||||||
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
return editOrReply(context, guildCard)
|
return editOrReply(context, guildCard)
|
||||||
|
|
|
@ -1,10 +1,12 @@
|
||||||
const { DISCORD_INVITES } = require("../../../labscore/constants");
|
const { DISCORD_INVITES } = require("../../../labscore/constants");
|
||||||
const { createEmbed } = require("../../../labscore/utils/embed");
|
const { createEmbed, formatPaginationEmbeds, page } = require("../../../labscore/utils/embed");
|
||||||
const { guildFeaturesField } = require("../../../labscore/utils/fields");
|
const { guildFeaturesField } = require("../../../labscore/utils/fields");
|
||||||
const { icon, highlight, timestamp, link } = require("../../../labscore/utils/markdown");
|
const { icon, highlight, timestamp, link } = require("../../../labscore/utils/markdown");
|
||||||
const { editOrReply } = require("../../../labscore/utils/message");
|
const { editOrReply } = require("../../../labscore/utils/message");
|
||||||
const { STATICS } = require("../../../labscore/utils/statics");
|
const { STATICS } = require("../../../labscore/utils/statics");
|
||||||
|
|
||||||
|
const { paginator } = require('../../../labscore/client');
|
||||||
|
|
||||||
module.exports = {
|
module.exports = {
|
||||||
name: 'invite',
|
name: 'invite',
|
||||||
label: 'invite',
|
label: 'invite',
|
||||||
|
@ -41,20 +43,37 @@ module.exports = {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Guild Features
|
|
||||||
if(g.features.length >= 1){
|
|
||||||
let featureCards = guildFeaturesField(g)
|
|
||||||
|
|
||||||
featureCards[0].name = `${icon("activity")} Guild Features`
|
|
||||||
inviteCard.fields = inviteCard.fields.concat(featureCards)
|
|
||||||
}
|
|
||||||
|
|
||||||
if(g.splash){
|
if(g.splash){
|
||||||
inviteCard.image = {
|
inviteCard.image = {
|
||||||
url: `https://cdn.discordapp.com/splashes/${g.id}/${g.splash}.png?size=4096`
|
url: `https://cdn.discordapp.com/splashes/${g.id}/${g.splash}.png?size=4096`
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Guild Features
|
||||||
|
if(g.features.length >= 1){
|
||||||
|
let featureCards = guildFeaturesField(g)
|
||||||
|
|
||||||
|
let pages = [];
|
||||||
|
let i = 0;
|
||||||
|
let ic = Math.ceil(featureCards.length / 2);
|
||||||
|
|
||||||
|
if(ic == 1) featureCards[0].name = `${icon("activity")} Guild Features`
|
||||||
|
while(featureCards.length >= 1){
|
||||||
|
i++;
|
||||||
|
const sub = featureCards.splice(0, 2)
|
||||||
|
sub[0].name = `${icon("activity")} Guild Features (${i}/${ic})`
|
||||||
|
|
||||||
|
pages.push(page(JSON.parse(JSON.stringify(Object.assign({ ...inviteCard }, { fields: sub })))))
|
||||||
|
}
|
||||||
|
|
||||||
|
pages = formatPaginationEmbeds(pages)
|
||||||
|
const paging = await paginator.createPaginator({
|
||||||
|
context,
|
||||||
|
pages
|
||||||
|
});
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
return editOrReply(context, inviteCard)
|
return editOrReply(context, inviteCard)
|
||||||
}catch(e){
|
}catch(e){
|
||||||
console.log(e)
|
console.log(e)
|
||||||
|
|
|
@ -118,12 +118,11 @@ module.exports.formatPaginationEmbeds = function(embeds){
|
||||||
ne.embed.footer.text = e.embed.footer.text + ` • Page ${i}/${l}`
|
ne.embed.footer.text = e.embed.footer.text + ` • Page ${i}/${l}`
|
||||||
formatted.push(ne)
|
formatted.push(ne)
|
||||||
} else if (e.embeds){
|
} else if (e.embeds){
|
||||||
let fse = []
|
ne.embeds = e.embeds.map((se)=>{
|
||||||
for(const se of e.embeds){
|
|
||||||
se.footer.text = se.footer.text + ` • Page ${i}/${l}`
|
se.footer.text = se.footer.text + ` • Page ${i}/${l}`
|
||||||
fse.push(se)
|
return se;
|
||||||
}
|
})
|
||||||
ne.embeds = fse
|
|
||||||
formatted.push(ne)
|
formatted.push(ne)
|
||||||
} else {
|
} else {
|
||||||
formatted.push(e)
|
formatted.push(e)
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue