osem-fcy/app/assets/javascripts/osem-datepickers.js
James Mason b11001cdba Every campaign has an end.
Drop ahoy, because it's more trouble than it's worth. This means dropping
visits, campaigns, targets.

Campaigns are better run to analytics, such as:
* https://matomo.org/docs/tracking-campaigns/
* https://matomo.org/docs/tracking-goals-web-analytics/
* https://support.google.com/analytics/answer/1012040?hl=en
2018-10-16 21:34:04 +02:00

115 lines
4.2 KiB
JavaScript

// get current_date
var today = new Date().toISOString().slice(0, 10);
$(function () {
$("input[id^='datetimepicker']").datetimepicker({
pickTime: true,
useCurrent: false,
sideBySide: true,
autoclose: true,
format: 'YYYY-MM-DD HH:mm'
});
$('.datetimepicker').datetimepicker({
pickTime: true,
useCurrent: false,
sideBySide: true,
format: 'YYYY-MM-DD HH:mm'
});
$("#registration-arrival-datepicker").datetimepicker({
pickTime: true,
useCurrent: false,
minuteStepping: 15,
sideBySide: true,
format: "YYYY-MM-DD HH:mm",
// current_date <= arrival_date <= end_date
maxDate : $("#registration-arrival-datepicker").attr('end_date'),
minDate : today,
});
$("#registration-departure-datepicker").datetimepicker({
pickTime: true,
useCurrent: false,
minuteStepping: 15,
sideBySide: true,
format: "YYYY-MM-DD HH:mm",
// departure_date > start_date
minDate : $("#registration-arrival-datepicker").attr('start_date'),
});
$("#registration-arrival-datepicker").on("dp.change",function (e) {
// departure_date > start_date,arrival_date
if ((new Date(e.date).getTime()) > (new Date($("#registration-arrival-datepicker").attr('start_date')).getTime())){
$('#registration-departure-datepicker').data("DateTimePicker").setMinDate(e.date);
}
else{
$('#registration-departure-datepicker').data("DateTimePicker").setMinDate($("#registration-arrival-datepicker").attr('start_date'));
}
});
// departure_date >= arrival_date
$("#registration-departure-datepicker").on("dp.change",function (e) {
$('#registration-arrival-datepicker').data("DateTimePicker").setMaxDate(e.date);
});
$("#conference-start-datepicker").datetimepicker({
pickTime: false,
useCurrent: false,
format: "YYYY-MM-DD",
// conference-start-day >= Current_date
minDate : today ,
});
$("#conference-end-datepicker").datetimepicker({
pickTime: false,
useCurrent: false,
format: "YYYY-MM-DD",
});
// end_date_conference >= registration-period-Start_date >= Current_date
// registration-period-Start_date <= registration-period-End_date <= End_date (of conference)
$("#registration-period-start-datepicker").datetimepicker({
pickTime: false,
useCurrent: false,
format: "YYYY-MM-DD",
minDate : today,
maxDate : $("#registration-period-start-datepicker").attr('end_date'),
});
$("#registration-period-end-datepicker").datetimepicker({
pickTime: false,
useCurrent: false,
format: "YYYY-MM-DD",
minDate: today,
maxDate : $("#registration-period-start-datepicker").attr('end_date'),
});
$("#conference-start-datepicker").on("dp.change",function (e) {
$('#conference-end-datepicker').data("DateTimePicker").setMinDate(e.date);
if (!$('#conference-end-datepicker').val()) {
$('#conference-end-datepicker').data("DateTimePicker").setDate(e.date);
}
});
$("#conference-start-datepicker").change(function (e) {
$('#conference-start-datepicker').val()?$('#conference-end-datepicker').data("DateTimePicker").setMinDate(e.date):$('#conference-end-datepicker').data("DateTimePicker").setMinDate(null);
});
$("#conference-end-datepicker").on("dp.change",function (e) {
$('#conference-start-datepicker').data("DateTimePicker").setMaxDate(e.date);
});
$("#conference-end-datepicker").change(function (e) {
$('#conference-end-datepicker').val()?$('#conference-start-datepicker').data("DateTimePicker").setMaxDate(e.date):$('#conference-start-datepicker').data("DateTimePicker").setMaxDate(null);
});
$("#registration-period-start-datepicker").on("dp.change",function (e) {
$('#registration-period-end-datepicker').data("DateTimePicker").setMinDate(e.date);
if (!$('#registration-period-end-datepicker').val()) {
$('#registration-period-end-datepicker').data("DateTimePicker").setDate(e.date);
}
});
$("#registration-period-end-datepicker").on("dp.change",function (e) {
$('#registration-period-start-datepicker').data("DateTimePicker").setMaxDate(e.date);
});
} );