datepicker.html 2.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. {% assign value = include.value | default: '2020-06-20' %}
  2. {% assign placeholder = include.placeholder | default: 'Select a date' %}
  3. {% if include.id %}
  4. {% capture input %}
  5. <input class="form-control{% if include.class %} {{ include.class }}{% endif %}"{% if placeholder %} placeholder="{{ placeholder }}"{% endif %} id="datepicker-{{ include.id }}" value="{{ value }}"/>
  6. {% endcapture %}
  7. {% if include.inline %}
  8. <div class="datepicker-inline" id="datepicker-{{ include.id }}"></div>
  9. {% elsif include.layout == 'icon' %}
  10. <div class="input-icon{% if include.class %} {{ include.class }}{% endif %}">
  11. {{ input | replace: include.class, '' }}
  12. <span class="input-icon-addon">{% include "ui/icon.html" icon="calendar" %}</span>
  13. </div>
  14. {% elsif include.layout == 'icon-prepend' %}
  15. <div class="input-icon{% if include.class %} {{ include.class }}{% endif %}">
  16. <span class="input-icon-addon">{% include "ui/icon.html" icon="calendar" %}</span>
  17. {{ input | replace: include.class, '' }}
  18. </div>
  19. {% else %}
  20. {{ input }}
  21. {% endif %}
  22. {% capture script %}
  23. <script>
  24. // @formatter:off
  25. document.addEventListener("DOMContentLoaded", function () {
  26. {% if environment == 'development' %}
  27. window.tabler_datepicker = window.tabler_datepicker || {};
  28. {% endif %}
  29. window.Litepicker && ({% if environment == 'development' %}window.tabler_datepicker["datepicker-{{ include.id }}"] = {% endif %}new Litepicker({
  30. element: document.getElementById('datepicker-{{ include.id }}'),
  31. buttonText: {
  32. previousMonth: `{% capture icon %}{% include "ui/icon.html" icon="chevron-left" %}{% endcapture %}{{ icon | strip }}`,
  33. nextMonth: `{% capture icon %}{% include "ui/icon.html" icon="chevron-right" %}{% endcapture %}{{ icon | strip }}`,
  34. },
  35. {% if include.inline %}inlineMode: true,{% endif %}
  36. }));
  37. });
  38. // @formatter:on
  39. </script>
  40. {% endcapture %}
  41. {% if include.show-scripts %}
  42. {{ script }}
  43. {% else %}
  44. {% capture_global scripts %}
  45. {{ script }}
  46. {% endcapture_global %}
  47. {% endif %}
  48. {% endif %}