11package me.ddivad.judgebot.embeds
22
3- import dev.kord.common.entity.ButtonStyle
43import dev.kord.common.entity.Snowflake
54import dev.kord.common.kColor
65import dev.kord.core.entity.Guild
@@ -37,25 +36,16 @@ suspend fun MenuBuilder.createHistoryEmbed(
3736 val leaveData = databaseService.joinLeaves.getMemberJoinLeaveDataForGuild(guild.id.asString, member.userId)
3837 this .apply {
3938 buildOverviewPage(guild, guildConfiguration, target, userRecord, embedColor, totalMenuPages, databaseService)
40- buildInfractionPage(guild, target, userRecord, embedColor, totalMenuPages)
39+ buildInfractionPage(guild, guildConfiguration, target, userRecord, embedColor, totalMenuPages)
4140 buildNotesPages(guild, guildConfiguration, target, userRecord, embedColor, totalMenuPages)
4241 buildInformationPage(guild, guildConfiguration, target, userRecord, embedColor, totalMenuPages)
4342 buildJoinLeavePage(guild, target, leaveData, userRecord, embedColor, totalMenuPages)
4443 }
4544
4645 buttons {
47- button(" Prev." , Emojis .arrowLeft) {
48- previousPage()
49- }
50- button(" Next" , Emojis .arrowRight) {
51- nextPage()
52- }
5346 button(" Overview" , Emojis .clipboard) {
5447 loadPage(0 )
5548 }
56- }
57-
58- buttons {
5949 button(" Infractions" , Emojis .warning) {
6050 loadPage(1 )
6151 }
@@ -69,6 +59,17 @@ suspend fun MenuBuilder.createHistoryEmbed(
6959 loadPage(4 + if (paginatedNotes.isNotEmpty()) paginatedNotes.size - 1 else 0 )
7060 }
7161 }
62+
63+ if (paginatedNotes.isNotEmpty()) {
64+ buttons {
65+ button(" Prev." , Emojis .arrowLeft) {
66+ previousPage()
67+ }
68+ button(" Next" , Emojis .arrowRight) {
69+ nextPage()
70+ }
71+ }
72+ }
7273}
7374
7475private suspend fun MenuBuilder.buildOverviewPage (
@@ -135,6 +136,7 @@ private suspend fun MenuBuilder.buildOverviewPage(
135136
136137private suspend fun MenuBuilder.buildInfractionPage (
137138 guild : Guild ,
139+ config : GuildConfiguration ,
138140 target : User ,
139141 userRecord : GuildMemberDetails ,
140142 embedColor : Color ,
@@ -148,11 +150,10 @@ private suspend fun MenuBuilder.buildInfractionPage(
148150 }
149151 val warnings = userRecord.infractions.filter { it.type == InfractionType .Warn }.sortedBy { it.dateTime }
150152 val strikes = userRecord.infractions.filter { it.type == InfractionType .Strike }.sortedBy { it.dateTime }
151- val bans = userRecord.infractions.filter { it.punishment?.punishment == PunishmentType .BAN }
152153
154+ addInlineField(" Points" , " **${userRecord.points} / ${config.infractionConfiguration.pointCeiling} **" )
153155 addInlineField(" Warns" , " ${warnings.size} " )
154156 addInlineField(" Strikes" , " ${strikes.size} " )
155- addInlineField(" Bans" , " ${bans.size} " )
156157
157158 if (userRecord.infractions.isEmpty()) addField(" " , " **User has no infractions**" )
158159 if (warnings.isNotEmpty()) addField(" " , " **__Warnings__**" )
@@ -203,9 +204,9 @@ private suspend fun MenuBuilder.buildNotesPages(
203204 url = target.asUser().avatar.url
204205 }
205206
207+ addInlineField(" Points" , " **${userRecord.points} / ${config.infractionConfiguration.pointCeiling} **" )
206208 addInlineField(" Notes" , " ${userRecord.notes.size} " )
207209 addInlineField(" Information" , " ${userRecord.info.size} " )
208- addInlineField(" Points" , " **${userRecord.points} / ${config.infractionConfiguration.pointCeiling} **" )
209210
210211 addField(" " , " **User has no notes**" )
211212 footer {
@@ -365,6 +366,15 @@ suspend fun MenuBuilder.createLinkedAccountMenu(
365366 page {
366367 createCondensedHistoryEmbed(linkedUser, linkedUserRecord, guild, config)
367368 }
369+
370+ buttons {
371+ button(" Prev." , Emojis .arrowLeft) {
372+ previousPage()
373+ }
374+ button(" Next" , Emojis .arrowRight) {
375+ nextPage()
376+ }
377+ }
368378 }
369379}
370380
0 commit comments