|
12 | 12 | INPUT_TEXT = IO.readlines('./get_dojo_list.txt')
|
13 | 13 | DOJO_DB = JSON.parse Net::HTTP.get(URI.parse 'https://coderdojo.jp/dojos.json'), symbolize_names: true
|
14 | 14 |
|
15 |
| -# CoderDojo の名前を使って、Dojo 一覧からデータを検索 |
16 |
| -result = '<h3>🎁️ 寄贈先の CoderDojo 一覧<small style="white-space: nowrap;">(カッコ内は都道府県名となります)</small></h3>' |
17 |
| -result << "\n\n<ul>\n" |
| 15 | +# CoderDojo "名前を使って、Dojo 一覧からデータを検索 |
| 16 | +result = "<h3>🎁️ 寄贈先の CoderDojo 一覧<small style='white-space: nowrap;'>(カッコ内は都道府県名となります)</small></h3>\n\n" |
18 | 17 | dojo_name = ''
|
19 | 18 | dojo_list = []
|
20 | 19 | not_found = []
|
|
65 | 64 | not_found << dojo_name
|
66 | 65 | end
|
67 | 66 |
|
| 67 | +# coderdojo.jp の掲載順と同じ順序に揃える |
68 | 68 | dojo_list.sort_by!{ |dojo| dojo[:order] }
|
69 |
| -result << dojo_list.map{ |dojo| " <li><a href='#{dojo[:url]}'>#{dojo[:name]}</a><small>(#{dojo[:prefecture]})</small></li>" }.join("\n") |
70 |
| -result << "\n</ul>\n" |
| 69 | + |
| 70 | +# 掲載方式 v1(リスト形式)e.g. https://news.coderdojo.jp/2022/07/12/donation-from-box-to-coderdojo/ |
| 71 | +#result << "\n\n<ul>\n" |
| 72 | +#result << dojo_list.map{ |dojo| " <li><a href='#{dojo[:url]}'>#{dojo[:name]}</a><small>(#{dojo[:prefecture]})</small></li>" }.join("\n") |
| 73 | +#result << "\n</ul>\n" |
| 74 | + |
| 75 | +# 掲載方式 v2(表形式)e.g. https://news.coderdojo.jp/2024/12/25/box-japan-to-coderdojo/ |
| 76 | +result << "<table style='margin: auto; border-collapse: separate; border-spacing: 20px; table-layout: fixed; width: 80%;'>\n" |
| 77 | +result << " <tbody>\n" |
| 78 | +dojo_list.each_with_index do |dojo, i|p |
| 79 | + result << " <tr>\n" if i%3 == 0 |
| 80 | + result << <<-DOJO_HTML |
| 81 | + <td style='text-align: center; width: 33%;'> |
| 82 | + <a href='#{dojo[:url]}'> |
| 83 | + <img src='#{dojo[:logo].gsub('.webp', '.png')}' width='100px'/><br> |
| 84 | + <span style='font-weight: bolder;'>#{dojo[:name]}<small>(#{dojo[:prefecture]})</small></span> |
| 85 | + </a> |
| 86 | + </td> |
| 87 | + DOJO_HTML |
| 88 | + result << " </tr>\n" if i%3 == 2 || i == dojo_list.size - 1 |
| 89 | +end |
| 90 | +result << " </tbody>\n" |
| 91 | +result << "</table>" |
| 92 | + |
71 | 93 | puts result
|
72 | 94 |
|
73 |
| -# 見つからなかった Dojo 等あれば出力 |
74 |
| -puts '' |
75 |
| -puts '--- NOTE ---' |
76 |
| -puts "道場数: #{dojo_list.count}" |
77 |
| -not_found.each {|dojo_name| puts "Not-found or In-active: #{dojo_name}" } |
| 95 | +# デバッグ用コード -- 見つからなかった Dojo 等あれば出力 |
| 96 | +#puts '' |
| 97 | +#puts '--- NOTE ---' |
| 98 | +#puts "道場数: #{dojo_list.count}" |
| 99 | +#not_found.each {|dojo_name| puts "Not-found or In-active: #{dojo_name}" } |
78 | 100 |
|
0 commit comments