Sha256: 09408ad04ae3a29481dd98241dabf29fe31811c8f7fc3a5f00cf6876a5ddc210

Contents?: true

Size: 1.43 KB

Versions: 1

Compression:

Stored size: 1.43 KB

Contents

module DatePicker
  module Styles
    class Flatpickr
      def types
        [:date, :datetime, :time]
      end
      def mapping
        :flatpickr
      end
      def template
        %{
          <input id="<%= input_id %>" name="<%= name %>"/>
          <script>
            (function() {
              var
                options = <%= picker_options %>,
                opts = {
                  dateFormat: "<%= data_format %>",
                  timeFormat: '\u2063',
                  enableTime: <%= type.to_s != 'date' %>,
                  noCalendar: <%= type.to_s == 'time' %>,
                  utc: <%= type.to_s == 'time' %>,
                  defaultDate: new Date(<%= time %>),
                  minDate: <%= min ? 'new Date("' + min.to_s + '")' : 'undefined' %>,
                  maxDate: <%= max ? 'new Date("' + max.to_s + '")' : 'undefined' %>,
                  altInput: true,
                  altFormat: "<%= picker_format %>",
                  time_24hr: <%= /(?<!\\\\\\\\)H/ === picker_format %>
                }
              for (prop in opts) {
                options[prop] = opts[prop]
              }
              console.log("options: ", options);
              var
                picker = flatpickr && flatpickr('#<%= input_id %>', options);
              if (picker) {
                //picker.setDate(new Date(<%= time %>));
              }
            })();
          </script>
        }
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
date_picker-0.0.9 lib/date_picker/styles/flatpickr.rb