Skip to content

andrefgneves/autoform-pickadate

 
 

Repository files navigation

robertlowe:autoform-pickadate

An add-on Meteor package for aldeed:autoform. Provides two custom input types, "pickadate" and "pickatime", which renders an input using the pickadate plugin.

Prerequisites

None

In a Meteor app directory, enter:

$ meteor add robertlowe:autoform-pickadate

Installation

In a Meteor app directory, enter:

$ meteor add robertlowe:autoform-pickadate

Usage

Specify "pickadate" or "pickatime" for the type attribute of any input. This can be done in a number of ways: " In the schema, which will then work with a quickForm or afQuickFields:

{
  date: {
    type: Date,
    autoform: {
      type: "pickadate"
    }
  },

  time: {
    type: Date,
    autoform: {
      type: "pickatime"
      pickatimeOptions: {
        format: "H:i"
      }
    }
  }

}

Or on the afFieldInput component or any component that passes along attributes to afFieldInput:

{{> afQuickField name="typeTest" type="pickadate"}}
{{> afFormGroup name="typeTest" type="pickadate"}}
{{> afFieldInput name="typeTest" type="pickadate"}}
{{> afQuickField name="typeTest" type="pickatime"}}
{{> afFormGroup name="typeTest" type="pickatime"}}
{{> afFieldInput name="typeTest" type="pickatime"}}

Automatic Type Conversions

This input type is intended to be used with type: Date schema keys, but it also works with other schema types. Here's a list:

  • Date: Value is stored as a Date object representing midnight in the UTC timezone on the morning of the selected date.
  • String: Value is stored as a string representation of the selected date in ISO format, e.g., "2014-11-25".
  • Number: Value is stored as the result of calling getTime() on the Date object (representing midnight in the UTC timezone on the morning of the selected date).
  • Array: If the schema expects an array of Date or String or Number, the value is converted to a one-item array and stored.

To provide pickadate options, set a pickadateOptions attribute equal to a helper that returns the options object. Most of the data-date attributes that the plugin recognizes should also work.

Customizing Appearance

If you want to customize the appearance of the input more, for example to use input group add-ons both before and after the field, use the aldeed:template-extension package to replace the "afPickadate" template, like this:

<template name="dpReplacement">
  <div class='input-group date'>
    <input type="text" value="" {{atts}}/>
    <span class="input-group-addon">
      <span class="glyphicon glyphicon-calendar"></span>
    </span>
  </div>
</template>
Template.dpReplacement.replaces("afPickadate");

Contributing

Anyone is welcome to contribute. Fork, make your changes, and then submit a pull request.

About

Pickadate for Autoform

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • CoffeeScript 77.7%
  • JavaScript 18.5%
  • HTML 3.8%