diff --git a/about/index.html b/about/index.html new file mode 100644 index 0000000..287a7ac --- /dev/null +++ b/about/index.html @@ -0,0 +1,32 @@ + + +Junior-Doctor Chokai Academy + + + + + + + +
+
+ Junior-Doctor Chokai Academy +

ジュニアドクター鳥海塾

+
+ +

ジュニアドクター育成塾(ジュニアドクター鳥海塾)とは

+ +
+

ジュニアドクター育成塾は、将来の科学技術イノベーションを牽引する傑出した +人材の育成に向けて、高い意欲や突出した能力を持つ小中学生を発掘し、 +理数・情報分野の学習などを通じてその能力を伸長させる体系的な取り組みを +支援するものです。東北公益文科大学は、科学技術振興機構(JST)の令和3年度 +「ジュニアドクター育成塾」の実施機関に選定されました。

+ +
+ + + + + diff --git a/apply/appjd.rb b/apply/appjd.rb index 8d41954..9d0ac95 100755 --- a/apply/appjd.rb +++ b/apply/appjd.rb @@ -5,7 +5,27 @@ myname = File.basename($0) rcpt = "jd@e.koeki-u.ac.jp" rcpt = "yuuji@es.gentei.org" -from = "公益ジュニアドクターセンター <#{sender}>" + +=begin +params = { + "pref" => "都道府県", "schoolid" => "学校番号", "schoolname" => "学校名", + "hiraname" => "ふりがな", "fm" => "性別", "name" => "氏名", + "birthday" => "生年月日", + "pname" => "保護者名", "phiragana" => "ほごしゃめい", + "grade" => "学年", "class" => "クラス", "seatnum" => "出席番号", + "address" => "住所", "phone" => "電話番号", "email" => "email", + "transport" => "交通手段", "clubs" => "課外活動", + "motive" => "応募の動機", "interest" => "科学的興味", + "contest" => "コンテスト等参加歴", "issues" => "地域課題意識", + "selfintro" => "自己紹介" +} +# grep name= appform.html | sed -E 's/.*name="([^"]*)".*/\1/'|uniq +for k, v in params + printf("

%s

\n

\n__%s__\n

\n", + v, k.upcase) +end; exit +# ./appjd.rb > mailtmpl.txt +=end header = <<_EOS_ @@ -13,41 +33,60 @@ +
_EOS_ -footer = <<_EOS_ - -_EOS_ +footer = "

もどる

+
\n" sent = <<_EOF_ -

送信しました

-

ジュニアドクター鳥海塾申請書を送信しました。

-

もどる

+

送信完了

+

以下の内容でジュニアドクター鳥海塾申請書を送信しました。

_EOF_ c = CGI.new(:accept_charset => "UTF-8") print "Content-type: text/html; charset=UTF-8\n\n" print header -email = c["email"] -name = c["pname"] +email = c["email"].read +name = c["pname"].read from = "" + require 'nkf' sj = NKF.nkf('-jM', "申請書").strip fr = NKF.nkf('-jM', name).strip from = sprintf("%s <%s>", fr, email) -body = open("template.txt") {|tp| tp.read} -body.gsub!(/__(\w+)__/) {|k| c[$1]} -print body -open("| sendmail -f #{email} #{rcpt}", "w") do |m| +body = open("mailtmpl.txt"){|tp| tp.read}.force_encoding('utf-8') +body.gsub!(/__(\w+)__/){|k| CGI.escapeHTML(c[$1.downcase].read)} + + +if c["recfile"].original_filename > "" then + require "tmpdir" + Dir.mktmpdir {|tmp| + of = c["recfile"].original_filename + ext = File.extname(of) + bn = [c["schoolid"], c["grade"], c["class"], c["seatnum"]].join("-") + ext + file = File.expand_path(bn, tmp) + open(file, "w"){|o| o.binmode; o.write c["recfile"].read} + open("| ./sendmultipart.sh -t #{rcpt} -s '#{sj}' -f '#{fr}' '#{file}'", "w") do |m| + m.print body + end + } +else + open("| sendmail -f #{email} #{rcpt}", "w") do |m| m.puts(<<~EOS) - To: #{email} + To: #{rcpt} From: #{fr} Subject: #{sj} Mime-Version: 1.0 Content-Transfer-Encoding: 7bit - Content-Type: Text/Plain; charset=iso-2022-jp" + Content-Type: Text/Plain; charset=utf-8" - #{body.force_encoding('binary')} + #{body} EOS + end end +table = open("mailtmpl.html"){|h| h.read}.force_encoding('utf-8') +table.gsub!(/__(\w+)__/){|k| CGI.escapeHTML(c[$1.downcase].read)} + +print table print footer diff --git a/apply/getapp.rb b/apply/getapp.rb index cc74cc6..c520f21 100755 --- a/apply/getapp.rb +++ b/apply/getapp.rb @@ -13,10 +13,10 @@ Junior Doctor Chokai Academy Application Form - +
_EOS_ footer = <<_EOS_ - +
_EOS_ emailform = <<_EOS_ @@ -35,6 +35,7 @@ 主にPCで利用しているアドレスなどがあればそれを入れてください。

#{emailform} _EOS_ +getapp2 = open("note.html"){|n| n.read} sent = <<_EOF_

送信しました

@@ -97,10 +98,9 @@ #{body.force_encoding('binary')} EOS end - print body - p fr end else print getapp + print getapp2 end print footer diff --git a/apply/mailtmpl.html b/apply/mailtmpl.html new file mode 100644 index 0000000..b4af7da --- /dev/null +++ b/apply/mailtmpl.html @@ -0,0 +1,19 @@ + + + + + + + + + + + + + + + + + + +
都道府県__PREF__
氏名__NAME__ (__HIRANAME__) __FM__ __BIRTHDAY__生
学校名__SCHOOLNAME__ (__SCHOOLID__)
学年__GRADE__
クラス__CLASS__
出席番号__SEATNUM__番
保護者名__PNAME__ (__PHIRANAME__)
住所__ADDRESS__
電話番号__PHONE__
email__EMAIL__
課外活動__CLUBS__
応募の動機__MOTIVE__
科学的興味__INTEREST__
コンテスト等参加歴__CONTEST__
地域課題意識__ISSUES__
自己紹介__SELFINTRO__
推薦者__RECNAME__ (__RECREL__)
diff --git a/apply/mailtmpl.txt b/apply/mailtmpl.txt new file mode 100644 index 0000000..1998239 --- /dev/null +++ b/apply/mailtmpl.txt @@ -0,0 +1,29 @@ +都道府県 __PREF__ +氏名 __NAME__ (__HIRANAME__) __FM__ __BIRTHDAY__生 +学校名 __SCHOOLNAME__ (__SCHOOLID__) +学年 __GRADE__ +クラス __CLASS__ +出席番号 __SEATNUM__番 +保護者名 __PNAME__ (__PHIRANAME__) +住所 __ADDRESS__ +電話番号 __PHONE__ +email __EMAIL__ +推薦者 __RECNAME__ (__RECREL__) +課外活動 [[[ +__CLUBS__ +]]] +応募の動機 [[[ +__MOTIVE__ +]]] +科学的興味 [[[ +__INTEREST__ +]]] +コンテスト等参加歴 [[[ +__CONTEST__ +]]] +地域課題意識 [[[ +__ISSUES__ +]]] +自己紹介 [[[ +__SELFINTRO__ +]]] diff --git a/apply/note.html b/apply/note.html new file mode 100644 index 0000000..d660bc2 --- /dev/null +++ b/apply/note.html @@ -0,0 +1,35 @@ + + +
+

ジュニアドクター申し込み前に

+

ジュニアドクター鳥海塾は、科学技術イノベーションを牽引する人材育成を +目的としたプログラムです(国立研究開発法人 科学技術振興機構ジュニアドクター育成塾)。 +理数・情報分野に強い関心を持つ +意欲の高い小学5年生から中学3年生までであればご応募いただけますが、 +選考に当たっては特に粘り強く継続的に取り組める姿勢を評価します。 +また、以下の点にご注意ください。

+
+
負担
+
8月から3月までの期間、原則として土曜午後の全20回のコースです。 + 受講費は無料ですが、会場までの移動費とオンライン講座にかかる + 通信費は自己負担となります。
+
出席率
+
現時点の予定で60%以上の出席ができることを条件とします。
+
居住地
+
全20回のうち主要な回は + 山形県酒田市にある東北公益文科大学のキャンパスで開講します。 + 直接来場できる場所にお住まいの方に限ります。
+
課程と選抜
+
最大2年間の課程です。初年度第1段階プログラム(40名選抜)修了後、選抜された + 10名が2年目の課程(第2段階プログラム)に進みます。
+
学年
+
申込み時点で中学3年生の方は第1段階プログラムのみで修了となります。
+
+ + +
diff --git a/apply/testdata-form b/apply/testdata-form new file mode 100644 index 0000000..a9a9121 --- /dev/null +++ b/apply/testdata-form @@ -0,0 +1,22 @@ +pref=山形県 +schoolid=B010003032001 +schoolname=酒田市立泉小学校 +hiraname=酒田泉 +fm=男 +name=さかたいずみ +birthday=2007-07-11 +pname=酒田六兵衛 +phiraname=さかたろくべえ +grade=J2 +class=2 +seatnum=26 +address=酒田市広野 +phone=0234-41-1257 +email=yuuji@es.gentei.org +transport=折りたたみ式チャリ +clubs=XLine +motive=イエイ%0Afoo +interest=興味な +contest= +issues=特にな +selfintro=ひゃっはー diff --git a/header.html b/header.html index c3d788f..01673d0 100644 --- a/header.html +++ b/header.html @@ -1,11 +1,11 @@
diff --git a/home/index.html b/home/index.html new file mode 100644 index 0000000..c1396ca --- /dev/null +++ b/home/index.html @@ -0,0 +1,42 @@ + + +Junior-Doctor Chokai Academy + + + + + + + +
+
+ Junior-Doctor Chokai Academy +

ジュニアドクター鳥海塾

+
+ +

第1期 受講生募集

+ + +
+

鳥海塾でどんなことが学べるの?

+

まずは、プログラミングの基礎を身に付けます。そして、情報技術が身近な +地域社会のどんな場面に使われているのかを学びます。講座の終わりには、受講 +生それぞれが自分のアイディアを出してオリジナルのプログラミングづくりに挑 +戦します。

+

実際の授業では、大学の先生や大学生のお兄さんお姉さんがみなさん +の学びをサポートします。授業当日に学校行事やイベントで欠席になる場合には、 +オンラインでの補講にも対応します。

+
+

鳥海塾で学びを積み上げて「鳥海山の頂 (2236m)」を目指そう !

+

鳥海塾では受講生の学習の記録を積み重ね、標高メートルとして高さで示し +ながら、名峰「鳥海山」の頂上標高2236メートルを目指して登っていきます。

+

受講生のみなさんの研究を鳥海山から世界に向けて発信する気持ちで、一緒に挑 +戦していきましょう。

+ +
+ + + + + diff --git a/index.html b/index.html index 8879ab5..74beb18 100644 --- a/index.html +++ b/index.html @@ -3,38 +3,10 @@ Junior-Doctor Chokai Academy - + - - -
-
- Junior-Doctor Chokai Academy -

ジュニアドクター鳥海塾

-
- -

真のプログラマーヘの第一歩!!

- -
-

私たちと一緒にプログラムを作って遊んでみましょう!

- 大人の人たちが実際に使っている本格的なプログラムで - ゲームを作ったりしてみない? これを使いこなせれば、 - クラスのみんなができないようなことができるよ。 それ - に、算数や英語を使うから普段の勉強にも活かせるよ! -
- -
-

自分だけのオリジナルのプログラムが作れちゃう!

- 全部で5回のイベントに参加すると、簡単なゲームを - 作れたり、生活に便利なプログラムを作れるようにな - るよ。遊んで勉強できるなんてまさに一石二鳥だね! -
- -
- - + - \ No newline at end of file + diff --git a/jdinit.js b/jdinit.js index f14c467..c4b0677 100644 --- a/jdinit.js +++ b/jdinit.js @@ -6,8 +6,8 @@ function () { function includeIdFiles() { for (let id of ["header", "footer"]) { - let e = document.getElementById(id), - fn = e.id + ".html"; + let e = document.getElementById(id), + fn = "../" + e.id + ".html"; fetch(fn).then((resp) => { resp.text().then((text) => { let newmenu = e.insertAdjacentHTML("afterend", text); diff --git a/jdmain.css b/jdmain.css index 75bfbb5..81589ca 100644 --- a/jdmain.css +++ b/jdmain.css @@ -8,6 +8,13 @@ font-family: "Sawarabi Gothic"; color: rgb(45, 45, 45); } +.c, body.top h2 {text-align: center;} +body.top h2 { + padding: 1ex 2em; width: 20em; + border: groove #4a7 3px; margin: 5em auto; border-radius: 1em; +} +body.top a {text-decoration: none; color: #284} +body.top a:hover h2 {background: #9ea;} body:after{ margin: 0; @@ -21,6 +28,7 @@ background: linear-gradient(to bottom, #afeeee 0%, #FFF 100%); z-index: -1; } + body.vmenuspace {margin-top: 2em; border-top: 3px solid;} section.logobox {position: relative;} section.logobox > h1 { @@ -87,3 +95,8 @@ border: 1px solid #446; border-collapse: collapse; } table.border th {text-align: left; padding: 0.2ex 0.8ex;} + +dl dt { + margin: 0 1ex; padding: 0 1ex; width: 6em; + border: #284 solid; border-width: 0 0 1px 1.2em; +}