An add-on Meteor package for aldeed:autoform. Provides a single custom input type, "bootstrap-datepicker", which renders an input using the bootstrap-datepicker plugin.
Bootstrap and the plugin library must be installed separately.
In a Meteor app directory, enter:
$ meteor add twbs:bootstrap
$ meteor add rajit:bootstrap3-datepicker
$ meteor add aldeed:autoform
In a Meteor app directory, enter:
$ meteor add aldeed:autoform-bs-datepicker
Specify "bootstrap-datepicker" 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: "bootstrap-datepicker",
datePickerOptions: {
autoclose: true
}
}
}
}Options for the bs-datepicker plugin can be found here.
Or on the afFieldInput component or any component that passes along attributes to afFieldInput:
{{> afQuickField name="typeTest" type="bootstrap-datepicker"}}
{{> afFormGroup name="typeTest" type="bootstrap-datepicker"}}
{{> afFieldInput name="typeTest" type="bootstrap-datepicker"}}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 aDateobject 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 callinggetTime()on theDateobject (representing midnight in the UTC timezone on the morning of the selected date).Array: If the schema expects an array ofDateorStringorNumber, the value is converted to a one-item array and stored.
To provide bootstrap-datepicker options, set a datePickerOptions attribute equal to a helper that returns the options object. Most of the data-date attributes that the plugin recognizes should also work.
To easily add an input group add-on after the field, just provide the classes for the span in a buttonClasses attribute:
{{> afFieldInput name="typeTest" type="bootstrap-datepicker" buttonClasses="glyphicon glyphicon-calendar"}}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 "afBootstrapDatepicker" 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("afBootstrapDatepicker");Anyone is welcome to contribute. Fork, make your changes, and then submit a pull request.