김건우

Fix to print different data from server to server

...@@ -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); //파일 존재 확인
......
1 -12/3
...\ No newline at end of file ...\ No newline at end of file
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