From 8110b6915411660a10ec31421ef9bd0fe51c0a0b Mon Sep 17 00:00:00 2001 From: Yohei Yasukawa Date: Fri, 16 May 2025 12:01:12 +0900 Subject: [PATCH 01/16] Convert HTML to ERB: Partners section --- app/views/shared/_partners.haml | 59 ---------------------------- app/views/shared/_partners.html.erb | 61 +++++++++++++++++++++++++++++ 2 files changed, 61 insertions(+), 59 deletions(-) delete mode 100644 app/views/shared/_partners.haml create mode 100644 app/views/shared/_partners.html.erb diff --git a/app/views/shared/_partners.haml b/app/views/shared/_partners.haml deleted file mode 100644 index c19196fd..00000000 --- a/app/views/shared/_partners.haml +++ /dev/null @@ -1,59 +0,0 @@ -:javascript - $(function () { - $('[data-toggle="tooltip"]').tooltip(); - }); - -%ul - %li{style: 'margin: 20px auto;'}= link_to lazy_image_tag('/partners/case-shinjuku.png', alt: 'CASE Shinjuku', data: { toggle: 'tooltip', placement: 'bottom' }, title: 'オフィスの提供'), '/podcasts/8', target: "_blank", rel: "noopener" - %li{style: 'margin: 20px auto;'}= link_to lazy_image_tag('/partners/yasslab.webp', alt: 'YassLab 株式会社', data: { toggle: 'tooltip', placement: 'bottom' }, title: 'Webサイトの運営および開発支援'), 'https://github.com/coderdojo-japan/coderdojo.jp#history', target: "_blank", rel: "external noopener" - - %li{style: 'margin: 20px auto;'}= link_to lazy_image_tag('/partners/osscafe.png', alt: "下北沢オープンソースCafe", data: { toggle: 'tooltip', placement: 'bottom' }, title: 'ドメイン代の支援'), 'https://medium.com/opensource-cafe', target: "_blank", rel: "external noopener" - %li{style: 'margin: 20px auto;'}= link_to lazy_image_tag('/partners/mitoujr.webp', alt: '未踏ジュニア', data: { toggle: 'tooltip', placement: 'bottom' }, title: '活動資金の継続的な支援'), '/podcasts/11', target: "_blank", rel: "noopener" - - %li{style: 'margin: 20px auto;'}= link_to lazy_image_tag('/partners/ht79.png', alt: 'NPO法人のためのIT支援事務所 ht', data: { toggle: 'tooltip', placement: 'bottom' }, title: 'Newsサーバー代の支援'), 'https://ht79.info/', target: "_blank", rel: "external noopener" - %li{style: 'margin: 20px auto;'}= link_to lazy_image_tag('/partners/esa.webp', alt: 'esa LLC', data: { toggle: 'tooltip', placement: 'bottom' }, title: 'ドキュメント共有サービスの提供'), 'https://docs.esa.io/posts/239', target: "_blank", rel: "external noopener" - - %li{style: 'margin: 20px auto;'}= link_to lazy_image_tag('/partners/sakura-internet.png', alt: 'さくらインターネット', data: { toggle: 'tooltip', placement: 'bottom' }, title: 'サーバー環境(クラウド)の提供'), 'https://www.sakura.ad.jp/information/pressreleases/2017/07/20/90191/', target: "_blank", rel: "external noopener" - %li{style: 'margin: 20px auto;'}= link_to lazy_image_tag('/partners/hay-kaikei.png', alt: 'Hay未来の税理士法人', data: { toggle: 'tooltip', placement: 'bottom' }, title: 'CoderDojo Japan の会計支援'), 'http://www.hay-kaikei.com/', target: "_blank", rel: "external noopener" - - %li{style: 'margin: 20px auto 30px;'}= link_to lazy_image_tag('/partners/techsoup-japan.png', alt: 'TechSoup Japan', data: { toggle: 'tooltip', placement: 'bottom' }, title: 'G Suite などの寄贈申請の支援'), 'https://news.coderdojo.jp/2019/03/03/google-for-nonprofits-via-techsoup-japan/', target: "_blank", rel: "noopener" - %li{style: 'margin: 20px auto 30px;'}= link_to lazy_image_tag('/partners/progate.png', alt: 'Progate', data: { toggle: 'tooltip', placement: 'bottom' }, title: 'プログラミング学習環境の支援'), 'https://news.coderdojo.jp/2018/10/29/プログラミング学習のprogate、全国のcoderdojoへ法人プラン/', target: "_blank", rel: "noopener" - - %li{style: 'margin: 20px auto 30px;'}= link_to lazy_image_tag('/partners/algolia.png', alt: 'Algolia', data: { toggle: 'tooltip', placement: 'bottom' }, title: '検索エンジン DocSearch の提供'), 'https://community.algolia.com/docsearch/', target: "_blank", rel: "external noopener" - %li{style: 'margin: 20px auto 30px;'}= link_to lazy_image_tag('/partners/github.png', alt: 'GitHub', data: { toggle: 'tooltip', placement: 'bottom' }, title: 'GitHub for Nonprofit の提供'), 'https://news.coderdojo.jp/2019/08/29/github-for-nonprofit/', target: "_blank", rel: "noopener" - - %li{style: 'margin: 20px auto 30px;'}= link_to lazy_image_tag('/partners/hackforplay.webp', alt: 'HackforPlay', data: { toggle: 'tooltip', placement: 'bottom' }, title: '法人向け HackforPlay の提供'), 'https://news.coderdojo.jp/2020/04/06/hackforplay-for-team/', target: "_blank", rel: "noopener" - %li{style: 'margin: 20px auto 30px;'}= link_to lazy_image_tag('/partners/google.png', alt: 'Google', data: { toggle: 'tooltip', placement: 'bottom' }, title: 'Benevity を通した活動資金の支援'), 'https://news.coderdojo.jp/2019/11/13/google-and-coderdojo-join-forces-in-japan/', target: "_blank", rel: "noopener" - - %li{style: 'margin: 20px auto;'}= link_to lazy_image_tag('/partners/tfabworks.png', alt: 'TFabWorks', data: { toggle: 'tooltip', placement: 'bottom' }, title: '無償レンタルプログラムの提供'), 'https://news.coderdojo.jp/2020/11/26/tfabworks-microbit-rental-program/', target: "_blank", rel: "noopener" - %li{style: 'margin: 20px auto;'}= link_to lazy_image_tag('/partners/grips.png', alt: 'GRIPS', data: { toggle: 'tooltip', placement: 'bottom' }, title: '教育用ロボットアームの提供'), 'https://news.coderdojo.jp/2021/04/28/dobot-rental-program/', target: "_blank", rel: "noopener" - - %li{style: 'margin: 35px auto 25px;'}= link_to lazy_image_tag('/partners/pokemon-foundation.png', alt: 'プログラミングでポケモンをうごかしてみよう', data: { toggle: 'tooltip', placement: 'bottom' }, title: 'ワークショッププログラムの提供'), 'https://news.coderdojo.jp/2021/04/23/programming-with-pokemon/', target: "_blank", rel: "noopener" - %li{style: 'margin: 35px auto 25px;'}= link_to lazy_image_tag('/partners/dpro.png', alt: 'DPro (ディープロ)', data: { toggle: 'tooltip', placement: 'bottom' }, title: '学習コンテンツの提供'), 'https://news.coderdojo.jp/2021/12/27/diver-learnings-for-coderdojo/', target: "_blank", rel: "noopener" - - %li{style: 'margin: 20px auto 30px;'}= link_to lazy_image_tag('/partners/toio.webp', alt: 'toio(トイオ)', data: { toggle: 'tooltip', placement: 'bottom' }, title: 'ロボットトイ「toio」の提供'), 'https://news.coderdojo.jp/2022/03/17/toio-sony-interactive-entertainment/', target: "_blank", rel: "noopener" - %li{style: 'margin: 20px auto 30px;'}= link_to lazy_image_tag('/partners/microbit.png', alt: 'micro:bit(マイクロビット)', data: { toggle: 'tooltip', placement: 'bottom' }, title: '教育用マイコンボードの提供'), 'https://news.coderdojo.jp/2022/05/16/1500-microbits-to-coderdojo/', target: "_blank", rel: "noopener" - - %li{style: 'margin: 30px auto 20px;'}= link_to lazy_image_tag('/partners/minecraftcup.png', alt: 'Minecraftカップ全国大会', data: { toggle: 'tooltip', placement: 'bottom' }, title: '教育版マイクラのライセンス貸出'), 'https://news.coderdojo.jp/2022/05/31/partnership-with-minecraftcup/', target: "_blank", rel: "noopener" - %li{style: 'margin: 30px auto 20px;'}= link_to lazy_image_tag('/partners/geolonia.png', alt: 'Geolonia', data: { toggle: 'tooltip', placement: 'bottom' }, title: 'DojoMap への地図データ提供'), 'https://news.coderdojo.jp/2022/12/01/dojomap-and-geolonia/', target: "_blank", rel: "noopener" - - // %li{style: 'margin: 30px auto 25px;'}= link_to lazy_image_tag('/partners/docker.png', alt: 'Docker Inc.', data: { toggle: 'tooltip', placement: 'bottom' }, title: 'Docker によるチーム開発の支援'), 'https://news.coderdojo.jp/2022/12/03/docker-sponsored-open-source-program/', target: "_blank", rel: "noopener" - // %li{style: 'margin: 30px auto 25px;'}= link_to lazy_image_tag('/partners/mitsue-links.png', alt: 'ミツエーリンクス', data: { toggle: 'tooltip', placement: 'bottom' }, title: '活動資金に対する支援'), 'https://news.coderdojo.jp/2023/01/01/partnership-with-mitsue-links/', target: "_blank", rel: "noopener" - - %li{style: 'margin: 30px auto 30px;'}= link_to lazy_image_tag('/partners/prtimes.png', alt: 'PR TIMES', data: { toggle: 'tooltip', placement: 'bottom' }, title: '非営利活動の情報発信の支援'), 'https://news.coderdojo.jp/2023/04/06/sponsored-by-prtimes/', target: "_blank", rel: "noopener" - %li{style: 'margin: 30px auto 30px;'}= link_to lazy_image_tag('/partners/box.webp', alt: 'Box Japan', data: { toggle: 'tooltip', placement: 'bottom' }, title: '128台のノート PC 寄贈'), 'https://news.coderdojo.jp/2024/12/25/box-japan-to-coderdojo/', target: "_blank", rel: "noopener" - - %li{style: 'margin: 10px auto 30px;'}= link_to lazy_image_tag('/partners/aqoocan.webp', alt: 'アクウカン - 所沢市のコワーキングスペース&工作室', data: { toggle: 'tooltip', placement: 'bottom' }, title: '75台の『ニャイス!コード』寄贈'), 'https://news.coderdojo.jp/2025/02/14/coderdojo-de-nyaicecode/', target: "_blank", rel: "noopener" - %li{style: 'margin: 10px auto 30px;'}= link_to lazy_image_tag('/partners/jcdpgstadium.webp', alt: 'プログラミングスタジアム', data: { toggle: 'tooltip', placement: 'bottom' }, title: '地域の Dojo の周知支援'), 'https://jcdpgstadium.jp/', target: "_blank", rel: "noopener" - - %li{style: 'margin: 20px auto 30px;'}= link_to lazy_image_tag('/partners/backlog.svg', alt: 'Backlog|チームで使うプロジェクト管理・タスク管理ツール', data: { toggle: 'tooltip', placement: 'bottom' }, title: 'Backlog によるタスク管理支援'), 'https://backlog.com/ja/', target: "_blank", rel: "noopener" - %li{style: 'margin: 20px auto 30px;'}= link_to lazy_image_tag('/partners/ngrok.svg', alt: 'ngrok | API Gateway, Kubernetes Ingress, Webhook Gateway', data: { toggle: 'tooltip', placement: 'bottom' }, title: 'ngrok によるWeb開発支援'), 'https://ngrok.com/', target: "_blank", rel: "noopener" - - /%li= link_to lazy_image_tag('/partners/scrivito.png', alt: 'Scrivito', data: { toggle: 'tooltip', placement: 'bottom' }, title: 'Cloud-Based CMS の提供'), 'https://scrivito.com/', target: "_blank", rel: "external noopener" - /%li= link_to lazy_image_tag('/partners/cygames.webp', alt: 'Cygames', data: { toggle: 'tooltip', placement: 'bottom' }, title: 'PC寄贈に関する支援'), 'https://news.coderdojo.jp/2018/11/28/from-cygames-to-all-dojos-in-japan/', target: "_blank", rel: "noopener" - - /%li= link_to lazy_image_tag('/partners/facebook.png', alt: 'Facebook Japan', data: { toggle: 'tooltip', placement: 'bottom' }, title: 'Facebookページの運用支援'), 'http://news.coderdojo.jp/2018/10/12/press-support-facebook-coupon/', target: "_blank", rel: "noopener" - /%li= link_to lazy_image_tag('/partners/wro.png', alt: 'WRO Japan', data: { toggle: 'tooltip', placement: 'bottom' }, title: 'ロボットキットの提供'), 'https://news.coderdojo.jp/2019/12/21/wro-japan-and-coderdojo-japan/', target: "_blank", rel: "noopener" - - /%li= link_to lazy_image_tag('/partners/topsic.png', alt: 'TOPSIC', data: { toggle: 'tooltip', placement: 'bottom' }, title: 'プログラミング学習環境の支援'), 'https://news.coderdojo.jp/2019/07/30/play-and-learn-with-programming-contest/', target: "_blank", rel: "noopener" - /%li= link_to lazy_image_tag('/partners/code-for-everyone.webp', alt: 'みんなのコード', data: { toggle: 'tooltip', placement: 'bottom' }, title: '学校との連携支援'), 'https://news.coderdojo.jp/2019/02/04/from-minnnanocode-to-coderdojo-japan/', target: "_blank", rel: "noopener" diff --git a/app/views/shared/_partners.html.erb b/app/views/shared/_partners.html.erb new file mode 100644 index 00000000..cbc538aa --- /dev/null +++ b/app/views/shared/_partners.html.erb @@ -0,0 +1,61 @@ +<% content_for :javascript do %> + $(function () { + $('[data-toggle="tooltip"]').tooltip(); + }); +<% end %> + + \ No newline at end of file From 636b757e8ad55903926e1c6b937c943dd3c4dc81 Mon Sep 17 00:00:00 2001 From: Yohei Yasukawa Date: Fri, 16 May 2025 12:05:09 +0900 Subject: [PATCH 02/16] Convert HTML to ERB: Sotechsha2 section --- app/views/shared/_sitemap_sotechsha2.html.erb | 47 +++++++++++++++++++ .../shared/_sitemap_sotechsha2.html.haml | 29 ------------ 2 files changed, 47 insertions(+), 29 deletions(-) create mode 100644 app/views/shared/_sitemap_sotechsha2.html.erb delete mode 100644 app/views/shared/_sitemap_sotechsha2.html.haml diff --git a/app/views/shared/_sitemap_sotechsha2.html.erb b/app/views/shared/_sitemap_sotechsha2.html.erb new file mode 100644 index 00000000..530003d0 --- /dev/null +++ b/app/views/shared/_sitemap_sotechsha2.html.erb @@ -0,0 +1,47 @@ + + +
+
\ No newline at end of file diff --git a/app/views/shared/_sitemap_sotechsha2.html.haml b/app/views/shared/_sitemap_sotechsha2.html.haml deleted file mode 100644 index 632278c7..00000000 --- a/app/views/shared/_sitemap_sotechsha2.html.haml +++ /dev/null @@ -1,29 +0,0 @@ -%nav.navbar - %ul.nav.navbar-nav - %li - %span.list-group - %a.list-group-item.list-group-item-success.text-center{:href => "/sotechsha2/gazou"} スプライト素材のダウンロード - %li - %span.list-group - %a.list-group-item.list-group-item-success.text-center{:href => "/sotechsha2/0"} 序章課題 - %li - %span.list-group - %a.list-group-item.list-group-item-success.text-center{:href => "/sotechsha2/1"} 1章課題 - %li - %span.list-group - %a.list-group-item.list-group-item-success.text-center{:href => "/sotechsha2/2"} 2章課題 - %li - %span.list-group - %a.list-group-item.list-group-item-success.text-center{:href => "/sotechsha2/3"} 3章課題 - %li - %span.list-group - %a.list-group-item.list-group-item-success.text-center{:href => "/sotechsha2/4"} 4章課題 - %li - %span.list-group - %a.list-group-item.list-group-item-success.text-center{:href => "/sotechsha2/5"} 5章課題 - %li - %span.list-group - %a.list-group-item.list-group-item-success.text-center{:href => "/sotechsha2/6"} 6章課題 - -%hr/ -%br/ From 993a95b4daf5bcec5a568f08a49bdde3916e095a Mon Sep 17 00:00:00 2001 From: Yohei Yasukawa Date: Fri, 16 May 2025 12:07:53 +0900 Subject: [PATCH 03/16] Convert HTML to ERB: Sotechsha section --- app/views/shared/_sitemap_sotechsha.html.erb | 47 +++++++++++++++++++ app/views/shared/_sitemap_sotechsha.html.haml | 29 ------------ 2 files changed, 47 insertions(+), 29 deletions(-) create mode 100644 app/views/shared/_sitemap_sotechsha.html.erb delete mode 100644 app/views/shared/_sitemap_sotechsha.html.haml diff --git a/app/views/shared/_sitemap_sotechsha.html.erb b/app/views/shared/_sitemap_sotechsha.html.erb new file mode 100644 index 00000000..fca68d51 --- /dev/null +++ b/app/views/shared/_sitemap_sotechsha.html.erb @@ -0,0 +1,47 @@ + + +
+
\ No newline at end of file diff --git a/app/views/shared/_sitemap_sotechsha.html.haml b/app/views/shared/_sitemap_sotechsha.html.haml deleted file mode 100644 index 56949abf..00000000 --- a/app/views/shared/_sitemap_sotechsha.html.haml +++ /dev/null @@ -1,29 +0,0 @@ -%nav.navbar - %ul.nav.navbar-nav - %li - %span.list-group - %a.list-group-item.list-group-item-success.text-center{:href => "/sotechsha/gazou"} スプライト素材のダウンロード - %li - %span.list-group - %a.list-group-item.list-group-item-success.text-center{:href => "/sotechsha/0"} 序章課題 - %li - %span.list-group - %a.list-group-item.list-group-item-success.text-center{:href => "/sotechsha/1"} 1章課題 - %li - %span.list-group - %a.list-group-item.list-group-item-success.text-center{:href => "/sotechsha/2"} 2章課題 - %li - %span.list-group - %a.list-group-item.list-group-item-success.text-center{:href => "/sotechsha/3"} 3章課題 - %li - %span.list-group - %a.list-group-item.list-group-item-success.text-center{:href => "/sotechsha/4"} 4章課題 - %li - %span.list-group - %a.list-group-item.list-group-item-success.text-center{:href => "/sotechsha/5"} 5章課題 - %li - %span.list-group - %a.list-group-item.list-group-item-success.text-center{:href => "/sotechsha/6"} 6章課題 - -%hr/ -%br/ From 65364193724f261f7ee43dab7c0e46ed392f6cf2 Mon Sep 17 00:00:00 2001 From: Yohei Yasukawa Date: Fri, 16 May 2025 12:37:17 +0900 Subject: [PATCH 04/16] Use content_for :javascript to work with ERB --- app/views/layouts/application.html.erb | 2 ++ app/views/shared/_partners.html.erb | 8 +++++--- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/app/views/layouts/application.html.erb b/app/views/layouts/application.html.erb index 39f7f458..30943f52 100644 --- a/app/views/layouts/application.html.erb +++ b/app/views/layouts/application.html.erb @@ -96,6 +96,8 @@ <%= render 'shared/footer' %> + <%= yield :javascript %> + <% end %>
    From e320a2c3f4e24b43761524214086ab7acd0292af Mon Sep 17 00:00:00 2001 From: Yohei Yasukawa Date: Fri, 16 May 2025 12:38:45 +0900 Subject: [PATCH 05/16] Cosmetic change --- app/views/shared/_partners.html.erb | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/app/views/shared/_partners.html.erb b/app/views/shared/_partners.html.erb index abe063d7..fc91b5db 100644 --- a/app/views/shared/_partners.html.erb +++ b/app/views/shared/_partners.html.erb @@ -40,9 +40,6 @@
  • <%= link_to lazy_image_tag('/partners/minecraftcup.png', alt: 'Minecraftカップ全国大会', data: { toggle: 'tooltip', placement: 'bottom' }, title: '教育版マイクラのライセンス貸出'), 'https://news.coderdojo.jp/2022/05/31/partnership-with-minecraftcup/', target: "_blank", rel: "noopener" %>
  • <%= link_to lazy_image_tag('/partners/geolonia.png', alt: 'Geolonia', data: { toggle: 'tooltip', placement: 'bottom' }, title: 'DojoMap への地図データ提供'), 'https://news.coderdojo.jp/2022/12/01/dojomap-and-geolonia/', target: "_blank", rel: "noopener" %>
  • - <%#
  • <%= link_to lazy_image_tag('/partners/docker.png', alt: 'Docker Inc.', data: { toggle: 'tooltip', placement: 'bottom' }, title: 'Docker によるチーム開発の支援'), 'https://news.coderdojo.jp/2022/12/03/docker-sponsored-open-source-program/', target: "_blank", rel: "noopener" %>
  • - <%#
  • <%= link_to lazy_image_tag('/partners/mitsue-links.png', alt: 'ミツエーリンクス', data: { toggle: 'tooltip', placement: 'bottom' }, title: '活動資金に対する支援'), 'https://news.coderdojo.jp/2023/01/01/partnership-with-mitsue-links/', target: "_blank", rel: "noopener" %>
  • -
  • <%= link_to lazy_image_tag('/partners/prtimes.png', alt: 'PR TIMES', data: { toggle: 'tooltip', placement: 'bottom' }, title: '非営利活動の情報発信の支援'), 'https://news.coderdojo.jp/2023/04/06/sponsored-by-prtimes/', target: "_blank", rel: "noopener" %>
  • <%= link_to lazy_image_tag('/partners/box.webp', alt: 'Box Japan', data: { toggle: 'tooltip', placement: 'bottom' }, title: '128台のノート PC 寄贈'), 'https://news.coderdojo.jp/2024/12/25/box-japan-to-coderdojo/', target: "_blank", rel: "noopener" %>
  • @@ -52,6 +49,9 @@
  • <%= link_to lazy_image_tag('/partners/backlog.svg', alt: 'Backlog|チームで使うプロジェクト管理・タスク管理ツール', data: { toggle: 'tooltip', placement: 'bottom' }, title: 'Backlog によるタスク管理支援'), 'https://backlog.com/ja/', target: "_blank", rel: "noopener" %>
  • <%= link_to lazy_image_tag('/partners/ngrok.svg', alt: 'ngrok | API Gateway, Kubernetes Ingress, Webhook Gateway', data: { toggle: 'tooltip', placement: 'bottom' }, title: 'ngrok によるWeb開発支援'), 'https://ngrok.com/', target: "_blank", rel: "noopener" %>
  • + <%#
  • <%= link_to lazy_image_tag('/partners/docker.png', alt: 'Docker Inc.', data: { toggle: 'tooltip', placement: 'bottom' }, title: 'Docker によるチーム開発の支援'), 'https://news.coderdojo.jp/2022/12/03/docker-sponsored-open-source-program/', target: "_blank", rel: "noopener" %>
  • + <%#
  • <%= link_to lazy_image_tag('/partners/mitsue-links.png', alt: 'ミツエーリンクス', data: { toggle: 'tooltip', placement: 'bottom' }, title: '活動資金に対する支援'), 'https://news.coderdojo.jp/2023/01/01/partnership-with-mitsue-links/', target: "_blank", rel: "noopener" %>
  • + <%#
  • <%= link_to lazy_image_tag('/partners/scrivito.png', alt: 'Scrivito', data: { toggle: 'tooltip', placement: 'bottom' }, title: 'Cloud-Based CMS の提供'), 'https://scrivito.com/', target: "_blank", rel: "external noopener" %>
  • <%#
  • <%= link_to lazy_image_tag('/partners/cygames.webp', alt: 'Cygames', data: { toggle: 'tooltip', placement: 'bottom' }, title: 'PC寄贈に関する支援'), 'https://news.coderdojo.jp/2018/11/28/from-cygames-to-all-dojos-in-japan/', target: "_blank", rel: "noopener" %>
  • @@ -60,4 +60,4 @@ <%#
  • <%= link_to lazy_image_tag('/partners/topsic.png', alt: 'TOPSIC', data: { toggle: 'tooltip', placement: 'bottom' }, title: 'プログラミング学習環境の支援'), 'https://news.coderdojo.jp/2019/07/30/play-and-learn-with-programming-contest/', target: "_blank", rel: "noopener" %>
  • <%#
  • <%= link_to lazy_image_tag('/partners/code-for-everyone.webp', alt: 'みんなのコード', data: { toggle: 'tooltip', placement: 'bottom' }, title: '学校との連携支援'), 'https://news.coderdojo.jp/2019/02/04/from-minnnanocode-to-coderdojo-japan/', target: "_blank", rel: "noopener" %>
  • -
\ No newline at end of file + From c23f28e3f29df25db23f3301329a1da09325efeb Mon Sep 17 00:00:00 2001 From: Yohei Yasukawa Date: Fri, 16 May 2025 12:45:28 +0900 Subject: [PATCH 06/16] Convert HTML to ERB: Social Buttons partial --- app/views/shared/_social_buttons.html.erb | 15 +++++++++++++ app/views/shared/_social_buttons.html.haml | 15 ------------- app/views/shared/_social_buttons_raw.html.erb | 21 +++++++++++++++++++ .../shared/_social_buttons_raw.html.haml | 14 ------------- 4 files changed, 36 insertions(+), 29 deletions(-) create mode 100644 app/views/shared/_social_buttons.html.erb delete mode 100644 app/views/shared/_social_buttons.html.haml create mode 100644 app/views/shared/_social_buttons_raw.html.erb delete mode 100644 app/views/shared/_social_buttons_raw.html.haml diff --git a/app/views/shared/_social_buttons.html.erb b/app/views/shared/_social_buttons.html.erb new file mode 100644 index 00000000..fc68cb4a --- /dev/null +++ b/app/views/shared/_social_buttons.html.erb @@ -0,0 +1,15 @@ +<% content_for :javascript do %> + +<% end %> + + \ No newline at end of file diff --git a/app/views/shared/_social_buttons.html.haml b/app/views/shared/_social_buttons.html.haml deleted file mode 100644 index 2f7579bc..00000000 --- a/app/views/shared/_social_buttons.html.haml +++ /dev/null @@ -1,15 +0,0 @@ -%ul.social_buttons - %li - %div.fb-like{"data-action" => "like", "data-href" => "#{full_url(yield(:url))}", "data-layout" => "button_count", "data-share" => "true", "data-show-faces" => "true"} - %li - %a.twitter-share-button{"data-hashtags" => "CoderDojo", "data-lang" => "ja", "data-text" => "#{full_title(yield(:title))}", "data-url" => "#{full_url(yield(:url))}", "data-via" => "CoderDojoJapan", href: "https://twitter.com/share", width: "100"} Tweet - :javascript - !function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0],p=/^http:/.test(d.location)?'http':'https';if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src=p+'://platform.twitter.com/widgets.js';fjs.parentNode.insertBefore(js,fjs);}}(document, 'script', 'twitter-wjs'); - - /%li - / %a.hatena-bookmark-button{"data-hatena-bookmark-lang" => "ja", "data-hatena-bookmark-layout" => "basic-counter", "data-hatena-bookmark-title" => "#{full_title(yield(:title))}", href: "#{full_url(yield(:url))}", title: "このエントリーをはてなブックマークに追加"} - / %img{alt: "このエントリーをはてなブックマークに追加", height: "20", src: "https://b.st-hatena.com/images/v4/public/entry-button/button-only@2x.png", style: "border: none;", width: "20"}/ - / %script{async: "async", charset: "utf-8", src: "https://b.st-hatena.com/js/bookmark_button.js", type: "text/javascript"} - /%li{:style => "display: inline-block;"} - / %div.line-it-button{"data-lang" => "ja", "data-type" => "like", "data-url" => "#{full_url(yield(:url))}", style: "display: none;"} - / %script{async: "async", defer: "defer", src: "https://d.line-scdn.net/r/web/social-plugin/js/thirdparty/loader.min.js"} diff --git a/app/views/shared/_social_buttons_raw.html.erb b/app/views/shared/_social_buttons_raw.html.erb new file mode 100644 index 00000000..f15dcd44 --- /dev/null +++ b/app/views/shared/_social_buttons_raw.html.erb @@ -0,0 +1,21 @@ +<% content_for :javascript do %> + + +<% end %> + +
    +
  1. +
    +
  2. +
  3. + +
  4. +
  5. + + このエントリーをはてなブックマークに追加 + +
  6. + <%# コメントアウトされたLINEのボタンは省略 %> +
\ No newline at end of file diff --git a/app/views/shared/_social_buttons_raw.html.haml b/app/views/shared/_social_buttons_raw.html.haml deleted file mode 100644 index 53ef6584..00000000 --- a/app/views/shared/_social_buttons_raw.html.haml +++ /dev/null @@ -1,14 +0,0 @@ -%ol.text-center{:style => "list-style: none; margin-top: 30px; margin-left: 0px; padding-left: 0px; text-align: center;"} - %li{:style => "display: inline-block; line-height: 28px;"} - %div.fb-like{"data-action" => "like", "data-href" => "#{full_url(yield(:url))}", "data-layout" => "button_count", "data-share" => "true", "data-show-faces" => "true"} - %li{:style => "display: inline-block;"} - %a.twitter-share-button{"data-hashtags" => "CoderDojo", "data-lang" => "ja", "data-text" => "#{full_title(yield(:title))}", "data-url" => "#{full_url(yield(:url))}", "data-via" => "CoderDojoJapan", href: "https://twitter.com/share", width: "100"} Tweet - :javascript - !function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0],p=/^http:/.test(d.location)?'http':'https';if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src=p+'://platform.twitter.com/widgets.js';fjs.parentNode.insertBefore(js,fjs);}}(document, 'script', 'twitter-wjs'); - %li{:style => "display: inline-block;"} - %a.hatena-bookmark-button{"data-hatena-bookmark-lang" => "ja", "data-hatena-bookmark-layout" => "basic-counter", "data-hatena-bookmark-title" => "#{full_title(yield(:title))}", href: "#{full_url(yield(:url))}", title: "このエントリーをはてなブックマークに追加"} - %img{alt: "このエントリーをはてなブックマークに追加", height: "20", src: "https://b.st-hatena.com/images/v4/public/entry-button/button-only@2x.png", style: "border: none;", width: "20"}/ - %script{async: "async", charset: "utf-8", src: "https://b.st-hatena.com/js/bookmark_button.js", type: "text/javascript"} - /%li{:style => "display: inline-block;"} - / %div.line-it-button{"data-lang" => "ja", "data-type" => "like", "data-url" => "#{full_url(yield(:url))}", style: "display: none;"} - / %script{async: "async", defer: "defer", src: "https://d.line-scdn.net/r/web/social-plugin/js/thirdparty/loader.min.js"} From 9ae9b5e057d5c0bb80381972cf5bf3ea80501a67 Mon Sep 17 00:00:00 2001 From: Yohei Yasukawa Date: Fri, 16 May 2025 12:48:51 +0900 Subject: [PATCH 07/16] Convert HTML to ERB: Newsletter --- app/views/home/show.html.erb | 14 +++++++++++++- app/views/shared/_newsletter.html.haml | 8 -------- 2 files changed, 13 insertions(+), 9 deletions(-) delete mode 100644 app/views/shared/_newsletter.html.haml diff --git a/app/views/home/show.html.erb b/app/views/home/show.html.erb index 51aa2156..b2b24cf8 100644 --- a/app/views/home/show.html.erb +++ b/app/views/home/show.html.erb @@ -203,7 +203,19 @@
(毎月配信)

- <%= render partial: 'shared/newsletter' %> + +
+
+
+ + + +
+
+
+
diff --git a/app/views/shared/_newsletter.html.haml b/app/views/shared/_newsletter.html.haml deleted file mode 100644 index 4f1bd460..00000000 --- a/app/views/shared/_newsletter.html.haml +++ /dev/null @@ -1,8 +0,0 @@ -%div#mc_embed_signup - %form#mc-embedded-subscribe-form{class: "validate", action: "https://coderdojo.us17.list-manage.com/subscribe/post?u=39a5824e42ab56ec44bb4e84e&id=097dfa6a14", method: "post", name: "mc-embedded-subscribe-form", novalidate: "", target: "_blank"} - #mc_embed_signup_scroll - %input#mce-EMAIL{type: "email", name: "EMAIL", class: "email", placeholder: "your@example.com"} - %div{style: "position: absolute; left: -5000px;", 'aria-hidden' => 'true'} - %input{tabindex: "-1", name: "b_39a5824e42ab56ec44bb4e84e_097dfa6a14", type: "text", value: ""} - %input{id: "mc-embedded-subscribe", class: "button", name: "subscribe", type: "submit", value: "購読する"} - From 13968aa15be553df534821ce4a4414359a194233 Mon Sep 17 00:00:00 2001 From: Yohei Yasukawa Date: Fri, 16 May 2025 12:57:34 +0900 Subject: [PATCH 08/16] Convert HTML to ERB: Header partial --- app/views/shared/_header.html.erb | 100 +++++++++++++++++++++++++++++ app/views/shared/_header.html.haml | 82 ----------------------- 2 files changed, 100 insertions(+), 82 deletions(-) create mode 100644 app/views/shared/_header.html.erb delete mode 100644 app/views/shared/_header.html.haml diff --git a/app/views/shared/_header.html.erb b/app/views/shared/_header.html.erb new file mode 100644 index 00000000..96868778 --- /dev/null +++ b/app/views/shared/_header.html.erb @@ -0,0 +1,100 @@ + + +<% content_for :javascript do %> + +<% end %> diff --git a/app/views/shared/_header.html.haml b/app/views/shared/_header.html.haml deleted file mode 100644 index 96c1d2fc..00000000 --- a/app/views/shared/_header.html.haml +++ /dev/null @@ -1,82 +0,0 @@ -%nav.navbar.navbar-default.navbar-fixed-top#header - .container-fluid - .navbar-header - %button.navbar-toggle.collapsed{ "type" => "button", "data-toggle" => "collapse", - "data-target" => "#header-nav-toggle", "aria-expanded" => "false" } - %span.sr-only Toggle navigation - %span.icon-bar - %span.icon-bar - %span.icon-bar - .navbar-header-logos - = link_to lazy_image_tag('/img/header-logo.png', alt: 'CoderDojo logo', min: true), '/', id: "header-logo" - = link_to lazy_image_tag('/img/header-brand.png', alt: 'CoderDojo brand', min: true), '/', id: "header-brand" - #bs-example-navbar-collapse-1.collapse#header-nav-toggle.navbar-collapse - %ul.nav.navbar-nav.navbar-right - %li= link_to '全国の道場', '/#dojos' - %li= link_to 'パートナー法人', '/#partners' - %li.navbar-dd-p - = link_to '最近の活動', '/#news' - %span.navbar-dd-l - %ul.navbar-dd - /%li= link_to '☯️ SNS', '/#timeline' - %li= link_to '📰 News', '/#news' - %li= link_to '📻 Podcast', '/podcasts' - %li= link_to '📺 YouTube', '/youtube' - %li= link_to '📚 その他', '/#kata' - %li.navbar-dd-p - = link_to '道場を探す', '/#dojos' - %span.navbar-dd-l - %ul.navbar-dd - / %li= link_to '☯️ 一覧から', '/#dojos' - %li - = link_to '/#dojos' do - ☯️ 一覧から - %span.ignore-pc<> 探す - %li - = link_to '/events' do - 📅 日付から - %span.ignore-pc<> 探す - %li - = link_to dojomap_url do - 🗾 地図から - %span.ignore-pc<> 探す - %li.navbar-dd-p - = link_to '資料を探す', '/kata' - %span.navbar-dd-l - %ul.navbar-dd - %li= link_to '🔰 はじめに', '/kata#README' - %li= link_to '📰 メディア', '/kata#media' - %li= link_to '🎓 学ぶ', '/kata#learn' - %li= link_to '🏆 腕試し', '/kata#challenge' - %li= link_to '☯️ 立ち上げ', '/kata#startup' - %li= link_to '🎁 運営支援', '/kata#support' - %li= link_to '✅ FAQ', '/kata#faq' - %li= link_to '🤝 法人向け', '/partnership' - %li= link_to '📊 統計情報', '/stats' - %li= link_to '📚 資料集', '/docs' - %li= link_to '📩 連絡する', '/#contact' - %li= link_to '🌏 English', '/english', hreflang: 'en' - - / DocSearch: https://github.com/algolia/docsearch-configs/blob/master/configs/coderdojo.json - %li.search-li - %label.search-label{for: 'search'} - %img.search-icon{alt: '検索アイコン', src: '/img/search.svg'} - 検索で探す - = check_box_tag :search, "検索アイコン", false, class: 'search-checkbox', onclick: 'focusSearchBox()' - %div.search - %input#searchbox{placeholder: "例: コンテスト、教材", type: "text"} - #hits - #pagination - - -:javascript - function focusSearchBox() { - document.getElementById("searchbox").focus(); - }; - - document.addEventListener('click', (e) => { - if(e.target.closest('#header-nav-toggle') || !e.target.closest('#header-nav-toggle')) { - const element = document.getElementById('header-nav-toggle') - element.classList.remove('in'); - } - }) From 60034258384bbb4fad8870753eec79593c24c639 Mon Sep 17 00:00:00 2001 From: Yohei Yasukawa Date: Fri, 16 May 2025 13:03:02 +0900 Subject: [PATCH 09/16] Convert HTML to ERB: Footer partial --- app/views/shared/_footer.html.erb | 55 ++++++++++++++++++++++++++++++ app/views/shared/_footer.html.haml | 55 ------------------------------ 2 files changed, 55 insertions(+), 55 deletions(-) create mode 100644 app/views/shared/_footer.html.erb delete mode 100644 app/views/shared/_footer.html.haml diff --git a/app/views/shared/_footer.html.erb b/app/views/shared/_footer.html.erb new file mode 100644 index 00000000..0aeb7d0a --- /dev/null +++ b/app/views/shared/_footer.html.erb @@ -0,0 +1,55 @@ + diff --git a/app/views/shared/_footer.html.haml b/app/views/shared/_footer.html.haml deleted file mode 100644 index a924d6dc..00000000 --- a/app/views/shared/_footer.html.haml +++ /dev/null @@ -1,55 +0,0 @@ -%footer#footer.footer-bottom.text-center - %h2{style: "line-height: 30px;"} - %a.footer-link{href: '/', title: 'トップページに戻ります'} Top - | - %a.footer-link{href: '/kata', title: '道場情報まとめ「Kata」を見る'} Kata - | - %a.footer-link{href: '/#news', title: '最近のニュース「DojoLetter」を見る'} News - | - %a.footer-link{href: '/docs', title: '公式資料まとめ「Docs」を見る'} 資料 - | - %a.footer-link{href: '/charter', title: 'CoderDojo 憲章を見る'} 憲章 - | - %a.footer-link{href: '/stats', title: 'CoderDojo の統計データを見る'} 統計 - | - %a.footer-link{href: '/sotechsha2', title: 'CoderDojo Japan 公式ブックを見る'} 書籍 - | - %a.footer-link{href: dojomap_url, title: '地図から探せる「DojoMap」を見る'} 地図 - | - %a.footer-link{href: '/privacy', title: 'プライバシーポリシーを見る'} Privacy - | - %a.footer-link{href: '/podcasts', title: 'ポッドキャスト番組「DojoCast」を見る'} Podcast - | - %a.footer-link{href: decadojo_url, title: 'CoderDojo の地域カンファレンス「DecaDojo」を見る'} DecaDojo - | - %a.footer-link{href: dojocon_url, title: 'CoderDojo の全国カンファレンス「DojoCon Japan」を見る'} DojoCon - | - %a.footer-link{href: '/english', hreflang: 'en', title: "Read CoderDojo Japan's website in English"} English - %h2 - %a{href: "http://news.coderdojo.jp/", target: "_blank", rel: "external noopener"} - %i.fa.fa-newspaper-o.fa-3x.fa-fw{"aria-hidden" => "true", title: "News"} - /%a{href: "https://github.com/coderdojo-japan"} / GitHub は直後の文章でリンクがあるので省略 - / %i.fa.fa-github.fa-3x.fa-fw{"aria-hidden" => "true", :title => "GitHub"} - %a{href: "https://www.facebook.com/coderdojo.jp/"} - %i.fa.fa-facebook.fa-3x.fa-fw{"aria-hidden" => "true", title: "Facebook"} - %a{href: "https://twitter.com/CoderDojoJapan"} - %i.fa.fa-twitter.fa-3x.fa-fw{"aria-hidden" => "true", title: "Twitter"} - %a{href: "https://www.youtube.com/CoderDojoJapan"} - %i.fa.fa-youtube.fa-3x.fa-fw{"aria-hidden" => "true", title: "YouTube"} - %a{href: "/podcasts" } - %i.fa.fa-podcast.fa-3x.fa-fw{"aria-hidden" => "true", title: "Podcast"} - %a{href: "/english" } - %i.fa.fa-globe.fa-3x.fa-fw{"aria-hidden" => "true", title: "English"} - %p{style: "margin-bottom: 30px;"} - 本サイトのソースコードは - %br.ignore-pc - %a.footer-link{href: "https://github.com/coderdojo-japan/coderdojo.jp"} GitHub - 上で公開されています。 - %p{style: "font-size: 90%; color: \#DDDDDD;"} - Copyright © - %a{href: "/about-coderdojo-japan", style: "color: \#DDDDDD; text-decoration: none;"} - 一般社団法人 CoderDojo Japan - %br/ - 新宿区高田馬場1-28-10 三慶ビル4F - %a{href: "https://case-shinjuku.com/", style: "color: \#DDDDDD; text-decoration: none;"} - ケイス新宿 From e878855c9cd44c647fabca9eaf65f8fa88402fca Mon Sep 17 00:00:00 2001 From: Yohei Yasukawa Date: Fri, 16 May 2025 13:07:07 +0900 Subject: [PATCH 10/16] Cosmetic change on links in footer --- app/views/shared/_footer.html.erb | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/app/views/shared/_footer.html.erb b/app/views/shared/_footer.html.erb index 0aeb7d0a..0e330c11 100644 --- a/app/views/shared/_footer.html.erb +++ b/app/views/shared/_footer.html.erb @@ -16,24 +16,24 @@

- + <%= link_to news_url do %> - - + <% end %> + <%= link_to "https://www.facebook.com/coderdojo.jp/" do %> - - + <% end %> + <%= link_to "https://twitter.com/CoderDojoJapan" do %> - - + <% end %> + <%= link_to "https://www.youtube.com/CoderDojoJapan" do %> - - + <% end %> + <%= link_to podcasts_path do %> - - + <% end %> + <%= link_to english_path do %> - + <% end %>

From eeabbf78e82aadbe55bc31e23912516891dfa825 Mon Sep 17 00:00:00 2001 From: Yohei Yasukawa Date: Fri, 16 May 2025 13:13:10 +0900 Subject: [PATCH 11/16] Refactor: Add and use helpers for links to official pages --- app/helpers/application_helper.rb | 30 +++++++++++------------------- app/views/shared/_footer.html.erb | 6 +++--- 2 files changed, 14 insertions(+), 22 deletions(-) diff --git a/app/helpers/application_helper.rb b/app/helpers/application_helper.rb index 78d8edd6..22f36f0f 100644 --- a/app/helpers/application_helper.rb +++ b/app/helpers/application_helper.rb @@ -85,26 +85,18 @@ def news_path(options={anchor: 'news'}) root_path(options) end - def news_url(path='/') - 'https://news.coderdojo.jp' + path - end - - def decadojo_url; 'https://decadojo.coderdojo.jp'; end - def dojocon_url; 'https://dojocon.coderdojo.jp'; end + def news_url(path='/'); 'https://news.coderdojo.jp' + path; end + def dojomap_url(path='/'); 'https://map.coderdojo.jp' + path; end + def zen_url(path='/find'); 'https://zen.coderdojo.com' + path; end - def dojoletter_url() - 'https://news.coderdojo.jp/category/DojoLetterバックナンバー' - end + def decadojo_url; 'https://decadojo.coderdojo.jp'; end + def dojocon_url; 'https://dojocon.coderdojo.jp'; end + def dojoletter_url; 'https://news.coderdojo.jp/category/DojoLetterバックナンバー'; end + def foundation_url; 'https://speakerdeck.com/helloworldfoundation'; end - def dojomap_url(path='/') - 'https://map.coderdojo.jp' + path - end + def facebook_group_url; 'https://www.facebook.com/groups/coderdojo.jp'; end + def facebook_page_url; 'https://www.facebook.com/coderdojo.jp'; end + def twitter_url; 'https://twitter.com/CoderDojoJapan'; end + def youtube_url; 'https://youtube.com/CoderDojoJapan'; end - def foundation_url - 'https://speakerdeck.com/helloworldfoundation' - end - - def zen_url(path='/find') - 'https://zen.coderdojo.com' + path - end end diff --git a/app/views/shared/_footer.html.erb b/app/views/shared/_footer.html.erb index 0e330c11..7a041c02 100644 --- a/app/views/shared/_footer.html.erb +++ b/app/views/shared/_footer.html.erb @@ -19,13 +19,13 @@ <%= link_to news_url do %> <% end %> - <%= link_to "https://www.facebook.com/coderdojo.jp/" do %> + <%= link_to facebook_page_url do %> <% end %> - <%= link_to "https://twitter.com/CoderDojoJapan" do %> + <%= link_to twitter_url do %> <% end %> - <%= link_to "https://www.youtube.com/CoderDojoJapan" do %> + <%= link_to youtube_url do %> <% end %> <%= link_to podcasts_path do %> From 4d6b687ba011ae3ce953491a14f1f38218e65ce7 Mon Sep 17 00:00:00 2001 From: Yohei Yasukawa Date: Fri, 16 May 2025 13:20:02 +0900 Subject: [PATCH 12/16] Cosmetic change on helpers --- app/helpers/application_helper.rb | 13 ++++--------- 1 file changed, 4 insertions(+), 9 deletions(-) diff --git a/app/helpers/application_helper.rb b/app/helpers/application_helper.rb index 22f36f0f..8ad2b234 100644 --- a/app/helpers/application_helper.rb +++ b/app/helpers/application_helper.rb @@ -77,16 +77,11 @@ def lazy_image_tag(source, options={}) end end - def welcome_path(options={anchor: 'welcome'}) - root_path(options) - end - - def news_path(options={anchor: 'news'}) - root_path(options) - end + def welcome_path(options={anchor: 'welcome'}); root_path(options); end + def news_path (options={anchor: 'news'}); root_path(options); end - def news_url(path='/'); 'https://news.coderdojo.jp' + path; end - def dojomap_url(path='/'); 'https://map.coderdojo.jp' + path; end + def news_url (path='/'); 'https://news.coderdojo.jp' + path; end + def dojomap_url(path='/'); 'https://map.coderdojo.jp' + path; end def zen_url(path='/find'); 'https://zen.coderdojo.com' + path; end def decadojo_url; 'https://decadojo.coderdojo.jp'; end From 1b83ea422a5f58325abe90469c8095139a5342c1 Mon Sep 17 00:00:00 2001 From: Yohei Yasukawa Date: Fri, 16 May 2025 13:28:55 +0900 Subject: [PATCH 13/16] Convert HTML to ERB: Dojo/Dojos partials --- app/views/shared/_dojo.html+smartphone.erb | 27 ++++++++++++++++ app/views/shared/_dojo.html+smartphone.haml | 18 ----------- app/views/shared/_dojo.html.erb | 25 +++++++++++++++ app/views/shared/_dojo.html.haml | 17 ---------- app/views/shared/_dojos.html+smartphone.erb | 33 ++++++++++++++++++++ app/views/shared/_dojos.html+smartphone.haml | 24 -------------- app/views/shared/_dojos.html.erb | 3 ++ app/views/shared/_dojos.html.haml | 2 -- app/views/shared/_dojos_stats.html.erb | 1 + app/views/shared/_dojos_stats.html.haml | 1 - 10 files changed, 89 insertions(+), 62 deletions(-) create mode 100644 app/views/shared/_dojo.html+smartphone.erb delete mode 100644 app/views/shared/_dojo.html+smartphone.haml create mode 100644 app/views/shared/_dojo.html.erb delete mode 100644 app/views/shared/_dojo.html.haml create mode 100644 app/views/shared/_dojos.html+smartphone.erb delete mode 100644 app/views/shared/_dojos.html+smartphone.haml create mode 100644 app/views/shared/_dojos.html.erb delete mode 100644 app/views/shared/_dojos.html.haml create mode 120000 app/views/shared/_dojos_stats.html.erb delete mode 120000 app/views/shared/_dojos_stats.html.haml diff --git a/app/views/shared/_dojo.html+smartphone.erb b/app/views/shared/_dojo.html+smartphone.erb new file mode 100644 index 00000000..07283497 --- /dev/null +++ b/app/views/shared/_dojo.html+smartphone.erb @@ -0,0 +1,27 @@ +

  • +
    + <%= link_to lazy_image_tag(dojo.logo, alt: "CoderDojo #{dojo.name}", class: 'dojo-picture-sp'), dojo.url, + target: "_blank", rel: "external noopener" %> +

    + + <%= link_to "#{dojo.name} (#{dojo.prefecture.name})", dojo.url, target: "_blank", rel: "external noopener" %> + <% if not dojo.counter == 1 %> + <%= dojo.counter %> + <% end %> + + + <%= dojo.description %> + <% if dojo.is_private %> + <%= link_to 'Private', doc_path('private-dojo'), class: 'dojo-private' %> + <% end %> + +

    +
    +
      + <% dojo.tags.each do |tag| %> +
    • <%= tag %>
    • + <% end %> +
    +
  • \ No newline at end of file diff --git a/app/views/shared/_dojo.html+smartphone.haml b/app/views/shared/_dojo.html+smartphone.haml deleted file mode 100644 index dcf7ab56..00000000 --- a/app/views/shared/_dojo.html+smartphone.haml +++ /dev/null @@ -1,18 +0,0 @@ -%li.dojo.dojo-sp - %header - = link_to lazy_image_tag(dojo.logo, alt: "CoderDojo #{dojo.name}", class: 'dojo-picture-sp'), dojo.url, - target: "_blank", rel: "external noopener" - %p.dojo-sp-info - %span.dojo-name.dojo-name-sp - = link_to "#{dojo.name} (#{dojo.prefecture.name})", dojo.url, target: "_blank", rel: "external noopener" - - if not dojo.counter == 1 - %span.dojo-counter{'data-original-title' => '道場数', - 'data-placement' => 'bottom', - 'data-toggle' => 'tooltip'}= dojo.counter - %span.dojo-description - = dojo.description - - if dojo.is_private - = link_to 'Private', doc_path('private-dojo'), class: 'dojo-private' - %ul.tags - - dojo.tags.each do |tag| - %li= tag diff --git a/app/views/shared/_dojo.html.erb b/app/views/shared/_dojo.html.erb new file mode 100644 index 00000000..9fa50b44 --- /dev/null +++ b/app/views/shared/_dojo.html.erb @@ -0,0 +1,25 @@ +
  • +
    + <%= link_to lazy_image_tag(dojo.logo, alt: "CoderDojo #{dojo.name}", class: 'dojo-picture'), dojo.url, + target: "_blank", rel: "external noopener" %> + + <%= link_to "#{dojo.name} (#{dojo.prefecture.name})", dojo.url, target: "_blank", rel: "external noopener" %> + <% if not dojo.counter == 1 %> + <%= dojo.counter %> + <% end %> + +
    +
      + <% dojo.tags.each do |tag| %> +
    • <%= tag %>
    • + <% end %> +
    +

    + <%= dojo.description %> + <% if dojo.is_private %> + <%= link_to 'Private', doc_path('private-dojo'), class: 'dojo-private' %> + <% end %> +

    +
  • \ No newline at end of file diff --git a/app/views/shared/_dojo.html.haml b/app/views/shared/_dojo.html.haml deleted file mode 100644 index 3c1f6953..00000000 --- a/app/views/shared/_dojo.html.haml +++ /dev/null @@ -1,17 +0,0 @@ -%li.dojo{id: "#{dojo.name}"} - %header - = link_to lazy_image_tag(dojo.logo, alt: "CoderDojo #{dojo.name}", class: 'dojo-picture'), dojo.url, - target: "_blank", rel: "external noopener" - %span.dojo-name - = link_to "#{dojo.name} (#{dojo.prefecture.name})", dojo.url, target: "_blank", rel: "external noopener" - - if not dojo.counter == 1 - %span.dojo-counter{'data-original-title' => '道場数', - 'data-placement' => 'bottom', - 'data-toggle' => 'tooltip'}= dojo.counter - %ul.tags - - dojo.tags.each do |tag| - %li= tag - %p.dojo-description - = dojo.description - - if dojo.is_private - = link_to 'Private', doc_path('private-dojo'), class: 'dojo-private' diff --git a/app/views/shared/_dojos.html+smartphone.erb b/app/views/shared/_dojos.html+smartphone.erb new file mode 100644 index 00000000..71629ad7 --- /dev/null +++ b/app/views/shared/_dojos.html+smartphone.erb @@ -0,0 +1,33 @@ +
    + <% regions_and_dojos.each_with_index do |(region, dojos), index| %> +
    + +
    +
    + <%= render partial: 'shared/dojo', collection: dojos %> +
    +
    +
    + <% end %> +
    + + \ No newline at end of file diff --git a/app/views/shared/_dojos.html+smartphone.haml b/app/views/shared/_dojos.html+smartphone.haml deleted file mode 100644 index 04d32ba9..00000000 --- a/app/views/shared/_dojos.html+smartphone.haml +++ /dev/null @@ -1,24 +0,0 @@ -#accordion.panel-group{"aria-multiselectable" => "true", role: "tablist"} - - regions_and_dojos.each_with_index do |(region, dojos), index| - .panel.panel-default - .panel-heading{id: "heading#{index}", role: "tab"} - %h4.panel-title - %a{"data-toggle" => "collapse", - href: "##{"collapse#{index}"}", role: "button"} - %i.fa.fa-chevron-right{"aria-hidden" => "true"} - = region - \- #{dojos.pluck(:counter).sum} Dojos - .panel-collapse.collapse{id: "collapse#{index}", role: "tabpanel"} - .panel-body.grayscale-bg.dojo-flex - = render partial: 'shared/dojo', collection: dojos - -:javascript - $(document).ready(function() { - $('.collapse').on('shown.bs.collapse', function() { - $(this).parent().find(".fa-chevron-right").removeClass("fa-chevron-right").addClass("fa-chevron-down"); - }); - - $('.collapse').on('hidden.bs.collapse', function() { - $(this).parent().find(".fa-chevron-down").removeClass("fa-chevron-down").addClass("fa-chevron-right"); - }); - }); diff --git a/app/views/shared/_dojos.html.erb b/app/views/shared/_dojos.html.erb new file mode 100644 index 00000000..4fa82c1b --- /dev/null +++ b/app/views/shared/_dojos.html.erb @@ -0,0 +1,3 @@ +
      + <%= render partial: 'shared/dojo', collection: regions_and_dojos.values.flatten %> +
    \ No newline at end of file diff --git a/app/views/shared/_dojos.html.haml b/app/views/shared/_dojos.html.haml deleted file mode 100644 index 621d32b8..00000000 --- a/app/views/shared/_dojos.html.haml +++ /dev/null @@ -1,2 +0,0 @@ -%ul.loaded.dojo-flex - = render partial: 'shared/dojo', collection: regions_and_dojos.values.flatten diff --git a/app/views/shared/_dojos_stats.html.erb b/app/views/shared/_dojos_stats.html.erb new file mode 120000 index 00000000..e033c6b7 --- /dev/null +++ b/app/views/shared/_dojos_stats.html.erb @@ -0,0 +1 @@ +_dojos.html+smartphone.erb \ No newline at end of file diff --git a/app/views/shared/_dojos_stats.html.haml b/app/views/shared/_dojos_stats.html.haml deleted file mode 120000 index 11471ff0..00000000 --- a/app/views/shared/_dojos_stats.html.haml +++ /dev/null @@ -1 +0,0 @@ -_dojos.html+smartphone.haml \ No newline at end of file From a933cb6a8eda1bfe40953e64661ea2e2568dd5f8 Mon Sep 17 00:00:00 2001 From: Yohei Yasukawa Date: Fri, 16 May 2025 13:31:54 +0900 Subject: [PATCH 14/16] Change openFiles point to ERB file in Dev Container --- .devcontainer/devcontainer.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.devcontainer/devcontainer.json b/.devcontainer/devcontainer.json index a62f4418..c9edf8ce 100644 --- a/.devcontainer/devcontainer.json +++ b/.devcontainer/devcontainer.json @@ -32,7 +32,7 @@ "customizations": { "codespaces": { "openFiles": [ - "app/views/home/show.html.haml" + "app/views/home/show.html.erb" ] }, "vscode": { From 83a97c481994ff70b3fcb512a138982721256622 Mon Sep 17 00:00:00 2001 From: Yohei Yasukawa Date: Fri, 16 May 2025 13:34:49 +0900 Subject: [PATCH 15/16] Update HAML-related comments --- app/views/home/show.html.erb | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/app/views/home/show.html.erb b/app/views/home/show.html.erb index b2b24cf8..6b381e9d 100644 --- a/app/views/home/show.html.erb +++ b/app/views/home/show.html.erb @@ -105,7 +105,8 @@
    - +