app/template/default/Block/calendar.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. 修正年月日:2024/03/27 k.saito
  8. 修正内容:爆速商品フラグ(hidden_bakusoku)の項目をhiddenで追加。
  9. 修正年月日:2024/12/12 k.saito
  10. 修正内容:エリア選択に、「選択して下さい」の項目を追加し、default設定。
  11. #}
  12. {% block javascript %}
  13. {# 使用中 #}
  14. <script src="{{ asset('assets/js/content/CalendarNextMonth.js', 'user_data') }}" type="module"></script>
  15. <script src="{{ asset('assets/js/content/setAreaFromCalendar.js', 'user_data') }}" type="module"></script>
  16. <script src="{{ asset('assets/js/content/pickDayFromCalendar.js', 'user_data') }}" type="module"></script>{# 大竹カレンダーの代わり #}
  17. {% endblock %}
  18. {% block stylesheet %}
  19. <link rel="stylesheet" href="{{ asset('assets/css/calendar.css', 'user_data') }}">
  20. {% endblock %}
  21. {#{% form_theme form 'Form/form_div_layout.twig' %}#}
  22. <div class="ec-role">
  23.     <input type="hidden" id="hidden_bakusoku" name="hidden_bakusoku" value="{{ hidden_bakusoku }}">
  24.     <div>
  25.         {# セレクトボックス #}
  26.         <div class="calendarmidashi">はじめに「設置希望エリア」を選択してください</div>
  27.         <div class="option_Label">
  28.           <label for="calendarAreaSelectBox" class="form-label">設置希望エリア</label><span class="ec-required">必須</span>
  29.         </div>
  30.         <div class="ec-select">
  31.           <select id="calendarAreaSelectBox">
  32.             <option value="" selected>選択してください</option>
  33.             {% for targetArea in area %}
  34.                 <option value="option-{{ targetArea.variable }}">{{ targetArea.name }}</option>
  35.             {% endfor %}
  36.             </select>
  37.         </div>
  38.         <div class="option_Label">
  39.           <label class="form-label">設置希望日カレンダー</label><span class="ec-required">必須</span>
  40.         </div>
  41.         {# 今月用 #}
  42.         <div class="thisMonthTitle">
  43.             <div class="flexInner">
  44.                 <div class="monthButton"> </div>
  45.                 <div class="monthText">{{ ThisMonthTitle }}</div>
  46.                 <div id="nextMonthButton" class="monthButton">翌月</div>
  47.             </div>
  48.         </div>
  49.         {# 来月用 #}
  50.         <div class="nextMonthTitle">
  51.             <div class="flexInner">
  52.                 <div id="prevMonthButton" class="monthButton">前月</div>
  53.                 <div class="monthText">{{ NextMonthTitle }}</div>
  54.                 <div class="monthButton"> </div>
  55.             </div>
  56.         </div>
  57.         <p class="ec-calendarTxt01">左右の<span><img src="/html/user_data/assets/images/content/content/arrow-c-prev.svg" alt=""></span><span><img src="/html/user_data/assets/images/content/content/arrow-c-next.svg" alt=""></span>でスクロールできます</p>
  58.         <p class="ec-calendarTxt01 sp">指タッチでスクロールできます</p>
  59.         <div class="ec-calendar">
  60.             <div class="tableVoxWrap">
  61.                 <div class="tableVox">
  62.                     <table id="this-month-table" class="ec-calendar__month thisTable">
  63.                         <tr class="firstTr">
  64.                             {# 左のAM、PM表示 #}
  65.                             <td class="areaCell">
  66.                                 <div class="area">
  67.                                     {# 各エリアの名前 #}
  68.                                     {% for targetArea in area %}
  69.                                         <div class="{{ targetArea.cssId }}">{{ targetArea.name }}</div>
  70.                                     {% endfor %}
  71.                                 </div>
  72.                                 <div class="schedule-header">AM<br><span class="s">(9:00~13:00)</span></div>
  73.                                 <div class="schedule-header">PM<br><span class="s">(13:00~17:00)</span></div>
  74.                             </td>
  75.                             <td class="btnCell">
  76.                                 <a href="javascript:void(0);" id="js-eccPrevBtn-this-month-table" class="eccBtn prev end"><img src="/html/user_data/assets/images/content/content/arrow-c.svg" alt=""></a>
  77.                             </td>
  78.                             {# 左のAM、PM表示ここまで #}
  79.                             {% for day in ThisMonthCalendar %}
  80.                                 {% if day.day != null %}{# 日曜日基準のため、日付がないカレンダーも表示されるため #}
  81.                                     {# 本日と定休日用 #}
  82.                                     {% if day.today == 1 and day.holiday == 1 %}
  83.                                     <td id="today-and-holiday" class="ec-calendar__today ec-calendar__holiday tdCustom">
  84.                                         {# 曜日表示用 #}
  85.                                         <div class="ec-calendar__{{ day.dayOfWeek }}">{{ displayWeek[day.dayOfWeek] }}</div>
  86.                                         <div class="calendar_day">{{ day.day }}</div>
  87.                                         <div id="res-holiday">
  88.                                             {% for targetArea in area %}
  89.                                             {% set variable =  targetArea.variable %}
  90.                                             <div class="reserve {{ targetArea.cssId }}">
  91.                                                 <div class="calendar_am">{{ day.reservation[variable].AM }}</div>
  92.                                                 <div class="calendar_pm">{{ day.reservation[variable].PM }}</div>
  93.                                             </div>
  94.                                             {% endfor %}
  95.                                             <div class="yearMonthDay">{{ day.yearMonthDay }}</div>
  96.                                         </div>
  97.                                     </td>
  98.                                     {# 本日のみ #}
  99.                                     {% elseif day.today == 1 and day.holiday == 0 %}
  100.                                     <td id="today" class="ec-calendar__today tdCustom">
  101.                                         {# 曜日表示用 #}
  102.                                         <div class="ec-calendar__{{ day.dayOfWeek }}">{{ displayWeek[day.dayOfWeek] }}</div>
  103.                                         <div class="calendar_day">{{ day.day }}</div>
  104.                                         <div id="res-holiday">
  105.                                             {% for targetArea in area %}
  106.                                             {% set variable =  targetArea.variable %}
  107.                                             <div class="reserve {{ targetArea.cssId }}">
  108.                                                 {# {{ targetArea.name }} #}
  109.                                                 <div class="calendar_am">{{ day.reservation[variable].AM }}</div>
  110.                                                 <div class="calendar_pm">{{ day.reservation[variable].PM }}</div>
  111.                                                  {# 予約時に使用 #}
  112.                                                 {% if subStaffFlg == true %}
  113.                                                 <div id="reservation-main">
  114.                                                     <div class="reservation-am1">
  115.                                                         <div>終日メイン</div>
  116.                                                         {% for AM1Key,AM1Value in day.reservation[variable].AM1 %}
  117.                                                             <div class="reservation-staff">{{ AM1Key }}</div>
  118.                                                         {% endfor %}
  119.                                                     </div>
  120.                                                 </div>
  121.                                                 <div id="reservation-sub">
  122.                                                     <div class="reservation-am1">
  123.                                                         <div>AMサブスタッフ</div>
  124.                                                         {% for AM1Key,AM1Value in day.reservation[variable].subStaff.AM1 %}
  125.                                                             <div class="reservation-staff">{{ AM1Key }}</div>
  126.                                                         {% endfor %}
  127.                                                     </div>
  128.                                                 </div>
  129.                                             {% else %}
  130.                                                 <div id="reservation-main">
  131.                                                     <div class="reservation-am1">
  132.                                                         <div>AM1</div>
  133.                                                         {% for AM1Key,AM1Value in day.reservation[variable].AM1 %}
  134.                                                             <div class="reservation-staff">{{ AM1Key }}</div>
  135.                                                         {% endfor %}
  136.                                                     </div>
  137.                                                     <div class="reservation-am2">
  138.                                                         <div>AM2</div>
  139.                                                         {% for AM2Key,AM2Value in day.reservation[variable].AM2 %}
  140.                                                             <div class="reservation-staff">{{ AM2Key }}</div>
  141.                                                         {% endfor %}
  142.                                                     </div>
  143.                                                     <div class="reservation-pm1">
  144.                                                         <div>PM1</div>
  145.                                                         {% for PM1Key,PM1Value in day.reservation[variable].PM1 %}
  146.                                                             <div class="reservation-staff">{{ PM1Key }}</div>
  147.                                                         {% endfor %}
  148.                                                     </div>
  149.                                                     <div class="reservation-pm2">
  150.                                                         <div>PM2</div>
  151.                                                         {% for PM2Key,PM2Value in day.reservation[variable].PM2 %}
  152.                                                             <div class="reservation-staff">{{ PM2Key }}</div>
  153.                                                         {% endfor %}
  154.                                                     </div>
  155.                                                 </div>
  156.                                             {% endif %}
  157.                                             {# 予約時に使用 end #}
  158.                                             </div>
  159.                                             {% endfor %}
  160.                                             <div class="yearMonthDay">{{ day.yearMonthDay }}</div>
  161.                                         </div>
  162.                                     </td>
  163.                                     {% elseif day.today == 0 and day.holiday == 1 %}
  164.                                     <td id="this-month-holiday-{{ day.day }}" class="ec-calendar__holiday tdCustom">
  165.                                         <div class="ec-calendar__{{ day.dayOfWeek }}">{{ displayWeek[day.dayOfWeek] }}</div>
  166.                                         <div class="calendar_day">{{ day.day }}</div>
  167.                                         <div id="res-holiday">
  168.                                             {% for targetArea in area %}
  169.                                             {% set variable =  targetArea.variable %}
  170.                                             <div class="reserve {{ targetArea.cssId }}">
  171.                                                 <div class="calendar_am">{{ day.reservation[variable].AM }}</div>
  172.                                                 <div class="calendar_pm">{{ day.reservation[variable].PM }}</div>
  173.                                             </div>
  174.                                             {% endfor %}
  175.                                             <div class="yearMonthDay">{{ day.yearMonthDay }}</div>
  176.                                         </div>
  177.                                     </td>
  178.                                     {# 本日ここまで #}
  179.                                     {# 土日は定休日表示にしています。不要な場合は削除して下さい。ここから #}
  180.                                    {# {% elseif day.dayOfWeek == 'Sun' or day.dayOfWeek == 'Sat' %} #}
  181.                                     {% elseif day.dayOfWeek == 'Sun' %}
  182.                                     <td id="this-month-holiday-{{ day.day }}" class="ec-calendar__holiday tdCustom">
  183.                                         {# 曜日表示用 #}
  184.                                         <div class="ec-calendar__{{ day.dayOfWeek }}">{{ displayWeek[day.dayOfWeek] }}</div>
  185.                                         <div class="calendar_day">{{ day.day }}</div>
  186.                                         <div id="res-holiday">
  187.                                             {% for targetArea in area %}
  188.                                             {% set variable =  targetArea.variable %}
  189.                                             <div class="reserve {{ targetArea.cssId }}">
  190.                                                 <div class="calendar_am">{{ day.reservation[variable].AM }}</div>
  191.                                                 <div class="calendar_pm">{{ day.reservation[variable].PM }}</div>
  192.                                             </div>
  193.                                             {% endfor %}
  194.                                             <div class="yearMonthDay">{{ day.yearMonthDay }}</div>
  195.                                         </div>
  196.                                     </td>
  197.                                     {# 土日は定休日表示にしています。不要な場合は削除して下さい。ここまで #}
  198.                                     {% else %}
  199.                                     {# 何もない平日用 #}
  200.                                     <td class="this-month-ec-calendar__day tdCustom">
  201.                                         {# 曜日表示用 #}
  202.                                         <div class="ec-calendar__{{ day.dayOfWeek }}">{{ displayWeek[day.dayOfWeek] }}</div>
  203.                                         <div class="calendar_day">{{ day.day }}</div>
  204.                                         {% for targetArea in area %}
  205.                                         {% set variable =  targetArea.variable %}
  206.                                         <div class="reserve {{ targetArea.cssId }}">
  207.                                             {# {{ targetArea.name }} #}
  208.                                             <div class="calendar_am">{{ day.reservation[variable].AM }}</div>
  209.                                             <div class="calendar_pm">{{ day.reservation[variable].PM }}</div>
  210.                                             {# 予約時に使用 #}
  211.                                             {% if subStaffFlg == true %}
  212.                                                 <div id="reservation-main">
  213.                                                     <div class="reservation-am1">
  214.                                                         <div>終日メイン</div>
  215.                                                         {% for AM1Key,AM1Value in day.reservation[variable].AM1 %}
  216.                                                             <div class="reservation-staff">{{ AM1Key }}</div>
  217.                                                         {% endfor %}
  218.                                                     </div>
  219.                                                 </div>
  220.                                                 <div id="reservation-sub">
  221.                                                     <div class="reservation-am1">
  222.                                                         <div>AMサブスタッフ</div>
  223.                                                         {% for AM1Key,AM1Value in day.reservation[variable].subStaff.AM1 %}
  224.                                                             <div class="reservation-staff">{{ AM1Key }}</div>
  225.                                                         {% endfor %}
  226.                                                     </div>
  227.                                                 </div>
  228.                                             {% else %}
  229.                                                 <div id="reservation-main">
  230.                                                     <div class="reservation-am1">
  231.                                                         <div>AM1</div>
  232.                                                         {% for AM1Key,AM1Value in day.reservation[variable].AM1 %}
  233.                                                             <div class="reservation-staff">{{ AM1Key }}</div>
  234.                                                         {% endfor %}
  235.                                                     </div>
  236.                                                     <div class="reservation-am2">
  237.                                                         <div>AM2</div>
  238.                                                         {% for AM2Key,AM2Value in day.reservation[variable].AM2 %}
  239.                                                             <div class="reservation-staff">{{ AM2Key }}</div>
  240.                                                         {% endfor %}
  241.                                                     </div>
  242.                                                     <div class="reservation-pm1">
  243.                                                         <div>PM1</div>
  244.                                                         {% for PM1Key,PM1Value in day.reservation[variable].PM1 %}
  245.                                                             <div class="reservation-staff">{{ PM1Key }}</div>
  246.                                                         {% endfor %}
  247.                                                     </div>
  248.                                                     <div class="reservation-pm2">
  249.                                                         <div>PM2</div>
  250.                                                         {% for PM2Key,PM2Value in day.reservation[variable].PM2 %}
  251.                                                             <div class="reservation-staff">{{ PM2Key }}</div>
  252.                                                         {% endfor %}
  253.                                                     </div>
  254.                                                 </div>
  255.                                             {% endif %}
  256.                                             {# 予約時に使用 end #}
  257.                                         </div>
  258.                                         {% endfor %}{# targetArea #}
  259.                                         <div class="yearMonthDay">{{ day.yearMonthDay }}</div>
  260.                                     </td>
  261.                                     {# {% endif %}#}
  262.                                      {% endif %}
  263.                             {#
  264.                             {% if loop.index % 7 == 0 and loop.index != ThisMonthCalendar|length %}
  265.                         </tr>
  266.                         <tr>
  267.                             {% endif %} #}
  268.                             {% endif %}
  269.                             {% endfor %}
  270.                             <td class="btnCell">
  271.                                 <a href="javascript:void(0);" id="js-eccNextBtn-this-month-table" class="eccBtn next"><img src="/html/user_data/assets/images/content/content/arrow-c.svg" alt=""></a>
  272.                             </td>
  273.                         </tr>
  274.                     </table>
  275.                 </div>
  276.             </div>
  277.             <div class="tableVoxWrap">
  278.                 <div class="tableVox">
  279.                     <table id="next-month-table" class="ec-calendar__month">
  280.                         <tr class="firstTr">
  281.                             {# 左のAM、PM表示 #}
  282.                             <td class="areaCell">
  283.                                 <div class="area">
  284.                                     {# 各エリアの名前 #}
  285.                                     {% for targetArea in area %}
  286.                                         <div class="{{ targetArea.cssId }}">{{ targetArea.name }}</div>
  287.                                     {% endfor %}
  288.                                 </div>
  289.                                 <div class="schedule-header">AM<br><span class="s">(9:00~13:00)</span></div>
  290.                                 <div class="schedule-header">PM<br><span class="s">(13:00~17:00)</span></div>
  291.                             </td>
  292.                             <td class="btnCell">
  293.                                 <a href="javascript:void(0);" id="js-eccPrevBtn-next-month-table" class="eccBtn prev end"><img src="/html/user_data/assets/images/content/content/arrow-c.svg" alt=""></a>
  294.                             </td>
  295.                             {# 左のAM、PM表示ここまで #}
  296.                             {% for day in NextMonthCalendar %}
  297.                                 {% if day.day != null %}{# 日曜日基準のため、日付がないカレンダーも表示されるため #}
  298.                                     {# 本日と定休日用 #}
  299.                                     {% if day.holiday == 1 %}
  300.                                     <td id="next-month-holiday-{{ day.day }}" class="ec-calendar__holiday tdCustom">
  301.                                         <div class="ec-calendar__{{ day.dayOfWeek }}">{{ displayWeek[day.dayOfWeek] }}</div>
  302.                                         <div class="calendar_day">{{ day.day }}</div>
  303.                                         <div id="res-holiday">
  304.                                             {% for targetArea in area %}
  305.                                             {% set variable =  targetArea.variable %}
  306.                                             <div class="reserve {{ targetArea.cssId }}">
  307.                                                 <div class="calendar_am">{{ day.reservation[variable].AM }}</div>
  308.                                                 <div class="calendar_pm">{{ day.reservation[variable].PM }}</div>
  309.                                             </div>
  310.                                             {% endfor %}
  311.                                             <div class="yearMonthDay">{{ day.yearMonthDay }}</div>
  312.                                         </div>
  313.                                     </td>
  314.                                     {# 本日ここまで #}
  315.                                     {# 土日は定休日表示にしています。不要な場合は削除して下さい。ここから #}
  316.                                    {# {% elseif day.dayOfWeek == 'Sun' or day.dayOfWeek == 'Sat' %} #}
  317.                                     {% elseif day.dayOfWeek == 'Sun' %}
  318.                                     <td id="next-month-holiday-{{ day.day }}" class="ec-calendar__holiday tdCustom">
  319.                                         {# 曜日表示用 #}
  320.                                         <div class="ec-calendar__{{ day.dayOfWeek }}">{{ displayWeek[day.dayOfWeek] }}</div>
  321.                                         <div class="calendar_day">{{ day.day }}</div>
  322.                                         <div id="res-holiday">
  323.                                             {% for targetArea in area %}
  324.                                             {% set variable =  targetArea.variable %}
  325.                                             <div class="reserve {{ targetArea.cssId }}">
  326.                                                 <div class="calendar_am">{{ day.reservation[variable].AM }}</div>
  327.                                                 <div class="calendar_pm">{{ day.reservation[variable].PM }}</div>
  328.                                             </div>
  329.                                             {% endfor %}
  330.                                             <div class="yearMonthDay">{{ day.yearMonthDay }}</div>
  331.                                         </div>
  332.                                     </td>
  333.                                     {# 土日は定休日表示にしています。不要な場合は削除して下さい。ここまで #}
  334.                                     {% else %}
  335.                                     {# 何もない平日用 #}
  336.                                     <td class="next-month-ec-calendar__day tdCustom">
  337.                                         {# 曜日表示用 #}
  338.                                         <div class="ec-calendar__{{ day.dayOfWeek }}">{{ displayWeek[day.dayOfWeek] }}</div>
  339.                                         <div class="calendar_day">{{ day.day }}</div>
  340.                                         {% for targetArea in area %}
  341.                                         {% set variable =  targetArea.variable %}
  342.                                         <div class="reserve {{ targetArea.cssId }}">
  343.                                             <div class="calendar_am">{{ day.reservation[variable].AM }}</div>
  344.                                             <div class="calendar_pm">{{ day.reservation[variable].PM }}</div>
  345.                                             {# 予約時に使用 #}
  346.                                             {% if subStaffFlg == true %}
  347.                                                 <div id="reservation-main">
  348.                                                     <div class="reservation-am1">
  349.                                                         <div>終日メイン</div>
  350.                                                         {% for AM1Key,AM1Value in day.reservation[variable].AM1 %}
  351.                                                             <div class="reservation-staff">{{ AM1Key }}</div>
  352.                                                         {% endfor %}
  353.                                                     </div>
  354.                                                 </div>
  355.                                                 <div id="reservation-sub">
  356.                                                     <div class="reservation-am1">
  357.                                                         <div>AMサブスタッフ</div>
  358.                                                         {% for AM1Key,AM1Value in day.reservation[variable].subStaff.AM1 %}
  359.                                                             <div class="reservation-staff">{{ AM1Key }}</div>
  360.                                                         {% endfor %}
  361.                                                     </div>
  362.                                                 </div>
  363.                                             {% else %}
  364.                                                 <div id="reservation-main">
  365.                                                     <div class="reservation-am1">
  366.                                                         <div>AM1</div>
  367.                                                         {% for AM1Key,AM1Value in day.reservation[variable].AM1 %}
  368.                                                             <div class="reservation-staff">{{ AM1Key }}</div>
  369.                                                         {% endfor %}
  370.                                                     </div>
  371.                                                     <div class="reservation-am2">
  372.                                                         <div>AM2</div>
  373.                                                         {% for AM2Key,AM2Value in day.reservation[variable].AM2 %}
  374.                                                             <div class="reservation-staff">{{ AM2Key }}</div>
  375.                                                         {% endfor %}
  376.                                                     </div>
  377.                                                     <div class="reservation-pm1">
  378.                                                         <div>PM1</div>
  379.                                                         {% for PM1Key,PM1Value in day.reservation[variable].PM1 %}
  380.                                                             <div class="reservation-staff">{{ PM1Key }}</div>
  381.                                                         {% endfor %}
  382.                                                     </div>
  383.                                                     <div class="reservation-pm2">
  384.                                                         <div>PM2</div>
  385.                                                         {% for PM2Key,PM2Value in day.reservation[variable].PM2 %}
  386.                                                             <div class="reservation-staff">{{ PM2Key }}</div>
  387.                                                         {% endfor %}
  388.                                                     </div>
  389.                                                 </div>
  390.                                             {% endif %}
  391.                                             {# 予約時に使用 end #}
  392.                                         </div>
  393.                                         {% endfor %}{# targetArea #}
  394.                                         <div class="yearMonthDay">{{ day.yearMonthDay }}</div>
  395.                                     </td>
  396.                                     {# {% endif %}#}
  397.                                      {% endif %}
  398.                             {#
  399.                             {% if loop.index % 7 == 0 and loop.index != ThisMonthCalendar|length %}
  400.                         </tr>
  401.                         <tr>
  402.                             {% endif %} #}
  403.                                 {% endif %}
  404.                                 {% endfor %}
  405.                                 <td class="btnCell">
  406.                                     <a href="javascript:void(0);" id="js-eccNextBtn-next-month-table" class="eccBtn next"><img src="/html/user_data/assets/images/content/content/arrow-c.svg" alt=""></a>
  407.                                 </td>
  408.                         </tr>
  409.                     </table>
  410.                 </div>
  411.             </div>
  412.         </div>
  413.         <p class="note01"><span>〇=予約できます</span><span>△=あとわずか</span><span>×=予約不可</span><span>赤文字は休業日</span></p>
  414.     </div>
  415. </div>