Showing
6 changed files
with
34 additions
and
21 deletions
... | @@ -11,7 +11,11 @@ const youtube = new Youtube(youtubeAPI); | ... | @@ -11,7 +11,11 @@ const youtube = new Youtube(youtubeAPI); |
11 | const ytdl = require('ytdl-core'); | 11 | const ytdl = require('ytdl-core'); |
12 | const { getVideoID } = require('ytdl-core'); | 12 | const { getVideoID } = require('ytdl-core'); |
13 | 13 | ||
14 | - | 14 | +const makeFolder = (dir) => { |
15 | + if (!fs.existsSync(dir)) { | ||
16 | + fs.mkdirSync(dir); | ||
17 | + } | ||
18 | +} | ||
15 | 19 | ||
16 | 20 | ||
17 | 21 | ||
... | @@ -45,6 +49,8 @@ client.on("message", msg => { | ... | @@ -45,6 +49,8 @@ client.on("message", msg => { |
45 | //테스트 조건문 | 49 | //테스트 조건문 |
46 | if (command === "ping") { | 50 | if (command === "ping") { |
47 | msg.reply(":ping_pong: Pong!") | 51 | msg.reply(":ping_pong: Pong!") |
52 | + msg.reply(msg.author.username) | ||
53 | + msg.reply(msg.channel.id) | ||
48 | } | 54 | } |
49 | if (command === "현재시간") { | 55 | if (command === "현재시간") { |
50 | msg.reply(now.getFullYear() + "년 " + (now.getMonth()+1) + "월 " +now.getDate() + "일 " + now.getHours() + "시 " + now.getMinutes() + "분"); | 56 | msg.reply(now.getFullYear() + "년 " + (now.getMonth()+1) + "월 " +now.getDate() + "일 " + now.getHours() + "시 " + now.getMinutes() + "분"); |
... | @@ -88,8 +94,9 @@ client.on("message", msg => { | ... | @@ -88,8 +94,9 @@ client.on("message", msg => { |
88 | if (command === "공부시작") { | 94 | if (command === "공부시작") { |
89 | var data = String(now.getHours()) +"."+ String(now.getMinutes()); | 95 | var data = String(now.getHours()) +"."+ String(now.getMinutes()); |
90 | console.log(msg.author.id); | 96 | console.log(msg.author.id); |
91 | - | 97 | + |
92 | - var fileName = "./data/stopWatch/" + msg.author.id + ".txt"; | 98 | + makeFolder("./data/stopWatch/"+msg.channel.id); |
99 | + var fileName = "./data/stopWatch/" + msg.channel.id+"/"+msg.author.id + ".txt"; | ||
93 | fs.writeFileSync(fileName, data, 'utf8', function(error){ // 파일에 data내용 저장 | 100 | fs.writeFileSync(fileName, data, 'utf8', function(error){ // 파일에 data내용 저장 |
94 | console.log('studyStart write end'); | 101 | console.log('studyStart write end'); |
95 | }); | 102 | }); |
... | @@ -101,12 +108,13 @@ client.on("message", msg => { | ... | @@ -101,12 +108,13 @@ client.on("message", msg => { |
101 | 108 | ||
102 | 109 | ||
103 | if (command === "공부중") { | 110 | if (command === "공부중") { |
104 | - var folder = fs.readdirSync('./data/stopWatch'); | 111 | + makeFolder('./data/stopWatch/'+msg.channel.id); |
112 | + var folder = fs.readdirSync('./data/stopWatch/'+msg.channel.id); | ||
105 | if (folder.length) { | 113 | if (folder.length) { |
106 | for (var i = 0; i < folder.length; i++) { | 114 | for (var i = 0; i < folder.length; i++) { |
107 | var file = folder[i]; | 115 | var file = folder[i]; |
108 | var userName = file.replace('.txt',''); | 116 | var userName = file.replace('.txt',''); |
109 | - var data = fs.readFileSync('./data/stopWatch/'+folder[i],'utf8'); | 117 | + var data = fs.readFileSync('./data/stopWatch/'+msg.channel.id+"/"+folder[i],'utf8'); |
110 | var studyData = data.toString().split('.'); | 118 | var studyData = data.toString().split('.'); |
111 | var studyHours = now.getHours() - Number(studyData[0]); | 119 | var studyHours = now.getHours() - Number(studyData[0]); |
112 | if (now.getMinutes() - Number(studyData[1]) < 0) { | 120 | if (now.getMinutes() - Number(studyData[1]) < 0) { |
... | @@ -125,7 +133,8 @@ client.on("message", msg => { | ... | @@ -125,7 +133,8 @@ client.on("message", msg => { |
125 | 133 | ||
126 | //공부끝 시간 체크 | 134 | //공부끝 시간 체크 |
127 | if (command === "공부끝") { | 135 | if (command === "공부끝") { |
128 | - var fileName = "data/stopWatch/" + msg.author.id + ".txt"; | 136 | + makeFolder('./data/stopWatch/'+msg.channel.id); |
137 | + var fileName = "data/stopWatch/" + msg.channel.id + "/" + msg.author.id + ".txt"; | ||
129 | 138 | ||
130 | try { | 139 | try { |
131 | // 파일 있는지 확인. 없으면 catch | 140 | // 파일 있는지 확인. 없으면 catch |
... | @@ -147,8 +156,9 @@ client.on("message", msg => { | ... | @@ -147,8 +156,9 @@ client.on("message", msg => { |
147 | console.log(studyHours + "h " + studyMinutes + "m"); | 156 | console.log(studyHours + "h " + studyMinutes + "m"); |
148 | 157 | ||
149 | //studyTime 기록 | 158 | //studyTime 기록 |
150 | - var fileName = "data/studyTime/" + msg.author.id + ".txt"; | 159 | + var fileName = "data/studyTime/" + msg.channel.id + "/" + msg.author.id + ".txt"; |
151 | var appendData = String(studyHours) + "." + String(studyMinutes) + " "; | 160 | var appendData = String(studyHours) + "." + String(studyMinutes) + " "; |
161 | + makeFolder("./data/studyTime/"+msg.channel.id); | ||
152 | fs.appendFile(fileName, appendData, function(err) { | 162 | fs.appendFile(fileName, appendData, function(err) { |
153 | if (err) throw err; | 163 | if (err) throw err; |
154 | console.log('The "data to append" was appended to file!'); | 164 | console.log('The "data to append" was appended to file!'); |
... | @@ -184,11 +194,12 @@ client.on("message", msg => { | ... | @@ -184,11 +194,12 @@ client.on("message", msg => { |
184 | //공부시간 순위 | 194 | //공부시간 순위 |
185 | if (command === '순위') { | 195 | if (command === '순위') { |
186 | var studyTimeArr = []; | 196 | var studyTimeArr = []; |
187 | - fs.readdir('./data/studyTime', (err, file_list) => { //폴더열기 | 197 | + makeFolder('./data/studyTime/'+msg.channel.id); |
198 | + fs.readdir('./data/studyTime/' + msg.channel.id, (err, file_list) => { //폴더열기 | ||
188 | var fileArr = file_list.toString().split(','); //studyTime 파일 배열 | 199 | var fileArr = file_list.toString().split(','); //studyTime 파일 배열 |
189 | var cnt = 0 | 200 | var cnt = 0 |
190 | fileArr.forEach((el,i) => { | 201 | fileArr.forEach((el,i) => { |
191 | - var data = fs.readFileSync("./data/studyTime/"+el, 'utf8'); | 202 | + var data = fs.readFileSync("./data/studyTime/"+msg.channel.id+"/"+el, 'utf8'); |
192 | data = data.slice(0,-1); | 203 | data = data.slice(0,-1); |
193 | var timeDiv = data.toString().split(' '); | 204 | var timeDiv = data.toString().split(' '); |
194 | var sumTime = 0; | 205 | var sumTime = 0; |
... | @@ -243,8 +254,8 @@ client.on("message", msg => { | ... | @@ -243,8 +254,8 @@ client.on("message", msg => { |
243 | var dDayData = msg.toString().split(" "); | 254 | var dDayData = msg.toString().split(" "); |
244 | var dDayTitle = dDayData[1]; | 255 | var dDayTitle = dDayData[1]; |
245 | var dDayWhen = dDayData[2].toString().split('/'); | 256 | var dDayWhen = dDayData[2].toString().split('/'); |
246 | - var fileName = "data/dDay/" + dDayTitle + ".txt"; | 257 | + var fileName = "data/dDay/" + msg.channel.id + "/" + dDayTitle + ".txt"; |
247 | - | 258 | + makeFolder("./data/dDay/"+msg.channel.id); |
248 | fs.writeFileSync(fileName, dDayData[2], 'utf8', function(error){ // 파일에 data내용 저장 | 259 | fs.writeFileSync(fileName, dDayData[2], 'utf8', function(error){ // 파일에 data내용 저장 |
249 | console.log('dDaySet write end'); | 260 | console.log('dDaySet write end'); |
250 | }); | 261 | }); |
... | @@ -264,15 +275,16 @@ client.on("message", msg => { | ... | @@ -264,15 +275,16 @@ client.on("message", msg => { |
264 | 275 | ||
265 | //디데이 달력 보기 | 276 | //디데이 달력 보기 |
266 | if (command === "디데이보기") { | 277 | if (command === "디데이보기") { |
267 | - fs.readdir('./data/dDay', (err, file_list) => { //폴더열기 | 278 | + makeFolder('./data/dDay/'+msg.channel.id); |
279 | + fs.readdir('./data/dDay/' + msg.channel.id, (err, file_list) => { //폴더열기 | ||
280 | + if (file_list != 0) { | ||
268 | var fileArr = file_list.toString().split(','); //dDay 배열 | 281 | var fileArr = file_list.toString().split(','); //dDay 배열 |
269 | - | ||
270 | fileArr.forEach((el,i) => { | 282 | fileArr.forEach((el,i) => { |
271 | - fs.readFile("./data/dDay/"+el, 'utf8', function(err, data) { | 283 | + fs.readFile("./data/dDay/" + msg.channel.id + "/" + el, 'utf8', function(err, data) { |
272 | var dDayWhen = data.toString().split('/'); | 284 | var dDayWhen = data.toString().split('/'); |
273 | var t1 = moment(); //현재 날짜 | 285 | var t1 = moment(); //현재 날짜 |
274 | var t2 = moment(String(now.getFullYear()) + "-" + dDayWhen[0] + "-" + dDayWhen[1] , 'YYYY-MM-DD'); // 저장된 날짜 | 286 | var t2 = moment(String(now.getFullYear()) + "-" + dDayWhen[0] + "-" + dDayWhen[1] , 'YYYY-MM-DD'); // 저장된 날짜 |
275 | - var dDayPrint = (Number(t2.diff(t1,'days')) + 2); | 287 | + var dDayPrint = (Number(t2.diff(t1,'days')) + 1); |
276 | if (dDayPrint > 0) { | 288 | if (dDayPrint > 0) { |
277 | msg.channel.send(el.replace('.txt','') + "까지 D - "+ dDayPrint); //dDay 답장 (날짜안지난경우) | 289 | msg.channel.send(el.replace('.txt','') + "까지 D - "+ dDayPrint); //dDay 답장 (날짜안지난경우) |
278 | } | 290 | } |
... | @@ -284,7 +296,12 @@ client.on("message", msg => { | ... | @@ -284,7 +296,12 @@ client.on("message", msg => { |
284 | } | 296 | } |
285 | 297 | ||
286 | }); | 298 | }); |
299 | + | ||
287 | }); | 300 | }); |
301 | + } else { | ||
302 | + msg.reply("설정된 이벤트가 없어요!"); | ||
303 | + } | ||
304 | + | ||
288 | }); | 305 | }); |
289 | } //디데이 달력 보기 end | 306 | } //디데이 달력 보기 end |
290 | 307 | ||
... | @@ -292,7 +309,8 @@ client.on("message", msg => { | ... | @@ -292,7 +309,8 @@ client.on("message", msg => { |
292 | //디데이 삭제 | 309 | //디데이 삭제 |
293 | if (msg.content.startsWith(prefix+"디데이삭제")) { | 310 | if (msg.content.startsWith(prefix+"디데이삭제")) { |
294 | var dDayData = msg.toString().split(" "); | 311 | var dDayData = msg.toString().split(" "); |
295 | - var fileName = "data/dDay/" + dDayData[1] + ".txt"; | 312 | + makeFolder('./data/dDay/'+msg.channel.id); |
313 | + var fileName = "data/dDay/" + msg.channel.id + "/" + dDayData[1] + ".txt"; | ||
296 | try { | 314 | try { |
297 | 315 | ||
298 | fs.statSync(fileName); //파일 존재 확인 | 316 | fs.statSync(fileName); //파일 존재 확인 | ... | ... |
data/dDay/기말고사.txt
deleted
100644 → 0
1 | -12/3 | ||
... | \ No newline at end of file | ... | \ No newline at end of file |
data/dDay/종강.txt
deleted
100644 → 0
1 | -12/30 | ||
... | \ No newline at end of file | ... | \ No newline at end of file |
1 | -22.45 | ||
... | \ No newline at end of file | ... | \ No newline at end of file |
1 | -0.0 0.0 | ||
... | \ No newline at end of file | ... | \ No newline at end of file |
1 | -0.0 | ||
... | \ No newline at end of file | ... | \ No newline at end of file |
-
Please register or login to post a comment