Lines Matching full:this

49 		this.dateDelta = null;
50 this.timeDelta = null;
51 this._defaults = {
80 this.container = container;
81 this.settings = simpleExtend(this._defaults, options);
83this.startDateInput = this.container.querySelector('.'+this.settings.startClass+'.'+this.settings.…
84this.endDateInput = this.container.querySelector('.'+this.settings.endClass+'.'+this.settings.date…
85this.startTimeInput = this.container.querySelector('.'+this.settings.startClass+'.'+this.settings.…
86this.endTimeInput = this.container.querySelector('.'+this.settings.endClass+'.'+this.settings.time…
89 this.refresh();
92 this._bindChangeHandler();
101 this.settings = simpleExtend(this.settings, key);
104 this.settings[key] = value;
107 return this.settings[key];
110 this._updateEndMintime();
117 var delta = this.dateDelta + this.timeDelta;
118 if (delta < 0 && (!this.startDateInput || !this.endDateInput) ) {
127 …if (this.startDateInput && this.startDateInput.value && this.endDateInput && this.endDateInput.val…
128 var startDate = this.settings.parseDate(this.startDateInput);
129 var endDate = this.settings.parseDate(this.endDateInput);
131 this.dateDelta = endDate.getTime() - startDate.getTime();
134 …if (this.startTimeInput && this.startTimeInput.value && this.endTimeInput && this.endTimeInput.val…
135 var startTime = this.settings.parseTime(this.startTimeInput);
136 var endTime = this.settings.parseTime(this.endTimeInput);
138 this.timeDelta = endTime.getTime() - startTime.getTime();
139 this._updateEndMintime();
146 this._unbindChangeHandler();
154 jq(this.container).on('change.datepair', jq.proxy(this.handleEvent, this));
156 this.container.addEventListener('change', this, false);
162 jq(this.container).off('change.datepair');
164 this.container.removeEventListener('change', this, false);
168 // This function will be called when passing 'this' to addEventListener
170 // temporarily unbind the change handler to prevent triggering this
172 this._unbindChangeHandler();
174 if (hasClass(e.target, this.settings.dateClass)) {
176 this._dateChanged(e.target);
177 this._timeChanged(e.target);
179 this.dateDelta = null;
182 } else if (hasClass(e.target, this.settings.timeClass)) {
184 this._timeChanged(e.target);
186 this.timeDelta = null;
190 this._validateRanges();
191 this._updateEndMintime();
192 this._bindChangeHandler();
196 if (!this.startDateInput || !this.endDateInput) {
200 var startDate = this.settings.parseDate(this.startDateInput);
201 var endDate = this.settings.parseDate(this.endDateInput);
204 if (this.settings.defaultDateDelta !== null) {
206 var newEnd = new Date(startDate.getTime() + this.settings.defaultDateDelta * _ONE_DAY);
207 this.settings.updateDate(this.endDateInput, newEnd);
210 var newStart = new Date(endDate.getTime() - this.settings.defaultDateDelta * _ONE_DAY);
211 this.settings.updateDate(this.startDateInput, newStart);
214 this.dateDelta = this.settings.defaultDateDelta * _ONE_DAY;
216 this.dateDelta = null;
222 if (this.settings.anchor == 'start' && hasClass(target, this.settings.startClass)) {
223 var newDate = new Date(startDate.getTime() + this.dateDelta);
224 this.settings.updateDate(this.endDateInput, newDate);
225 } else if (this.settings.anchor == 'end' && hasClass(target, this.settings.endClass)) {
226 var newDate = new Date(endDate.getTime() - this.dateDelta);
227 this.settings.updateDate(this.startDateInput, newDate);
230 …var otherInput = hasClass(target, this.settings.startClass) ? this.endDateInput : this.startDateIn…
231 var selectedDate = this.settings.parseDate(target);
232 this.dateDelta = 0;
233 this.settings.updateDate(otherInput, selectedDate);
235 this.dateDelta = endDate.getTime() - startDate.getTime();
241 if (!this.startTimeInput || !this.endTimeInput) {
245 var startTime = this.settings.parseTime(this.startTimeInput);
246 var endTime = this.settings.parseTime(this.endTimeInput);
249 if (this.settings.defaultTimeDelta !== null) {
251 var newEnd = new Date(startTime.getTime() + this.settings.defaultTimeDelta);
252 this.settings.updateTime(this.endTimeInput, newEnd);
254 var newStart = new Date(endTime.getTime() - this.settings.defaultTimeDelta);
255 this.settings.updateTime(this.startTimeInput, newStart);
258 this.timeDelta = this.settings.defaultTimeDelta;
260 this.timeDelta = null;
266 if (this.settings.anchor == 'start' && hasClass(target, this.settings.startClass)) {
267 var newTime = new Date(startTime.getTime() + this.timeDelta);
268 this.settings.updateTime(this.endTimeInput, newTime);
269 endTime = this.settings.parseTime(this.endTimeInput);
271 this._doMidnightRollover(startTime, endTime);
272 } else if (this.settings.anchor == 'end' && hasClass(target, this.settings.endClass)) {
273 var newTime = new Date(endTime.getTime() - this.timeDelta);
274 this.settings.updateTime(this.startTimeInput, newTime);
275 startTime = this.settings.parseTime(this.startTimeInput);
277 this._doMidnightRollover(startTime, endTime);
279 this._doMidnightRollover(startTime, endTime);
282 if (this.startDateInput && this.endDateInput) {
283 startDate = this.settings.parseDate(this.startDateInput);
284 endDate = this.settings.parseDate(this.endDateInput);
288 …var thisInput = hasClass(target, this.settings.endClass) ? this.endTimeInput : this.startTimeInpu…
289 …var otherInput = hasClass(target, this.settings.startClass) ? this.endTimeInput : this.startTimeIn…
290 var selectedTime = this.settings.parseTime(thisInput);
291 this.timeDelta = 0;
292 this.settings.updateTime(otherInput, selectedTime);
294 this.timeDelta = endTime.getTime() - startTime.getTime();
302 if (!this.startDateInput || !this.endDateInput) {
306 var endDate = this.settings.parseDate(this.endDateInput);
307 var startDate = this.settings.parseDate(this.startDateInput);
311 if (this.dateDelta !== null
312 && this.dateDelta + this.timeDelta <= _ONE_DAY
313 && this.dateDelta + newDelta != 0
314 && (offset > 0 || this.dateDelta != 0)
315 && ((newDelta >= 0 && this.timeDelta < 0) || (newDelta < 0 && this.timeDelta >= 0))) {
317 if (this.settings.anchor == 'start') {
318 this.settings.updateDate(this.endDateInput, new Date(endDate.getTime() + offset));
319 this._dateChanged(this.endDateInput);
320 } else if (this.settings.anchor == 'end') {
321 this.settings.updateDate(this.startDateInput, new Date(startDate.getTime() - offset));
322 this._dateChanged(this.startDateInput);
325 this.timeDelta = newDelta;
329 if (typeof this.settings.setMinTime != 'function') return;
332 …if (this.settings.anchor == 'start' && (!this.dateDelta || this.dateDelta < _ONE_DAY || (this.time…
333 baseTime = this.settings.parseTime(this.startTimeInput);
336 this.settings.setMinTime(this.endTimeInput, baseTime);
340 if (this.startTimeInput && this.endTimeInput && this.timeDelta === null) {
341 triggerSimpleCustomEvent(this.container, 'rangeIncomplete');
345 if (this.startDateInput && this.endDateInput && this.dateDelta === null) {
346 triggerSimpleCustomEvent(this.container, 'rangeIncomplete');
351 if (!this.startDateInput || !this.endDateInput || this.dateDelta + this.timeDelta >= 0) {
352 triggerSimpleCustomEvent(this.container, 'rangeSelected');
354 triggerSimpleCustomEvent(this.container, 'rangeError');