8
8
User ,
9
9
} from 'discord.js' ;
10
10
import { REACTION_ROLE , REACTION_ROLE_CHANNEL } from '../config' ;
11
- import { wrap_in_embed } from './embed_helpers' ;
12
11
13
- export async function hasPermission (
12
+ export async function hasPermission (
14
13
reaction : MessageReaction | PartialMessageReaction ,
15
14
user : User | PartialUser ,
16
15
) : Promise < { member : GuildMember ; roleId : string } > {
@@ -56,7 +55,7 @@ export async function hasPermission(
56
55
}
57
56
}
58
57
59
- export async function sendReactionRoleMessage ( client : Client ) {
58
+ export async function sendReactionRoleMessage ( client : Client ) {
60
59
try {
61
60
const channel = client . channels . cache . get (
62
61
REACTION_ROLE_CHANNEL ,
@@ -82,8 +81,6 @@ export async function sendReactionRoleMessage(client: Client) {
82
81
messageArray . push (
83
82
"See what the community is working on outside of Tauri. Reach out if you have a passion project you'd like to talk about." ,
84
83
) ;
85
- messageArray . push ( '\n**Server Roles**' ) ;
86
- messageArray . push ( 'React below to receive the relative role' ) ;
87
84
88
85
let messageBody = messageArray . join ( '\n' ) ;
89
86
@@ -106,58 +103,6 @@ export async function sendReactionRoleMessage(client: Client) {
106
103
message = await channel . send ( messageBody ) ;
107
104
console . debug ( 'Message sent' ) ;
108
105
}
109
-
110
- // Loop all available reaction roles
111
- REACTION_ROLE . forEach ( async ( role ) => {
112
- // Get the reaction
113
- console . debug ( 'Attempting to get reactions...' ) ;
114
- const reaction = await message . reactions . resolve ( role . emojiId ) ;
115
- console . debug ( 'Got reactions' ) ;
116
-
117
- // No reactions yet
118
- if ( ! reaction ) {
119
- return ;
120
- }
121
-
122
- // Get all users that reacted minus the bot
123
- console . debug ( 'Getting users who reacted...' ) ;
124
- const reactedUsers = ( await reaction . users . fetch ( ) ) . filter (
125
- ( user ) => user . id !== message . author . id ,
126
- ) ;
127
- console . debug ( 'Finished fetching users' ) ;
128
-
129
- // Loop all users and add the role
130
- let counter = 0 ;
131
- reactedUsers . forEach ( async ( user ) => {
132
- try {
133
- const result = await hasPermission ( reaction , user ) ;
134
- counter += 1 ;
135
- const localCounter = counter ;
136
- console . debug (
137
- `(${ localCounter } / ${ reactedUsers . size } ) Attempting to add role...` ,
138
- ) ;
139
- if ( result ) {
140
- await result . member . roles . add ( result . roleId ) ;
141
- console . debug (
142
- `(${ localCounter } / ${ reactedUsers . size } ) Role added` ,
143
- ) ;
144
- }
145
- } catch ( error ) {
146
- console . error ( `Issue adding role: ${ error } ` ) ;
147
- }
148
- } ) ;
149
- } ) ;
150
-
151
- var roleDescription : string [ ] = [ ] ;
152
-
153
- REACTION_ROLE . forEach ( async ( reaction ) => {
154
- message . react ( reaction . emojiId ) ;
155
- roleDescription . push (
156
- `<:${ reaction . emojiName } :${ reaction . emojiId } > ${ reaction . description } ` ,
157
- ) ;
158
- } ) ;
159
-
160
- await message . edit ( wrap_in_embed ( roleDescription . join ( '\n' ) ) ) ;
161
106
} catch ( error ) {
162
107
console . error ( `Issue starting up reaction: ${ error } ` ) ;
163
108
}
0 commit comments