@@ -26,8 +26,6 @@ public boolean called(String[] args, MessageReceivedEvent event) {
26
26
27
27
@ Override
28
28
public void action (String [] args , MessageReceivedEvent event ) {
29
-
30
- event .getAuthor ().openPrivateChannel ();
31
29
if (PermissionHandler .isUserAdmin (event .getGuild (), event .getAuthor ())) {
32
30
if (args .length > 0 && args [0 ].equalsIgnoreCase ("channel" )) {
33
31
getChannelLog (args , event );
@@ -36,7 +34,13 @@ public void action(String[] args, MessageReceivedEvent event) {
36
34
getUserLog (args , event );
37
35
}
38
36
} else {
39
- event .getAuthor ().getPrivateChannel ().sendMessage (MessageUtils .getNoPermissionMsg (PermissionHandler .ADMIN_PERMISSION )).queue ();
37
+ if (!event .getAuthor ().hasPrivateChannel ()) {
38
+ event .getAuthor ().openPrivateChannel ().queue (channel -> {
39
+ channel .sendMessage (MessageUtils .getNoPermissionMsg (PermissionHandler .ADMIN_PERMISSION )).queue ();
40
+ });
41
+ } else {
42
+ event .getAuthor ().getPrivateChannel ().sendMessage (MessageUtils .getNoPermissionMsg (PermissionHandler .ADMIN_PERMISSION )).queue ();
43
+ }
40
44
}
41
45
}
42
46
@@ -58,18 +62,26 @@ public String getTag() {
58
62
}
59
63
60
64
private void getChannelLog (String [] args , MessageReceivedEvent event ) {
61
- event .getAuthor ().openPrivateChannel ();
62
65
if (args .length == 1 ) {
63
66
// get channel
64
-
65
67
File logFile = FileHandler .getLogFile (event .getGuild (), event .getTextChannel ());
66
68
MessageBuilder messageBuilder = new MessageBuilder ();
67
69
messageBuilder .appendString ("This is the log file for channel: " + event .getTextChannel ().getName ());
68
70
69
- try {
70
- event .getAuthor ().getPrivateChannel ().sendFile (logFile , messageBuilder .build ()).queue ();
71
- } catch (IOException e ) {
72
- e .printStackTrace ();
71
+ if (!event .getAuthor ().hasPrivateChannel ()) {
72
+ event .getAuthor ().openPrivateChannel ().queue (channel -> {
73
+ try {
74
+ channel .sendFile (logFile , messageBuilder .build ()).queue ();
75
+ } catch (IOException e ) {
76
+ e .printStackTrace ();
77
+ }
78
+ });
79
+ } else {
80
+ try {
81
+ event .getAuthor ().getPrivateChannel ().sendFile (logFile , messageBuilder .build ()).queue ();
82
+ } catch (IOException e ) {
83
+ e .printStackTrace ();
84
+ }
73
85
}
74
86
BotLogger .info (event .getAuthor ().getName () + " asked for file: " + logFile .getName () + " on server: " + event .getGuild ().getName ());
75
87
@@ -80,8 +92,13 @@ private void getChannelLog(String[] args, MessageReceivedEvent event) {
80
92
81
93
File [] channelFiles = FileHandler .getAllServerLogFiles (event .getGuild ());
82
94
if (channelFiles != null ) {
83
- event .getAuthor ().getPrivateChannel ().sendMessage ("Here are the chats logs for the server: " + event .getGuild ().getName ()).queue ();
84
-
95
+ if (!event .getAuthor ().hasPrivateChannel ()) {
96
+ event .getAuthor ().openPrivateChannel ().queue (channel -> {
97
+ channel .sendMessage ("Here are the chats logs for the server: " + event .getGuild ().getName ()).queue ();
98
+ });
99
+ } else {
100
+ event .getAuthor ().getPrivateChannel ().sendMessage ("Here are the chats logs for the server: " + event .getGuild ().getName ()).queue ();
101
+ }
85
102
for (File file : channelFiles ) {
86
103
try {
87
104
event .getAuthor ().getPrivateChannel ().sendFile (file , null ).queue ();
@@ -91,24 +108,33 @@ private void getChannelLog(String[] args, MessageReceivedEvent event) {
91
108
BotLogger .info (event .getAuthor () + " asked for file: " + file .getName () + " on server: " + event .getGuild ().getName ());
92
109
}
93
110
} else {
94
- event .getAuthor ().getPrivateChannel ().sendMessage ("Sorry but an error occurred or there was no chat logs found!" ).queue ();
111
+ if (!event .getAuthor ().hasPrivateChannel ()) {
112
+ event .getAuthor ().openPrivateChannel ().queue (channel -> {
113
+ channel .sendMessage ("Sorry but an error occurred or there was no chat logs found!" ).queue ();
114
+ });
115
+ } else {
116
+ event .getAuthor ().getPrivateChannel ().sendMessage ("Sorry but an error occurred or there was no chat logs found!" ).queue ();
117
+ }
95
118
}
96
119
97
120
} else if (event .getMessage ().getMentionedChannels ().size () > 0 ) {
98
121
// get channel #channelName
99
-
100
- event .getAuthor ().getPrivateChannel ().sendMessage ("Here are the chat logs for the channels you asked for:" ).queue ();
122
+ if (!event .getAuthor ().hasPrivateChannel ()) {
123
+ event .getAuthor ().openPrivateChannel ().queue (channel -> {
124
+ channel .sendMessage ("Here are the chat logs for the channels you asked for:" ).queue ();
125
+ });
126
+ } else {
127
+ event .getAuthor ().getPrivateChannel ().sendMessage ("Here are the chat logs for the channels you asked for:" ).queue ();
128
+ }
101
129
for (TextChannel channel : event .getMessage ().getMentionedChannels ()) {
102
130
File channelFile = FileHandler .getLogFile (event .getGuild (), channel );
103
131
try {
104
- event .getAuthor ().getPrivateChannel ().sendFile (channelFile , null ).queue ();
132
+ event .getAuthor ().getPrivateChannel ().sendFile (channelFile , null ).queue ();
105
133
} catch (IOException e ) {
106
134
e .printStackTrace ();
107
135
}
108
-
109
136
BotLogger .info (event .getAuthor () + " asked for file: " + channelFile .getName () + " on server: " + event .getGuild ().getName ());
110
137
}
111
-
112
138
} else {
113
139
sendHelpMessage (event );
114
140
}
@@ -117,24 +143,26 @@ private void getChannelLog(String[] args, MessageReceivedEvent event) {
117
143
118
144
private void getUserLog (String [] args , MessageReceivedEvent event ) {
119
145
// get user <users> <length>
120
- event .getAuthor ().openPrivateChannel ();
121
146
List <User > logUser = event .getMessage ().getMentionedUsers ();
122
147
int searchLength = 0 ;
123
148
try {
124
149
searchLength = Integer .parseInt (args [args .length - 1 ]);
125
150
} catch (Exception e ) {
126
151
}
127
-
128
- event .getAuthor ().getPrivateChannel ().sendMessage ("Here are the chat logs for the user you asked for, this may take a long time:" ).queue ();
152
+ if (!event .getAuthor ().hasPrivateChannel ()) {
153
+ event .getAuthor ().openPrivateChannel ().queue (channel -> {
154
+ channel .sendMessage ("Here are the chat logs for the user you asked for, this may take a long time:" ).queue ();
155
+ });
156
+ } else {
157
+ event .getAuthor ().getPrivateChannel ().sendMessage ("Here are the chat logs for the user you asked for, this may take a long time:" ).queue ();
158
+ }
129
159
for (User user : logUser ) {
130
-
131
160
File logFile = FileHandler .getTempLogFile (event , user , searchLength );
132
161
try {
133
162
event .getAuthor ().getPrivateChannel ().sendFile (logFile , null ).queue ();
134
163
} catch (IOException e ) {
135
164
e .printStackTrace ();
136
165
}
137
-
138
166
BotLogger .info (event .getAuthor ().getName () + " asked for file: " + logFile .getName () + " on the server: " + event .getGuild ().getName ());
139
167
}
140
168
}
0 commit comments