· last year · Jul 07, 2024, 10:05 AM
1$nomention
2
3$c[ Visit -> https://dadocs.rickyjs.xyz/ for more information about api key ]
4
5$textSplit[$customID;-]
6
7$var[tick.emoji;✅]
8$var[note.emoji;📝]
9$var[time.emoji;⏰]
10$var[link.emoji;🔗]
11
12$var[cross.emoji;❌]
13$var[number.emoji;🔢]
14$var[warning.emoji;⚠️]
15$var[bookmark.emoji;📑]
16$var[settings.emoji;⚙️]
17$var[next-arrow.emoji;➡️]
18$var[down-arrow.emoji;🔽]
19
20$var[suggestion-channel.buttonEmoji;📡]
21$var[blacklist-role.buttonEmoji;🚫]
22$var[embed-color.buttonEmoji;🎨]
23$var[cooldown.buttonEmoji;⏱️]
24$var[refresh.buttonEmoji;🔄]
25$var[thread.buttonEmoji;🧵]
26$var[help.buttonEmoji;❔]
27$var[logs.buttonEmoji;📜]
28
29$var[users.emoji;<:VA_Users:1254749214437675120>]
30$var[search.emoji;<:VA_Search:1254848757275689183>]
31$var[upvote.emoji;<:VN_UpVoteGreen:1251030884304556043>]
32$var[downvote.emoji;<:VN_DownVoteRed:1251030851337191424>]
33$var[neutral.emoji;<:VA_NeutralVote:1250672230094868582>]
34$var[left-arrow-green.emoji;<:LeftGreenArrowPixel:1190492988053401611>]
35
36$var[firstpage.emoji;<:Pixelated_FirstArrow:1193452503589716078>]
37$var[lastpage.emoji;<:Pixelated_LastArrow:1193452401831710720>]
38$var[nextpage.emoji;<:Pixelated_NextArrow:1193452428230672435>]
39$var[prevpage.emoji;<:Pixelated_PrevArrow:1193452525832126464>]
40
41$var[logs.limit;50]
42
43$c[ // ↓ Refresh Button / Back to Config Menu ]
44
45$if[$or[$splitText[1]==SuggestionSystem.refresh;$splitText[1]==Suggestion.ConfigMenu]==true]
46 $if[$splitText[2]==$authorID]
47
48 $var[\n;$url[decode;%0A]]
49 $var[\n.space;$url[decode;%0A+]]
50
51 $if[$checkUserPerms[$authorID;managechannels;manageroles]==false]
52 $if[$checkUserPerms[$authorID;manageroles]==false]
53 $var[manageRoles.missing;- $var[next-arrow.emoji] `Manage Roles`]
54 $endif
55
56 $if[$checkUserPerms[$authorID;managechannels]==false]
57 $var[manageChannels.missing;- $var[next-arrow.emoji] `Manage Channels`]
58 $endif
59
60 $ephemeral
61 $removeAllComponents
62 - $var[warning.emoji] You need the Following Permission in order to proceed!$var[\n.space]$var[manageRoles.missing]$var[\n.space]$var[manageChannels.missing]
63 $stop
64 $endif
65
66 $var[color;0df2f4]
67
68 $try
69 $httpAddHeader[apikey;$getVar[ApiKey]]
70 $httpPost[https://bdfddata.rickyjs.xyz/release/db/get;{
71 "name": "Suggestions_System-$guildID"
72 }]
73
74 $var[correct.json;$replaceText[$replaceText[$replaceText[$replaceText[$replaceText[$httpResult[entries];"{;{];}";}];$url[decode;%5C];];"";"];"}";"}]]
75 $jsonParse[$var[correct.json]]
76 $catch
77 $ephemeral
78 $removeAllComponents
79 There was an error! Please try again later
80 $stop
81 $endtry
82
83 $if[$json[suggestion-channel]==]
84 $var[channel.info;$var[cross.emoji] Suggestion Channel: Not Found]
85 $else
86 $if[$serverChannelExists[$json[suggestion-channel]]==false]
87 $var[channel.exist;`(Channel Doesn't Exist)`]
88 $var[emoji.usage;$var[warning.emoji]]
89 $else
90 $var[channel.exist;`(Channel Available)`]
91 $var[channel.desc;$var[\n.space]- **$var[note.emoji] This is where all the suggestions will go to**]
92 $var[emoji.usage;$var[tick.emoji]]
93 $endif
94
95 $var[channel.info;$var[emoji.usage] Suggestion Channel: <#$json[suggestion-channel]> $var[channel.exist]$var[channel.desc]]
96 $endif
97
98 $if[$json[blacklist-role]==]
99 $var[role.info;$var[cross.emoji] Blacklisted Role: Not Found]
100 $else
101 $if[$roleExists[$json[blacklist-role]]==false]
102 $var[role.exist;`(Role Doesn't Exist)`]
103 $var[emoji.usage;$var[warning.emoji]]
104 $else
105 $var[role.exist;`(Role Available)`]
106 $var[role.desc;$var[\n.space]- **$var[note.emoji] Users who have this role won't be able to send suggestions**]
107 $var[emoji.usage;$var[tick.emoji]]
108 $endif
109
110 $var[role.info;$var[emoji.usage] Blacklisted Role: <@&$json[blacklist-role]> $var[role.exist]$var[role.desc]]
111 $endif
112
113 $if[$json[embed-color]==]
114 $var[color.info;$var[cross.emoji] Default Embed Color: $var[color]]
115 $else
116 $var[color.hex;$json[embed-color;hex]]
117 $var[color.name;$json[embed-color;name]]
118
119 $if[$var[color.name]!=]
120 $var[color.name.notNull; `($var[color.name])`]
121 $endif
122
123 $var[color.desc;$var[\n.space]- **$var[note.emoji] Embeds in suggestions will appear in this color ↑**]
124 $var[color.info;$var[tick.emoji] Custom Embed Color: #$var[color.hex]$var[color.name.notNull]$var[color.desc]]
125 $var[color;$var[color.hex]]
126 $endif
127
128 $if[$json[cooldown-time]==]
129 $var[cooldown.info;$var[time.emoji] Default Cooldown Time: __45s__]
130 $else
131 $var[cooldown.info;$var[time.emoji] Custom Cooldown Time: __$json[cooldown-time]__]
132 $endif
133
134 $if[$json[total-suggestions]==]
135 $var[suggest.count;0]
136 $else
137 $var[suggest.count;$json[total-suggestions]]
138 $endif
139 $var[suggest.info;$var[number.emoji] Total Suggestions Sent: __$var[suggest.count]__]
140
141 $if[$or[$json[create-threads]==false;$json[create-threads]==]==true]
142 $var[thread.info;$var[cross.emoji] Create Thread channels under suggestions]
143 $else
144 $var[thread.info;$var[tick.emoji] Create Thread channels under suggestions$var[\n.space]- **$var[note.emoji] A Thread will be created below every suggestion for discussion**]
145 $endif
146
147 $author[Suggestion System Configuration]
148 $authorIcon[$authorAvatar]
149 $description[- $var[channel.info]$var[\n]$var[\n]- $var[role.info]$var[\n]$var[\n]- $var[color.info]$var[\n]$var[\n]- $var[thread.info]$var[\n]$var[\n]- $var[cooldown.info]$var[\n]- $var[suggest.info]$var[\n]- $var[refresh.buttonEmoji] Last Refresh was <t:$getTimestamp:R>]
150 $color[$var[color]]
151 $footer[$serverName[$guildID]]
152 $thumbnail[$serverIcon[$guildID]]
153
154 $removeAllComponents
155 $addButton[no;SuggestionSystem.channelID-$authorID;Suggestion Channel;primary;false;$var[suggestion-channel.buttonEmoji]]
156 $addButton[no;SuggestionSystem.blacklistRoleID-$authorID;Blacklisted Role;primary;false;$var[blacklist-role.buttonEmoji]]
157 $addButton[no;SuggestionSystem.embedColor-$authorID;Embed Color;primary;false;$var[embed-color.buttonEmoji]]
158 $addButton[no;SuggestionSystem.cooldown-$authorID;Cooldown;primary;false;$var[cooldown.buttonEmoji]]
159 $addButton[yes;SuggestionSystem.threads-$authorID;Threads;secondary;false;$var[thread.buttonEmoji]]
160 $addButton[no;SuggestionSystem.help;Help;secondary;false;$var[help.buttonEmoji]]
161 $addButton[no;SuggestionSystem.openlogs-$authorID;Configuration Logs;secondary;false;$var[logs.buttonEmoji]]
162 $addButton[no;SuggestionSystem.refresh-$authorID;Refresh;secondary;false;$var[refresh.buttonEmoji]]
163 $else
164 $ephemeral
165 $removeAllComponents
166 This is not your button!
167 $endif
168$endif
169
170$c[ // ↓ Brings some FAQ ]
171
172$if[$splitText[1]==SuggestionSystem.help]
173 $ephemeral
174 $removeAllComponents
175
176 $var[\n;$url[decode;%0A]]
177 $var[\n.space;$url[decode;%0A+]]
178
179 $author[Some problems you might encounter]
180 $description[1. $var[help.buttonEmoji] Why the bot is not adding buttons to the suggestions?$var[\n.space]- **It needs** `Read Message History` **Permission in order to attach buttons to suggestions**$var[\n]- $var[help.buttonEmoji] Why the bot is not creating a thread channel below suggestions?$var[\n.space]- **Make sure you have given the bot** `Create Public Threads` **Permission in the channel**]
181 $thumbnail[$userAvatar[$botID]]
182 $color[0df2f4]
183$endif
184
185$c[ // ↓ Config of Threads ]
186
187$if[$splitText[1]==SuggestionSystem.threads]
188 $ephemeral
189 $removeAllComponents
190 $var[\n;$url[decode;%0A]]
191 $var[\n.space;$url[decode;%0A+]]
192
193 $if[$splitText[2]==$authorID]
194 $if[$checkUserPerms[$authorID;managechannels;manageroles]==false]
195 $if[$checkUserPerms[$authorID;manageroles]==false]
196 $var[manageRoles.missing;- $var[next-arrow.emoji] `Manage Roles`]
197 $endif
198
199 $if[$checkUserPerms[$authorID;managechannels]==false]
200 $var[manageChannels.missing;- $var[next-arrow.emoji] `Manage Channels`]
201 $endif
202
203 - $var[warning.emoji] You need the Following Permission in order to proceed!$var[\n.space]$var[manageRoles.missing]$var[\n.space]$var[manageChannels.missing]
204 $else
205 $try
206 $httpAddHeader[apikey;$getVar[ApiKey]]
207 $httpPost[https://bdfddata.rickyjs.xyz/release/db/get;{
208 "name": "Suggestions_System-$guildID"
209 }]
210
211 $var[correct.json;$replaceText[$replaceText[$replaceText[$replaceText[$replaceText[$httpResult[entries];"{;{];}";}];$url[decode;%5C];];"";"];"}";"}]]
212 $jsonParse[$var[correct.json]]
213
214 $var[check_json;$json[create-threads]]
215 $jsonClear
216
217 $if[$or[$var[check_json]==;$var[check_json]==false]==true]
218 $var[log_action;Enabled Threads]
219 $else
220 $var[log_action;Disabled Threads]
221 $endif
222
223 $jsonSetString[user;$authorID]
224 $jsonSetString[action;$var[log_action]]
225 $jsonSetString[timestamp;$getTimestamp]
226 $var[unshift.value;$jsonStringify]
227
228 $jsonClear
229
230 $var[correct.json;$replaceText[$replaceText[$replaceText[$replaceText[$replaceText[$httpResult[entries];"{;{];}";}];$url[decode;%5C];];"";"];"}";"}]]
231 $jsonParse[$var[correct.json]]
232
233 $if[$or[$var[check_json]==;$var[check_json]==false]==true]
234 $var[ephemeral.res;$var[tick.emoji] Successfully **Enabled** Threads]
235 $jsonSetString[create-threads;true]
236 $else
237 $var[ephemeral.res;$var[tick.emoji] Successfully **Disabled** Threads]
238 $jsonSetString[create-threads;false]
239 $endif
240
241 $jsonArrayUnshift[logs;thread_logs;$var[unshift.value]]
242
243 $if[$jsonArrayCount[logs;thread_logs]>$var[logs.limit]]
244 $var[pop;$jsonArrayPop[logs;thread_logs]]
245 $endif
246
247 $var[json.dat;$jsonStringify]
248 $jsonClear
249
250 $jsonSetString[name;Suggestions_System-$guildID]
251 $jsonSetString[value;$var[json.dat]]
252 $httpPost[https://bdfddata.rickyjs.xyz/release/db/set;$jsonStringify]
253 - $var[ephemeral.res]
254 $catch
255 There was an error! Please try again later
256 $endtry
257 $endif
258 $else
259 This is not your button!
260 $endif
261$endif
262
263$c[ // ↓ Suggestion ChannelID Input Modal ]
264
265$if[$splitText[1]==channelID.forSuggestion]
266 $var[chan;$replaceText[$input[suggest.channel];`;]]
267
268 $ephemeral
269 $removeAllComponents
270
271 $if[$findChannel[$var[chan]]==]
272 $var[cross.emoji] Channel `$var[chan]` not found.
273 $else
274 $if[$channelType[$findChannel[$var[chan]]]!=text]
275 $var[cross.emoji] That channel is not a text-based channel!
276 $else
277 $try
278 $jsonSetString[user;$authorID]
279 $jsonSetString[action;Channel <#$findChannel[$var[chan]]>]
280 $jsonSetString[timestamp;$getTimestamp]
281 $var[unshift.value;$jsonStringify]
282
283 $jsonClear
284
285 $httpAddHeader[apikey;$getVar[ApiKey]]
286 $httpPost[https://bdfddata.rickyjs.xyz/release/db/get;{
287 "name": "Suggestions_System-$guildID"
288 }]
289
290 $var[correct.json;$replaceText[$replaceText[$replaceText[$replaceText[$replaceText[$httpResult[entries];"{;{];}";}];$url[decode;%5C];];"";"];"}";"}]]
291 $jsonParse[$var[correct.json]]
292
293 $jsonSetString[suggestion-channel;$findChannel[$var[chan]]]
294 $jsonArrayUnshift[logs;suggestionChan_logs;$var[unshift.value]]
295
296 $if[$jsonArrayCount[logs;suggestionChan_logs]>$var[logs.limit]]
297 $var[pop;$jsonArrayPop[logs;suggestionChan_logs]]
298 $endif
299
300 $var[json.dat;$jsonStringify]
301 $jsonClear
302
303 $jsonSetString[name;Suggestions_System-$guildID]
304 $jsonSetString[value;$var[json.dat]]
305
306 $httpPost[https://bdfddata.rickyjs.xyz/release/db/set;$jsonStringify]
307 $var[tick.emoji] Successfully Set <#$findChannel[$var[chan]]> as the Suggestion Channel!
308 $catch
309 There was an error! Please try again later
310 $endtry
311 $endif
312 $endif
313$endif
314
315$c[ // ↓ Blacklist Role Input Modal ]
316
317$if[$splitText[1]==blacklistRole.forSuggestion]
318 $var[role;$replaceText[$input[blacklist.role.id];`;]]
319
320 $ephemeral
321 $removeAllComponents
322
323 $if[$findRole[$var[role]]==]
324 $var[cross.emoji] Role `$var[role]` not found.
325 $else
326 $try
327 $jsonSetString[user;$authorID]
328 $jsonSetString[action;Role <@&$findRole[$var[role]]>]
329 $jsonSetString[timestamp;$getTimestamp]
330 $var[unshift.value;$jsonStringify]
331
332 $jsonClear
333
334 $httpAddHeader[apikey;$getVar[ApiKey]]
335 $httpPost[https://bdfddata.rickyjs.xyz/release/db/get;{
336 "name": "Suggestions_System-$guildID"
337 }]
338
339 $var[correct.json;$replaceText[$replaceText[$replaceText[$replaceText[$replaceText[$httpResult[entries];"{;{];}";}];$url[decode;%5C];];"";"];"}";"}]]
340 $jsonParse[$var[correct.json]]
341
342 $jsonSetString[blacklist-role;$findRole[$var[role]]]
343 $jsonArrayUnshift[logs;blacklistRole_logs;$var[unshift.value]]
344
345 $if[$jsonArrayCount[logs;blacklistRole_logs]>$var[logs.limit]]
346 $var[pop;$jsonArrayPop[logs;blacklistRole_logs]]
347 $endif
348
349 $var[json.dat;$jsonStringify]
350
351 $jsonClear
352
353 $jsonSetString[name;Suggestions_System-$guildID]
354 $jsonSetString[value;$var[json.dat]]
355
356 $httpPost[https://bdfddata.rickyjs.xyz/release/db/set;$jsonStringify]
357 $var[tick.emoji] Successfully Set <@&$findRole[$var[role]]> as the Blacklisted Role!
358 $catch
359 There was an error! Please try again later
360 $endtry
361 $endif
362$endif
363
364$c[ // Embed Color Input Modal ]
365
366$if[$splitText[1]==embedColor.forSuggestion]
367 $var[color;$replaceText[$replaceText[$replaceText[$input[color.hex.input];`;];";];#;]]
368 $var[newline;$url[decode;%0A]]
369 $var[invisible-char;$url[decode;%E2%80%8E+]]
370
371 $ephemeral
372 $removeAllComponents
373
374 $if[$isValidHex[$var[color]]==false]
375 $var[cross.emoji] `"$var[color]"` is not a valid hex!$var[newline]$var[next-arrow.emoji] [Click on this link to get your hex code](https://htmlcolorcodes.com/color-chart/flat-design-color-chart/)
376 $else
377 $try
378 $httpGet[https://www.thecolorapi.com/id?hex=$var[color]]
379 $var[color.name;$httpResult[name;value]]
380 $endtry
381
382 $if[$var[color.name]==]
383 $var[color.name;N/A]
384 $endif
385
386 $try
387 $jsonSetString[user;$authorID]
388 $jsonSetString[action;Color #$var[color] `($var[color.name])`]
389 $jsonSetString[timestamp;$getTimestamp]
390 $var[unshift.value;$jsonStringify]
391
392 $jsonClear
393
394 $httpAddHeader[apikey;$getVar[ApiKey]]
395 $httpPost[https://bdfddata.rickyjs.xyz/release/db/get;{
396 "name": "Suggestions_System-$guildID"
397 }]
398
399 $var[correct.json;$replaceText[$replaceText[$replaceText[$replaceText[$replaceText[$httpResult[entries];"{;{];}";}];$url[decode;%5C];];"";"];"}";"}]]
400 $jsonParse[$var[correct.json]]
401
402 $jsonSetString[embed-color;hex;$toUppercase[$var[color]]]
403 $jsonSetString[embed-color;name;$var[color.name]]
404 $jsonArrayUnshift[logs;embedColor_logs;$var[unshift.value]]
405
406 $if[$jsonArrayCount[logs;embedColor_logs]>$var[logs.limit]]
407 $var[pop;$jsonArrayPop[logs;embedColor_logs]]
408 $endif
409
410 $var[json.dat;$jsonStringify]
411
412 $jsonClear
413
414 $jsonSetString[name;Suggestions_System-$guildID]
415 $jsonSetString[value;$var[json.dat]]
416
417 $httpPost[https://bdfddata.rickyjs.xyz/release/db/set;$jsonStringify]
418
419 $thumbnail[$serverIcon[$guildID]]
420 $description[$var[invisible-char]$var[newline]$var[newline]<-- New Color]
421 $color[$var[color]]
422 $footer[Successfully Set to this color $var[tick.emoji]]
423 $catch
424 There was an error! Please try again later
425 $endtry
426 $endif
427$endif
428
429$c[ // ↓ Cooldown Input Modal ]
430
431$if[$splitText[1]==cooldown.forSuggestion]
432 $var[cooldown.input;$replaceText[$replaceText[$input[cooldown.time.input];`;]; ;]]
433 $ephemeral
434 $removeAllComponents
435
436 $textSplit[$var[cooldown.input];]
437 $var[unit;$splitText[>]]
438
439 $removeSplitTextElement[$getTextSplitLength]
440 $var[int;$joinSplitText[]]
441
442 $if[$isNumber[$var[int]]==false]
443 $var[cross.emoji] Please provide a valid number!
444 $elseif[$var[int]<=0]
445 $var[cross.emoji] You can not have `0` or a negative number!
446 $elseif[$checkContains[$var[int];.]==true]
447 $var[cross.emoji] You can not have floats/decimals in your time!
448 $else
449 $jsonSetString[s;1000]
450 $jsonSetString[m;60000]
451 $jsonSetString[h;3600000]
452 $jsonSetString[d;86400000]
453
454 $var[\n;$url[decode;%0A]]
455 $var[\n.space;$url[decode;%0A+]]
456
457 $if[$json[$var[unit]]==]
458 - $var[cross.emoji] `"$var[unit]"` Wrong time-unit provided!$var[\n]- $var[down-arrow.emoji] Time units are as follows$var[\n.space]- `s = seconds`$var[\n.space]- `m = minutes`$var[\n.space]- `h = hours`$var[\n.space]- `d = days`
459 $else
460 $var[parsed.time;$var[int]]
461 $var[parsed.unit.ms;$json[$var[unit]]]
462
463 $var[converted_to_ms;$sum[$calculate[$var[parsed.time] * $var[parsed.unit.ms]];$getTimestamp[ms]]]
464 $var[timestamp;$divide[$var[converted_to_ms];1000]]
465 $var[difference;$sub[$var[timestamp];$getTimestamp]]
466 $jsonClear
467
468 $if[$var[difference]>86400] $c[ // 86400 are seconds in a day ]
469 - $var[warning.emoji] You can not set a cooldown of more than 1 day
470 $else
471 $try
472 $jsonSetString[user;$authorID]
473 $jsonSetString[action;Cooldown $var[cooldown.input]]
474 $jsonSetString[timestamp;$getTimestamp]
475 $var[unshift.value;$jsonStringify]
476
477 $jsonClear
478
479 $httpAddHeader[apikey;$getVar[ApiKey]]
480 $httpPost[https://bdfddata.rickyjs.xyz/release/db/get;{
481 "name": "Suggestions_System-$guildID"
482 }]
483
484 $var[correct.json;$replaceText[$replaceText[$replaceText[$replaceText[$replaceText[$httpResult[entries];"{;{];}";}];$url[decode;%5C];];"";"];"}";"}]]
485 $jsonParse[$var[correct.json]]
486
487 $jsonSetString[cooldown-time;$var[cooldown.input]]
488 $jsonArrayUnshift[logs;cooldownTime_logs;$var[unshift.value]]
489
490 $if[$jsonArrayCount[logs;cooldownTime_logs]>$var[logs.limit]]
491 $var[pop;$jsonArrayPop[logs;cooldownTime_logs]]
492 $endif
493
494 $var[json.dat;$jsonStringify]
495
496 $jsonClear
497
498 $jsonSetString[name;Suggestions_System-$guildID]
499 $jsonSetString[value;$var[json.dat]]
500
501 $httpPost[https://bdfddata.rickyjs.xyz/release/db/set;$jsonStringify]
502 - $var[tick.emoji] Successfully set cooldown time to `$var[cooldown.input]`$var[\n.space]- Users will be able to suggest again **<t:$var[timestamp]:R>** after running the command!
503 $catch
504 - There was an error! Please try again later
505 $endtry
506 $endif
507 $endif
508 $endif
509$endif
510
511$if[$splitText[1]==SuggestionSystem.channelID]
512 $if[$splitText[2]==$authorID]
513 $if[$checkUserPerms[$authorID;manageroles;managechannels]==false]
514 $var[\n.space;$url[decode;%0A+]]
515
516 $if[$checkUserPerms[$authorID;manageroles]==false]
517 $var[manageRoles.missing;- $var[next-arrow.emoji] `Manage Roles`]
518 $endif
519
520 $if[$checkUserPerms[$authorID;managechannels]==false]
521 $var[manageChannels.missing;- $var[next-arrow.emoji] `Manage Channels`]
522 $endif
523
524 $ephemeral
525 $removeAllComponents
526 - $var[warning.emoji] You need the Following Permission in order to proceed!$var[\n.space]$var[manageRoles.missing]$var[\n.space]$var[manageChannels.missing]
527 $else
528 $newModal[channelID.forSuggestion;Suggestion System]
529 $addTextInput[suggest.channel;short;Input a Valid Text Channel ID/Name;1;70;true;$channelID;]
530 $endif
531 $else
532 $ephemeral
533 $removeAllComponents
534 This is not your button!
535 $endif
536$endif
537
538$if[$splitText[1]==SuggestionSystem.blacklistRoleID]
539 $if[$splitText[2]==$authorID]
540 $if[$checkUserPerms[$authorID;manageroles;managechannels]==false]
541 $var[\n.space;$url[decode;%0A+]]
542
543 $if[$checkUserPerms[$authorID;manageroles]==false]
544 $var[manageRoles.missing;- $var[next-arrow.emoji] `Manage Roles`]
545 $endif
546
547 $if[$checkUserPerms[$authorID;managechannels]==false]
548 $var[manageChannels.missing;- $var[next-arrow.emoji] `Manage Channels`]
549 $endif
550
551 $ephemeral
552 $removeAllComponents
553 - $var[warning.emoji] You need the Following Permission in order to proceed!$var[\n.space]$var[manageRoles.missing]$var[\n.space]$var[manageChannels.missing]
554 $else
555 $newModal[blacklistRole.forSuggestion;Suggestion System]
556 $addTextInput[blacklist.role.id;short;Input a Valid Role ID/Name;1;70;true;;]
557 $endif
558 $else
559 $ephemeral
560 $removeAllComponents
561 This is not your button!
562 $endif
563$endif
564
565$if[$splitText[1]==SuggestionSystem.embedColor]
566 $if[$splitText[2]==$authorID]
567 $var[color;0df2f4]
568
569 $if[$checkUserPerms[$authorID;manageroles;managechannels]==false]
570 $var[\n.space;$url[decode;%0A+]]
571
572 $if[$checkUserPerms[$authorID;manageroles]==false]
573 $var[manageRoles.missing;- $var[next-arrow.emoji] `Manage Roles`]
574 $endif
575
576 $if[$checkUserPerms[$authorID;managechannels]==false]
577 $var[manageChannels.missing;- $var[next-arrow.emoji] `Manage Channels`]
578 $endif
579
580 $ephemeral
581 $removeAllComponents
582 - $var[warning.emoji] You need the Following Permission in order to proceed!$var[\n.space]$var[manageRoles.missing]$var[\n.space]$var[manageChannels.missing]
583 $else
584 $newModal[embedColor.forSuggestion;Suggestion System]
585 $addTextInput[color.hex.input;short;Input a Valid Hex Color;1;6;true;;$var[color]]
586 $endif
587 $else
588 $ephemeral
589 $removeAllComponents
590 This is not your button!
591 $endif
592$endif
593
594$if[$splitText[1]==SuggestionSystem.cooldown]
595 $if[$splitText[2]==$authorID]
596 $if[$checkUserPerms[$authorID;manageroles;managechannels]==false]
597 $var[\n.space;$url[decode;%0A+]]
598
599 $if[$checkUserPerms[$authorID;manageroles]==false]
600 $var[manageRoles.missing;- $var[next-arrow.emoji] `Manage Roles`]
601 $endif
602
603 $if[$checkUserPerms[$authorID;managechannels]==false]
604 $var[manageChannels.missing;- $var[next-arrow.emoji] `Manage Channels`]
605 $endif
606
607 $ephemeral
608 $removeAllComponents
609 - $var[warning.emoji] You need the Following Permission in order to proceed!$var[\n.space]$var[manageRoles.missing]$var[\n.space]$var[manageChannels.missing]
610 $else
611 $newModal[cooldown.forSuggestion;Suggestion System]
612 $addTextInput[cooldown.time.input;short;Input a valid time;2;7;true;;(for eg. 30s, 20m, 7h)]
613 $endif
614 $else
615 $ephemeral
616 $removeAllComponents
617 This is not your button!
618 $endif
619$endif
620
621$c[ // ↓ User clicking buttons to vote ]
622
623$if[$splitText[1]==suggestion.Voting]
624 $var[suggestor;$splitText[3]]
625 $var[\n;$url[decode;%0A]]
626
627 $try
628 $defer
629 $httpAddHeader[apikey;$getVar[ApiKey]]
630 $httpPost[https://bdfddata.rickyjs.xyz/release/db/get;{
631 "name": "Suggestions_System-$guildID"
632 }]
633
634 $var[correct.json;$replaceText[$replaceText[$replaceText[$replaceText[$replaceText[$httpResult[entries];"{;{];}";}];$url[decode;%5C];];"";"];"}";"}]]
635 $jsonParse[$var[correct.json]]
636
637 $var[user_upvote_index;$jsonArrayIndex[message-ids;$messageID;upvote-users;$authorID]]
638 $var[user_downvote_index;$jsonArrayIndex[message-ids;$messageID;downvote-users;$authorID]]
639 $var[user_neutral_index;$jsonArrayIndex[message-ids;$messageID;neutral-users;$authorID]]
640
641 $if[$splitText[2]==upvote]
642
643 $if[$var[user_upvote_index]==-1]
644 $jsonArrayAppend[message-ids;$messageID;upvote-users;"$authorID"]
645 $var[pressed.vote;- $var[tick.emoji] You have upvoted this suggestion!]
646 $else
647 $jsonUnset[message-ids;$messageID;upvote-users;$var[user_upvote_index]]
648 $var[pressed.vote;- $var[tick.emoji] Removed your upvote from this suggestion!]
649 $endif
650
651 $if[$var[user_downvote_index]!=-1]
652 $jsonUnset[message-ids;$messageID;downvote-users;$var[user_downvote_index]]
653 $var[removed.vote;- $var[next-arrow.emoji] Removed your downvote from here]
654 $endif
655
656 $if[$var[user_neutral_index]!=-1]
657 $jsonUnset[message-ids;$messageID;neutral-users;$var[user_neutral_index]]
658 $var[removed.vote;- $var[next-arrow.emoji] Removed your neutral vote from here]
659 $endif
660
661 $elseif[$splitText[2]==downvote]
662
663 $if[$var[user_downvote_index]==-1]
664 $jsonArrayAppend[message-ids;$messageID;downvote-users;"$authorID"]
665 $var[pressed.vote;- $var[tick.emoji] You have downvoted this suggestion!]
666 $else
667 $jsonUnset[message-ids;$messageID;downvote-users;$var[user_downvote_index]]
668 $var[pressed.vote;- $var[tick.emoji] Removed your downvote from this suggestion!]
669 $endif
670
671 $if[$var[user_upvote_index]!=-1]
672 $jsonUnset[message-ids;$messageID;upvote-users;$var[user_upvote_index]]
673 $var[removed.vote;- $var[next-arrow.emoji] Removed your upvote from here]
674 $endif
675
676 $if[$var[user_neutral_index]!=-1]
677 $jsonUnset[message-ids;$messageID;neutral-users;$var[user_neutral_index]]
678 $var[removed.vote;- $var[next-arrow.emoji] Removed your neutral vote from here]
679 $endif
680
681 $elseif[$splitText[2]==neutral]
682
683 $if[$var[user_neutral_index]==-1]
684 $jsonArrayAppend[message-ids;$messageID;neutral-users;"$authorID"]
685 $var[pressed.vote;- $var[tick.emoji] You are neutral on this suggestion!]
686 $else
687 $jsonUnset[message-ids;$messageID;neutral-users;$var[user_neutral_index]]
688 $var[pressed.vote;- $var[tick.emoji] Removed your neutral vote from this suggestion!]
689 $endif
690
691 $if[$var[user_downvote_index]!=-1]
692 $jsonUnset[message-ids;$messageID;downvote-users;$var[user_downvote_index]]
693 $var[removed.vote;- $var[next-arrow.emoji] Removed your downvote from here]
694 $endif
695
696 $if[$var[user_upvote_index]!=-1]
697 $jsonUnset[message-ids;$messageID;upvote-users;$var[user_upvote_index]]
698 $var[removed.vote;- $var[next-arrow.emoji] Removed your upvote from here]
699 $endif
700
701 $endif
702
703 $var[json.dat;$jsonStringify]
704
705 $jsonClear
706
707 $jsonSetString[name;Suggestions_System-$guildID]
708 $jsonSetString[value;$var[json.dat]]
709 $httpPost[https://bdfddata.rickyjs.xyz/release/db/set;$jsonStringify]
710
711 $var[correct.json;$replaceText[$replaceText[$replaceText[$replaceText[$replaceText[$httpResult[entries];"{;{];}";}];$url[decode;%5C];];"";"];"}";"}]]
712 $jsonParse[$var[correct.json]]
713
714 $jsonParse[$json[Suggestions_System-$guildID]]
715 $var[upvote.total.count;$jsonArrayCount[message-ids;$messageID;upvote-users]]
716 $var[downvote.total.count;$jsonArrayCount[message-ids;$messageID;downvote-users]]
717 $var[neutral.total.count;$jsonArrayCount[message-ids;$messageID;neutral-users]]
718
719 $async[]
720 $editButton[suggestion.Voting-upvote-$var[suggestor];$var[upvote.total.count];success;false;$var[upvote.emoji];$messageID]
721 $editButton[suggestion.Voting-downvote-$var[suggestor];$var[downvote.total.count];danger;false;$var[downvote.emoji];$messageID]
722 $editButton[suggestion.Voting-neutral-$var[suggestor];$var[neutral.total.count];secondary;false;$var[neutral.emoji];$messageID]
723 $endasync
724
725 $ephemeral
726 $removeAllComponents
727 $var[pressed.vote]$var[\n]$var[removed.vote]
728 $catch
729 $ephemeral
730 $removeAllComponents
731 There was an error! Please try again later
732 $endtry
733$endif
734
735$c[ // ↓ Opens Voters List ]
736
737$if[$splitText[1]==suggestion.VotersList]
738 $ephemeral
739 $removeAllComponents
740
741 $try
742 $httpAddHeader[apikey;$getVar[ApiKey]]
743 $httpPost[https://bdfddata.rickyjs.xyz/release/db/get;{
744 "name": "Suggestions_System-$guildID"
745 }]
746
747 $var[correct.json;$replaceText[$replaceText[$replaceText[$replaceText[$replaceText[$httpResult[entries];"{;{];}";}];$url[decode;%5C];];"";"];"}";"}]]
748 $jsonParse[$var[correct.json]]
749
750 $if[$json[embed-color]==]
751 $var[embed.color;0df2f4]
752 $else
753 $var[embed.color;$json[embed-color;hex]]
754 $endif
755
756 $jsonParse[$json[message-ids]]
757 $var[upvoters.array;$jsonArrayCount[$messageID;upvote-users]]
758
759 $if[$var[upvoters.array]==0]
760 $var[last_page;1]
761 $var[details;There are no users!]
762 $else
763 $async[math]
764 $enableDecimals[true]
765 $var[div;$divide[$var[upvoters.array];10]]
766
767 $if[$checkContains[$var[div];.]==true]
768 $textSplit[$var[div];.]
769 $var[last_page;$sum[1;$splitText[1]]]
770 $else
771 $var[last_page;$var[div]]
772 $endif
773 $endasync $await[math]
774
775 $var[q;0]
776 $var[\n;$url[decode;%0A]]
777 $var[code;%{DOL}%if[%{DOL}%json[%{DOL}%messageID\;upvote-users\;%{DOL}%var[q\]\]!=\]%{DOL}%sum[%{DOL}%var[q\]\;1\]. <@%{DOL}%json[%{DOL}%messageID\;upvote-users\;%{DOL}%var[q\]\]> `(@%{DOL}%username[%{DOL}%json[%{DOL}%messageID\;upvote-users\;%{DOL}%var[q\]\]\])`%{DOL}%var[\n\]%{DOL}%else %{DOL}%stop%{DOL}%endif%{DOL}%var[q\;%{DOL}%calculate[%{DOL}%var[q\] + 1\]\]]
778
779 $var[loop;$eval[$repeatMessage[10;$var[code]]]]
780 $var[details;$var[loop]]
781 $endif
782
783 $var[first_page;1]
784 $var[page;$var[first_page]]
785 $var[next_page;$sum[$var[page];1]]
786 $var[prev_page;$sub[$var[page];1]]
787
788 $author[Upvote Users List]
789 $description[$var[details]]
790 $color[$var[embed.color]]
791 $footer[Page 1/$var[last_page]]
792
793 $addButton[false;SuggestionVoters.navigate-$messageID-upvoters-$var[first_page]-a;;secondary;$checkCondition[$var[page]==$var[first_page]];$var[firstpage.emoji]]
794 $addButton[false;SuggestionVoters.navigate-$messageID-upvoters-$var[prev_page]-b;;secondary;$checkCondition[$var[page]==$var[first_page]];$var[prevpage.emoji]]
795 $addButton[false;SuggestionVoters.navigate-$messageID-upvoters-$var[next_page]-c;;secondary;$checkCondition[$var[page]==$var[last_page]];$var[nextpage.emoji]]
796 $addButton[false;SuggestionVoters.navigate-$messageID-upvoters-$var[last_page]-d;;secondary;$checkCondition[$var[page]==$var[last_page]];$var[lastpage.emoji]]
797 $addButton[false;SuggestionVoters.userindexModal-$messageID;;secondary;false;$var[search.emoji]]
798
799 $addButton[true;selectVotersType-$messageID-upvoteUsers;Upvoters;primary;true]
800 $addButton[false;selectVotersType-$messageID-downvoteUsers;Downvoters;primary;false]
801 $addButton[false;selectVotersType-$messageID-neutralUsers;Neutrals;primary;false]
802 $catch
803 There was an error! Please try again later
804 $endtry
805$endif
806
807$c[ // ↓ Selection of what type of voters list to see ]
808
809$if[$splitText[1]==selectVotersType]
810 $var[msg-id;$splitText[2]]
811 $var[voters.type;$splitText[3]]
812
813 $if[$var[voters.type]==upvoteUsers]
814 $var[array.name;upvote-users]
815 $var[disable-button.uv;true]
816 $var[author.text;Upvote Users List]
817 $var[for-nav;upvoters]
818 $elseif[$var[voters.type]==downvoteUsers]
819 $var[array.name;downvote-users]
820 $var[disable-button.dv;true]
821 $var[author.text;Downvote Users List]
822 $var[for-nav;downvoters]
823 $elseif[$var[voters.type]==neutralUsers]
824 $var[array.name;neutral-users]
825 $var[disable-button.nu;true]
826 $var[author.text;Neutral Users List]
827 $var[for-nav;neutrals]
828 $endif
829
830 $try
831 $httpAddHeader[apikey;$getVar[ApiKey]]
832 $httpPost[https://bdfddata.rickyjs.xyz/release/db/get;{
833 "name": "Suggestions_System-$guildID"
834 }]
835
836 $var[correct.json;$replaceText[$replaceText[$replaceText[$replaceText[$replaceText[$httpResult[entries];"{;{];}";}];$url[decode;%5C];];"";"];"}";"}]]
837 $jsonParse[$var[correct.json]]
838
839 $if[$json[embed-color]==]
840 $var[embed.color;0df2f4]
841 $else
842 $var[embed.color;$json[embed-color;hex]]
843 $endif
844
845 $jsonParse[$json[message-ids]]
846 $var[defined.array.count;$jsonArrayCount[$var[msg-id];$var[array.name]]]
847
848 $if[$var[defined.array.count]==0]
849 $var[last_page;1]
850 $var[details;There are no users!]
851 $else
852 $async[math]
853 $enableDecimals[true]
854 $var[div;$divide[$var[defined.array.count];10]]
855
856 $if[$checkContains[$var[div];.]==true]
857 $textSplit[$var[div];.]
858 $var[total.pages;$sum[1;$splitText[1]]]
859 $else
860 $var[total.pages;$var[div]]
861 $endif
862 $endasync $await[math]
863
864 $var[last_page;$var[total.pages]]
865
866 $var[q;0]
867 $var[\n;$url[decode;%0A]]
868
869 $var[code;%{DOL}%if[%{DOL}%json[%{DOL}%var[msg-id\]\;%{DOL}%var[array.name\]\;%{DOL}%var[q\]\]!=\]%{DOL}%sum[%{DOL}%var[q\]\;1\]. <@%{DOL}%json[%{DOL}%var[msg-id\]\;%{DOL}%var[array.name\]\;%{DOL}%var[q\]\]> `(@%{DOL}%username[%{DOL}%json[%{DOL}%var[msg-id\]\;%{DOL}%var[array.name\]\;%{DOL}%var[q\]\]\])`%{DOL}%var[\n\]%{DOL}%else %{DOL}%stop%{DOL}%endif%{DOL}%var[q\;%{DOL}%calculate[%{DOL}%var[q\] + 1\]\]]
870 $var[loop;$eval[$repeatMessage[10;$var[code]]]]
871 $var[details;$var[loop]]
872 $endif
873
874 $var[first_page;1]
875 $var[page;$var[first_page]]
876 $var[next_page;$sum[$var[page];1]]
877 $var[prev_page;$sub[$var[page];1]]
878
879 $author[$var[author.text]]
880 $description[$var[details]]
881 $color[$var[embed.color]]
882 $footer[Page $var[page]/$var[last_page]]
883
884 $removeButtons
885 $addButton[false;SuggestionVoters.navigate-$var[msg-id]-$var[for-nav]-$var[first_page]-a;;secondary;$checkCondition[$var[page]==$var[first_page]];$var[firstpage.emoji]]
886 $addButton[false;SuggestionVoters.navigate-$var[msg-id]-$var[for-nav]-$var[prev_page]-b;;secondary;$checkCondition[$var[page]==$var[first_page]];$var[prevpage.emoji]]
887 $addButton[false;SuggestionVoters.navigate-$var[msg-id]-$var[for-nav]-$var[next_page]-c;;secondary;$checkCondition[$var[page]==$var[last_page]];$var[nextpage.emoji]]
888 $addButton[false;SuggestionVoters.navigate-$var[msg-id]-$var[for-nav]-$var[last_page]-d;;secondary;$checkCondition[$var[page]==$var[last_page]];$var[lastpage.emoji]]
889 $addButton[false;SuggestionVoters.userindexModal-$var[msg-id];;secondary;false;$var[search.emoji]]
890
891 $addButton[true;selectVotersType-$var[msg-id]-upvoteUsers;Upvoters;primary;$var[disable-button.uv]]
892 $addButton[false;selectVotersType-$var[msg-id]-downvoteUsers;Downvoters;primary;$var[disable-button.dv]]
893 $addButton[false;selectVotersType-$var[msg-id]-neutralUsers;Neutrals;primary;$var[disable-button.nu]]
894 $catch
895 $ephemeral
896 $removeAllComponents
897 There was an error! Please try again later
898 $endtry
899$endif
900
901$c[ // ↓ Navigation of users in voters list ]
902
903$if[$splitText[1]==SuggestionVoters.navigate]
904 $var[msg-id;$splitText[2]]
905 $var[voter-type;$splitText[3]]
906 $var[page;$splitText[4]]
907
908 $var[first_page;1]
909 $var[next_page;$sum[$var[page];1]]
910 $var[prev_page;$sub[$var[page];1]]
911
912 $if[$var[voter-type]==upvoters]
913 $var[array.name;upvote-users]
914 $var[disable-button.uv;true]
915 $var[author.text;Upvote Users List]
916 $elseif[$var[voter-type]==downvoters]
917 $var[array.name;downvote-users]
918 $var[disable-button.dv;true]
919 $var[author.text;Downvote Users List]
920 $elseif[$var[voter-type]==neutrals]
921 $var[array.name;neutral-users]
922 $var[disable-button.nu;true]
923 $var[author.text;Neutral Users List]
924 $endif
925
926 $try
927 $httpAddHeader[apikey;$getVar[ApiKey]]
928 $httpPost[https://bdfddata.rickyjs.xyz/release/db/get;{
929 "name": "Suggestions_System-$guildID"
930 }]
931
932 $var[correct.json;$replaceText[$replaceText[$replaceText[$replaceText[$replaceText[$httpResult[entries];"{;{];}";}];$url[decode;%5C];];"";"];"}";"}]]
933 $jsonParse[$var[correct.json]]
934
935 $if[$json[embed-color]==]
936 $var[embed.color;0df2f4]
937 $else
938 $var[embed.color;$json[embed-color;hex]]
939 $endif
940
941 $jsonParse[$json[message-ids]]
942 $var[defined.array.count;$jsonArrayCount[$var[msg-id];$var[array.name]]]
943
944 $if[$var[defined.array.count]==0]
945 $var[last_page;1]
946 $var[details;There are no users!]
947 $else
948 $async[math]
949 $enableDecimals[true]
950 $var[div;$divide[$var[defined.array.count];10]]
951
952 $if[$checkContains[$var[div];.]==true]
953 $textSplit[$var[div];.]
954 $var[total.pages;$sum[1;$splitText[1]]]
955 $else
956 $var[total.pages;$var[div]]
957 $endif
958 $endasync $await[math]
959
960 $var[last_page;$var[total.pages]]
961
962 $if[$var[page]>=$var[last_page]]
963 $var[page;$var[last_page]]
964 $endif
965
966 $if[$var[page]<=0]
967 $var[page;1]
968 $endif
969
970 $var[q;$sub[$sub[$multi[$var[page];10];9];1]]
971 $var[\n;$url[decode;%0A]]
972
973 $var[code;%{DOL}%if[%{DOL}%json[%{DOL}%var[msg-id\]\;%{DOL}%var[array.name\]\;%{DOL}%var[q\]\]!=\]%{DOL}%sum[%{DOL}%var[q\]\;1\]. <@%{DOL}%json[%{DOL}%var[msg-id\]\;%{DOL}%var[array.name\]\;%{DOL}%var[q\]\]> `(@%{DOL}%username[%{DOL}%json[%{DOL}%var[msg-id\]\;%{DOL}%var[array.name\]\;%{DOL}%var[q\]\]\])`%{DOL}%var[\n\]%{DOL}%else %{DOL}%stop%{DOL}%endif%{DOL}%var[q\;%{DOL}%calculate[%{DOL}%var[q\] + 1\]\]]
974 $var[loop;$eval[$repeatMessage[10;$var[code]]]]
975 $var[details;$var[loop]]
976 $endif
977
978 $author[$var[author.text]]
979 $description[$var[details]]
980 $color[$var[embed.color]]
981 $footer[Page $var[page]/$var[last_page]]
982
983 $removeButtons
984 $addButton[false;SuggestionVoters.navigate-$var[msg-id]-$var[voter-type]-$var[first_page]-a;;secondary;$checkCondition[$var[page]==$var[first_page]];$var[firstpage.emoji]]
985 $addButton[false;SuggestionVoters.navigate-$var[msg-id]-$var[voter-type]-$var[prev_page]-b;;secondary;$checkCondition[$var[page]==$var[first_page]];$var[prevpage.emoji]]
986 $addButton[false;SuggestionVoters.navigate-$var[msg-id]-$var[voter-type]-$var[next_page]-c;;secondary;$checkCondition[$var[page]==$var[last_page]];$var[nextpage.emoji]]
987 $addButton[false;SuggestionVoters.navigate-$var[msg-id]-$var[voter-type]-$var[last_page]-d;;secondary;$checkCondition[$var[page]==$var[last_page]];$var[lastpage.emoji]]
988 $addButton[false;SuggestionVoters.userindexModal-$var[msg-id];;secondary;false;$var[search.emoji]]
989
990 $addButton[true;selectVotersType-$var[msg-id]-upvoteUsers;Upvoters;primary;$var[disable-button.uv]]
991 $addButton[false;selectVotersType-$var[msg-id]-downvoteUsers;Downvoters;primary;$var[disable-button.dv]]
992 $addButton[false;selectVotersType-$var[msg-id]-neutralUsers;Neutrals;primary;$var[disable-button.nu]]
993 $catch
994 $ephemeral
995 $removeAllComponents
996 There was an error! Please try again later
997 $endtry
998$endif
999
1000$c[ // ↓ Find a user's Vote Position ]
1001
1002$if[$splitText[1]==SuggestionVoters.userindexModal]
1003 $newModal[userIndex.forVotersList-$splitText[2];Voter Search]
1004 $addTextInput[input.user.voter;short;Input a Valid User Name/ID;1;50;true;$username[$authorID];]
1005$endif
1006
1007$if[$splitText[1]==userIndex.forVotersList]
1008 $ephemeral
1009 $removeAllComponents
1010
1011 $var[fetch.user;$replaceText[$replaceText[$input[input.user.voter];`;];";]]
1012 $var[msg.id;$splitText[2]]
1013 $var[\n;$url[decode;%0A]]
1014
1015 $if[$findUser[$var[fetch.user];no]==]
1016 $var[user;$var[fetch.user]]
1017 $onlyIf[$userExists[$var[user]]==true;$var[cross.emoji] User or Member `"$var[user]"` does not exist, if you think this user is in this list then please provide their ID]
1018 $else
1019 $var[user;$findUser[$var[fetch.user];no]]
1020 $endif
1021
1022 $try
1023 $httpAddHeader[apikey;$getVar[ApiKey]]
1024 $httpPost[https://bdfddata.rickyjs.xyz/release/db/get;{
1025 "name": "Suggestions_System-$guildID"
1026 }]
1027
1028 $var[correct.json;$replaceText[$replaceText[$replaceText[$replaceText[$replaceText[$httpResult[entries];"{;{];}";}];$url[decode;%5C];];"";"];"}";"}]]
1029 $jsonParse[$var[correct.json]]
1030
1031 $if[$json[embed-color]==]
1032 $var[embed.color;0df2f4]
1033 $else
1034 $var[embed.color;$json[embed-color;hex]]
1035 $endif
1036
1037 $var[link;https://discord.com/channels/$guildID/$json[suggestion-channel]/$var[msg.id]]
1038 $var[user_upvote_index;$jsonArrayIndex[message-ids;$var[msg.id];upvote-users;$var[user]]]
1039 $var[user_downvote_index;$jsonArrayIndex[message-ids;$var[msg.id];downvote-users;$var[user]]]
1040 $var[user_neutral_index;$jsonArrayIndex[message-ids;$var[msg.id];neutral-users;$var[user]]]
1041
1042 $if[$var[user_upvote_index]!=-1]
1043 $var[position;$var[user_upvote_index]]
1044 $var[desc.text;- $var[link.emoji] Voted here: $var[link]$var[\n]- $var[bookmark.emoji] Type: **Upvoter**$var[\n]- $var[number.emoji] Position: $sum[$var[position];1]]
1045
1046 $elseif[$var[user_downvote_index]!=-1]
1047 $var[position;$var[user_downvote_index]]
1048 $var[desc.text;- $var[link.emoji] Voted here: $var[link]$var[\n]- $var[bookmark.emoji] Type: **Downvoter**$var[\n]- $var[number.emoji] Position: $sum[$var[position];1]]
1049
1050 $elseif[$var[user_neutral_index]!=-1]
1051 $var[position;$var[user_neutral_index]]
1052 $var[desc.text;- $var[link.emoji] Voted here: $var[link]$var[\n]- $var[bookmark.emoji] Type: **Neutral**$var[\n]- $var[number.emoji] Position: $sum[$var[position];1]]
1053
1054 $else
1055 $if[$var[user]==$authorID]
1056 $var[address;You aren't]
1057 $else
1058 $var[address;This user isn't]
1059 $endif
1060
1061 $var[desc.text;- $var[cross.emoji] $var[address] in any of the lists!]
1062 $endif
1063
1064 $author[$username[$var[user]]]
1065 $thumbnail[$userAvatar[$var[user]]]
1066 $description[$var[desc.text]]
1067 $color[$var[embed.color]]
1068 $catch
1069 There was an error! Please try again later
1070 $endtry
1071$endif
1072
1073$c[ // ↓ Opens Config Logs ]
1074
1075$if[$splitText[1]==SuggestionSystem.openlogs]
1076 $if[$splitText[2]==$authorID]
1077 $if[$checkUserPerms[$authorID;managechannels;manageroles]==false]
1078 $var[\n.space;$url[decode;%0A+]]
1079
1080 $if[$checkUserPerms[$authorID;manageroles]==false]
1081 $var[manageRoles.missing;- $var[next-arrow.emoji] `Manage Roles`]
1082 $endif
1083
1084 $if[$checkUserPerms[$authorID;managechannels]==false]
1085 $var[manageChannels.missing;- $var[next-arrow.emoji] `Manage Channels`]
1086 $endif
1087
1088 $ephemeral
1089 $removeAllComponents
1090 - $var[warning.emoji] You need the Following Permission in order to proceed!$var[\n.space]$var[manageRoles.missing]$var[\n.space]$var[manageChannels.missing]
1091 $stop
1092 $endif
1093
1094 $try
1095 $httpAddHeader[apikey;$getVar[ApiKey]]
1096 $httpPost[https://bdfddata.rickyjs.xyz/release/db/get;{
1097 "name": "Suggestions_System-$guildID"
1098 }]
1099
1100 $var[correct.json;$replaceText[$replaceText[$replaceText[$replaceText[$replaceText[$httpResult[entries];"{;{];}";}];$url[decode;%5C];];"";"];"}";"}]]
1101 $jsonParse[$var[correct.json]]
1102 $catch
1103 $ephemeral
1104 $removeAllComponents
1105 There was an error! Please try again later
1106 $stop
1107 $endtry
1108
1109 $if[$json[embed-color]==]
1110 $var[embed.color;0df2f4]
1111 $else
1112 $var[embed.color;$json[embed-color;hex]]
1113 $endif
1114
1115 $if[$jsonExists[logs;suggestionChan_logs]==false]
1116 $var[total.pages;1]
1117 $var[result;There are no logs!]
1118 $else
1119 $jsonParse[$json[logs]]
1120
1121 $async[math]
1122 $enableDecimals[true]
1123 $var[div;$divide[$jsonArrayCount[suggestionChan_logs];5]]
1124
1125 $if[$checkContains[$var[div];.]==true]
1126 $textSplit[$var[div];.]
1127 $var[total.pages;$sum[1;$splitText[1]]]
1128 $else
1129 $var[total.pages;$var[div]]
1130 $endif
1131 $endasync $await[math]
1132
1133 $var[x;0]
1134 $var[\n;$url[decode;%0A]]
1135 $var[\n.space;$url[decode;%0A+]]
1136
1137 $var[code;%{DOL}%if[%{DOL}%json[suggestionChan_logs\;%{DOL}%var[x\]\]!=\]%{DOL}%sum[%{DOL}%var[x\]\;1\]. **Customizer:** <@%{DOL}%json[suggestionChan_logs\;%{DOL}%var[x\]\;user\]> `(%{DOL}%username[%{DOL}%json[suggestionChan_logs\;%{DOL}%var[x\]\;user\]\])`%{DOL}%var[\n.space\]- %{DOL}%var[settings.emoji\] Action: %{DOL}%json[suggestionChan_logs\;%{DOL}%var[x\]\;action\]%{DOL}%var[\n.space\]- %{DOL}%var[time.emoji\] Time: <t:%{DOL}%json[suggestionChan_logs\;%{DOL}%var[x\]\;timestamp\]> (<t:%{DOL}%json[suggestionChan_logs\;%{DOL}%var[x\]\;timestamp\]:R>)%{DOL}%var[\n\]%{DOL}%else %{DOL}%stop%{DOL}%endif%{DOL}%var[x\;%{DOL}%calculate[%{DOL}%var[x\] + 1\]\]]
1138 $var[result;$eval[$repeatMessage[5;$var[code]]]]
1139 $endif
1140
1141 $var[result;$replaceText[$replaceText[$replaceText[$var[result];u003c;<];u003e;>];u0026;&]]
1142
1143 $author[Suggestion Channel Logs]
1144 $thumbnail[$serverIcon[$guildID]]
1145 $description[$var[result]]
1146 $color[$var[embed.color]]
1147 $footer[Page 1/$var[total.pages]]
1148
1149 $removeAllComponents
1150 $addButton[no;SuggestionSysLogs-$authorID-FirstPage-suggestionChan_logs;;secondary;true;$var[firstpage.emoji]]
1151 $addButton[no;SuggestionSysLogs-$authorID-PrevPage-suggestionChan_logs;;secondary;true;$var[prevpage.emoji]]
1152 $addButton[no;SuggestionSysLogs-$authorID-NextPage-suggestionChan_logs;;secondary;$checkCondition[$var[total.pages]==1];$var[nextpage.emoji]]
1153 $addButton[no;SuggestionSysLogs-$authorID-LastPage-suggestionChan_logs;;secondary;$checkCondition[$var[total.pages]==1];$var[lastpage.emoji]]
1154
1155 $addButton[yes;Suggestion.ConfigMenu-$authorID;Back to Configuration;success;false;$var[left-arrow-green.emoji]]
1156 $newSelectMenu[Suggestion.Logs;1;1;Logs List 🌸]
1157 $addSelectMenuOption[Suggestion.Logs;Suggestion Channel Logs;SuggestionsLogs.Menu-$authorID-suggestionChan_logs;;true;$var[suggestion-channel.buttonEmoji];]
1158 $addSelectMenuOption[Suggestion.Logs;Blacklist Role Logs;SuggestionsLogs.Menu-$authorID-blacklistRole_logs;;;$var[blacklist-role.buttonEmoji];]
1159 $addSelectMenuOption[Suggestion.Logs;Embed Color Logs;SuggestionsLogs.Menu-$authorID-embedColor_logs;;;$var[embed-color.buttonEmoji];]
1160 $addSelectMenuOption[Suggestion.Logs;Cooldown Logs;SuggestionsLogs.Menu-$authorID-cooldownTime_logs;;;$var[cooldown.buttonEmoji];]
1161 $addSelectMenuOption[Suggestion.Logs;Thread Logs;SuggestionsLogs.Menu-$authorID-thread_logs;;;$var[thread.buttonEmoji]]
1162 $else
1163 $ephemeral
1164 $removeAllComponents
1165 This is not your button!
1166 $endif
1167$endif
1168
1169$c[ // ↓ Config Logs Navigation ]
1170
1171$if[$splitText[1]==SuggestionSysLogs]
1172 $if[$splitText[2]==$authorID]
1173 $if[$checkUserPerms[$authorID;managechannels;manageroles]==false]
1174 $var[\n.space;$url[decode;%0A+]]
1175
1176 $if[$checkUserPerms[$authorID;manageroles]==false]
1177 $var[manageRoles.missing;- $var[next-arrow.emoji] `Manage Roles`]
1178 $endif
1179
1180 $if[$checkUserPerms[$authorID;managechannels]==false]
1181 $var[manageChannels.missing;- $var[next-arrow.emoji] `Manage Channels`]
1182 $endif
1183
1184 $ephemeral
1185 $removeAllComponents
1186 - $var[warning.emoji] You need the Following Permission in order to proceed!$var[\n.space]$var[manageRoles.missing]$var[\n.space]$var[manageChannels.missing]
1187 $stop
1188 $endif
1189
1190 $var[json_obj;$splitText[4]]
1191
1192 $if[$var[json_obj]==suggestionChan_logs]
1193 $var[author.text;Suggestion Channel Logs]
1194 $elseif[$var[json_obj]==blacklistRole_logs]
1195 $var[author.text;Blacklist Role Logs]
1196 $elseif[$var[json_obj]==embedColor_logs]
1197 $var[author.text;Embed Color Logs]
1198 $elseif[$var[json_obj]==cooldownTime_logs]
1199 $var[author.text;Cooldown Logs]
1200 $elseif[$var[json_obj]==thread_logs]
1201 $var[author.text;Thread Logs]
1202 $endif
1203
1204 $try
1205 $httpAddHeader[apikey;$getVar[ApiKey]]
1206 $httpPost[https://bdfddata.rickyjs.xyz/release/db/get;{
1207 "name": "Suggestions_System-$guildID"
1208 }]
1209
1210 $var[correct.json;$replaceText[$replaceText[$replaceText[$replaceText[$replaceText[$httpResult[entries];"{;{];}";}];$url[decode;%5C];];"";"];"}";"}]]
1211 $jsonParse[$var[correct.json]]
1212 $catch
1213 $ephemeral
1214 $removeAllComponents
1215 There was an error! Please try again later
1216 $stop
1217 $endtry
1218
1219 $if[$json[embed-color]==]
1220 $var[embed.color;0df2f4]
1221 $else
1222 $var[embed.color;$json[embed-color;hex]]
1223 $endif
1224
1225 $if[$jsonExists[logs;$var[json_obj]]==false]
1226 $var[total.pages;1]
1227 $var[updated.page;1]
1228 $var[result;There are no logs!]
1229 $else
1230 $jsonParse[$json[logs]]
1231 $var[array.count;$jsonArrayCount[$var[json_obj]]]
1232
1233 $async[math]
1234 $textSplit[$replaceText[$getEmbedData[$channelID;$messageID;1;footer];Page;];/]
1235 $var[current.page;$splitText[1]]
1236
1237 $enableDecimals[true]
1238 $var[div;$divide[$var[array.count];5]]
1239
1240 $if[$checkContains[$var[div];.]==true]
1241 $textSplit[$var[div];.]
1242 $var[total.pages;$sum[1;$splitText[1]]]
1243 $else
1244 $var[total.pages;$var[div]]
1245 $endif
1246 $endasync $await[math]
1247
1248 $if[$splitText[3]==FirstPage]
1249 $var[updated.page;1]
1250 $elseif[$splitText[3]==PrevPage]
1251 $var[updated.page;$sub[$var[current.page];1]]
1252 $elseif[$splitText[3]==NextPage]
1253 $var[updated.page;$sum[$var[current.page];1]]
1254 $else
1255 $var[updated.page;$var[total.pages]]
1256 $endif
1257
1258 $if[$or[$var[updated.page]>$var[total.pages];$var[updated.page]<=0]==true]
1259 $var[updated.page;$var[total.pages]]
1260 $endif
1261
1262 $var[q;$sub[$multi[$var[updated.page];5];4]]
1263 $var[x;$sub[$var[q];1]]
1264
1265 $var[\n;$url[decode;%0A]]
1266 $var[\n.space;$url[decode;%0A+]]
1267
1268 $var[code;%{DOL}%if[%{DOL}%json[%{DOL}%var[json_obj\]\;%{DOL}%var[x\]\]!=\]%{DOL}%sum[%{DOL}%var[x\]\;1\]. **Customizer:** <@%{DOL}%json[%{DOL}%var[json_obj\]\;%{DOL}%var[x\]\;user\]> `(%{DOL}%username[%{DOL}%json[%{DOL}%var[json_obj\]\;%{DOL}%var[x\]\;user\]\])`%{DOL}%var[\n.space\]- %{DOL}%var[settings.emoji\] Action: %{DOL}%json[%{DOL}%var[json_obj\]\;%{DOL}%var[x\]\;action\]%{DOL}%var[\n.space\]- %{DOL}%var[time.emoji\] Time: <t:%{DOL}%json[%{DOL}%var[json_obj\]\;%{DOL}%var[x\]\;timestamp\]> (<t:%{DOL}%json[%{DOL}%var[json_obj\]\;%{DOL}%var[x\]\;timestamp\]:R>)%{DOL}%var[\n\]%{DOL}%else %{DOL}%stop%{DOL}%endif%{DOL}%var[x\;%{DOL}%calculate[%{DOL}%var[x\] + 1\]\]]
1269 $var[result;$eval[$repeatMessage[5;$var[code]]]]
1270
1271 $var[result;$replaceText[$replaceText[$replaceText[$var[result];u0026;&];u003c;<];u003e;>]]
1272 $endif
1273
1274 $author[$var[author.text]]
1275 $thumbnail[$serverIcon[$guildID]]
1276 $description[$var[result]]
1277 $color[$var[embed.color]]
1278 $footer[Page $var[updated.page]/$var[total.pages]]
1279
1280 $async[]
1281 $editButton[SuggestionSysLogs-$authorID-FirstPage-$var[json_obj];;secondary;$checkCondition[$var[updated.page]==1];$var[firstpage.emoji];$messageID]
1282 $editButton[SuggestionSysLogs-$authorID-PrevPage-$var[json_obj];;secondary;$checkCondition[$var[updated.page]==1];$var[prevpage.emoji];$messageID]
1283 $editButton[SuggestionSysLogs-$authorID-NextPage-$var[json_obj];;secondary;$checkCondition[$var[updated.page]==$var[total.pages]];$var[nextpage.emoji];$messageID]
1284 $editButton[SuggestionSysLogs-$authorID-LastPage-$var[json_obj];;secondary;$checkCondition[$var[updated.page]==$var[total.pages]];$var[lastpage.emoji];$messageID]
1285 $endasync
1286 $else
1287 $ephemeral
1288 $removeAllComponents
1289 This is not your button!
1290 $endif
1291$endif
1292
1293$textSplit[$message;-]
1294
1295$c[ // ↓ Selection of what config logs to see ]
1296
1297$if[$splitText[1]==SuggestionsLogs.Menu]
1298 $if[$splitText[2]==$authorID]
1299 $if[$checkUserPerms[$authorID;managechannels;manageroles]==false]
1300 $var[\n.space;$url[decode;%0A+]]
1301
1302 $if[$checkUserPerms[$authorID;manageroles]==false]
1303 $var[manageRoles.missing;- $var[next-arrow.emoji] `Manage Roles`]
1304 $endif
1305
1306 $if[$checkUserPerms[$authorID;managechannels]==false]
1307 $var[manageChannels.missing;- $var[next-arrow.emoji] `Manage Channels`]
1308 $endif
1309
1310 $ephemeral
1311 $removeAllComponents
1312 - $var[warning.emoji] You need the Following Permission in order to proceed!$var[\n.space]$var[manageRoles.missing]$var[\n.space]$var[manageChannels.missing]
1313 $stop
1314 $endif
1315
1316 $var[json_obj;$splitText[3]]
1317
1318 $if[$var[json_obj]==suggestionChan_logs]
1319 $var[author.text;Suggestion Channel Logs]
1320 $var[default.menu.sg;true]
1321 $elseif[$var[json_obj]==blacklistRole_logs]
1322 $var[author.text;Blacklist Role Logs]
1323 $var[default.menu.bl;true]
1324 $elseif[$var[json_obj]==embedColor_logs]
1325 $var[author.text;Embed Color Logs]
1326 $var[default.menu.ec;true]
1327 $elseif[$var[json_obj]==cooldownTime_logs]
1328 $var[author.text;Cooldown Logs]
1329 $var[default.menu.ct;true]
1330 $elseif[$var[json_obj]==thread_logs]
1331 $var[author.text;Thread Logs]
1332 $var[default.menu.tl;true]
1333 $endif
1334
1335 $try
1336 $httpAddHeader[apikey;$getVar[ApiKey]]
1337 $httpPost[https://bdfddata.rickyjs.xyz/release/db/get;{
1338 "name": "Suggestions_System-$guildID"
1339 }]
1340
1341 $var[correct.json;$replaceText[$replaceText[$replaceText[$replaceText[$replaceText[$httpResult[entries];"{;{];}";}];$url[decode;%5C];];"";"];"}";"}]]
1342 $jsonParse[$var[correct.json]]
1343 $catch
1344 $ephemeral
1345 $removeAllComponents
1346 There was an error! Please try again later
1347 $stop
1348 $endtry
1349
1350 $if[$json[embed-color]==]
1351 $var[embed.color;0df2f4]
1352 $else
1353 $var[embed.color;$json[embed-color;hex]]
1354 $endif
1355
1356 $if[$jsonExists[logs;$var[json_obj]]==false]
1357 $var[total.pages;1]
1358 $var[result;There are no logs!]
1359 $else
1360 $jsonParse[$json[logs]]
1361 $var[array.count;$jsonArrayCount[$var[json_obj]]]
1362
1363 $async[math]
1364 $enableDecimals[true]
1365 $var[div;$divide[$var[array.count];5]]
1366
1367 $if[$checkContains[$var[div];.]==true]
1368 $textSplit[$var[div];.]
1369 $var[total.pages;$sum[1;$splitText[1]]]
1370 $else
1371 $var[total.pages;$var[div]]
1372 $endif
1373 $endasync $await[math]
1374
1375 $var[x;0]
1376 $var[\n;$url[decode;%0A]]
1377 $var[\n.space;$url[decode;%0A+]]
1378
1379 $var[code;%{DOL}%if[%{DOL}%json[%{DOL}%var[json_obj\]\;%{DOL}%var[x\]\]!=\]%{DOL}%sum[%{DOL}%var[x\]\;1\]. **Customizer:** <@%{DOL}%json[%{DOL}%var[json_obj\]\;%{DOL}%var[x\]\;user\]> `(%{DOL}%username[%{DOL}%json[%{DOL}%var[json_obj\]\;%{DOL}%var[x\]\;user\]\])`%{DOL}%var[\n.space\]- %{DOL}%var[settings.emoji\] Action: %{DOL}%json[%{DOL}%var[json_obj\]\;%{DOL}%var[x\]\;action\]%{DOL}%var[\n.space\]- %{DOL}%var[time.emoji\] Time: <t:%{DOL}%json[%{DOL}%var[json_obj\]\;%{DOL}%var[x\]\;timestamp\]> (<t:%{DOL}%json[%{DOL}%var[json_obj\]\;%{DOL}%var[x\]\;timestamp\]:R>)%{DOL}%var[\n\]%{DOL}%else %{DOL}%stop%{DOL}%endif%{DOL}%var[x\;%{DOL}%calculate[%{DOL}%var[x\] + 1\]\]]
1380 $var[result;$eval[$repeatMessage[5;$var[code]]]]
1381
1382 $var[result;$replaceText[$replaceText[$replaceText[$var[result];u0026;&];u003c;<];u003e;>]]
1383 $endif
1384
1385 $author[$var[author.text]]
1386 $thumbnail[$serverIcon[$guildID]]
1387 $description[$var[result]]
1388 $color[$var[embed.color]]
1389 $footer[Page 1/$var[total.pages]]
1390
1391 $removeAllComponents
1392 $addButton[no;SuggestionSysLogs-$authorID-FirstPage-$var[json_obj];;secondary;true;$var[firstpage.emoji]]
1393 $addButton[no;SuggestionSysLogs-$authorID-PrevPage-$var[json_obj];;secondary;true;$var[prevpage.emoji]]
1394 $addButton[no;SuggestionSysLogs-$authorID-NextPage-$var[json_obj];;secondary;$checkCondition[$var[total.pages]==1];$var[nextpage.emoji]]
1395 $addButton[no;SuggestionSysLogs-$authorID-LastPage-$var[json_obj];;secondary;$checkCondition[$var[total.pages]==1];$var[lastpage.emoji]]
1396
1397 $addButton[yes;Suggestion.ConfigMenu-$authorID;Back to Configuration;success;false;$var[left-arrow-green.emoji]]
1398 $newSelectMenu[Suggestion.Logs;1;1;Logs List 🌸]
1399 $addSelectMenuOption[Suggestion.Logs;Suggestion Channel Logs;SuggestionsLogs.Menu-$authorID-suggestionChan_logs;;$var[default.menu.sg];$var[suggestion-channel.buttonEmoji];]
1400 $addSelectMenuOption[Suggestion.Logs;Blacklist Role Logs;SuggestionsLogs.Menu-$authorID-blacklistRole_logs;;$var[default.menu.bl];$var[blacklist-role.buttonEmoji];]
1401 $addSelectMenuOption[Suggestion.Logs;Embed Color Logs;SuggestionsLogs.Menu-$authorID-embedColor_logs;;$var[default.menu.ec];$var[embed-color.buttonEmoji];]
1402 $addSelectMenuOption[Suggestion.Logs;Cooldown Logs;SuggestionsLogs.Menu-$authorID-cooldownTime_logs;;$var[default.menu.ct];$var[cooldown.buttonEmoji];]
1403 $addSelectMenuOption[Suggestion.Logs;Thread Logs;SuggestionsLogs.Menu-$authorID-thread_logs;;$var[default.menu.tl];$var[thread.buttonEmoji]]
1404 $else
1405 $ephemeral
1406 $removeAllComponents
1407 This is not your menu!
1408 $endif
1409$endif
1410