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

Open in your IDE?
  1. {% extends 'default_frame.twig' %}
  2. {% form_theme form 'Form/form_div_layout.twig' %}
  3. {% block stylesheet %}
  4. {% endblock %}
  5. {% block javascript %}
  6.     <script src="//yubinbango.github.io/yubinbango/yubinbango.js" charset="UTF-8"></script>
  7.     <script src="{{ asset('js/InputCheck.js', 'user_data') }}"></script>
  8.       <style>
  9.         .err_txt {
  10.             color: #ed2929;
  11.             line-height: 1.8;
  12.         }
  13.         .ec-errorMessage {
  14.             color: red;
  15.             position: relative;
  16.         }
  17.         .ec-errorMessage::before {
  18.             content: "※";
  19.             color: red;
  20.             margin-right: 4px;
  21.         }
  22.     </style>
  23.     <script>
  24.         $(function() {
  25.             //submit時
  26.             $('#form1').submit(function(){
  27.                 err_sw = chkproc();
  28.                 if(err_sw == 1){
  29.                     return false;
  30.                 }
  31.             });
  32.         });
  33.         //入力チェック
  34.         function chkproc(){
  35.             // アラートの初期化
  36.             $('.err_txt').hide();
  37.             $('.err_txt').each(function(index){
  38.                 $(this).html('');
  39.             });
  40.             err_sw = 0;
  41.             var jump = "";
  42.             // お名前(姓)
  43.             var val1 = $('#entry_name_name01').val();
  44.             if(val1 == ""){
  45.                 err_sw = 1; if(jump == ""){jump = "#entry_name_name01";}
  46.                 $('#err_name01').html('※ お名前(姓)が入力されていません。');
  47.             }
  48.             // お名前(名)
  49.             var val1 = $('#entry_name_name02').val();
  50.             if(val1 == ""){
  51.                 err_sw = 1; if(jump == ""){jump = "#entry_name_name02";}
  52.                 $('#err_name02').html('※ お名前(名)が入力されていません。');
  53.             }
  54.             // お名前(フリガナ)(姓)
  55.             var val1 = $('#entry_kana_kana01').val();
  56.             if(val1 == ""){
  57.                 err_sw = 1; if(jump == ""){jump = "#entry_kana_kana01";}
  58.                 $('#err_kana01').html('※ お名前(フリガナ)(姓)が入力されていません。');
  59.             } else if(!checkCharType(val1, 'katakana')){
  60.                 err_sw = 1; if(jump == ""){jump = "#entry_kana_kana01";}
  61.                 $('#err_kana01').html('※ お名前(フリガナ)(姓)は全角カタカナで入力してください');
  62.             }
  63.             // お名前(フリガナ)(名)
  64.             var val1 = $('#entry_kana_kana02').val();
  65.             if(val1 == ""){
  66.                 err_sw = 1; if(jump == ""){jump = "#entry_kana_kana02";}
  67.                 $('#err_kana02').html('※ お名前(フリガナ)(名)が入力されていません。');
  68.             } else if(!checkCharType(val1, 'katakana')){
  69.                 err_sw = 1; if(jump == ""){jump = "#entry_kana_kana02";}
  70.                 $('#err_kana01').html('※ お名前(フリガナ)(名)は全角カタカナで入力してください');
  71.             }
  72.             // 郵便番号
  73.             var val1 = $('#entry_postal_code').val();
  74.             if(val1 == ""){
  75.                 err_sw = 1; if(jump == ""){jump = "#entry_postal_code";}
  76.                 $('#err_postal_code').html('※ 郵便番号が入力されていません。');
  77.             }
  78.             // 住所-都道府県
  79.             var val1 = $('#entry_address_pref option:selected').val();
  80.             if(val1 == ""){
  81.                 err_sw = 1; if(jump == ""){jump = "#entry_address_pref";}
  82.                 $('#err_pref').html('※ 都道府県が選択されていません。');
  83.             }
  84.             // 市区町村名
  85.             var val1 = $('#entry_address_addr01').val();
  86.             if(val1 == ""){
  87.                 err_sw = 1; if(jump == ""){jump = "#entry_address_addr01";}
  88.                 $('#err_addr01').html('※ 市区町村名が入力されていません。');
  89.             }
  90.             // 番地
  91.             var val1 = $('#entry_address_addr02').val();
  92.             if(val1 == ""){
  93.                 err_sw = 1; if(jump == ""){jump = "#entry_address_addr02";}
  94.                 $('#err_addr02').html('※ 番地が入力されていません。');
  95.             }
  96.             // 電話番号1
  97.             var val1 = $('#entry_phone_number').val();
  98.             if(val1 == ""){
  99.                 err_sw = 1; if(jump == ""){jump = "#entry_phone_number";}
  100.                 $('#err_phone_number').html('※ 電話番号1が入力されていません。');
  101.             } else if(!checkCharType(val1, 'tel')){
  102.                 err_sw = 1; if(jump == ""){jump = "#entry_phone_number";}
  103.                 $('#err_phone_number').html('※電話番号1が正しくありません');
  104.             }
  105.             // 電話番号2
  106.             var val1 = $('#entry_phone2').val();
  107.             if(val1 == ""){
  108.             } else if(!checkCharType(val1, 'tel')){
  109.                 err_sw = 1; if(jump == ""){jump = "#entry_phone2";}
  110.                 $('#err_phone2').html('※電話番号2が正しくありません');
  111.             }
  112.             // メールアドレス
  113.             var val1 = $('#entry_email_first').val();
  114.             if(val1 == ""){
  115.                 err_sw = 1; if(jump == ""){jump = "#entry_email_first";}
  116.                 $('#err_email_first').html('※ メールアドレスが入力されていません。');
  117.             }
  118.             var val2 = $('#entry_email_second').val();
  119.             if(val2 == ""){
  120.                 err_sw = 1; if(jump == ""){jump = "#entry_email_second";}
  121.                 $('#err_email_second').html('※ メールアドレス(確認)が入力されていません。');
  122.             }
  123.             if(val1 != "" && val2 != ""){
  124.                 if(val1 != val2){
  125.                     err_sw = 1; if(jump == ""){jump = "#entry_email_first";}
  126.                     $('#err_email_first').html('※ メールアドレスとメールアドレス(確認)が異なります。');
  127.                 //メールアドレス形式チェック
  128.                 } else if(!checkCharType(val1, 'email')){
  129.                     err_sw = 1; if(jump == ""){jump = "#entry_email_first";}
  130.                     $('#err_email_first').html('※ メールアドレスの形式が正しくありません');
  131.                 }
  132.             }
  133.             // パスワード
  134.             var val1 = $('#entry_plain_password_first').val();
  135.             if(val1 == ""){
  136.                 err_sw = 1; if(jump == ""){jump = "#entry_plain_password_first";}
  137.                 $('#err_plain_password_first').html('※ パスワードが入力されていません。');
  138.             }
  139.             var val2 = $('#entry_plain_password_second').val();
  140.             if(val2 == ""){
  141.                 err_sw = 1; if(jump == ""){jump = "#entry_plain_password_second";}
  142.                 $('#err_plain_password_second').html('※ パスワード(確認)が入力されていません。');
  143.             }
  144.             if(val1 != "" && val2 != ""){
  145.                 if(val1 != val2){
  146.                     err_sw = 1; if(jump == ""){jump = "#entry_plain_password_first";}
  147.                     $('#err_plain_password_first').html('※ パスワードとパスワード(確認)が異なります。');
  148.                 } else {
  149.                     //パスワードポリシーチェック
  150.                     if(!checkCharType(val1, 'pwd2')){
  151.                         err_sw = 1; if(jump == ""){jump = "#entry_plain_password_first";}
  152.                         $('#err_plain_password_first').html('※ パスワードは半角英数字記号をそれぞれ1文字以上含む8~32文字の組み合わせで入力ください、使用できる記号は+ ! - / * ~ _ ? スペースです');
  153.                     }
  154.                 }
  155.             }
  156.             // メールマガジン送付について
  157.             var val1 = $("input[name='entry[mailmaga_flg]']:checked").val();
  158.             if(val1 == "" || val1 === undefined){
  159.                 err_sw = 1; if(jump == ""){jump = "#entry_mailmaga_flg_0";}
  160.                 $('#err_mailmaga_flg').html('※ メールマガジン送付についてが選択されていません。');
  161.             }
  162.             // 該当箇所にスクロール
  163.             if(jump != ""){
  164.                 var position = $(jump).offset().top;
  165.                 $('html, body').animate({scrollTop: position}, 'fast');
  166.             }
  167.             $('.err_txt').each(function(index){
  168.                 if($(this).html() != ""){
  169.                     $(this).show();
  170.                 }
  171.             });
  172.             return err_sw;
  173.         }
  174.     </script>
  175. {% endblock javascript %}
  176. {% block main %}
  177. <!DOCTYPE html>
  178. <html>
  179. <head>
  180. <meta charset="UTF-8">
  181. {# ▼ ブロック:DispHtag ▼ #}
  182. {{ include('Block/DispHtag.twig') }}
  183. {# ▲ ブロック:DispHtag ▲ #}
  184. <title>ベースボール・マガジン社 BBM@BOOK CART</title>
  185. <meta name="description" content="ベースボール・マガジン社が運営する総合スポーツサイト。ベースボール・マガジン社発行の書籍・雑誌・スポーツカードなどの新着情報、各競技の技術情報や専門家によるコラムなど、スポーツファンを応援する情報が満載です。">
  186. <meta name="keywords" content="ベースボールマガジン社,BBM">
  187. {# ▼ ブロック:DispHead ▼ #}
  188. {{ include('Block/DispHead.twig') }}
  189. {# ▲ ブロック:DispHead ▲ #}
  190. </head>
  191. <body id="pagetop" class="top">
  192. {# ▼ ブロック:DispBtag ▼ #}
  193. {{ include('Block/DispBtag.twig') }}
  194. {# ▲ ブロック:DispBtag ▲ #}
  195. {# ▼ ブロック:DispHeader ▼ #}
  196. {{ include('Block/DispHeaderEntry.twig') }}
  197. {# ▲ ブロック:DispHeader ▲ #}
  198.     <div id="leftcolumn" class="side_column">
  199.         <!-- ▼かごの中 -->
  200.         <br />
  201.         <div style="width:1000px; margin:0 auto;">
  202.             <div id="cart_area">
  203.                 <h2 class="cart"><span class="title"><img src="{{ asset('common_img/tit_bloc_cart.gif', 'user_data') }}" alt="現在のカゴの中" /></span></h2>
  204.                 <div class="block_body">
  205.                     <div class="information">
  206.                         <p class="item">合計数量:<span class="attention">{{ cartTotalQuantity|number_format }}</span></p>
  207.                         <p class="total">商品金額:<span class="price">{{ cartTotalPrice|number_format }}円</span></p>
  208.                     </div>
  209.                     <div class="btn">
  210.                         <a href="{{ url('cart') }}"><img class="hover_change_image" src="{{ asset('common_img/button/btn_bloc_cart.jpg', 'user_data') }}" alt="カゴの中を見る" /></a>
  211.                     </div>
  212.                 </div>
  213.             </div>
  214.         </div>
  215.         <!-- ▲かごの中 -->
  216.     </div>
  217.     <br />
  218.     <div style="width:1000px; margin:0 auto;">
  219.         <h2 class="title">会員登録(入力ページ)</h2>
  220.         <form method="post" id="form1" name="form1" action="{{ url('entry_input') }}" novalidate class="h-adr">
  221.             <span class="p-country-name" style="display:none;">Japan</span>
  222.             {{ form_widget(form._token) }}
  223.             <table summary="会員登録フォーム" class="tbl">
  224.                 <col width="30%" />
  225.                 <col width="70%" />
  226.                 <tr>
  227.                     <th>お名前<span class="attention">※</span></th>
  228.                     <td>
  229.                         姓&nbsp;{{ form_widget(form.name.name01, { 'attr': { 'class': 'w200', 'placeholder': '姓' }}) }}
  230.                         名&nbsp;{{ form_widget(form.name.name02, { 'attr': { 'class': 'w200', 'placeholder': '名' }}) }}
  231.                         {{ form_errors(form.name.name01) }}
  232.                         {{ form_errors(form.name.name02) }}
  233.                         <!-- ▼エラーの際に表示▼-->
  234.                         <p class="err_txt" id="err_name01"></p>
  235.                         <p class="err_txt" id="err_name02"></p>
  236.                         <!-- ▲エラーの際に表示▲ -->
  237.                     </td>
  238.                 </tr>
  239.                 <tr>
  240.                     <th>お名前(フリガナ)<span class="attention">※</span></th>
  241.                     <td>
  242.                         セイ&nbsp;{{ form_widget(form.kana.kana01, { 'attr': { 'class': 'w200', 'placeholder': 'セイ' }}) }}
  243.                         メイ&nbsp;{{ form_widget(form.kana.kana02, { 'attr': { 'class': 'w200', 'placeholder': 'メイ' }}) }}
  244.                         {{ form_errors(form.kana.kana01) }}
  245.                         {{ form_errors(form.kana.kana02) }}
  246.                         <!-- ▼エラーの際に表示▼-->
  247.                         <p class="err_txt" id="err_kana01"></p>
  248.                         <p class="err_txt" id="err_kana02"></p>
  249.                         <!-- ▲エラーの際に表示▲ -->
  250.                     </td>
  251.                 </tr>
  252.                 <tr>
  253.                     <th>郵便番号<span class="attention">※</span></th>
  254.                     <td>
  255.                         <p class="top">
  256.                             〒&nbsp;{{ form_widget(form.postal_code, { 'attr': { 'class': 'p-postal-code w120', 'placeholder': '1038482' }}) }}
  257.                             {{ form_errors(form.postal_code) }}
  258.                             <!-- ▼エラーの際に表示▼-->
  259.                             <p class="err_txt" id="err_postal_code"></p>
  260.                             <!-- ▲エラーの際に表示▲ -->
  261.                         </p>
  262.                     </td>
  263.                 </tr>
  264.                 <tr>
  265.                     <th>住所<span class="attention">※</span></th>
  266.                     <td>
  267.                         {{ form_widget(form.address.pref, { 'attr': { 'class': 'p-region-id' }}) }}
  268.                         {{ form_errors(form.address.pref) }}
  269.                         <!-- ▼エラーの際に表示▼-->
  270.                         <p class="err_txt" id="err_pref"></p>
  271.                         <!-- ▲エラーの際に表示▲ -->
  272.                         <p class="top">
  273.                             {{ form_widget(form.address.addr01, { 'attr': { 'class': 'p-locality p-street-address w400', 'placeholder': '市区町村名・町域(例:東京都中央区日本橋浜町)' }}) }}
  274.                             {{ form_errors(form.address.addr01) }}
  275.                             <!-- ▼エラーの際に表示▼-->
  276.                             <p class="err_txt" id="err_addr01"></p>
  277.                             <!-- ▲エラーの際に表示▲ -->
  278.                         </p>
  279.                         <p class="mini"><span class="attention">市区町村名・町域 例:東京都中央区日本橋浜町</span></p>
  280.                         <p class="top">
  281.                             {{ form_widget(form.address.addr02,  { 'attr': { 'class': 'p-extended-address w400', 'placeholder': '番地・ビル名(例:2-61-9 TIE浜町ビル)' }}) }}
  282.                             {{ form_errors(form.address.addr02) }}
  283.                             <!-- ▼エラーの際に表示▼-->
  284.                             <p class="err_txt" id="err_addr02"></p>
  285.                             <!-- ▲エラーの際に表示▲ -->
  286.                         </p>
  287.                         <p class="mini"><span class="attention">番地・ビル名 例:2-61-9 TIE浜町ビル(マンション名・号室は必ず記入してください)</span></p>
  288.                         <p class="top">
  289.                             {{ form_widget(form.company_name,  { 'attr': { 'class': 'w400', 'placeholder': '法人名(例:株式会社ベースボール・マガジン社)' }}) }}
  290.                             {{ form_errors(form.company_name) }}
  291.                             <!-- ▼エラーの際に表示▼-->
  292.                             <p class="err_txt" id="err_company_name"></p>
  293.                             <!-- ▲エラーの際に表示▲ -->
  294.                         </p>
  295.                         <p class="mini"><span class="attention">法人様の場合、法人名(個人様の場合は空欄)</span></p>
  296.                         <p class="mini"><span class="attention"> 例:はるのビル201 または ベースボール・マガジン社</span></p>
  297.                         <p class="mini"><span class="attention">住所は2つに分けてご記入ください。マンション名は必ず記入してください。</span></p>
  298.                     </td>
  299.                 </tr>
  300.                 <tr>
  301.                     <th>電話番号1<span class="attention">※</span></th>
  302.                     <td>
  303.                         {{ form_widget(form.phone_number) }}
  304.                         {{ form_errors(form.phone_number) }}
  305.                         <p class="mini"><span class="attention">例:0312345678/09012345678 ※ 最も連絡の取りやすい連絡先を入力して下さい。</span></p>
  306.                         <!-- ▼エラーの際に表示▼-->
  307.                         <p class="err_txt" id="err_phone_number"></p>
  308.                         <!-- ▲エラーの際に表示▲ -->
  309.                     </td>
  310.                 </tr>
  311.                 <tr>
  312.                     <th>電話番号2</th>
  313.                     <td>
  314.                         {{ form_widget(form.phone2) }}
  315.                         {{ form_errors(form.phone2) }}
  316.                         <p class="mini"><span class="attention">例:0312345678/09012345678 ※ その他の連絡先を入力して下さい。</span></p>
  317.                         <!-- ▼エラーの際に表示▼-->
  318.                         <p class="err_txt" id="err_phone2"></p>
  319.                         <!-- ▲エラーの際に表示▲ -->
  320.                     </td>
  321.                 </tr>
  322.                 <tr>
  323.                     <th>メールアドレス<span class="attention">※</span></th>
  324.                     <td>
  325.                         {{ form_widget(form.email.first, { 'attr': { 'class': 'w300', 'placeholder': '例:ec-cube@example.com' }}) }}
  326.                         {{ form_errors(form.email.first) }}
  327.                         <p class="mini"><span class="attention">メールアドレスは半角のみご記入ください。</span></p>
  328.                         {{ form_widget(form.email.second, { 'attr': { 'class': 'w300', 'placeholder': '確認のためもう一度入力してください' }}) }}
  329.                         {{ form_errors(form.email.second) }}
  330.                         <p class="mini"><span class="attention">※ 確認のためにもう一度メールアドレスを入力してください。</span></p>
  331.                         <!-- ▼エラーの際に表示▼-->
  332.                         <p class="err_txt" id="err_email_first"></p>
  333.                         <p class="err_txt" id="err_email_second"></p>
  334.                         <!-- ▲エラーの際に表示▲ -->
  335.                     </td>
  336.                 </tr>
  337.                 <tr>
  338.                     <th>希望するパスワード<span class="attention">※</span><br />
  339.                     </th>
  340.                     <td>
  341.                         {{ form_widget(form.plain_password.first, {
  342.                             'attr': { 'class': 'w300', 'placeholder': '半角英数記号8〜32文字' },
  343.                             'type': 'password'
  344.                         }) }}
  345.                         {{ form_errors(form.plain_password.first) }}
  346.                         <p><span class="attention mini">パスワードは半角英数字記号をそれぞれ1文字以上含む8~32文字の組み合わせで入力ください。</span></p>
  347.                         <p><span class="attention mini">使用できる記号は+ ! - / * ~ _ ? スペースです。</span></p>
  348.                         {{ form_widget(form.plain_password.second, {
  349.                             'attr': { 'class': 'w300', 'placeholder': '確認のためもう一度入力してください'|trans },
  350.                             'type': 'password'
  351.                         }) }}
  352.                         {{ form_errors(form.plain_password.second) }}
  353.                         <p><span class="attention mini">確認のために2度入力してください。</span></p>
  354.                         <!-- ▼エラーの際に表示▼-->
  355.                         <p class="err_txt" id="err_plain_password_first"></p>
  356.                         <p class="err_txt" id="err_plain_password_second"></p>
  357.                         <!-- ▲エラーの際に表示▲ -->
  358.                     </td>
  359.                 </tr>
  360.                 <tr>
  361.                     <th>メールマガジン送付について<span class="attention">※</span></th>
  362.                     <td>
  363.                         <span>
  364.                             {{ form_widget(form.mailmaga_flg) }}
  365.                             {{ form_errors(form.mailmaga_flg) }}
  366.                             <!-- ▼エラーの際に表示▼-->
  367.                             <p class="err_txt" id="err_mailmaga_flg"></p>
  368.                             <!-- ▲エラーの際に表示▲ -->
  369.                         </span>
  370.                     </td>
  371.                 </tr>
  372.             </table>
  373.             <div class="btn_area align_c mt30">
  374.                 <ul>
  375.                     <li>
  376.                         <button type="submit" class="hover_change_image" name="mode" value="confirm" ><img src="{{ asset('common_img/button/btn_confirm.jpg', 'user_data') }}" alt="確認ページへ" /></button>
  377.                     </li>
  378.                 </ul>
  379.             </div>
  380.         </form>
  381.     </div>
  382. {# ▼ ブロック:DispFooter ▼ #}
  383. {{ include('Block/DispFooter.twig') }}
  384. {# ▲ ブロック:DispFooter ▲ #}
  385. {# ▼ ブロック:DispFtag ▼ #}
  386. {{ include('Block/DispFtag.twig') }}
  387. {# ▲ ブロック:DispFtag ▲ #}
  388. </body>
  389. </html>
  390. {% endblock %}
  391. {# ▲ main ▲ #}