diff --git a/README.md b/README.md index 74fe4be03..f316a24cb 100644 --- a/README.md +++ b/README.md @@ -34,13 +34,14 @@ https://coderdojo.jp/docs にあるドキュメントの編集方法も同様で [Kata](https://coderdojo.jp/kata) や [Sotechsha](https://coderdojo.jp/sotechsha) などのいくつかのページは、[Scrivito](https://scrivito.com/) と呼ばれる CMS (コンテンツ管理サービス) で運営しています。背景や使用例については次のスライドをご参照ください。 -CoderDojo を支える Rails CMS の活用事例 - Speaker Deck +CoderDojo を支える Rails CMS の活用事例 - Speaker Deck https://speakerdeck.com/yasulab/case-study-rails-cms-for-coderdojo 編集方法については下記の手順書をご参考にしてください。 -記事の編集手順書 - Google Drive -https://docs.google.com/document/d/1Va1tImybdArVHAoLgqv035OXeUd0P8MB98hCiUyG5z4/edit?usp=sharing +記事の編集手順書 - Google Drive +http://bit.ly/coderdojo-kata-edit + 編集用のユーザーアカウントを発行したい場合は [@yasulab](https://twitter.com/yasulab) までお問い合わせください。 diff --git a/app/controllers/static_pages_controller.rb b/app/controllers/static_pages_controller.rb index e59d786a3..4ff391fc8 100644 --- a/app/controllers/static_pages_controller.rb +++ b/app/controllers/static_pages_controller.rb @@ -34,6 +34,15 @@ def stats end end + def events + @url = request.url + @regions_and_dojos = Dojo.eager_load(:prefecture).default_order.group_by { |dojo| dojo.prefecture.region } + @events = Dojo.where(evented_at: + Time.zone.now..Time.zone.now.end_of_year) + #@hoge = Statistics::Aggregation.new(from: Time.current.strftime('%Y'),to:Time.current.strftime('%Y')).run + end + + def letsencrypt if params[:id] == ENV['LETSENCRYPT_REQUEST'] render text: ENV['LETSENCRYPT_RESPONSE'] diff --git a/app/views/static_pages/events.html.haml b/app/views/static_pages/events.html.haml new file mode 100644 index 000000000..4fc52b9da --- /dev/null +++ b/app/views/static_pages/events.html.haml @@ -0,0 +1,19 @@ +- provide(:url, @url) +- provide(:title, 'イベント情報') +- provide(:meta_description, '近日開催される CoderDojo の情報をまとめています。') +%section.cover + = image_tag "coderdojo-stats_cover.png", class: "cursor-default" +%section#dojos.dojos.text-center + %bpr + %h1 イベント情報 + %p 本ページでは近日開催される CoderDojo の情報をまとめています。 + CoderDojo の活動状況を把握する際などにご活用ください。 + + + %h3 関連リンク + %ul{:style => "list-style: none; margin-left: -40px;"} + %li + %a{:href => "https://docs.google.com/spreadsheets/d/17-M-qv5c0MdE_ZIFk566I2CGCIDHFkQwXWiunDXCGVw/edit#gid=354377216"} 日本の CoderDojo (zen登録済) - Google Spreadsheet + %li + %a{:href => "https://github.com/coderdojo-japan/coderdojo.jp/issues/258"} 直近の CoderDojo 開催情報を表示したい issue 258 +%br/ diff --git a/config/routes.rb b/config/routes.rb index d85abd06b..cd6811ee0 100644 --- a/config/routes.rb +++ b/config/routes.rb @@ -10,6 +10,7 @@ # Static Pages root "static_pages#home" get "/stats", to: 'static_pages#stats' + get "/events", to: 'static_pages#events' # Redirects get "/releases/2016/12/12/new-backend", to: redirect('/news/2016/12/12/new-backend') diff --git a/db/dojos.yaml b/db/dojos.yaml index 592495480..b9bf18614 100644 --- a/db/dojos.yaml +++ b/db/dojos.yaml @@ -1,7 +1,7 @@ --- - id: 64 - created_at: '2016-09-26' order: '011002' + created_at: '2016-09-26' name: 札幌 (北海道) prefecture_id: 1 url: http://www.coderdojo-sapporo.jp/ @@ -13,8 +13,8 @@ - ラズベリーパイ - 電子工作 - id: 104 - created_at: '2016-09-26' order: '011002' + created_at: '2016-09-26' name: 札幌東 (北海道) prefecture_id: 1 url: https://coderdojo-sapporo-east.blogspot.jp/ @@ -26,8 +26,8 @@ - Python - Unity - id: 100 - created_at: '2017-09-20' order: '012319' + created_at: '2017-09-20' name: 恵庭 (北海道) prefecture_id: 1 url: https://www.facebook.com/CoderDojoEniwa/ @@ -38,8 +38,8 @@ - Webサイト - Python - id: 109 - created_at: '2017-09-25' order: '032166' + created_at: '2017-09-25' name: 滝沢 (東北) prefecture_id: 3 url: https://www.facebook.com/CoderDojoTakizawa/ @@ -50,8 +50,8 @@ - micro:bit - ラズベリーパイ - id: 107 - created_at: '2017-06-20' order: '032069' + created_at: '2017-06-20' name: きたかみ (東北) prefecture_id: 3 url: https://coderdojo.waraukado.jp/ @@ -61,8 +61,8 @@ - Scratch - Webサイト - id: 3 - created_at: '2014-01-23' order: '041009' + created_at: '2014-01-23' name: 泉 (東北) prefecture_id: 4 url: https://www.facebook.com/CoderdojoIzumi @@ -71,8 +71,8 @@ tags: - Scratch - id: 90 - created_at: '2017-07-01' order: '041009' + created_at: '2017-07-01' name: 愛子 (東北) prefecture_id: 4 url: https://www.facebook.com/CoderDojo-Ayashi-277617015979351/ @@ -83,8 +83,8 @@ - Webサイト - ゲーム - id: 85 - created_at: '2017-03-27' order: '042072' + created_at: '2017-03-27' name: 名取 (東北) prefecture_id: 4 url: https://www.facebook.com/CoderDojo-Natori-1379707208756830 @@ -95,8 +95,8 @@ - Webサイト - ゲーム - id: 4 - created_at: '2016-04-25' order: '042129' + created_at: '2016-04-25' name: 登米 (東北) prefecture_id: 4 logo: "/img/dojos/japan.png" @@ -107,8 +107,8 @@ - 3Dプリンタ - 3DCAD - id: 59 - created_at: '2016-10-06' order: '044458' + created_at: '2016-10-06' name: 中新田 (東北) prefecture_id: 4 logo: "/img/dojos/nakaniida.png" @@ -120,8 +120,8 @@ - Minecraft - Arduino - id: 75 - created_at: '2017-04-03' order: '052019' + created_at: '2017-04-03' name: 秋田 (東北) prefecture_id: 5 url: https://coderdojo.akita.work/ @@ -134,8 +134,8 @@ - Swift - Android - id: 74 - created_at: '2017-03-28' order: '062014' + created_at: '2017-03-28' name: 山形 (東北) prefecture_id: 6 logo: "/img/dojos/yamagata.png" @@ -148,8 +148,8 @@ - ロボット - AI - id: 79 - created_at: '2017-03-29' order: '072028' + created_at: '2017-03-29' name: 会津 (東北) prefecture_id: 7 logo: "/img/dojos/aizu.png" @@ -162,8 +162,8 @@ - Java - Webサイト - id: 73 - created_at: '2017-03-28' order: '082210' + created_at: '2017-03-28' name: ひたちなか (関東) prefecture_id: 8 logo: "/img/dojos/hitachinaka.png" @@ -171,9 +171,10 @@ description: 茨城県ひたちなか市で毎月開催 tags: - Scratch + - IslayTouch - id: 65 - created_at: '2017-01-03' order: '082015' + created_at: '2017-01-03' name: 水戸 (関東) prefecture_id: 8 logo: "/img/dojos/mito.png" @@ -181,9 +182,10 @@ description: 茨城県水戸市で毎月開催 tags: - Scratch + - IslayTouch - id: 8 - created_at: '2016-07-12' order: '082244' + created_at: '2016-07-12' name: 守谷 (関東) prefecture_id: 8 logo: "/img/dojos/moriya.jpg" @@ -194,8 +196,8 @@ - IoT - 電子工作 - id: 89 - created_at: '2017-06-21' order: '092142' + created_at: '2017-06-21' name: さくら (関東) prefecture_id: 9 logo: "/img/dojos/sakura.png" @@ -208,8 +210,8 @@ - PHP - CSS - id: 7 - created_at: '2016-10-17' order: '102016' + created_at: '2016-10-17' name: 前橋 (関東) prefecture_id: 10 logo: "/img/dojos/maebashi.png" @@ -221,8 +223,8 @@ - ラズベリーパイ - ゲーム - id: 9 - created_at: '2014-05-26' order: '111007' + created_at: '2014-05-26' name: さいたま (関東) prefecture_id: 11 url: http://coderdojo-saitama.com/ @@ -233,8 +235,8 @@ - Webサイト - アプリ - id: 12 - created_at: '2015-12-01' order: '112089' + created_at: '2015-12-01' name: 所沢 (関東) prefecture_id: 11 url: https://www.facebook.com/CoderDojoTokorozawa/ @@ -243,8 +245,8 @@ tags: - Scratch - id: 77 - created_at: '2017-03-14' order: '112089' + created_at: '2017-03-14' name: 小手指 (関東) prefecture_id: 11 url: https://coderdojokotesashi.github.io/ @@ -253,8 +255,8 @@ tags: - Scratch - id: 11 - created_at: '2015-05-13' order: '112097' + created_at: '2015-05-13' name: 飯能 (関東) prefecture_id: 11 url: https://www.facebook.com/CoderDojoHanno @@ -263,8 +265,8 @@ tags: - Scratch - id: 10 - created_at: '2012-07-02' order: '112305' + created_at: '2012-07-02' name: ひばりヶ丘 (関東) prefecture_id: 11 url: http://coderdojo.hanare-hibari.info/ @@ -276,8 +278,8 @@ - 8x9Craft - Unity - id: 22 - created_at: '2013-07-30' order: '121002' + created_at: '2013-07-30' name: 千葉 (関東) prefecture_id: 12 logo: "/img/dojos/chiba.png" @@ -290,8 +292,8 @@ - Ruby - Minecraft - id: 25 - created_at: '2016-04-27' order: '121002' + created_at: '2016-04-27' name: 若葉 (関東) prefecture_id: 12 logo: "/img/dojos/wakaba.png" @@ -300,8 +302,8 @@ tags: - Scratch - id: 60 - created_at: '2016-12-15' order: '122033' + created_at: '2016-12-15' name: 市川 (関東) prefecture_id: 12 logo: "/img/dojos/ichikawa.jpg" @@ -313,8 +315,8 @@ - Python - WordPress - id: 82 - created_at: '2017-03-28' order: '122033' + created_at: '2017-03-28' name: 市川真間 (関東) prefecture_id: 12 logo: "/img/dojos/ichikawa-mama.jpg" @@ -323,8 +325,8 @@ tags: - Scratch - id: 86 - created_at: '2017-05-16' order: '122041' + created_at: '2017-05-16' name: 船橋@凛童舎 (関東) prefecture_id: 12 logo: "/img/dojos/funabashi.jpg" @@ -333,8 +335,8 @@ tags: - Scratch - id: 83 - created_at: '2017-04-27' order: '122068' + created_at: '2017-04-27' name: 木更津 (関東) prefecture_id: 12 logo: "/img/dojos/kisarazu.png" @@ -345,8 +347,8 @@ - Webサイト - Java - id: 114 - created_at: '2017-09-06' order: '122076' + created_at: '2017-09-06' name: 松戸 (関東) prefecture_id: 12 logo: "/img/dojos/japan.png" @@ -355,8 +357,8 @@ tags: - Scratch - id: 20 - created_at: '2016-11-08' order: '122084' + created_at: '2016-11-08' name: 野田 (関東) prefecture_id: 12 logo: "/img/dojos/japan.png" @@ -365,8 +367,8 @@ tags: - Scratch - id: 23 - created_at: '2014-09-22' order: '122173' + created_at: '2014-09-22' name: 柏 (関東) prefecture_id: 12 url: http://www.coderdojo-kashiwa.com/ @@ -375,8 +377,8 @@ tags: - Scratch - id: 125 - created_at: '2018-01-27' order: '122173' + created_at: '2018-01-27' name: 柏沼南 (関東) prefecture_id: 12 url: https://www.facebook.com/CoderDojoKashiwaShounan/ @@ -385,8 +387,8 @@ tags: - Scratch - id: 112 - created_at: '2017-09-26' order: '122173' + created_at: '2017-09-26' name: 南柏 (関東) prefecture_id: 12 url: http://www.coderdojo-kashiwa.com/dojo/minamikashiwa/ @@ -395,8 +397,8 @@ tags: - Scratch - id: 24 - created_at: '2016-04-27' order: '122203' + created_at: '2016-04-27' name: 流山 (関東) prefecture_id: 12 logo: "/img/dojos/japan.png" @@ -405,8 +407,8 @@ tags: - Scratch - id: 21 - created_at: '2016-11-08' order: '122271' + created_at: '2016-11-08' name: 浦安 (関東) prefecture_id: 12 logo: "/img/dojos/urayasu.png" @@ -418,8 +420,8 @@ - PHP - Ruby - id: 121 - created_at: '2017-11-28' order: '131016' + created_at: '2017-11-28' name: 御茶ノ水 (関東) prefecture_id: 13 logo: "/img/dojos/ochanomizu.jpg" @@ -430,8 +432,8 @@ - Viscuit - Webサイト - id: 97 - created_at: '2017-08-16' order: '131016' + created_at: '2017-08-16' name: 秋葉原 (関東) prefecture_id: 13 logo: "/img/dojos/japan.png" @@ -440,8 +442,8 @@ tags: - Scratch - id: 58 - created_at: '2017-09-26' order: '131041' + created_at: '2017-09-26' name: 高田馬場 (関東) prefecture_id: 13 logo: "/img/dojos/takadanobaba.jpg" @@ -452,8 +454,8 @@ - ラズベリーパイ - Ruby - id: 69 - created_at: '2017-01-23' order: '131041' + created_at: '2017-01-23' name: 西新宿 (関東) prefecture_id: 13 logo: "/img/dojos/nishishinjuku.png" @@ -462,8 +464,8 @@ tags: - Scratch - id: 17 - created_at: '2012-03-12' order: '131121' + created_at: '2012-03-12' name: 下北沢 (関東) prefecture_id: 13 url: https://coderdojo-tokyo.connpass.com/ @@ -474,8 +476,8 @@ - Webサイト - ゲーム - id: 19 - created_at: '2016-09-27' order: '131130' + created_at: '2016-09-27' name: 渋谷 (関東) prefecture_id: 13 logo: "/img/dojos/japan.png" @@ -484,8 +486,8 @@ tags: - Scratch - id: 15 - created_at: '2016-07-20' order: '131148' + created_at: '2016-07-20' name: 中野 (関東) prefecture_id: 13 logo: "/img/dojos/nakano.png" @@ -497,8 +499,8 @@ - JavaScript - Arduino - id: 16 - created_at: '2016-09-09' order: '131156' + created_at: '2016-09-09' name: すぎなみ (関東) prefecture_id: 13 logo: "/img/dojos/suginami.png" @@ -511,8 +513,8 @@ - JavaScript - Processing - id: 123 - created_at: '2018-01-25' order: '131164' + created_at: '2018-01-25' name: 池袋 (関東) prefecture_id: 13 logo: "/img/dojos/ikebukuro.jpeg" @@ -524,8 +526,8 @@ - Webサイト - Java - id: 130 - created_at: '2018-02-21' order: '131172' + created_at: '2018-02-21' name: 赤羽 (関東) prefecture_id: 13 logo: "/img/dojos/akabane.png" @@ -534,8 +536,8 @@ tags: - Scratch - id: 14 - created_at: '2015-06-22' order: '132012' + created_at: '2015-06-22' name: 八王子 (関東) prefecture_id: 13 url: http://coderdojo.code4hachioji.org/ @@ -546,8 +548,8 @@ - Webサイト - PHP - id: 117 - created_at: '2017-11-18' order: '132021' + created_at: '2017-11-18' name: 立川 (関東) prefecture_id: 13 url: https://coderdojotachikawa.github.io/ @@ -559,8 +561,8 @@ - ラズベリーパイ - Arduino - id: 105 - created_at: '2017-09-06' order: '132039' + created_at: '2017-09-06' name: 吉祥寺 (関東) prefecture_id: 13 logo: "/img/dojos/kichijoji.png" @@ -571,8 +573,8 @@ - Studuino - Java - id: 18 - created_at: '2016-09-05' order: '132080' + created_at: '2016-09-05' name: 調布 (関東) prefecture_id: 13 logo: "/img/dojos/chofu.jpg" @@ -585,8 +587,8 @@ - Ruby - ラズベリーパイ - id: 13 - created_at: '2014-05-21' order: '132110' + created_at: '2014-05-21' name: 小平 (関東) prefecture_id: 13 url: http://coderdojo-kodaira.github.io/ @@ -598,8 +600,8 @@ - CS Unplugged - マルチメディア - id: 70 - created_at: '2017-01-30' order: '141020' + created_at: '2017-01-30' name: 横浜 (関東) prefecture_id: 14 logo: "/img/dojos/japan.png" @@ -608,8 +610,8 @@ tags: - Scratch - id: 126 - created_at: '2018-02-02' order: '141038' + created_at: '2018-02-02' name: 戸部 (関東) prefecture_id: 14 logo: "/img/dojos/japan.png" @@ -618,8 +620,8 @@ tags: - Scratch - id: 68 - created_at: '2017-01-09' order: '141097' + created_at: '2017-01-09' name: 新羽 (関東) prefecture_id: 14 logo: "/img/dojos/nippa.png" @@ -628,8 +630,8 @@ tags: - Scratch - id: 76 - created_at: '2017-04-03' order: '141135' + created_at: '2017-04-03' name: 長津田 (関東) prefecture_id: 14 logo: "/img/dojos/nagatsuta.png" @@ -640,8 +642,8 @@ - Minecraft - Hour of Code - id: 26 - created_at: '2016-12-14' order: '142051' + created_at: '2016-12-14' name: 藤沢 (関東) prefecture_id: 14 logo: "/img/dojos/fujisawa.png" @@ -652,8 +654,8 @@ - Viscuit - Webサイト - id: 91 - created_at: '2017-06-26' order: '142158' + created_at: '2017-06-26' name: 海老名 (関東) prefecture_id: 14 logo: "/img/dojos/ebina.png" @@ -662,8 +664,8 @@ tags: - Scratch - id: 5 - created_at: '2015-09-16' order: '151009' + created_at: '2015-09-16' name: 新潟 (中部) prefecture_id: 15 logo: "/img/dojos/japan.png" @@ -674,8 +676,8 @@ - Minecraft - Arduino - id: 127 - created_at: '2018-02-17' order: '152064' + created_at: '2018-02-17' name: 新発田 (中部) prefecture_id: 15 logo: "/img/dojos/japan.png" @@ -688,8 +690,8 @@ - Python - JavaScript - id: 6 - created_at: '2016-11-24' order: '172014' + created_at: '2016-11-24' name: 金沢 (中部) prefecture_id: 17 logo: "/img/dojos/japan.png" @@ -699,8 +701,8 @@ - JavaScript - HackforPlay - id: 28 - created_at: '2013-08-14' order: '182010' + created_at: '2013-08-14' name: 福井 (中部) prefecture_id: 18 url: http://coderdojo.cowbell.jp/ @@ -710,8 +712,8 @@ - Scratch - Webサイト - id: 88 - created_at: '2017-05-29' order: '192015' + created_at: '2017-05-29' name: 甲府 (中部) prefecture_id: 19 url: https://www.facebook.com/coderdojo.kofu/ @@ -722,9 +724,22 @@ - Hour of Code - ラズベリーパイ - LEGO Mindstorms +- id: 133 + order: '192104' + created_at: '2018-03-02' + name: 甲斐竜王 (中部) + prefecture_id: 19 + url: https://www.facebook.com/CoderDojo%E7%94%B2%E6%96%90%E7%AB%9C%E7%8E%8B-181532029243337/ + logo: "/img/dojos/kairyuo.png" + description: 山梨県甲斐市で毎月開催 + tags: + - Hour of Code + - Scratch + - Webサイト + - グラフィックデザイン - id: 94 - created_at: '2017-02-20' order: '202061' + created_at: '2017-02-20' name: 諏訪湖 (中部) prefecture_id: 20 url: https://www.facebook.com/CoderDojo%E8%AB%8F%E8%A8%AA%E6%B9%96-104207190171589/ @@ -735,8 +750,8 @@ - ラズベリーパイ - Arduino - id: 27 - created_at: '2012-11-08' order: '202151' + created_at: '2012-11-08' name: 塩尻 (中部) prefecture_id: 20 url: http://coderdojo.shiojiri-osslabo.com/ @@ -746,8 +761,8 @@ - Scratch - Ruby - id: 87 - created_at: '2017-05-11' order: '202207' + created_at: '2017-05-11' name: 安曇野 (中部) prefecture_id: 20 url: https://www.facebook.com/CoderDojoAzumino/ @@ -759,8 +774,8 @@ - ラズベリーパイ - Arduino - id: 96 - created_at: '2017-09-26' order: '212211' + created_at: '2017-09-26' name: 海津 (中部) prefecture_id: 21 logo: "/img/dojos/japan.png" @@ -769,8 +784,8 @@ tags: - Scratch - id: 98 - created_at: '2016-02-25' order: '221309' + created_at: '2016-02-25' name: 浜松 (中部) prefecture_id: 22 logo: "/img/dojos/hamamatsu.png" @@ -781,8 +796,8 @@ - Webサイト - Minecraft - id: 129 - created_at: '2018-02-18' order: '222038' + created_at: '2018-02-18' name: 三島・沼津 (中部) prefecture_id: 22 logo: "/img/dojos/mishima-numazu.png" @@ -793,8 +808,8 @@ - Webサイト - Minecraft - id: 31 - created_at: '2014-10-20' order: '231002' + created_at: '2014-10-20' name: 名古屋 (中部) prefecture_id: 23 logo: "/img/dojos/japan.png" @@ -803,8 +818,8 @@ tags: - Scratch - id: 32 - created_at: '2014-12-08' order: '231002' + created_at: '2014-12-08' name: 天白 (中部) prefecture_id: 23 logo: "/img/dojos/tempaku.png" @@ -815,8 +830,8 @@ - Webサイト - 電子工作 - id: 30 - created_at: '2016-06-03' order: '232017' + created_at: '2016-06-03' name: 豊橋 (中部) prefecture_id: 23 logo: "/img/dojos/toyohashi.png" @@ -827,8 +842,8 @@ - アプリ開発 - ラズベリーパイ - id: 118 - created_at: '2017-11-13' order: '232122' + created_at: '2017-11-13' name: 安城 (中部) prefecture_id: 23 logo: "/img/dojos/anjo.png" @@ -837,8 +852,8 @@ tags: - Scratch - id: 84 - created_at: '2017-05-16' order: '232211' + created_at: '2017-05-16' name: 新城 (中部) prefecture_id: 23 logo: "/img/dojos/japan.png" @@ -849,8 +864,8 @@ - Webサイト - ラズベリーパイ - id: 71 - created_at: '2017-02-17' order: '232289' + created_at: '2017-02-17' name: 尾張 (中部) prefecture_id: 23 logo: "/img/dojos/owari.svg" @@ -859,8 +874,8 @@ tags: - Scratch - id: 33 - created_at: '2016-08-12' order: '234249' + created_at: '2016-08-12' name: 大治 (中部) prefecture_id: 23 logo: "/img/dojos/japan.png" @@ -869,8 +884,8 @@ tags: - Scratch - id: 62 - created_at: '2016-12-22' order: '242039' + created_at: '2016-12-22' name: 伊勢 (近畿) prefecture_id: 24 logo: "/img/dojos/ise.png" @@ -881,8 +896,8 @@ - LEGO - LabVIEW - id: 37 - created_at: '2015-09-16' order: '252018' + created_at: '2015-09-16' name: 大津 (近畿) prefecture_id: 25 logo: "/img/dojos/otsu.png" @@ -891,8 +906,8 @@ tags: - Scratch - id: 39 - created_at: '2016-03-01' order: '261009' + created_at: '2016-03-01' name: 京都伏見 (近畿) prefecture_id: 26 logo: "/img/dojos/japan.png" @@ -904,8 +919,8 @@ - Java - JavaScript - id: 34 - created_at: '2014-10-14' order: '261009' + created_at: '2014-10-14' name: 長岡京 (近畿) prefecture_id: 26 url: https://coderdojo-nagaokakyo.doorkeeper.jp/ @@ -914,8 +929,8 @@ tags: - Scratch - id: 42 - created_at: '2014-02-11' order: '271004' + created_at: '2014-02-11' name: 西宮・梅田 (近畿) prefecture_id: 27 url: http://coderdojo-nishinomiya.info/ @@ -926,8 +941,8 @@ - Webサイト - 電子工作 - id: 43 - created_at: '2016-09-27' order: '271004' + created_at: '2016-09-27' name: なんば (近畿) prefecture_id: 27 logo: "/img/dojos/japan.png" @@ -940,8 +955,8 @@ - Ruby - Java - id: 44 - created_at: '2016-08-15' order: '271004' + created_at: '2016-08-15' name: 本町 (近畿) prefecture_id: 27 logo: "/img/dojos/hommachi.png" @@ -953,8 +968,8 @@ - mruby - 電子工作 - id: 116 - created_at: '2017-11-02' order: '271004' + created_at: '2017-11-02' name: 阿倍野 (近畿) prefecture_id: 27 logo: "/img/dojos/abeno.png" @@ -965,8 +980,8 @@ - 電子工作 - Minecraft - id: 45 - created_at: '2016-07-13' order: '271004' + created_at: '2016-07-13' name: 西成 (近畿) prefecture_id: 27 logo: "/img/dojos/nishinari.jpg" @@ -976,8 +991,8 @@ - Scratch - ラズベリーパイ - id: 46 - created_at: '2016-03-22' order: '271403' + created_at: '2016-03-22' name: 堺 (近畿) prefecture_id: 27 logo: "/img/dojos/sakai.png" @@ -988,8 +1003,8 @@ - PHP - Java - id: 66 - created_at: '2017-01-04' order: '272078' + created_at: '2017-01-04' name: 高槻 (近畿) prefecture_id: 27 logo: "/img/dojos/takatsuki.png" @@ -998,8 +1013,8 @@ tags: - Scratch - id: 40 - created_at: '2016-05-18' order: '272108' + created_at: '2016-05-18' name: 枚方 (近畿) prefecture_id: 27 logo: "/img/dojos/hirakata.png" @@ -1010,8 +1025,8 @@ - Webサイト - アプリ開発 - id: 108 - created_at: '2017-09-06' order: '272205' + created_at: '2017-09-06' name: みのお (近畿) prefecture_id: 27 logo: "/img/dojos/minoh.png" @@ -1020,8 +1035,8 @@ tags: - Scratch - id: 41 - created_at: '2016-09-01' order: '272272' + created_at: '2016-09-01' name: 東大阪 (近畿) prefecture_id: 27 logo: "/img/dojos/higasi-osaka.png" @@ -1033,8 +1048,8 @@ - Android - 電子工作 - id: 101 - created_at: '2017-08-03' order: '272124' + created_at: '2017-08-03' name: 八尾 (近畿) prefecture_id: 27 logo: "/img/dojos/yao.png" @@ -1046,8 +1061,8 @@ - Android - 電子工作 - id: 72 - created_at: '2017-02-19' order: '272141' + created_at: '2017-02-19' name: 富田林 (近畿) prefecture_id: 27 logo: "/img/dojos/japan.png" @@ -1059,8 +1074,8 @@ - Android - Java - id: 110 - created_at: '2017-05-26' order: '272281' + created_at: '2017-05-26' name: せんなん (近畿) prefecture_id: 27 logo: "/img/dojos/japan.png" @@ -1069,8 +1084,8 @@ tags: - Scratch - id: 124 - created_at: '2018-01-26' order: '281018' + created_at: '2018-01-26' name: 灘 (近畿) prefecture_id: 28 logo: "/img/dojos/nada.png" @@ -1082,8 +1097,8 @@ - C - Java - id: 119 - created_at: '2017-11-08' order: '281069' + created_at: '2017-11-08' name: 西神戸 (近畿) prefecture_id: 28 logo: "/img/dojos/nishi-kobe.png" @@ -1095,8 +1110,8 @@ - PHP - Java - id: 67 - created_at: '2016-09-12' order: '281093' + created_at: '2016-09-12' name: 北神戸 (近畿) prefecture_id: 28 logo: "/img/dojos/kitakobe.png" @@ -1108,8 +1123,8 @@ - Arduino - 電子工作 - id: 48 - created_at: '2016-09-28' order: '281107' + created_at: '2016-09-28' name: 神戸 (近畿) prefecture_id: 28 logo: "/img/dojos/kobe.png" @@ -1119,8 +1134,8 @@ - Scratch - JavaScript - id: 50 - created_at: '2016-03-22' order: '282014' + created_at: '2016-03-22' name: 姫路 (近畿) prefecture_id: 28 logo: "/img/dojos/himeji.png" @@ -1131,8 +1146,8 @@ - ラズベリーパイ - Webサイト - id: 49 - created_at: '2016-04-04' order: '282031' + created_at: '2016-04-04' name: 明石 (近畿) prefecture_id: 28 logo: "/img/dojos/akashi.png" @@ -1143,8 +1158,8 @@ - Webサイト - Arduino - id: 35 - created_at: '2014-10-26' order: '292010' + created_at: '2014-10-26' name: 奈良 (近畿) prefecture_id: 29 url: http://coderdojo-nara-ikoma.github.io/ @@ -1155,8 +1170,8 @@ - Webサイト - C# - id: 36 - created_at: '2016-04-25' order: '292095' + created_at: '2016-04-25' name: 生駒 (近畿) prefecture_id: 29 logo: "/img/dojos/ikoma.png" @@ -1167,8 +1182,8 @@ - Webサイト - C# - id: 128 - created_at: '2018-02-18' order: '293431' + created_at: '2018-02-18' name: 三郷 (近畿) prefecture_id: 29 logo: "/img/dojos/sango.png" @@ -1177,8 +1192,8 @@ tags: - Scratch - id: 47 - created_at: '2016-11-01' order: '302015' + created_at: '2016-11-01' name: 和歌山 (近畿) prefecture_id: 30 logo: "/img/dojos/wakayama.png" @@ -1187,8 +1202,8 @@ tags: - Scratch - id: 99 - created_at: '2017-09-06' order: '302066' + created_at: '2017-09-06' name: 南紀田辺 (近畿) prefecture_id: 30 url: https://coderdojo-nanki-tanabe.jimdo.com/ @@ -1199,8 +1214,8 @@ - ScratchJr - ラズベリーパイ - id: 38 - created_at: '2012-11-08' order: '302074' + created_at: '2012-11-08' name: 熊野 (近畿) prefecture_id: 30 url: https://www.facebook.com/coderdojo.kumano @@ -1211,8 +1226,8 @@ - Webサイト - アプリ - id: 115 - created_at: '2017-08-16' order: '313866' + created_at: '2017-08-16' name: 大山 (中国) prefecture_id: 31 logo: "/img/dojos/japan.png" @@ -1224,8 +1239,8 @@ - Swift - ラズベリーパイ - id: 131 - created_at: '2018-02-22' order: '312011' + created_at: '2018-02-22' name: 鳥取 (中国) prefecture_id: 31 logo: "/img/dojos/tottori.png" @@ -1235,8 +1250,8 @@ - Scratch - Ruby - id: 78 - created_at: '2017-03-10' order: '325058' + created_at: '2017-03-10' name: 吉賀 (中国) prefecture_id: 32 logo: "/img/dojos/yoshika.png" @@ -1248,8 +1263,8 @@ - PHP - Ruby - id: 81 - created_at: '2017-03-20' order: '331007' + created_at: '2017-03-20' name: 岡山 岡南 (中国) prefecture_id: 33 logo: "/img/dojos/okayama.png" @@ -1261,9 +1276,23 @@ - C# - Webアプリ開発 - Java +- id: 132 + order: '332038' + created_at: '2018-02-28' + name: 津山 (中国) + prefecture_id: 33 + logo: "/img/dojos/tuyama.png" + url: https://www.facebook.com/CoderDojoTsuyama/ + description: 岡山県津山市で毎月開催 + tags: + - Scratch + - C + - PHP + - Arduino + - 電子工作 - id: 52 - created_at: '2016-05-04' order: '341002' + created_at: '2016-05-04' name: 紙屋町 (中国) prefecture_id: 34 logo: "/img/dojos/hiroshima.jpg" @@ -1274,8 +1303,8 @@ - Webサイト - PHP - id: 53 - created_at: '2016-09-29' order: '341002' + created_at: '2016-09-29' name: 五日市 (中国) prefecture_id: 34 logo: "/img/dojos/itsukaichi.png" @@ -1286,8 +1315,8 @@ - enchant.js - Unity - id: 51 - created_at: '2016-06-01' order: '342076' + created_at: '2016-06-01' name: 福山 (中国) prefecture_id: 34 logo: "/img/dojos/fukuyama.png" @@ -1296,8 +1325,8 @@ tags: - Scratch - id: 92 - created_at: '2017-06-19' order: '352101' + created_at: '2017-06-19' name: 光 (中国) prefecture_id: 35 logo: "/img/dojos/hikari.png" @@ -1309,8 +1338,8 @@ - PHP - アプリ開発 - id: 103 - created_at: '2017-10-02' order: '362018' + created_at: '2017-10-02' name: 徳島 (四国) prefecture_id: 36 logo: "/img/dojos/tokushima.png" @@ -1323,8 +1352,8 @@ - PHP - Python - id: 111 - created_at: '2017-09-26' order: '362085' + created_at: '2017-09-26' name: 三好 (四国) prefecture_id: 36 logo: "/img/dojos/miyoshi.png" @@ -1333,8 +1362,8 @@ tags: - Minecraft - id: 102 - created_at: '2017-09-18' order: '401307' + created_at: '2017-09-18' name: 福岡 (九州) prefecture_id: 40 logo: "/img/dojos/fukuoka.png" @@ -1345,8 +1374,8 @@ - Webサイト - JavaScript - id: 113 - created_at: '2017-10-06' order: '401307' + created_at: '2017-10-06' name: ももち (九州) prefecture_id: 40 logo: "/img/dojos/momochi.png" @@ -1355,8 +1384,8 @@ tags: - Scratch - id: 54 - created_at: '2016-10-06' order: '402036' + created_at: '2016-10-06' name: 久留米 (九州) prefecture_id: 40 logo: "/img/dojos/kurume.png" @@ -1369,8 +1398,8 @@ - LEGO - Minecraft - id: 122 - created_at: '2017-12-15' order: '413411' + created_at: '2017-12-15' name: 基山 (九州) prefecture_id: 41 logo: "/img/dojos/japan.png" @@ -1383,8 +1412,8 @@ - ラズベリーパイ - Minecraft - id: 120 - created_at: '2017-11-14' order: '422011' + created_at: '2017-11-14' name: 長崎 (九州) prefecture_id: 42 logo: "/img/dojos/japan.png" @@ -1393,8 +1422,8 @@ tags: - Scratch - id: 55 - created_at: '2016-09-15' order: '454419' + created_at: '2016-09-15' name: 宮崎 (九州) prefecture_id: 45 logo: "/img/dojos/miyazaki.png" @@ -1406,8 +1435,8 @@ - Python - ラズベリーパイ - id: 61 - created_at: '2012-07-09' order: '472018' + created_at: '2012-07-09' name: 那覇 (沖縄) prefecture_id: 47 logo: "/img/dojos/okinawa.png" @@ -1416,8 +1445,8 @@ tags: - Scratch - id: 106 - created_at: '2017-09-20' order: '472051' + created_at: '2017-09-20' name: 宜野湾 (沖縄) prefecture_id: 47 logo: "/img/dojos/ginowan.png" @@ -1430,8 +1459,8 @@ - Java - Swift - id: 56 - created_at: '2016-11-02' order: '472140' + created_at: '2016-11-02' name: 宮古島 (沖縄) prefecture_id: 47 logo: "/img/dojos/miyakojima.jpg" @@ -1441,8 +1470,8 @@ - Scratch - Webサイト - id: 57 - created_at: '2016-12-19' order: '473251' + created_at: '2016-12-19' name: 嘉手納 (沖縄) prefecture_id: 47 logo: "/img/dojos/kadena.png" diff --git a/docs/how-to-add-dojo.md b/docs/how-to-add-dojo.md index 6bb98e27f..19197ec9b 100644 --- a/docs/how-to-add-dojo.md +++ b/docs/how-to-add-dojo.md @@ -1,6 +1,6 @@ # 新規Dojoの追加方法 -新規Dojoから申請が来た場合の手順書( 2018/02/26現在) +新規Dojoから申請が来た場合の手順書( 2018/02/28現在) ## Dojo DBの追加手順 @@ -11,7 +11,6 @@ ```yaml - created_at: '2016-12-19' - order: '473251' name: 嘉手納 (沖縄) prefecture_id: 47 logo: "/img/dojos/kadena.png" @@ -28,7 +27,7 @@ | Dojoカラム | フォーム | |:-----------------|:------------------:| | `created_at` | タイムスタンプ | -| `order` | [全国地方公共団体コード] (https://docs.google.com/spreadsheets/d/1b2XZxifpP8GSASvP9sPq1BYwsCH6Y_FHSkol_nfaGxw/edit#gid=1813423171) | +| `order` (*1) | [全国地方公共団体コード](http://www.soumu.go.jp/denshijiti/code.html) | |`name` | 正式名称 | | `prefecture_id` | `db/seeds.rb` の該当番号 | |`logo` | `public/` のDojo画像パス | @@ -36,9 +35,20 @@ | `description` |フォーム `Dojoの開催場所と開催頻度について教えてください` | |`tags` | フォーム `Dojo で対応可能な技術を教えてください (最大5つまで)`| +`id`, `created_at`, `updated_at` はRailsがデフォルトで提供するカラムです。詳細はRailsガイドの[Active Recordの基礎](https://railsguides.jp/active_record_basics.html#%E3%82%B9%E3%82%AD%E3%83%BC%E3%83%9E%E3%81%AE%E3%83%AB%E3%83%BC%E3%83%AB)をご参照ください。 -- ここまで記述した後に `be rails dojos:update_db_by_yaml` を実行しdbに新規Dojoを反映する -- その後 `be rails dojos:migrate_adding_id_to_yaml`  を実行し、yamlにidが動的に付けられた事を確認する +### (*1) `order` の値について + +- `order` には総務省が定める[全国地方公共団体コード](http://www.soumu.go.jp/denshijiti/code.html)を値を入力します +- `order` の値は、Dojoの名称が公共団体名になっている場合に省略可能です ([#228](https://github.com/coderdojo-japan/coderdojo.jp/issues/228)) +- Dojo名が市町村以外の名称になっている場合のみ入力をする必要があります + - 例: `CoderDojo 嘉手納` は `嘉手納` 市がある為、自動的に紐付けできます (省略可能) + +yaml ファイルに各項目を追記したら、`$ bundle exec rails dojos:update_db_by_yaml` を実行してDBに新規Dojo情報を反映します。その後 `$ bundle exec rails dojos:migrate_adding_id_to_yaml` を実行します。 + +yamlファイルにidおよびorderが動的に更新されたことを確認できたら `Add CoderDojo [Dojo名]` でコミットをします。 + +コミットおよびPRの例: https://github.com/coderdojo-japan/coderdojo.jp/pull/274 ### 関連Issue diff --git a/lib/statistics/providers.rb b/lib/providers.rb similarity index 77% rename from lib/statistics/providers.rb rename to lib/providers.rb index 7f5069eef..203e62902 100644 --- a/lib/statistics/providers.rb +++ b/lib/providers.rb @@ -1,7 +1,4 @@ -module Statistics - module Providers - end -end +module Providers ;end require_relative 'providers/connpass' require_relative 'providers/doorkeeper' diff --git a/lib/statistics/providers/connpass.rb b/lib/providers/connpass.rb similarity index 95% rename from lib/statistics/providers/connpass.rb rename to lib/providers/connpass.rb index 9689ad425..fbbdf73f9 100644 --- a/lib/statistics/providers/connpass.rb +++ b/lib/providers/connpass.rb @@ -1,5 +1,4 @@ -module Statistics - module Providers +module Providers class Connpass ENDPOINT = 'https://connpass.com/api/v1'.freeze @@ -38,5 +37,4 @@ def fetch_events(series_id:, yyyymm: nil, yyyymmdd: nil) events end end - end end diff --git a/lib/statistics/providers/doorkeeper.rb b/lib/providers/doorkeeper.rb similarity index 96% rename from lib/statistics/providers/doorkeeper.rb rename to lib/providers/doorkeeper.rb index 557dea9dc..3b058489d 100644 --- a/lib/statistics/providers/doorkeeper.rb +++ b/lib/providers/doorkeeper.rb @@ -1,5 +1,4 @@ -module Statistics - module Providers +module Providers class Doorkeeper ENDPOINT = 'https://api.doorkeeper.jp'.freeze @@ -47,5 +46,4 @@ def fetch_events(group_id:, since_at: @default_since, until_at: @default_until) end end end - end end diff --git a/lib/statistics/providers/facebook.rb b/lib/providers/facebook.rb similarity index 96% rename from lib/statistics/providers/facebook.rb rename to lib/providers/facebook.rb index e7b2eb7b2..d7b7b8761 100644 --- a/lib/statistics/providers/facebook.rb +++ b/lib/providers/facebook.rb @@ -1,5 +1,4 @@ -module Statistics - module Providers +module Providers class Facebook class_attribute :access_token @@ -30,5 +29,4 @@ def fetch_events(group_id:, since_at: nil, until_at: nil) events end end - end end diff --git a/lib/statistics/providers/static_yaml.rb b/lib/providers/static_yaml.rb similarity index 80% rename from lib/statistics/providers/static_yaml.rb rename to lib/providers/static_yaml.rb index 6c496a3d2..9411205ab 100644 --- a/lib/statistics/providers/static_yaml.rb +++ b/lib/providers/static_yaml.rb @@ -1,5 +1,4 @@ -module Statistics - module Providers +module Providers class StaticYaml YAML_FILE = Rails.root.join('db', 'static_event_histories.yaml') @@ -7,5 +6,4 @@ def fetch_events YAML.load_file(YAML_FILE) || [] end end - end end diff --git a/lib/statistics.rb b/lib/statistics.rb index e543557ac..ef5cc7288 100644 --- a/lib/statistics.rb +++ b/lib/statistics.rb @@ -1,6 +1,6 @@ module Statistics; end require_relative 'statistics/client' -require_relative 'statistics/providers' require_relative 'statistics/tasks' require_relative 'statistics/aggregation' +require_relative 'providers' diff --git a/lib/tasks/dojos.rake b/lib/tasks/dojos.rake index 2ec7ee164..95aba39d4 100644 --- a/lib/tasks/dojos.rake +++ b/lib/tasks/dojos.rake @@ -51,7 +51,11 @@ namespace :dojos do if /(?.+)\s\(.+\)/ =~ pre_city table = CSV.table(Rails.root.join('db','city_code.csv')) row = table.find{ |r| r[:city].to_s.start_with?(city)} - row ? row[:order] : raise("Not found order by #{pre_city}") + row ? row[:order] : raise("Failed to detect city code by #{pre_city} +order値の自動設定ができませんでした。お手数ですが下記URLを参考に該当する全国地方公共団体コードをorder値にご入力ください。 +http://www.soumu.go.jp/denshijiti/code.html + +") else raise("It is not valid data for #{pre_city}") end @@ -75,8 +79,9 @@ namespace :dojos do dojos.map! do |dojo| d = Dojo.find_by(name: dojo['name']) - new_dojo = {} - new_dojo['id'] = d.id + new_dojo = {} + new_dojo['id'] = d.id + new_dojo['order'] = d.order new_dojo.merge!(dojo) new_dojo end diff --git a/lib/tasks/statistics.rake b/lib/tasks/statistics.rake index b1611aded..1bf4f75f7 100644 --- a/lib/tasks/statistics.rake +++ b/lib/tasks/statistics.rake @@ -3,7 +3,7 @@ require_relative '../statistics.rb' namespace :statistics do desc '月次/週次のイベント履歴を集計します' task :aggregation, [:from, :to] => :environment do |tasks, args| - Statistics::Providers::Facebook.access_token = Koala::Facebook::OAuth.new(ENV['FACEBOOK_APP_ID'], ENV['FACEBOOK_APP_SECRET']).get_app_access_token + Providers::Facebook.access_token = Koala::Facebook::OAuth.new(ENV['FACEBOOK_APP_ID'], ENV['FACEBOOK_APP_SECRET']).get_app_access_token Statistics::Aggregation.new(args).run end @@ -14,9 +14,9 @@ namespace :statistics do require 'pp' puts 'Searching Connpass' - pp Statistics::Providers::Connpass.new.search(keyword: args[:keyword]) + pp Providers::Connpass.new.search(keyword: args[:keyword]) puts 'Searching Doorkeeper' - pp Statistics::Providers::Doorkeeper.new.search(keyword: args[:keyword]) + pp Providers::Doorkeeper.new.search(keyword: args[:keyword]) end end diff --git a/public/img/dojos/kairyuo.png b/public/img/dojos/kairyuo.png new file mode 100644 index 000000000..4d4d2716d Binary files /dev/null and b/public/img/dojos/kairyuo.png differ diff --git a/public/img/dojos/tuyama.png b/public/img/dojos/tuyama.png new file mode 100644 index 000000000..417685389 Binary files /dev/null and b/public/img/dojos/tuyama.png differ diff --git a/spec/controllers/static_pages_controller_spec.rb b/spec/controllers/static_pages_controller_spec.rb index 550145558..1b2e2b75a 100644 --- a/spec/controllers/static_pages_controller_spec.rb +++ b/spec/controllers/static_pages_controller_spec.rb @@ -9,4 +9,11 @@ end end + describe "GET #events" do + it "returns http success" do + get :events + expect(response).to have_http_status(:success) + end + end + end diff --git a/spec/lib/statistics/providers/connpass_spec.rb b/spec/lib/providers/connpass_spec.rb similarity index 93% rename from spec/lib/statistics/providers/connpass_spec.rb rename to spec/lib/providers/connpass_spec.rb index 6dace0f18..f0e9dad55 100644 --- a/spec/lib/statistics/providers/connpass_spec.rb +++ b/spec/lib/providers/connpass_spec.rb @@ -1,7 +1,7 @@ require 'rails_helper' -require 'statistics' +require 'providers' -RSpec.describe Statistics::Providers::Connpass do +RSpec.describe Providers::Connpass do include_context 'Use stubs for Connpass' describe '#search' do diff --git a/spec/lib/statistics/providers/doorkeeper_spec.rb b/spec/lib/providers/doorkeeper_spec.rb similarity index 90% rename from spec/lib/statistics/providers/doorkeeper_spec.rb rename to spec/lib/providers/doorkeeper_spec.rb index f53bce364..eebe8a60d 100644 --- a/spec/lib/statistics/providers/doorkeeper_spec.rb +++ b/spec/lib/providers/doorkeeper_spec.rb @@ -1,7 +1,7 @@ require 'rails_helper' -require 'statistics' +require 'providers' -RSpec.describe Statistics::Providers::Doorkeeper do +RSpec.describe Providers::Doorkeeper do include_context 'Use stubs for Doorkeeper' describe '#search' do diff --git a/spec/lib/statistics/providers/facebook_spec.rb b/spec/lib/providers/facebook_spec.rb similarity index 85% rename from spec/lib/statistics/providers/facebook_spec.rb rename to spec/lib/providers/facebook_spec.rb index 9ab64af3f..29fd19454 100644 --- a/spec/lib/statistics/providers/facebook_spec.rb +++ b/spec/lib/providers/facebook_spec.rb @@ -1,7 +1,7 @@ require 'rails_helper' -require 'statistics' +require 'providers' -RSpec.describe Statistics::Providers::Facebook do +RSpec.describe Providers::Facebook do include_context 'Use stubs for Facebook' describe '#fetch_events' do