| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347 |
- /**
- * Form Picker
- */
-
- 'use strict';
-
- (function () {
- // Flat Picker
- // --------------------------------------------------------------------
- const flatpickrDate = document.querySelector('#flatpickr-date'),
- flatpickrTime = document.querySelector('#flatpickr-time'),
- flatpickrDateTime = document.querySelector('#flatpickr-datetime'),
- flatpickrMulti = document.querySelector('#flatpickr-multi'),
- flatpickrRange = document.querySelector('#flatpickr-range'),
- flatpickrInline = document.querySelector('#flatpickr-inline'),
- flatpickrFriendly = document.querySelector('#flatpickr-human-friendly'),
- flatpickrDisabledRange = document.querySelector('#flatpickr-disabled-range');
-
- // Date
- if (flatpickrDate) {
- flatpickrDate.flatpickr({
- monthSelectorType: 'static',
- static: true
- });
- }
-
- // Time
- if (flatpickrTime) {
- flatpickrTime.flatpickr({
- enableTime: true,
- noCalendar: true,
- static: true
- });
- }
-
- // Datetime
- if (flatpickrDateTime) {
- flatpickrDateTime.flatpickr({
- enableTime: true,
- dateFormat: 'Y-m-d H:i',
- static: true
- });
- }
-
- // Multi Date Select
- if (flatpickrMulti) {
- flatpickrMulti.flatpickr({
- weekNumbers: true,
- enableTime: true,
- mode: 'multiple',
- minDate: 'today',
- static: true
- });
- }
-
- // Range
- if (typeof flatpickrRange != undefined) {
- flatpickrRange.flatpickr({
- mode: 'range',
- static: true
- });
- }
-
- // Inline
- if (flatpickrInline) {
- flatpickrInline.flatpickr({
- inline: true,
- allowInput: false,
- monthSelectorType: 'static'
- });
- }
-
- // Human Friendly
- if (flatpickrFriendly) {
- flatpickrFriendly.flatpickr({
- altInput: true,
- altFormat: 'F j, Y',
- dateFormat: 'Y-m-d',
- static: true
- });
- }
-
- // Disabled Date Range
- if (flatpickrDisabledRange) {
- const fromDate = new Date(Date.now() - 3600 * 1000 * 48);
- const toDate = new Date(Date.now() + 3600 * 1000 * 48);
-
- flatpickrDisabledRange.flatpickr({
- dateFormat: 'Y-m-d',
- disable: [
- {
- from: fromDate.toISOString().split('T')[0],
- to: toDate.toISOString().split('T')[0]
- }
- ],
- static: true
- });
- }
- })();
-
- // * Pickers with jQuery dependency (jquery)
- $(function () {
- // Bootstrap Daterange Picker
- // --------------------------------------------------------------------
- var bsRangePickerBasic = $('#bs-rangepicker-basic'),
- bsRangePickerSingle = $('#bs-rangepicker-single'),
- bsRangePickerTime = $('#bs-rangepicker-time'),
- bsRangePickerRange = $('#bs-rangepicker-range'),
- bsRangePickerWeekNum = $('#bs-rangepicker-week-num'),
- bsRangePickerDropdown = $('#bs-rangepicker-dropdown');
-
- // Basic
- if (bsRangePickerBasic.length) {
- bsRangePickerBasic.daterangepicker({
- opens: isRtl ? 'left' : 'right'
- });
- }
-
- // Single
- if (bsRangePickerSingle.length) {
- bsRangePickerSingle.daterangepicker({
- singleDatePicker: true,
- opens: isRtl ? 'left' : 'right'
- });
- }
-
- // Time & Date
- if (bsRangePickerTime.length) {
- bsRangePickerTime.daterangepicker({
- timePicker: true,
- timePickerIncrement: 30,
- locale: {
- format: 'MM/DD/YYYY h:mm A'
- },
- opens: isRtl ? 'left' : 'right'
- });
- }
-
- if (bsRangePickerRange.length) {
- bsRangePickerRange.daterangepicker({
- ranges: {
- Today: [moment(), moment()],
- Yesterday: [moment().subtract(1, 'days'), moment().subtract(1, 'days')],
- 'Last 7 Days': [moment().subtract(6, 'days'), moment()],
- 'Last 30 Days': [moment().subtract(29, 'days'), moment()],
- 'This Month': [moment().startOf('month'), moment().endOf('month')],
- 'Last Month': [moment().subtract(1, 'month').startOf('month'), moment().subtract(1, 'month').endOf('month')]
- },
- opens: isRtl ? 'left' : 'right'
- });
- }
-
- // Week Numbers
- if (bsRangePickerWeekNum.length) {
- bsRangePickerWeekNum.daterangepicker({
- showWeekNumbers: true,
- opens: isRtl ? 'left' : 'right'
- });
- }
- // Dropdown
- if (bsRangePickerDropdown.length) {
- bsRangePickerDropdown.daterangepicker({
- showDropdowns: true,
- opens: isRtl ? 'left' : 'right'
- });
- }
-
- const bsRangePickerCancelBtn = document.getElementsByClassName('cancelBtn');
-
- // Adding btn-label-primary class and removing btn-default in cancel buttons
- Array.from(bsRangePickerCancelBtn).forEach(btn => {
- btn.classList.remove('btn-default');
- btn.classList.add('btn-label-primary');
- });
-
- // jQuery Timepicker
- // --------------------------------------------------------------------
- var basicTimepicker = $('#timepicker-basic'),
- minMaxTimepicker = $('#timepicker-min-max'),
- disabledTimepicker = $('#timepicker-disabled-times'),
- formatTimepicker = $('#timepicker-format'),
- stepTimepicker = $('#timepicker-step'),
- altHourTimepicker = $('#timepicker-24hours');
-
- // Basic
- if (basicTimepicker.length) {
- basicTimepicker.timepicker({
- orientation: isRtl ? 'r' : 'l'
- });
- }
-
- // Min & Max
- if (minMaxTimepicker.length) {
- minMaxTimepicker.timepicker({
- minTime: '2:00pm',
- maxTime: '7:00pm',
- showDuration: true,
- orientation: isRtl ? 'r' : 'l'
- });
- }
-
- // Disabled Picker
- if (disabledTimepicker.length) {
- disabledTimepicker.timepicker({
- disableTimeRanges: [
- ['12am', '3am'],
- ['4am', '4:30am']
- ],
- orientation: isRtl ? 'r' : 'l'
- });
- }
-
- // Format Picker
- if (formatTimepicker.length) {
- formatTimepicker.timepicker({
- timeFormat: 'H:i:s',
- orientation: isRtl ? 'r' : 'l'
- });
- }
-
- // Steps Picker
- if (stepTimepicker.length) {
- stepTimepicker.timepicker({
- step: 15,
- orientation: isRtl ? 'r' : 'l'
- });
- }
-
- // 24 Hours Format
- if (altHourTimepicker.length) {
- altHourTimepicker.timepicker({
- show: '24:00',
- timeFormat: 'H:i:s',
- orientation: isRtl ? 'r' : 'l'
- });
- }
- });
-
- // color picker (pickr)
- // --------------------------------------------------------------------
- (function () {
- const classicPicker = document.querySelector('#color-picker-classic'),
- monolithPicker = document.querySelector('#color-picker-monolith'),
- nanoPicker = document.querySelector('#color-picker-nano');
-
- // classic
- if (classicPicker) {
- const classicPickr = new Pickr({
- el: classicPicker,
- theme: 'classic',
- default: 'rgba(102, 108, 232, 1)',
- swatches: [
- 'rgba(102, 108, 232, 1)',
- 'rgba(40, 208, 148, 1)',
- 'rgba(255, 73, 97, 1)',
- 'rgba(255, 145, 73, 1)',
- 'rgba(30, 159, 242, 1)'
- ],
- components: {
- // Main components
- preview: true,
- opacity: true,
- hue: true,
-
- // Input / output Options
- interaction: {
- hex: true,
- rgba: true,
- hsla: true,
- hsva: true,
- cmyk: true,
- input: true,
- clear: true,
- save: true
- }
- }
- });
- }
-
- // monolith
- if (monolithPicker) {
- const monoPickr = new Pickr({
- el: monolithPicker,
- theme: 'monolith',
- default: 'rgba(40, 208, 148, 1)',
- swatches: [
- 'rgba(102, 108, 232, 1)',
- 'rgba(40, 208, 148, 1)',
- 'rgba(255, 73, 97, 1)',
- 'rgba(255, 145, 73, 1)',
- 'rgba(30, 159, 242, 1)'
- ],
- components: {
- // Main components
- preview: true,
- opacity: true,
- hue: true,
-
- // Input / output Options
- interaction: {
- hex: true,
- rgba: true,
- hsla: true,
- hsva: true,
- cmyk: true,
- input: true,
- clear: true,
- save: true
- }
- }
- });
- }
-
- // nano
- if (nanoPicker) {
- const nanoPickr = new Pickr({
- el: nanoPicker,
- theme: 'nano',
- default: 'rgba(255, 73, 97, 1)',
- swatches: [
- 'rgba(102, 108, 232, 1)',
- 'rgba(40, 208, 148, 1)',
- 'rgba(255, 73, 97, 1)',
- 'rgba(255, 145, 73, 1)',
- 'rgba(30, 159, 242, 1)'
- ],
- components: {
- // Main components
- preview: true,
- opacity: true,
- hue: true,
-
- // Input / output Options
- interaction: {
- hex: true,
- rgba: true,
- hsla: true,
- hsva: true,
- cmyk: true,
- input: true,
- clear: true,
- save: true
- }
- }
- });
- }
- })();
|