From ccf6950d235559ea5a0124462b3c86b5e86041d5 Mon Sep 17 00:00:00 2001 From: UMR0403 <156527507+UMR0403@users.noreply.github.com> Date: Sun, 14 Jan 2024 00:44:11 +0900 Subject: [PATCH 01/13] =?UTF-8?q?Create=20=E8=A8=BA=E6=96=AD.html?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- "\350\250\272\346\226\255.html" | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) create mode 100644 "\350\250\272\346\226\255.html" diff --git "a/\350\250\272\346\226\255.html" "b/\350\250\272\346\226\255.html" new file mode 100644 index 000000000..7b8e3fe67 --- /dev/null +++ "b/\350\250\272\346\226\255.html" @@ -0,0 +1,20 @@ + + +
+ + +あなたの名前を入れてください
+ + + + + + + + + + From ea05962b2eb7ca4b6d7a1d13aa15ca0e00a562b5 Mon Sep 17 00:00:00 2001 From: UMR0403 <156527507+UMR0403@users.noreply.github.com> Date: Sun, 14 Jan 2024 00:45:19 +0900 Subject: [PATCH 02/13] =?UTF-8?q?Create=20=E8=A8=BA=E6=96=AD.css?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- "\350\250\272\346\226\255.css" | 11 +++++++++++ 1 file changed, 11 insertions(+) create mode 100644 "\350\250\272\346\226\255.css" diff --git "a/\350\250\272\346\226\255.css" "b/\350\250\272\346\226\255.css" new file mode 100644 index 000000000..045c6b64e --- /dev/null +++ "b/\350\250\272\346\226\255.css" @@ -0,0 +1,11 @@ + From 8edea7490791e30793ae80be03b8790d472d3293 Mon Sep 17 00:00:00 2001 From: UMR0403 <156527507+UMR0403@users.noreply.github.com> Date: Sun, 14 Jan 2024 00:46:06 +0900 Subject: [PATCH 03/13] =?UTF-8?q?Create=20=E8=A8=BA=E6=96=AD.js?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- "\350\250\272\346\226\255.js" | 160 ++++++++++++++++++++++++++++++++++ 1 file changed, 160 insertions(+) create mode 100644 "\350\250\272\346\226\255.js" diff --git "a/\350\250\272\346\226\255.js" "b/\350\250\272\346\226\255.js" new file mode 100644 index 000000000..fec43e6a0 --- /dev/null +++ "b/\350\250\272\346\226\255.js" @@ -0,0 +1,160 @@ +'use strict'; +const userNameInput = document.getElementById('user-name'); +const assessmentButton = document.getElementById('assessment'); +const resultDivision = document.getElementById('result-area'); +const tweetDivision = document.getElementById('tweet-area'); + +assessmentButton.addEventListener( + 'click', + () => { + const userName = userNameInput.value; + if (userName.length === 0) { + // 名前が空の時は処理を終了する + return; + } + + // 診断結果表示エリアの作成 + resultDivision.innerText = ''; + + // headerDivision の作成 + const headerDivision = document.createElement('div'); + headerDivision.setAttribute('class', 'card-header text-bg-primary'); + headerDivision.innerText = '診断結果'; + + // bodyDivision の作成 + const bodyDivision = document.createElement('div'); + bodyDivision.setAttribute('class', 'card-body'); + + const paragraph = document.createElement('p'); + paragraph.setAttribute('class', 'card-text'); + const result = assessment(userName); + paragraph.innerText = result; + bodyDivision.appendChild(paragraph); + + // resultDivision に Bootstrap のスタイルを適用する + resultDivision.setAttribute('class', 'card'); + + // headerDivision と bodyDivision を resultDivision に差し込む + resultDivision.appendChild(headerDivision); + resultDivision.appendChild(bodyDivision); + + // ツイートエリアの作成 + tweetDivision.innerText = ''; + const anchor = document.createElement('a'); + const hrefValue = + 'https://twitter.com/intent/tweet?button_hashtag=' + + encodeURIComponent('あなたのいいところ') + + '&ref_src=twsrc%5Etfw'; + + anchor.setAttribute('href', hrefValue); + anchor.setAttribute('class', 'twitter-hashtag-button'); + anchor.setAttribute('data-text', result); + anchor.innerText = 'Tweet #あなたのいいところ'; + + tweetDivision.appendChild(anchor); + + + const script = document.createElement('script'); + script.setAttribute('src', 'https://platform.twitter.com/widgets.js'); + tweetDivision.appendChild(script); + } +); + +userNameInput.addEventListener( + 'keydown', + event => { + if(event.code === 'Enter') { + assessmentButton.dispatchEvent(new Event('click')) + } + } +) + +const answers = [ + '{userName}の今日のラッキーアイテムは5円玉です。いいご縁がありますように!あ、でもいいご縁なら115円だから5円玉23枚持ち歩きましょう', + '{userName}の今日のラッキーアイテムはハッピーターンです。左右に回りながら「右ターン、左ターン、ハッピーターン!!!!」と叫びましょう。ちなみに粉だけ先に味わうと天罰下りますよ', + '{userName}の今日のラッキーアイテムは電車の座席です。乗ったら一目散に空いてる座席に座って、立ってる人たちに向かって「これがフルーツバスケットならあなたたち完全敗北ですよ?」と宣言しましょう', + '{userName}の今日のラッキーアイテムはTwitterです。Twitterのみなさんの民度はとても良い(笑)ので、どんどんリプやdmして良い(笑)出会いをもとめていきやしょう', + '{userName}の今日のラッキーアイテムはマイナンバーカードです。今日会う人たちとどんどん名刺交換みたいに、「私こういうものです」と言って交換していきましょうね', + '{userName}の今日のラッキーアイテムは午後の紅茶(ストレート)です。必ず午前中に飲んでください。あえて午前に飲むという大罪を行うことにより、親鸞さんの悪人正機説を実行しましょう。罪深い人ほど救われます', + '{userName}の今日のラッキーアイテムはからあげくんレッドです。他の味に浮気したらからあげくんから慰謝料請求きますよ。ちなみにみなさんはからあげくんは手づかみでたべますか?それともつまようじですか?', + '{userName}の今日のラッキーアイテムは左腕です。今日すこしでも左腕がうずいたら、その場に座り込んで「新しい時代に…賭けてきた」とつぶやきましょう', + '{userName}の今日のラッキーアイテムは置き配Okの札です。トイレの個室に入るときは忘れずにドアの前におくようにしましょう', + '{userName}の今日のラッキーアイテムはパスポートです。書くものがないときにメモ帳代わりに使いましょう。', + '{userName}の今日のラッキーアイテムはポケモンカードです。支払いのときにクレカの代わりに使えるかもしれません。差し込んでみましょう', + '{userName}の今日のラッキーアイテムはお箸(1本)です。信号が変わるときや電車が動くときなどに、「ウインガーディアムレディオッサ」と唱えて構えた箸を動かしましょう' +]; + +/** + * 名前の文字列を渡すと診断結果を返す関数 + * @param {string} userName ユーザの名前 + * @return {string} 診断結果 + */ +function assessment(userName) { + // 全文字のコード番号を取得してそれを足し合わせる + let sumOfCharCode = 0; + for (let i = 0; i < userName.length; i++) { + sumOfCharCode = sumOfCharCode + userName.charCodeAt(i); + } + + // 文字のコード番号の合計を回答の数で割って添字の数値を求める + const index = sumOfCharCode % answers.length; + let result = answers[index]; + + result = result.replaceAll('###userName###', userName); + return result; +} + +// テストを行う関数 +function test() { + console.log('診断結果の文章のテスト'); + + //太郎 + console.log('太郎'); + console.assert( + assessment('太郎') === + '太郎のいいところは決断力です。太郎がする決断にいつも助けられる人がいます。', + '診断結果の文言の特定の部分を名前に置き換える処理が正しくありません。' + ); + + //次郎 + console.log('次郎'); + console.assert( + assessment('次郎') === + '次郎のいいところは自制心です。やばいと思ったときにしっかりと衝動を抑えられる次郎が皆から評価されています。', + '診断結果の文言の特定の部分を名前に置き換える処理が正しくありません。' + ); + + //花子 + console.log('花子'); + console.assert( + assessment('花子') === + '花子のいいところはまなざしです。花子に見つめられた人は、気になって仕方がないでしょう。', + '診断結果の文言の特定の部分を名前に置き換える処理が正しくありません。' + ); + + console.log('診断結果の文章のテスト終了'); + + console.log('同じ名前なら、同じ結果を出力することのテスト'); + + console.log('太郎'); + console.assert( + assessment('太郎') === assessment('太郎'), + '入力が同じ名前なら同じ診断結果を出力する処理が正しくありません。' + ) + + console.log('次郎'); + console.assert( + assessment('次郎') === assessment('次郎'), + '入力が同じ名前なら同じ診断結果を出力する処理が正しくありません。' + ) + + console.log('花子'); + console.assert( + assessment('花子') === assessment('花子'), + '入力が同じ名前なら同じ診断結果を出力する処理が正しくありません。' + ) + + console.log('同じ名前なら、同じ結果を出力することのテスト終了'); +} + +test(); From db610a76c1ec8c62b71316be41c532bfcd57248b Mon Sep 17 00:00:00 2001 From: UMR0403 <156527507+UMR0403@users.noreply.github.com> Date: Sun, 14 Jan 2024 00:51:41 +0900 Subject: [PATCH 04/13] =?UTF-8?q?Rename=20=E8=A8=BA=E6=96=AD.js=20to=20ass?= =?UTF-8?q?essme.js?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- "\350\250\272\346\226\255.js" => assessme.js | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename "\350\250\272\346\226\255.js" => assessme.js (100%) diff --git "a/\350\250\272\346\226\255.js" b/assessme.js similarity index 100% rename from "\350\250\272\346\226\255.js" rename to assessme.js From 77ad502bd6d320b602689f7a0089148337ff3e69 Mon Sep 17 00:00:00 2001 From: UMR0403 <156527507+UMR0403@users.noreply.github.com> Date: Sun, 14 Jan 2024 00:52:14 +0900 Subject: [PATCH 05/13] =?UTF-8?q?Rename=20=E8=A8=BA=E6=96=AD.html=20to=20a?= =?UTF-8?q?ssessme.html?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- "\350\250\272\346\226\255.html" => assessme.html | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename "\350\250\272\346\226\255.html" => assessme.html (100%) diff --git "a/\350\250\272\346\226\255.html" b/assessme.html similarity index 100% rename from "\350\250\272\346\226\255.html" rename to assessme.html From a23b3e2c33cb42be1860b94cf6c8d31bbf939fcd Mon Sep 17 00:00:00 2001 From: UMR0403 <156527507+UMR0403@users.noreply.github.com> Date: Sun, 14 Jan 2024 00:52:41 +0900 Subject: [PATCH 06/13] =?UTF-8?q?Rename=20=E8=A8=BA=E6=96=AD.css=20to=20as?= =?UTF-8?q?sessme.css?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- "\350\250\272\346\226\255.css" => assessme.css | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename "\350\250\272\346\226\255.css" => assessme.css (100%) diff --git "a/\350\250\272\346\226\255.css" b/assessme.css similarity index 100% rename from "\350\250\272\346\226\255.css" rename to assessme.css From f5482be98ade666534ef7480db39f77a08fed198 Mon Sep 17 00:00:00 2001 From: UMR0403 <156527507+UMR0403@users.noreply.github.com> Date: Sun, 14 Jan 2024 01:08:23 +0900 Subject: [PATCH 07/13] Delete assessme.html --- assessme.html | 20 -------------------- 1 file changed, 20 deletions(-) delete mode 100644 assessme.html diff --git a/assessme.html b/assessme.html deleted file mode 100644 index 7b8e3fe67..000000000 --- a/assessme.html +++ /dev/null @@ -1,20 +0,0 @@ - - - - - -あなたの名前を入れてください
- - - - - - - - - - From 5283adba9ea5e65e0fca59d74de4ee95c84e0374 Mon Sep 17 00:00:00 2001 From: UMR0403 <156527507+UMR0403@users.noreply.github.com> Date: Sun, 14 Jan 2024 01:08:47 +0900 Subject: [PATCH 08/13] Add files via upload --- v.html | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 v.html diff --git a/v.html b/v.html new file mode 100644 index 000000000..5f8efa5d9 --- /dev/null +++ b/v.html @@ -0,0 +1,31 @@ + + + + + +あなたの名前を入れてください
+ + + + + + + + + + \ No newline at end of file From 8dc62c405137efd8eadc35c114c6f2b269f370ee Mon Sep 17 00:00:00 2001 From: UMR0403 <156527507+UMR0403@users.noreply.github.com> Date: Sun, 14 Jan 2024 01:11:56 +0900 Subject: [PATCH 09/13] Delete v.html --- v.html | 31 ------------------------------- 1 file changed, 31 deletions(-) delete mode 100644 v.html diff --git a/v.html b/v.html deleted file mode 100644 index 5f8efa5d9..000000000 --- a/v.html +++ /dev/null @@ -1,31 +0,0 @@ - - - - - -あなたの名前を入れてください
- - - - - - - - - - \ No newline at end of file From 32bb6adc77e51fedbda667c23ec1841a1d6fb919 Mon Sep 17 00:00:00 2001 From: UMR0403 <156527507+UMR0403@users.noreply.github.com> Date: Sun, 14 Jan 2024 01:13:06 +0900 Subject: [PATCH 10/13] Create assessment.html --- assessment.html | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) create mode 100644 assessment.html diff --git a/assessment.html b/assessment.html new file mode 100644 index 000000000..7b8e3fe67 --- /dev/null +++ b/assessment.html @@ -0,0 +1,20 @@ + + + + + +あなたの名前を入れてください
+ + + + + + + + + + From f6631b20292b3eb86d7497cc262b4ca725d48ab3 Mon Sep 17 00:00:00 2001 From: UMR0403 <156527507+UMR0403@users.noreply.github.com> Date: Sun, 14 Jan 2024 01:20:20 +0900 Subject: [PATCH 11/13] Delete README.md --- README.md | 2 -- 1 file changed, 2 deletions(-) delete mode 100644 README.md diff --git a/README.md b/README.md deleted file mode 100644 index 49293ca43..000000000 --- a/README.md +++ /dev/null @@ -1,2 +0,0 @@ -# assessment -あなたのいいところ診断ゲーム From 48d5d53bf58b406af4aa9e6477e5933785978389 Mon Sep 17 00:00:00 2001 From: UMR0403 <156527507+UMR0403@users.noreply.github.com> Date: Sun, 14 Jan 2024 01:31:09 +0900 Subject: [PATCH 12/13] Add files via upload --- README.md | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) create mode 100644 README.md diff --git a/README.md b/README.md new file mode 100644 index 000000000..7b058d7e6 --- /dev/null +++ b/README.md @@ -0,0 +1,16 @@ +### Hi there 👋 + + From 6bc1538a91c53305487709208929b610556298b1 Mon Sep 17 00:00:00 2001 From: UMR0403 <156527507+UMR0403@users.noreply.github.com> Date: Sun, 14 Jan 2024 01:53:04 +0900 Subject: [PATCH 13/13] Add files via upload --- v.html | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 v.html diff --git a/v.html b/v.html new file mode 100644 index 000000000..5f8efa5d9 --- /dev/null +++ b/v.html @@ -0,0 +1,31 @@ + + + + + +あなたの名前を入れてください
+ + + + + + + + + + \ No newline at end of file