From c42dd6af51c9346dd80f3e5fdaead1c91aeddaa0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E3=81=A8=E3=82=8D=E3=82=93=E3=81=BD=E3=81=A3=E3=81=A8=2En?= =?UTF-8?q?ara?= Date: Tue, 11 Aug 2020 23:20:50 +0900 Subject: [PATCH 1/6] Create csv_cast.gs --- csv_cast.gs | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 csv_cast.gs diff --git a/csv_cast.gs b/csv_cast.gs new file mode 100644 index 0000000..49615b4 --- /dev/null +++ b/csv_cast.gs @@ -0,0 +1,30 @@ +// get処理 +function doGet(e) { + // parameter取得 + var params = e.parameter; + + // パラメーター keyからファイルIDを取得 + var file_id = convertP2f(params.key); + + // 0(存在しない)ときは文字列返す + if (file_id == '0') { + ContentService.createTextOutput().setMimeType(ContentService.MimeType.TEXT).setContent("404"); + } + + // CSVデータを取得 + var csvData = convertSp2Csv(file_id); + var out = ContentService.createTextOutput().setMimeType(ContentService.MimeType.TEXT).setContent(csvData); + Logger.log(csvData); + return out; +} + +// スプレッドシートをcsvに変換 +function convertSp2Csv(file_id) { + var values = SpreadsheetApp.openById(file_id).getSheets()[0].getDataRange().getValues(); + var data = []; + for (var i = 0; i < values.length; i++) { + data.push(values[i].join(",")); + } + Logger.log(data.join("\r\n")); + return data.join("\r\n"); +} From 2040b35d58116f43453d24cc3090ebd89eacaaf8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E3=81=A8=E3=82=8D=E3=82=93=E3=81=BD=E3=81=A3=E3=81=A8=2En?= =?UTF-8?q?ara?= Date: Tue, 11 Aug 2020 23:21:55 +0900 Subject: [PATCH 2/6] Update csv_cast.gs --- csv_cast.gs | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/csv_cast.gs b/csv_cast.gs index 49615b4..c26dbf2 100644 --- a/csv_cast.gs +++ b/csv_cast.gs @@ -28,3 +28,25 @@ function convertSp2Csv(file_id) { Logger.log(data.join("\r\n")); return data.join("\r\n"); } + +// Convert params to file +function convertP2f(key) { + switch(key) { + case 'about': + return ABOUT_CSV_ID; + case 'concerts': + return CONCERTS_CSV_ID; + case 'winds': + return WINDS_CSV_ID; + case 'ensemble': + return ENSEMBLE_CSV_ID; + case 'link': + return LINK_CSV_ID; + case 'contact': + return CONTACT_CSV_ID; + case 'news': + return NEWS_CSV_ID; + default: + return '0'; + } +} From 15bcd22838777984484b582873e344515820b9d3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E3=81=A8=E3=82=8D=E3=82=93=E3=81=BD=E3=81=A3=E3=81=A8=2En?= =?UTF-8?q?ara?= Date: Tue, 11 Aug 2020 23:22:24 +0900 Subject: [PATCH 3/6] Create .gitignore --- .gitignore | 1 + 1 file changed, 1 insertion(+) create mode 100644 .gitignore diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..c280fdf --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +config.gs From dfc7a8e65f2731a56f085ef8b97b78bd0381768c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E3=81=A8=E3=82=8D=E3=82=93=E3=81=BD=E3=81=A3=E3=81=A8=2En?= =?UTF-8?q?ara?= Date: Wed, 12 Aug 2020 12:14:33 +0900 Subject: [PATCH 4/6] =?UTF-8?q?fix:=20=E3=83=95=E3=82=A1=E3=82=A4=E3=83=AB?= =?UTF-8?q?=E3=81=8C=E3=81=AA=E3=81=84=E6=99=82=E3=81=AEreturn=E5=BF=98?= =?UTF-8?q?=E3=82=8C=E3=81=A6=E3=81=9F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- csv_cast.gs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/csv_cast.gs b/csv_cast.gs index c26dbf2..2d8deff 100644 --- a/csv_cast.gs +++ b/csv_cast.gs @@ -8,7 +8,7 @@ function doGet(e) { // 0(存在しない)ときは文字列返す if (file_id == '0') { - ContentService.createTextOutput().setMimeType(ContentService.MimeType.TEXT).setContent("404"); + return ContentService.createTextOutput().setMimeType(ContentService.MimeType.TEXT).setContent("404"); } // CSVデータを取得 From b71827281822028551e50d2725172353bab5900a Mon Sep 17 00:00:00 2001 From: nakanoyuki Date: Mon, 25 Sep 2023 13:42:50 +0900 Subject: [PATCH 5/6] add contact.gs --- contact/contact.gs | 85 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 85 insertions(+) create mode 100644 contact/contact.gs diff --git a/contact/contact.gs b/contact/contact.gs new file mode 100644 index 0000000..92f02de --- /dev/null +++ b/contact/contact.gs @@ -0,0 +1,85 @@ +function doPost(e) { + var response = {}; + + try { + // parameterを取得 + var param = e.parameter; + + // ファイルID + var FILE_ID = "xxxxxxxxxxxxxxxxxxxx"; + + // リストネーム + var LIST_NAME = "contact"; + + // spreadsheetを開く + var sheet = SpreadsheetApp.openById(FILE_ID).getSheetByName(LIST_NAME); + + // 今の日付取得 + var now = Utilities.formatDate(new Date(), 'Asia/Tokyo', 'yyyy/MM/dd HH:mm:ss'); + + + // sheetに情報を追加 + sheet.appendRow([param.name, param.affiliation, param.affiliation_kosen, param.affiliation_group, param.mail, param.inquiry, param.content, now]); + + informContact(param, now); + + response["success"] = "true"; + response["message"] = ""; + } + catch (error) { + response["success"] = "false"; + var error_message = {}; + error_message["name"] = error.name; + error_message["resource"] = error.fileName + "(Line " + error.lineNumber + ")"; + error_message["message"] = error.message; + error_message["stack"] = error.stack; + response["message"] = error_message; + errorMail(response); + } + + var output = ContentService.createTextOutput(); + output.setMimeType(ContentService.MimeType.JSON); + output.setContent(JSON.stringify(response)); + + return output; +} + + +// お問い合わせメール通知 +function informContact(param, now){ + var values = SpreadsheetApp.openById('xxxxxxxxxxxxxxxxx').getSheets()[0].getDataRange().getValues(); + var address = []; + for (var i = 1; i < values.length; i++) { + address.push(values[i][0]); + } + address.push(param.mail); + var subject = '奈良高専吹奏楽部 | お問い合わせ'; + var body = HtmlService.createTemplateFromFile("message_mail"); + body.param = param; + body.now = now; + console.log(param); + Logger.log(param); + sendMail(param.mail, subject, body.evaluate().getContent(), address.join(",")); +} + +// メール送信 +function sendMail(to, subject, mail_body, bcc){ + GmailApp.sendEmail( + to, + subject, + '', + { + bcc: bcc, + name: '奈良高専吹奏楽部', + htmlBody: mail_body + } + ); + +} + +// エラーメール送信 +function errorMail(response){ + var mailaddress = 'xxxxxxxxxxxxxx@googlegroups.com'; + sendMail(mailaddress, 'error - contact', JSON.stringify(response), ''); +} + From 65c81aad47a97cc2f48b8c437ce0b04d8cc20090 Mon Sep 17 00:00:00 2001 From: nakanoyuki Date: Mon, 25 Sep 2023 13:43:18 +0900 Subject: [PATCH 6/6] add message_mail.html --- contact/message_mail.html | 38 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 contact/message_mail.html diff --git a/contact/message_mail.html b/contact/message_mail.html new file mode 100644 index 0000000..bc56a7c --- /dev/null +++ b/contact/message_mail.html @@ -0,0 +1,38 @@ + + + + + + + +

+ +

+ お問い合わせありがとうございます.ご返信には1週間ほどかかる場合がございます.
+ 2週間以上経過しても返信がない場合,お手数をおかけしますが再度お問い合わせをしていただくか, + info@nitncwind.org までご連絡頂くようよろしくお願いいたします. +

+
+ +

お問い合わせ内容

+ +

お名前

+

+ +

所属・団体名

+

+ +

メールアドレス

+

+ +

お問い合わせ内容

+

+ +
+ 受付日: +


+

+ © 2020- 奈良高専吹奏楽部 +

+ +