/** * @class Ext.panel.Date * @extend Ext.Panel * @xtype datepanel * Ext.panel.Date is a date picker. This class is used to allow browsing and selection of valid * dates in a popup, but may also be used with other components. */ /** * @cfg {Number} [panes=1] * Number of calendar panes to display in the picker. * @accessor */ /** * @cfg {Boolean} [autoConfirm=false] When set to `true`, clicking or tapping on * a date cell in the calendar will confirm selection and dismiss the picker. * When set to `false`, user will have to click OK button after selecting the date. * @accessor */ /** * @cfg {Boolean} [showFooter] Set to `true` to always show footer bar with OK, * Cancel, and Today buttons. If this config is not provided, footer will be shown * or hidden automatically depending on {@link #autoConfirm}. * @accessor */ /** * @cfg {Boolean} [showTodayButton] Set to `true` to show the Today button. Location * will depend on {@link #showFooter} config: if the footer is shown, Today button * will be placed in the footer; otherwise the button will be placed in picker header. * @accessor */ /** * @cfg {Boolean} [animation=true] * Set to `false` to disable animations. * @accessor */ /** * @cfg {Date[]/String[]/RegExp[]} [specialDates] An array of Date objects, strings, or * RegExp patterns designating special dates like holidays. These dates will have * 'x-special-day' CSS class added to their cells, allowing for visually distinct styling. * * If you want to disallow selecting these dates you would need to include them in * {@link #disabledDates} config as well. * @accessor */ /** * @cfg {Number[]} [disabledDays] * An array of days to disable, 0-based. For example, [0, 6] disables * Sunday and Saturday. * @accessor */ /** * @cfg {Date[]/String[]/RegExp} disabledDates * An array of dates to disable. This array can contain Date objects, stringified dates * in {@link #format}, or RegExp patterns that would match strings in {@link #format}. * Date objects can be used to disable specific dates, while strings will be used to build * a regular expression to match dates against. * Some examples: * * - ['03/08/2003', new Date(2003, 8, 16)] would disable those exact dates * - ['03/08', '09/16'] would disable those days for every year * - ['^03/08'] would only match the beginning (useful if you are using short years) * - [/03\/..\/2006/] would disable every day in March 2006 * - /^03/ would disable every day in every March * * Note that the format of the dates included in the array should exactly match the * {@link #format} config. * @accessor */ /** * @cfg {Date/String} [minDate] * Minimum allowable date as Date object or a string in {@link #format}. * @accessor */ /** * @cfg {Date/String} [maxDate] * Maximum allowable date as Date object or a string in {@link #format}. * @accessor */ /** * @cfg {Boolean} [showBeforeMinDate=false] * Set to `true` to allow navigating * to months preceding {@link #minDate}. This has no effect when `minDate` is not set. * @accessor */ /** * @cfg {Boolean} [showAfterMaxDate=false] * Set to `true` to allow navigating * to months coming after {@link #maxDate}. This has no effect when `maxDate` is not set. * @accessor */ /** * @cfg {Date} [value=false] * Initial value of this picker. Defaults to today. * @accessor */ /** * @cfg {Date} [focusedDate] * Date to receive focus when the picker is focused * for the first time. Subsequent navigation via keyboard will update this value. * * This config cannot be null. Default is today. * @accessor */ /** * @cfg {Boolean} hideCaptions * Set to `true` to hide calendar pane captions displaying * the month and year shown in each pane. * @accessor */ /** * @cfg {String} [nextText="Next Month (Control+Right)"] * The next month navigation button tooltip. * @locale */ /** * @cfg {String} [prevText="Previous Month (Control+Left)"] * The previous month navigation button tooltip. * @locale * @accessor */ /** * @cfg {Number} [startDay] * Day index at which the week should begin, 0-based. * * Defaults to the value of {@link Ext.Date.firstDayOfWeek}. * @locale * @accessor */ /** * @cfg {Number[]} [weekendDays] Array of weekend day indices, 0-based. * * Defaults to the value of {@link Ext.Date.weekendDays} * @locale * @accessor */ /** * @cfg {String} format * The default date format string which can be overriden for localization support. * The format must be valid according to {@link Ext.Date#parse} * (defaults to {@link Ext.Date#defaultFormat}). * @locale * @accessor */ /** * @cfg {String} [paneCaptionFormat="F Y"] * Date format for calendar pane captions. * @accessor */ /** * @cfg {String} monthYearFormat * The date format for the header month. * @locale * @accessor */ /** * @cfg {String} dateCellFormat The date format to use for date cells, * compatible with {@link Ext.Date#format} method. * This format usually includes only day of month information. * @locale * @accessor */ /** * @cfg {Function} [handler] A function that will handle the select event of this picker. * The function will receive the following parameters: * * @params {Ext.picker.Calendar} handler.this The Picker instance * @params {Date} handler.date The selected date */ /** * @cfg {Object} [scope] The scope in which {@link #handler} function will be called. */ /** * @cfg {Function} [transformCellCls] A function that will be called during cell rendering * to allow modifying CSS classes applied to the cell. * * @param {Date} transformCellCls.date Date for which a cell is being rendered. * @param {String[]} transformCellCls.classes Array of standard CSS classes for this cell, * including class names for {@link #specialDates}, {@link #disabledDates}, etc. * You can add custom classes or remove some standard class names as desired. */