app/template/default/Entry/index.twig line 1

Open in your IDE?
  1. {#
  2. This file is part of EC-CUBE
  3. Copyright(c) EC-CUBE CO.,LTD. All Rights Reserved.
  4. http://www.ec-cube.co.jp/
  5. For the full copyright and license information, please view the LICENSE
  6. file that was distributed with this source code.
  7. #}
  8. {% extends 'default_frame.twig' %}
  9. {% set body_class = 'registration_page' %}
  10. {% form_theme form 'Form/form_div_layout.twig' %}
  11. {% block javascript %}
  12.     <script src="//yubinbango.github.io/yubinbango/yubinbango.js" charset="UTF-8"></script>
  13. {% endblock javascript %}
  14. {% block stylesheet %}
  15.     <style>
  16.         {# MEMO: form_widgetのattrを使い、Tailwindのクラスでスタイリングすると
  17.             郵便番号のライブラリで不具合が起きた為、stylesheetを使ってスタイリングしている #}
  18.         #entry_address_pref{
  19.             width:252px;
  20.             padding:10px 16px;
  21.             border-radius: 0.375rem;
  22.             border: 2px solid #CCC;
  23.             @media (max-width: 768px) {
  24.                 width:100%;
  25.             }
  26.         }
  27.     </style>
  28. {% endblock %}
  29. {% block main %}
  30.     <div class="mt-10 mb-[120px] px-4 md:mt-4 md:mb-10 animate-slideIn">
  31.         <div class="w-full max-w-[720px] mx-auto">
  32.             <h1 class="text-2xl font-extralight mb-6 md:mb-5 md:text-lg">会員登録フォーム</h1>
  33.             <div class="mb-8">
  34.                 <p class="font-extralight">
  35.                     登録に必要な情報を入力してください。
  36.                 </p>
  37.                 <p class="font-bold text-manakaRed">
  38.                     ※は必須項目です。
  39.                 </p>
  40.             </div>
  41.             <div>
  42.                 <form method="post" action="{{ url('entry') }}" novalidate class="h-adr">
  43.                     <span class="p-country-name" style="display:none;">Japan</span>
  44.                     {{ form_widget(form._token) }}
  45.                     <div>
  46.                         <dl class="w-full flex items-center md:items-start gap-8 md:gap-3 py-5 border-[#CCCCCC] border-t-2 md:flex-col">
  47.                             <dt class="font-bold md:text-sm w-full max-w-[227px] md:w-fit">
  48.                                 <span>●</span>
  49.                                 お名前
  50.                                 <span class="text-[#BE5255]">※</span>
  51.                             </dt>
  52.                             <dd class="w-full max-w-[482px]">
  53.                                 <div class="flex items-center w-full gap-3 ec-halfInput{{ has_errors(form.name.name01, form.name.name02) ? ' error'}}">
  54.                                     {{ form_widget(form.name.name01, { 'attr': { 'placeholder': 'common.last_name' ,'class':'w-full p-2 border-[#CCCCCC] novalidate   border-[1px] rounded-md md:max-w-none
  55.                                     {% if form_errors(form.name.name01) %}border-red bg-rose-50{% endif %}'}}) }}
  56.                                     {{ form_widget(form.name.name02, { 'attr': { 'placeholder': 'common.first_name','class':'w-full p-2 border-[#CCCCCC]  border-[1px] rounded-md md:max-w-none
  57.                                     {% if form_errors(form.name.name02) %}border-red bg-rose-50{% endif %}' }}) }}
  58.                                 </div>
  59.                                 <div class="flex flex-col gap-1 pt-2">
  60.                                     {% if form_errors(form.name.name01) %}
  61.                                         <div class="text-xs flex items-center gap-2">
  62.                                             <img src="{{asset('assets/icon/error.svg')}}" alt="Error Image" class="w-3 h-3">
  63.                                             <span class="flex text-manakaRed">
  64.                                                 姓:{{ form_errors(form.name.name01) }}</span>
  65.                                         </div>
  66.                                     {% endif %}
  67.                                     {% if form_errors(form.name.name02) %}
  68.                                         <div class="text-xs flex items-center gap-2">
  69.                                             <img src="{{asset('assets/icon/error.svg')}}" alt="Error Image" class="w-3 h-3">
  70.                                             <span class="flex text-manakaRed">
  71.                                                 名前:{{ form_errors(form.name.name02) }}
  72.                                             </span>
  73.                                         </div>
  74.                                     {% endif %}
  75.                                 </div>
  76.                             </dd>
  77.                         </dl>
  78.                         <dl class="flex items-center gap-8 md:gap-3 justify-between py-5 border-[#CCCCCC] border-t-2 md:flex-col md:items-start">
  79.                             <dt class="font-bold md:text-sm w-full max-w-[227px] md:w-fit">
  80.                                 <span>●</span>
  81.                                 お名前 (フリガナ)
  82.                                 <span class="text-[#BE5255]">※</span>
  83.                             </dt>
  84.                             <dd class="w-full max-w-[482px]">
  85.                                 <div class="flex items-center gap-3 ec-halfInput{{ has_errors(form.kana.kana01, form.kana.kana02) ? ' error'}}">
  86.                                     {{ form_widget(form.kana.kana01, { 'attr': { 'placeholder': 'common.last_name_kana', 'class':'w-full p-2 border-[#CCCCCC]  border-[1px] rounded-md md:max-w-none
  87.                                     {% if form_errors(form.kana.kana01) %}border-red bg-rose-50{% endif %}' }}) }}
  88.                                     {{ form_widget(form.kana.kana02, { 'attr': { 'placeholder': 'common.first_name_kana', 'class':'w-full p-2 border-[#CCCCCC]  border-[1px] rounded-md md:max-w-none
  89.                                     {% if form_errors(form.kana.kana02) %}border-red bg-rose-50{% endif %}' }}) }}
  90.                                 </div>
  91.                                 <div class="flex flex-col gap-1 pt-2">
  92.                                     {% if form_errors(form.kana.kana01) %}
  93.                                         <div class="text-xs flex items-center gap-2">
  94.                                             <img src="{{asset('assets/icon/error.svg')}}" alt="Error Image" class="w-3 h-3">
  95.                                             <span class="flex text-manakaRed">
  96.                                                 姓(カタカナ):{{ form_errors(form.kana.kana01) }}
  97.                                             </span>
  98.                                         </div>
  99.                                     {% endif %}
  100.                                     {% if form_errors(form.kana.kana02) %}
  101.                                         <div class="text-xs flex items-center gap-2">
  102.                                             <img src="{{asset('assets/icon/error.svg')}}" alt="Error Image" class="w-3 h-3">
  103.                                             <span class="flex text-manakaRed">
  104.                                                 名(カタカナ):{{ form_errors(form.kana.kana02) }}
  105.                                             </span>
  106.                                         </div>
  107.                                     {% endif %}
  108.                                 </div>
  109.                             </dd>
  110.                         </dl>
  111.                         <dl class="flex gap-8 md:gap-3 justify-between py-5 border-[#CCCCCC] border-t-2 md:flex-col md:items-start">
  112.                             <dt class="font-bold md:text-sm w-full max-w-[227px] md:w-fit">
  113.                                 <span>●</span>
  114.                                 住所
  115.                                 <span class="text-[#BE5255]">※</span>
  116.                             </dt>
  117.                             <dd class="w-full max-w-[482px] flex flex-col gap-4">
  118.                                 <div class="flex items-center gap-2 ec-zipInput{{ has_errors(form.postal_code) ? ' error' }}">
  119.                                     <span>{{ 'common.postal_symbol'|trans }}</span>
  120.                                     {{ form_widget(form.postal_code, { 'attr': { 'placeholder': '5300001','class':'p-postal-code w-full max-w-[176px] p-2 border-manakaBeige border-2 ml-2 rounded-md md:ml-0 md:max-w-none
  121.                                     {% if form_errors(form.postal_code) %}border-red bg-rose-50{% endif %}' }}) }}
  122.                                     {% if form_errors(form.postal_code) %}
  123.                                         <div class="text-xs flex items-center gap-2 pt-2">
  124.                                             <img src="{{asset('assets/icon/error.svg')}}" alt="Error Image" class="w-3 h-3">
  125.                                             <span class="flex text-manakaRed">
  126.                                                 郵便番号:{{ form_errors(form.postal_code) }}
  127.                                             </span>
  128.                                         </div>
  129.                                     {% endif %}
  130.                                 </div>
  131.                                 <a href="https://www.post.japanpost.jp/zipcode/" target="_blank">
  132.                                     <span class="underline text-sm">郵便番号を検索する (外部サイトへ)</span>
  133.                                 </a>
  134.                                 <div class="ec-select{{ has_errors(form.address.pref) ? ' error' }}">
  135.                                     {{ form_widget(form.address.pref) }}
  136.                                     {% if form_errors(form.address.pref) %}
  137.                                         <div class="text-xs flex items-center gap-2 pt-2">
  138.                                             <img src="{{asset('assets/icon/error.svg')}}" alt="Error Image" class="w-3 h-3">
  139.                                             <span class="flex text-manakaRed">
  140.                                                 都道府県:{{ form_errors(form.address.pref) }}
  141.                                             </span>
  142.                                         </div>
  143.                                     {% endif %}
  144.                                 </div>
  145.                                 <div class="ec-input{{ has_errors(form.address.addr01) ? ' error' }}">
  146.                                     {{ form_widget(form.address.addr01, { 'attr': { 'placeholder': '市区町村名','class':'p-locality  w-full max-w-[482px] p-2 border-[#CCCCCC]  border-[1px] rounded-md md:max-w-none
  147.                                     {% if form_errors(form.address.addr01) %}border-red bg-rose-50{% endif %}' }}) }}
  148.                                     {% if form_errors(form.address.addr01) %}
  149.                                         <div class="text-xs flex items-center gap-2 pt-2">
  150.                                             <img src="{{asset('assets/icon/error.svg')}}" alt="Error Image" class="w-3 h-3">
  151.                                             <span class="flex text-manakaRed">
  152.                                                 市区町村名:{{ form_errors(form.address.addr01) }}
  153.                                             </span>
  154.                                         </div>
  155.                                     {% endif %}
  156.                                 </div>
  157.                                 <div class="ec-input{{ has_errors(form.address.addr02) ? ' error' }}">
  158.                                     {{ form_widget(form.address.addr02,  { 'attr': { 'placeholder': '番地・ビル名(例: 1-3-5 まなかマンション908)','class':'p-street-address w-full max-w-[482px] p-2 border-[#CCCCCC]  border-[1px] rounded-md md:max-w-none
  159.                                     {% if form_errors(form.address.addr02) %}border-red bg-rose-50{% endif %}' }}) }}
  160.                                     {% if form_errors(form.address.addr02) %}
  161.                                         <div class="text-xs flex items-center gap-2 pt-2">
  162.                                             <img src="{{asset('assets/icon/error.svg')}}" alt="Error Image" class="w-3 h-3">
  163.                                             <span class="flex text-manakaRed">
  164.                                                 番地・ビル名:{{ form_errors(form.address.addr02) }}
  165.                                             </span>
  166.                                         </div>
  167.                                     {% endif %}
  168.                                 </div>
  169.                             </dd>
  170.                         </dl>
  171.                         <dl class="flex gap-8 md:gap-3 justify-between py-5 border-[#CCCCCC] border-t-2 md:flex-col md:items-start">
  172.                             <dt class="font-bold md:text-sm w-full max-w-[227px] md:w-fit">
  173.                                 <span>●</span>
  174.                                 電話番号
  175.                                 <span class="text-[#BE5255]">※</span>
  176.                             </dt>
  177.                             <dd class="w-full max-w-[482px]">
  178.                                 <div class="ec-telInput{{ has_errors(form.phone_number) ? ' error' }}">
  179.                                     {{ form_widget(form.phone_number, { 'attr': { 'placeholder': '例: 11122223333', 'class':'w-full p-2 border-[#CCCCCC]  border-[1px] rounded-md md:max-w-none
  180.                                     {% if form_errors(form.phone_number) %}border-red bg-rose-50{% endif %}' }}) }}
  181.                                 </div>
  182.                                 {% if form_errors(form.phone_number) %}
  183.                                     <div class="text-xs flex items-center gap-2 pt-2">
  184.                                         <img src="{{asset('assets/icon/error.svg')}}" alt="Error Image" class="w-3 h-3">
  185.                                         <span class="flex text-manakaRed">
  186.                                             電話番号:{{ form_errors(form.phone_number) }}
  187.                                         </span>
  188.                                     </div>
  189.                                 {% endif %}
  190.                             </dd>
  191.                         </dl>
  192.                         <dl class="gap-8 md:gap-3 flex justify-between py-5 border-[#CCCCCC] border-t-2 md:flex-col md:items-start">
  193.                             <dt class="font-bold md:text-sm w-full max-w-[227px] md:w-fit">
  194.                                 <span>●</span>
  195.                                 メールアドレス
  196.                                 <span class="text-[#BE5255]">※</span>
  197.                             </dt>
  198.                             <dd class="w-full max-w-[482px] flex flex-col gap-4">
  199.                                 <div class="ec-input{{ has_errors(form.email.first) ? ' error' }}">
  200.                                     {{ form_widget(form.email.first, { 'attr': { 'placeholder': 'common.mail_address_sample', 'class':'w-full p-2 border-[#CCCCCC]  border-[1px] rounded-md md:max-w-none
  201.                                     {% if form_errors(form.email.first) %}border-red bg-rose-50{% endif %}' }}) }}
  202.                                     {% if form_errors(form.email.first) %}
  203.                                         <div class="text-xs flex items-center gap-2 pt-2">
  204.                                             <img src="{{asset('assets/icon/error.svg')}}" alt="Error Image" class="w-3 h-3">
  205.                                             <span class="flex text-manakaRed">
  206.                                                 メールアドレス:{{ form_errors(form.email.first) }}
  207.                                             </span>
  208.                                         </div>
  209.                                     {% endif %}
  210.                                 </div>
  211.                                 <div class="ec-input{{ has_errors(form.email.second) ? ' error' }}">
  212.                                     {{ form_widget(form.email.second, { 'attr': { 'placeholder': 'common.repeated_confirm', 'class':'w-full p-2 border-[#CCCCCC]  border-[1px] rounded-md md:max-w-none
  213.                                     {% if form_errors(form.email.second) %}border-red bg-rose-50{% endif %}' }}) }}
  214.                                     {% if form_errors(form.email.second) %}
  215.                                         <div class="text-xs flex items-center gap-2 pt-2">
  216.                                             <img src="{{asset('assets/icon/error.svg')}}" alt="Error Image" class="w-3 h-3">
  217.                                             <span class="flex text-manakaRed">
  218.                                                 メールアドレス(確認):{{ form_errors(form.email.second) }}
  219.                                             </span>
  220.                                         </div>
  221.                                     {% endif %}
  222.                                 </div>
  223.                                 <p class="text-sm font-extralight text-[#999]">※ 『@manaka-net.com』からのメールを受信できる設定になっていることをご確認下さい。</p>
  224.                             </dd>
  225.                         </dl>
  226.                         <dl class="gap-8 md:gap-3 flex justify-between py-5 border-[#CCCCCC] border-t-2 md:flex-col md:items-start">
  227.                             <dt class="font-bold md:text-sm w-full max-w-[227px] md:w-fit">
  228.                                 <span>●</span>
  229.                                 パスワード
  230.                                 <span class="text-[#BE5255]">※</span>
  231.                             </dt>
  232.                             <dd class="w-full max-w-[482px] flex flex-col gap-4">
  233.                                 <div class="ec-input{{ has_errors(form.plain_password.first) ? ' error' }}">
  234.                                     {{ form_widget(form.plain_password.first, {
  235.                                         'attr': { 'placeholder': 'common.password_sample'|trans({ '%min%': eccube_config.eccube_password_min_len, '%max%': eccube_config.eccube_password_max_len }),
  236.                                         'class':'w-full p-2 border-[#CCCCCC]  border-[1px] rounded-md md:max-w-none
  237.                                         {% if form_errors(form.plain_password.first) %}border-red bg-rose-50{% endif %}' },
  238.                                         'type': 'password',
  239.                                     }) }}
  240.                                     {% if form_errors(form.plain_password.first) %}
  241.                                         <div class="text-xs flex items-center gap-2 pt-2">
  242.                                             <img src="{{asset('assets/icon/error.svg')}}" alt="Error Image" class="w-3 h-3">
  243.                                             <span class="flex text-manakaRed">
  244.                                                 パスワード:{{ form_errors(form.plain_password.first) }}
  245.                                             </span>
  246.                                         </div>
  247.                                     {% endif %}
  248.                                 </div>
  249.                                 <div class="ec-input{{ has_errors(form.plain_password.second) ? ' error' }}">
  250.                                     {{ form_widget(form.plain_password.second, {
  251.                                         'attr': { 'placeholder': 'common.repeated_confirm'|trans ,                                'class':'w-full p-2 border-[#CCCCCC]  border-[1px] rounded-md md:max-w-none
  252.                                         {% if form_errors(form.plain_password.second) %}border-red bg-rose-50{% endif %}'},
  253.                                         'type': 'password',
  254.                                     }) }}
  255.                                     {% if form_errors(form.plain_password.second) %}
  256.                                         <div class="text-xs flex items-center gap-2 pt-2">
  257.                                             <img src="{{asset('assets/icon/error.svg')}}" alt="Error Image" class="w-3 h-3">
  258.                                             <span class="flex text-manakaRed">
  259.                                                 パスワード(確認):{{ form_errors(form.plain_password.second) }}
  260.                                             </span>
  261.                                         </div>
  262.                                     {% endif %}
  263.                                 </div>
  264.                             </dd>
  265.                         </dl>
  266.                         <dl class="flex gap-8  justify-between py-5 border-[#CCCCCC] border-y-2 md:flex-col md:items-start md:gap-3">
  267.                             <dt class="font-bold md:text-sm w-full max-w-[227px] md:w-fit">
  268.                                 <span>●</span>
  269.                                 まなかからのメールやDMのご送付について
  270.                                 <span class="text-[#BE5255]">※</span>
  271.                             </dt>
  272.                             <dd class="w-full max-w-[482px] flex flex-col gap-4">
  273.                                 <div>
  274.                                     <input type="radio" id="entry_mailImage_flg_0" name="{{ field_name(form.mailmaga_flg) }}" value="1" required class="form-control"/>
  275.                                     <label for="entry_mailImage_flg_0">
  276.                                         受け取る
  277.                                     </label>
  278.                                 </div>
  279.                                 <div>
  280.                                     <input type="radio" id="entry_mailImage_flg_1" name="{{ field_name(form.mailmaga_flg) }}" value="0" required class="form-control"/>
  281.                                     <label for="entry_mailImage_flg_1">
  282.                                         受け取らない
  283.                                     </label>
  284.                                 </div>
  285.                                 {% if form_errors(form.mailmaga_flg) %}
  286.                                     <div class="text-xs flex items-center gap-2 pt-2">
  287.                                         <img src="{{asset('assets/icon/error.svg')}}" alt="Error Image" class="w-3 h-3">
  288.                                         <span class="flex text-manakaRed">
  289.                                             まなかからのメールやDMのご送付について :{{ form_errors(form.mailmaga_flg) }}
  290.                                         </span>
  291.                                     </div>
  292.                                 {% endif %}
  293.                             </dd>
  294.                         </dl>
  295.                     </div>
  296.                     <div class="flex flex-col gap-6 mt-10 sm:w-full">
  297.                         <p class="text-center font-extralight">
  298.                             <a href="{{url('help_agreement')}}" class="underline">会員規約</a>
  299.                             に同意の上、
  300.                         </p>
  301.                         <button class="block w-full max-w-[300px] py-4 font-extralight mx-auto bg-manakaBlack text-white text-lg md:text-bas" type="submit" name="mode" value="confirm">登録に進む</button>
  302.                     </div>
  303.                     {{ form_widget(form.user_policy_check, {'attr': { 'checked' :true, 'hidden' : true }}) }}
  304.                     {{ form_errors(form.user_policy_check) }}
  305.                 </form>
  306.             </div>
  307.         </div>
  308.     </div>
  309.     {% set breadcrumbs = [{'name': '会員登録(入力ページ)'}] %}
  310.     {% include('Block/breadcrumbs.twig') %}
  311. {% endblock %}