Skip to content

Commit a44e30c

Browse files
committed
Add onDayClick event
1 parent 9981ec3 commit a44e30c

8 files changed

Lines changed: 67 additions & 44 deletions

demo/Samples1.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -235,7 +235,7 @@ <h3>InLine</h3>
235235
$('#fromDateSegment').MdPersianDateTimePicker({
236236
disableAfterDate: new Date(),
237237
targetTextSelector: '#inputFromDate',
238-
targetDateSelector: '#fromdate',
238+
targetDateSelector: '#from-date',
239239
isGregorian: false,
240240
enableTimePicker: false,
241241
englishNumber: false

demo/SamplesToDebug.html

Lines changed: 25 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -5,17 +5,14 @@
55
<meta charset="utf-8" />
66
<title>MD Persian DateTime To Debug</title>
77

8-
<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.5.0/css/bootstrap.min.css"
9-
integrity="sha384-9aIt2nRpC12Uk9gS9baDl411NQApFmC26EwAOH8WgZl5MYYxFfc+NcPb1dKGj7Sk" crossorigin="anonymous">
10-
<script src="https://code.jquery.com/jquery-3.5.1.slim.min.js"
11-
integrity="sha384-DfXdz2htPH0lsSSs5nCTpuj/zy4C+OGpamoFVy38MVBnE+IbbVYUew+OrCXaRkfj"
12-
crossorigin="anonymous"></script>
13-
<script src="https://cdn.jsdelivr.net/npm/popper.js@1.16.0/dist/umd/popper.min.js"
14-
integrity="sha384-Q6E9RHvbIyZFJoft+2mJbHaEWldlvI9IOYy5n3zV9zzTtmI3UksdQRVvoxMfooAo"
15-
crossorigin="anonymous"></script>
16-
<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.5.0/js/bootstrap.min.js"
17-
integrity="sha384-OgVRvuATP1z7JjHLkuOU7Xw704+h835Lr+6QL9UvYjZE3Ipu6Tp75j7Bh/kR0JKI"
18-
crossorigin="anonymous"></script>
8+
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap@4.6.0/dist/css/bootstrap.min.css"
9+
integrity="sha384-B0vP5xmATw1+K9KRQjQERJvTumQW0nPEzvF6L/Z6nronJ3oUOFUFpCjEUQouq2+l" crossorigin="anonymous">
10+
<script src="https://code.jquery.com/jquery-3.5.1.slim.min.js"
11+
integrity="sha384-DfXdz2htPH0lsSSs5nCTpuj/zy4C+OGpamoFVy38MVBnE+IbbVYUew+OrCXaRkfj"
12+
crossorigin="anonymous"></script>
13+
<script src="https://cdn.jsdelivr.net/npm/bootstrap@4.6.0/dist/js/bootstrap.bundle.min.js"
14+
integrity="sha384-Piv4xVNRyMGpqkS2by6br4gNJ7DXjqk09RmUpJ8jgGtD7zP9yug3goQfGII0yAns"
15+
crossorigin="anonymous"></script>
1916

2017
<link rel="stylesheet" href="demo.css" />
2118
<link rel="stylesheet" href="../src/jquery.md.bootstrap.datetimepicker.style.css" />
@@ -40,18 +37,23 @@ <h2>Simple</h2>
4037
<script src="../dist/jquery.md.bootstrap.datetimepicker.js" type="text/javascript"></script>
4138

4239
<script type="text/javascript">
43-
$("#dt_class").MdPersianDateTimePicker({
44-
targetDateSelector: "#showDate_class",
45-
targetTextSelector: "#inputDate3",
46-
textFormat: " dddd dd MMMM yyyy ",
47-
isGregorian: false,
48-
modalMode: false,
49-
englishNumber: false,
50-
selectedDateToShow: new Date(2020, 10, 01),
51-
calendarViewOnChange: function(param1){
52-
console.log(param1);
53-
}
54-
});
40+
$("#dt_class").MdPersianDateTimePicker({
41+
targetDateSelector: "#showDate_class",
42+
targetTextSelector: "#inputDate3",
43+
textFormat: " dddd dd MMMM yyyy ",
44+
isGregorian: false,
45+
modalMode: false,
46+
englishNumber: false,
47+
enableTimePicker: true,
48+
selectedDate: new Date(2020, 10, 01), // initial value
49+
selectedDateToShow: new Date(2020, 10, 01),
50+
calendarViewOnChange: function (param1) {
51+
console.log('calendarViewOnChange', param1);
52+
},
53+
onDayClick: function (param1) {
54+
console.log('onDayClick', param1);
55+
}
56+
});
5557
</script>
5658

5759
<br><br>

dist/jquery.md.bootstrap.datetimepicker.js

Lines changed: 2 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

dist/jquery.md.bootstrap.datetimepicker.js.map

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

dist/jquery.md.bootstrap.datetimepicker.style.css

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "md.bootstrappersiandatetimepicker",
3-
"version": "3.10.1",
3+
"version": "3.11.0",
44
"description": "Persian Date Time Picker with jQuery 3+ & Bootstrap 4+",
55
"license": "MIT",
66
"moduleResolution": "node",
@@ -16,20 +16,20 @@
1616
},
1717
"homepage": "https://github.com/Mds92/MD.BootstrapPersianDateTimePicker",
1818
"dependencies": {
19-
"@popperjs/core": "^2.8.5",
19+
"@popperjs/core": "^2.9.2",
2020
"bootstrap": "^4.5.3",
21-
"jquery": "^3.5.1"
21+
"jquery": "^3.6.0"
2222
},
2323
"devDependencies": {
2424
"@types/jquery": "^3.5.5",
25-
"css-loader": "^5.0.1",
25+
"css-loader": "^5.2.4",
2626
"extract-text-webpack-plugin": "^3.0.2",
2727
"jshint": "^2.12.0",
2828
"jshint-loader": "^0.8.4",
29-
"mini-css-extract-plugin": "^1.3.3",
29+
"mini-css-extract-plugin": "^1.6.0",
3030
"style-loader": "^2.0.0",
31-
"webpack": "^5.12.2",
32-
"webpack-cli": "^4.3.1",
31+
"webpack": "^5.37.0",
32+
"webpack-cli": "^4.7.0",
3333
"webpack-dev-server": "^3.11.1",
3434
"webpack-fix-style-only-entries": "^0.6.0",
3535
"webpack-merge": "^5.7.3"

src/jquery.md.bootstrap.datetimepicker.js

Lines changed: 29 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
/*
22
* Bootstrap 4+ Persian Date Time Picker jQuery Plugin
3-
* version : 3.10.1
3+
* version : 3.11.0
44
* https://github.com/Mds92/MD.BootstrapPersianDateTimePicker
55
*
66
*
@@ -1743,15 +1743,26 @@
17431743
// #region Events
17441744

17451745
// کلیک روی روزها
1746-
$(document).on('click', mdDatePickerContainerSelector + ' [data-day]', function () {
1746+
$(document).on('click', mdDatePickerContainerSelector + ' [data-day]', function (e) {
17471747
var $this = $(this),
17481748
disabled = $this.attr('disabled'),
17491749
dateNumber = Number($this.attr('data-number')),
17501750
setting = getSetting1($this),
17511751
selectedDateJson = setting.selectedDate == undefined ? undefined : getDateTimeJson1(setting.selectedDate),
17521752
selectedDateToShow = getClonedDate(setting.selectedDateToShow),
17531753
selectedDateToShowJson = selectedDateToShow == undefined ? undefined : getDateTimeJson1(selectedDateToShow);
1754-
if (disabled) return;
1754+
if (disabled) {
1755+
if (setting.onDayClick != undefined)
1756+
setting.onDayClick({
1757+
selectedDate: setting.selectedDate,
1758+
disabled,
1759+
event: e,
1760+
selectedDateToShow,
1761+
rangeSelectorStartDate: setting.rangeSelectorStartDate,
1762+
rangeSelectorEndDate: setting.rangeSelectorEndDate,
1763+
});
1764+
return;
1765+
}
17551766
selectedDateToShow = getDateTime4(dateNumber, selectedDateToShow, setting);
17561767
if (setting.rangeSelector) { // اگر رنج سلکتور فعال بود
17571768
if (setting.rangeSelectorStartDate != undefined && setting.rangeSelectorEndDate != undefined) {
@@ -1810,6 +1821,16 @@
18101821
} else {
18111822
updateCalendarHtml1($this, setting);
18121823
}
1824+
if (setting.onDayClick != undefined)
1825+
setting.onDayClick({
1826+
rangeSelector: setting.rangeSelector,
1827+
selectedDate: setting.selectedDate,
1828+
disabled,
1829+
event: e,
1830+
selectedDateToShow,
1831+
rangeSelectorStartDate: setting.rangeSelectorStartDate,
1832+
rangeSelectorEndDate: setting.rangeSelectorEndDate,
1833+
});
18131834
});
18141835

18151836
// هاور روی روزها
@@ -1860,10 +1881,8 @@
18601881
setting.selectedDateToShow = getClonedDate(selectedDateToShow);
18611882
setSetting1($this, setting);
18621883
updateCalendarHtml1($this, setting);
1863-
if (setting.calendarViewOnChange != undefined) {
1864-
// $this.trigger('md.calendarViewOnChange', setting.selectedDateToShow);
1884+
if (setting.calendarViewOnChange != undefined)
18651885
setting.calendarViewOnChange(setting.selectedDateToShow);
1866-
}
18671886
});
18681887

18691888
// عوض کردن ساعت
@@ -1983,7 +2002,7 @@
19832002
dateFormat: '',
19842003
isGregorian: false,
19852004
inLine: false,
1986-
selectedDate: undefined,
2005+
selectedDate: undefined, // initial value
19872006
selectedDateToShow: new Date(),
19882007
monthsToShow: [0, 0],
19892008
yearOffset: 15,
@@ -1998,7 +2017,9 @@
19982017
rangeSelector: false,
19992018
rangeSelectorStartDate: undefined,
20002019
rangeSelectorEndDate: undefined,
2001-
modalMode: false
2020+
modalMode: false,
2021+
calendarViewOnChange: () => {},
2022+
onDayClick: () => {}
20022023
}, options);
20032024
$this.attr(mdDatePickerFlag, '');
20042025
if (setting.targetDateSelector) {

webpack.config.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,7 @@ module.exports = {
6464
banner: `
6565
Bootstrap 4+ Persian Date Time Picker jQuery Plugin
6666
https://github.com/Mds92/MD.BootstrapPersianDateTimePicker
67-
version : 3.10.1
67+
version : 3.11.0
6868
Written By Mohammad Dayyan, Mordad 1397 - 1400
6969
mds.soft@gmail.com - @mdssoft
7070

0 commit comments

Comments
 (0)