差分

このページの2つのバージョン間の差分を表示します。

この比較画面へのリンク

両方とも前のリビジョン 前のリビジョン
次のリビジョン
前のリビジョン
side_en [2025/06/22 05:54] Tana JH1HSTside_en [2026/07/17 21:19] (現在) Tana JH1HST
行 3: 行 3:
 ====== The Amateur Radio Festival ; HAMFAIR ====== ====== The Amateur Radio Festival ; HAMFAIR ======
  
 +TOKYO HAMFAIR Information in English.\\
 For the Japanese parts/images that original, please use the translation camera tool on your smartphone or other tools. For the Japanese parts/images that original, please use the translation camera tool on your smartphone or other tools.
  
行 10: 行 10:
  
 ---- ----
-47th Hamfair (2025) \\ +<php>
-  * [[47th_ann_en|Event Information]] +
-  * [[47th_4exb_en|Exhibitor Information]] +
-  * [[47th_s_stage_form_en|Call for Speakers: Satellite Stage]]+
  
- \\+/* 
 + * Hamfair English Menu 
 + * Add / remove / reorder menu items in the arrays below. 
 + */
  
----- +$main_title = '48th Hamfair'; 
-46th Hamfair (2024) \\ +$main_year  = '2026';
-  * [[46th_ann_en|Event Information]] +
-  * [[46th_booth_en_google|Exhibit Booth Info (Translated this page by Google.)]] +
-  * [[46th_stage_en|Stage Information]] +
-  * [[46th_mf_en|Workspace for Kids]] +
-  * [[46th_jtest_en|Selfmade contest info]] +
-  * [[46th_stamp_en|Stampsrally]] +
-  * [[46th_8j1ham_en|8J1HAM]] +
-  * [[46th_eventlive|Live Stream (in Japanese)]] +
-  * [[a_64thf|Free Gallery (in Japanese)]]+
  
 +$main_menu = [
 +    [
 +        'title' => 'Event Information',
 +        'desc'  => 'Dates, venue, access, and general information.',
 +        'page'  => '48th_ann_en',
 +        'icon'  => '📅',
 +    ],
 +    [
 +        'title' => 'Exhibitor Booth Information',
 +        'desc'  => 'Booth list, exhibitor information, and venue maps.',
 +        'page'  => '48th_booth_info_en',
 +        'icon'  => '🗺️',
 +    ],
 +    [
 +        'title' => 'Main Stage Program',
 +        'desc'  => 'Program and schedule for the Main Stage.',
 +        'page'  => '48th_m_stage_en',
 +        'icon'  => '🎤',
 +    ],
 +    [
 +        'title' => 'Satellite Stage Program',
 +        'desc'  => 'Program and schedule for the Satellite Stage.',
 +        'page'  => '48th_s_stage_info_en',
 +        'icon'  => '📚',
 +    ],
 +    [
 +        'title' => 'Admission Tickets',
 +        'desc'  => 'How to purchase tickets for Hamfair.',
 +        'page'  => '2teket48_en',
 +        'icon'  => '🎫',
 +    ],
 +    [
 +        'title' => 'Catchphrase & Official Logo',
 +        'desc'  => 'Official catchphrase and logo information.',
 +        'page'  => '48th_logo_pub_en',
 +        'icon'  => '🏷️',
 +    ],
 +    [
 +        'title' => 'Special Station 8J1HAM',
 +        'desc'  => 'Official Hamfair special event station.',
 +        'page'  => '48th_8j1ham_en',
 +        'icon'  => '📡',
 +    ],
 +    [
 +        'title' => '8J1HAM Public & Guest Operation',
 +        'desc'  => 'Information for public and guest operation.',
 +        'page'  => '48th_8j1ham_e_en',
 +        'icon'  => '🎙️',
 +    ],
 +];
 +
 +$exhibitor_menu = [
 +    [
 +        'title' => 'Exhibitor Information',
 +        'desc'  => 'Information and notices for exhibitors.',
 +        'page'  => '48th_app_en',
 +        'icon'  => '📦',
 +    ],
 +];
 +
 +
 +/*
 + * From here down, normally no need to edit.
 + */
 +
 +if (!function_exists('hamfair_en_h')) {
 +    function hamfair_en_h($text) {
 +        return htmlspecialchars($text, ENT_QUOTES, 'UTF-8');
 +    }
 +}
 +
 +if (!function_exists('hamfair_en_url')) {
 +    function hamfair_en_url($page) {
 +        if (preg_match('/^https?:\/\//', $page)) {
 +            return $page;
 +        }
 +
 +        if (function_exists('wl')) {
 +            return wl($page);
 +        }
 +
 +        return './' . rawurlencode($page);
 +    }
 +}
 +
 +if (!function_exists('hamfair_en_card')) {
 +    function hamfair_en_card($item, $extra_class = '') {
 +        $title = hamfair_en_h($item['title']);
 +        $desc  = hamfair_en_h($item['desc']);
 +        $url   = hamfair_en_h(hamfair_en_url($item['page']));
 +        $icon  = isset($item['icon']) ? hamfair_en_h($item['icon']) : '';
 +
 +        echo '<a class="hamfair-en-card ' . hamfair_en_h($extra_class) . '" href="' . $url . '">';
 +        echo '  <span class="hamfair-en-card-icon">' . $icon . '</span>';
 +        echo '  <span class="hamfair-en-card-body">';
 +        echo '    <span class="hamfair-en-card-title">' . $title . '</span>';
 +        echo '    <span class="hamfair-en-card-desc">' . $desc . '</span>';
 +        echo '  </span>';
 +        echo '  <span class="hamfair-en-card-arrow">›</span>';
 +        echo '</a>';
 +    }
 +}
 +
 +echo <<<HTML
 +<style>
 +.hamfair-en-menu {
 +  max-width: 880px;
 +  margin: 1.2em 0 2.2em 0;
 +  font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
 +}
 +
 +.hamfair-en-main-title {
 +  display: flex;
 +  align-items: baseline;
 +  gap: .35em;
 +  margin: 0 0 .75em 0;
 +  padding: 0 0 .45em 0;
 +  border-bottom: 2px solid #e5edf4;
 +  color: #1f2d3d;
 +}
 +
 +.hamfair-en-main-title .name {
 +  font-size: 2em;
 +  font-weight: 800;
 +  letter-spacing: .01em;
 +}
 +
 +.hamfair-en-main-title .year {
 +  font-size: 1.25em;
 +  font-weight: 500;
 +  color: #6a7a86;
 +}
 +
 +.hamfair-en-grid {
 +  display: grid;
 +  grid-template-columns: 1fr;
 +  gap: 12px;
 +}
 +
 +.hamfair-en-card {
 +  display: flex;
 +  align-items: center;
 +  position: relative;
 +  min-height: 72px;
 +  padding: 15px 46px 15px 16px;
 +  border-radius: 17px;
 +  background:
 +    linear-gradient(135deg, rgba(255,255,255,.92), rgba(255,255,255,.72)),
 +    linear-gradient(135deg, #eef9ff 0%, #e6f3fa 100%);
 +  border: 1px solid #d8eaf4;
 +  text-decoration: none !important;
 +  box-shadow: 0 3px 10px rgba(20, 80, 120, .06);
 +  transition: transform .12s ease, box-shadow .12s ease, border-color .12s ease;
 +}
 +
 +.hamfair-en-card:hover {
 +  transform: translateY(-2px);
 +  box-shadow: 0 8px 20px rgba(20, 80, 120, .13);
 +  border-color: #9ed0ec;
 +  text-decoration: none !important;
 +}
 +
 +.hamfair-en-card-icon {
 +  flex: 0 0 auto;
 +  width: 42px;
 +  height: 42px;
 +  margin-right: 13px;
 +  border-radius: 13px;
 +  background: rgba(255,255,255,.8);
 +  display: flex;
 +  align-items: center;
 +  justify-content: center;
 +  font-size: 1.45em;
 +  box-shadow: inset 0 0 0 1px rgba(150, 190, 210, .22);
 +}
 +
 +.hamfair-en-card-body {
 +  display: block;
 +  min-width: 0;
 +}
 +
 +.hamfair-en-card-title {
 +  display: block;
 +  font-size: 1.15em;
 +  font-weight: 800;
 +  line-height: 1.28;
 +  color: #0b67b2;
 +}
 +
 +.hamfair-en-card-desc {
 +  display: block;
 +  margin-top: 3px;
 +  font-size: .78em;
 +  line-height: 1.35;
 +  color: #6c7a84;
 +  opacity: .68;
 +}
 +
 +.hamfair-en-card-arrow {
 +  position: absolute;
 +  right: 18px;
 +  top: 50%;
 +  transform: translateY(-51%);
 +  font-size: 2em;
 +  color: #75abc6;
 +  line-height: 1;
 +}
 +
 +.hamfair-en-section {
 +  margin-top: 1.8em;
 +}
 +
 +.hamfair-en-section-title {
 +  margin: 0 0 .7em 0;
 +  padding: 0 0 .4em 0;
 +  border-bottom: 2px solid #e5edf4;
 +  font-size: 1.45em;
 +  font-weight: 800;
 +  color: #1f2d3d;
 +}
 +
 +.hamfair-en-card.exhibitor {
 +  background:
 +    linear-gradient(135deg, rgba(255,255,255,.92), rgba(255,255,255,.68)),
 +    linear-gradient(135deg, #fff7e5 0%, #ffefc9 100%);
 +  border-color: #efd59c;
 +}
 +
 +.hamfair-en-card.exhibitor .hamfair-en-card-title {
 +  color: #975a00;
 +}
 +
 +.hamfair-en-card.exhibitor .hamfair-en-card-arrow {
 +  color: #c98d2d;
 +}
 +
 +@media (min-width: 700px) {
 +  .hamfair-en-grid {
 +    grid-template-columns: 1fr 1fr;
 +  }
 +}
 +
 +@media (max-width: 520px) {
 +  .hamfair-en-main-title .name {
 +    font-size: 1.65em;
 +  }
 +
 +  .hamfair-en-main-title .year {
 +    font-size: 1.05em;
 +  }
 +
 +  .hamfair-en-card {
 +    min-height: 68px;
 +    padding: 14px 42px 14px 14px;
 +  }
 +
 +  .hamfair-en-card-title {
 +    font-size: 1.05em;
 +  }
 +
 +  .hamfair-en-card-desc {
 +    font-size: .74em;
 +  }
 +}
 +</style>
 +
 +<div class="hamfair-en-menu">
 +  <div class="hamfair-en-main-title">
 +    <span class="name">
 +HTML;
 +
 +echo hamfair_en_h($main_title);
 +
 +echo <<<HTML
 +    </span>
 +    <span class="year">
 +HTML;
 +
 +echo '(' . hamfair_en_h($main_year) . ')';
 +
 +echo <<<HTML
 +    </span>
 +  </div>
 +
 +  <div class="hamfair-en-grid">
 +HTML;
 +
 +foreach ($main_menu as $item) {
 +    hamfair_en_card($item);
 +}
 +
 +echo <<<HTML
 +  </div>
 +
 +  <div class="hamfair-en-section">
 +    <div class="hamfair-en-section-title">For Exhibitors</div>
 +    <div class="hamfair-en-grid">
 +HTML;
 +
 +foreach ($exhibitor_menu as $item) {
 +    hamfair_en_card($item, 'exhibitor');
 +}
 +
 +echo <<<HTML
 +    </div>
 +  </div>
 +</div>
 +HTML;
 +
 +</php>
 +
 +  \\
 +  \\
 +  \\
  
 ---- ----
  
-  * [[46th_ebparty_en|Eye-ball Party (First night party)]]+ 
 +[[https://100th.jarl.org/en/|{{:jarl100.png?nolink&200|}}]] \\ 
 +[[https://100th.jarl.org/en/|{{:amateurradio100th.png?nolink&200|}}]] 
 + 
 +  \\
  
 ---- ----
-  * [[46th_note_v_en|Notes for Participants]] + 
-  * [[46th_note_b_en|Notes for Exhibitors]]+ 
 +**Past Editions**\\ 
 +  * [[47th_en|47th Hamfair (2025)]]  
 +  * [[46th_en|46th Hamfair (2024)]]  
 + 
  
 ---- ----
  • side_en.1750539274.txt.gz
  • 最終更新: 2025/06/22 05:54
  • by Tana JH1HST