From 20b4cbf1f27d8abbc468d7fba23417c100eaefff Mon Sep 17 00:00:00 2001 From: Shriyansh Date: Sun, 27 Mar 2016 03:30:33 +0530 Subject: [PATCH 1/6] prefilled users arrival time with dates of the conference --- app/assets/javascripts/osem-datepickers.js | 13 +++++++++++-- .../_registration_info.html.haml | 2 +- 2 files changed, 12 insertions(+), 3 deletions(-) diff --git a/app/assets/javascripts/osem-datepickers.js b/app/assets/javascripts/osem-datepickers.js index b7ef12d8..a3e68d36 100644 --- a/app/assets/javascripts/osem-datepickers.js +++ b/app/assets/javascripts/osem-datepickers.js @@ -1,10 +1,19 @@ $(function () { - $("#registration-arrival-datepicker, #registration-departure-datepicker").datetimepicker({ + $("#registration-arrival-datepicker").datetimepicker({ pickTime: true, useCurrent: false, minuteStepping: 15, sideBySide: true, - format: "YYYY-MM-DD HH:mm" + format: "YYYY-MM-DD HH:mm", + defaultDate : $("#registration-arrival-datepicker").attr('start_date') + }); + $("#registration-departure-datepicker").datetimepicker({ + pickTime: true, + useCurrent: false, + minuteStepping: 15, + sideBySide: true, + format: "YYYY-MM-DD HH:mm", + defaultDate : $("#registration-arrival-datepicker").attr('end_date') }); $("#registration-arrival-datepicker").on("dp.change",function (e) { diff --git a/app/views/conference_registrations/_registration_info.html.haml b/app/views/conference_registrations/_registration_info.html.haml index 2a852992..d49d364d 100644 --- a/app/views/conference_registrations/_registration_info.html.haml +++ b/app/views/conference_registrations/_registration_info.html.haml @@ -4,5 +4,5 @@ =f.inputs 'Pre-registration required for the following:' do = f.input :events, as: :check_boxes, label: false, collection: @conference.program.events.workshops = f.inputs 'Your Travel Info' do - = f.input :arrival, as: :string, label: 'Your arrival time', input_html: { value: (f.object.arrival.to_formatted_s(:db_without_seconds) unless f.object.arrival.nil?), id: 'registration-arrival-datepicker', readonly: 'readonly' } + = f.input :arrival, as: :string, label: 'Your arrival time', input_html: { value: (f.object.arrival.to_formatted_s(:db_without_seconds) unless f.object.arrival.nil?), id: 'registration-arrival-datepicker',start_date: @conference.start_date,end_date: @conference.end_date, readonly: 'readonly' } = f.input :departure, as: :string, label: 'Your departure time', input_html: { value: (f.object.departure.to_formatted_s(:db_without_seconds) unless f.object.departure.nil?), id: 'registration-departure-datepicker', readonly: 'readonly' } From b9cb920ccfb24e02a5f082cb1b2268a715ecb239 Mon Sep 17 00:00:00 2001 From: Shriyansh Date: Sun, 27 Mar 2016 18:01:50 +0530 Subject: [PATCH 2/6] Defined Arrival/Departure time constraints for attendees --- app/assets/javascripts/osem-datepickers.js | 28 ++++++++++++++++++---- 1 file changed, 23 insertions(+), 5 deletions(-) diff --git a/app/assets/javascripts/osem-datepickers.js b/app/assets/javascripts/osem-datepickers.js index a3e68d36..25a83c8b 100644 --- a/app/assets/javascripts/osem-datepickers.js +++ b/app/assets/javascripts/osem-datepickers.js @@ -1,3 +1,5 @@ +// get current_date +var today = new Date().toISOString().slice(0, 10); $(function () { $("#registration-arrival-datepicker").datetimepicker({ pickTime: true, @@ -5,7 +7,10 @@ $(function () { minuteStepping: 15, sideBySide: true, format: "YYYY-MM-DD HH:mm", - defaultDate : $("#registration-arrival-datepicker").attr('start_date') + // current_date <= arrival_date <= end_date + maxDate : $("#registration-arrival-datepicker").attr('end_date'), + minDate : today, + defaultDate : $("#registration-arrival-datepicker").attr('start_date'), }); $("#registration-departure-datepicker").datetimepicker({ pickTime: true, @@ -13,14 +18,27 @@ $(function () { minuteStepping: 15, sideBySide: true, format: "YYYY-MM-DD HH:mm", - defaultDate : $("#registration-arrival-datepicker").attr('end_date') + // departure_date > start_date + minDate : $("#registration-arrival-datepicker").attr('start_date'), + defaultDate : $("#registration-arrival-datepicker").attr('end_date'), }); $("#registration-arrival-datepicker").on("dp.change",function (e) { - console.log (e.date) - $('#registration-departure-datepicker').data("DateTimePicker").setDate(e.date); - $('#registration-departure-datepicker').data("DateTimePicker").setMinDate(e.date); + // $('#registration-departure-datepicker').data("DateTimePicker").setDate(e.date); + // console.log(new Date(e.date).getTime() ,new Date($("#registration-arrival-datepicker").attr('start_date')).getTime()) + + // departure_date > start_date,arrival_date + if ((new Date(e.date).getTime()) > (new Date($("#registration-arrival-datepicker").attr('start_date')).getTime())){ + // console.log (e.date, "arrival") + $('#registration-departure-datepicker').data("DateTimePicker").setMinDate(e.date); + } + else{ + // console.log ($("#registration-arrival-datepicker").attr('start_date'),"start_date") + $('#registration-departure-datepicker').data("DateTimePicker").setMinDate($("#registration-arrival-datepicker").attr('start_date')); + } + }); + $("#conference-end-datepicker").on("dp.change",function (e) { $('#registration-arrival-datepicker').data("DateTimePicker").setMaxDate(e.date); }); From bb858814ece8c071fcded5abe4ade284f01a0e18 Mon Sep 17 00:00:00 2001 From: Shriyansh Date: Mon, 28 Mar 2016 02:10:31 +0530 Subject: [PATCH 3/6] Defined Constraints of start_date and end_date for Registration Period of conference --- app/assets/javascripts/osem-datepickers.js | 23 +++++++++++++++++-- .../registration_periods/_form.html.haml | 2 +- 2 files changed, 22 insertions(+), 3 deletions(-) diff --git a/app/assets/javascripts/osem-datepickers.js b/app/assets/javascripts/osem-datepickers.js index 25a83c8b..4aee6124 100644 --- a/app/assets/javascripts/osem-datepickers.js +++ b/app/assets/javascripts/osem-datepickers.js @@ -44,7 +44,7 @@ $(function () { }); - const $datetimepickers = $("#conference-start-datepicker, #conference-end-datepicker, #registration-period-start-datepicker, #registration-period-end-datepicker"); + const $datetimepickers = $("#conference-start-datepicker, #conference-end-datepicker"); $datetimepickers.datetimepicker({ pickTime: false, @@ -52,6 +52,25 @@ $(function () { 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) { console.log (e.date) $('#conference-end-datepicker').data("DateTimePicker").setDate(e.date); @@ -63,7 +82,7 @@ $(function () { $("#registration-period-start-datepicker").on("dp.change",function (e) { console.log (e.date) - $('#registration-period-end-datepicker').data("DateTimePicker").setDate(e.date); + // $('#registration-period-end-datepicker').data("DateTimePicker").setDate(e.date); $('#registration-period-end-datepicker').data("DateTimePicker").setMinDate(e.date); }); $("#registration-period-end-datepicker").on("dp.change",function (e) { diff --git a/app/views/admin/registration_periods/_form.html.haml b/app/views/admin/registration_periods/_form.html.haml index 0e03500b..2fe9af8b 100644 --- a/app/views/admin/registration_periods/_form.html.haml +++ b/app/views/admin/registration_periods/_form.html.haml @@ -5,7 +5,7 @@ .row .col-md-8 = semantic_form_for(@registration_period, url: admin_conference_registration_period_path(@conference.short_title)) do |f| - = f.input :start_date, as: :string, input_html: { id: 'registration-period-start-datepicker', readonly: 'readonly' } + = f.input :start_date, as: :string, input_html: { id: 'registration-period-start-datepicker',start_date: @conference.start_date,end_date: @conference.end_date, readonly: 'readonly' } = f.input :end_date, as: :string, input_html: { id: 'registration-period-end-datepicker', readonly: 'readonly' } %p.text-right = f.submit 'Save Registration Period', class: 'btn btn-primary' From 5e51a86e8bca8c5541fb845c3cba88780cee91a4 Mon Sep 17 00:00:00 2001 From: Shriyansh Date: Mon, 28 Mar 2016 02:29:42 +0530 Subject: [PATCH 4/6] conference-start-day >= Current_date --- app/assets/javascripts/osem-datepickers.js | 44 ++++++++++++++++++---- 1 file changed, 36 insertions(+), 8 deletions(-) diff --git a/app/assets/javascripts/osem-datepickers.js b/app/assets/javascripts/osem-datepickers.js index 4aee6124..40a72163 100644 --- a/app/assets/javascripts/osem-datepickers.js +++ b/app/assets/javascripts/osem-datepickers.js @@ -39,17 +39,45 @@ $(function () { }); - $("#conference-end-datepicker").on("dp.change",function (e) { - $('#registration-arrival-datepicker').data("DateTimePicker").setMaxDate(e.date); - }); + // departure_date >= arrival_date + $("#registration-departure-datepicker").on("dp.change",function (e) { + $('#registration-arrival-datepicker').data("DateTimePicker").setMaxDate(e.date); - const $datetimepickers = $("#conference-start-datepicker, #conference-end-datepicker"); - - $datetimepickers.datetimepicker({ + }); + + $("#conference-start-datepicker").datetimepicker({ pickTime: false, useCurrent: false, - format: "YYYY-MM-DD" + 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'), + defaultDate : today, + }); + + $("#registration-period-end-datepicker").datetimepicker({ + pickTime: false, + useCurrent: false, + format: "YYYY-MM-DD", + minDate: today, + maxDate : $("#registration-period-start-datepicker").attr('end_date'), + defaultDate : $("#registration-period-start-datepicker").attr('end_date'), }); // end_date_conference >= registration-period-Start_date >= Current_date @@ -73,7 +101,7 @@ $(function () { $("#conference-start-datepicker").on("dp.change",function (e) { console.log (e.date) - $('#conference-end-datepicker').data("DateTimePicker").setDate(e.date); + // $('#conference-end-datepicker').data("DateTimePicker").setDate(e.date); $('#conference-end-datepicker').data("DateTimePicker").setMinDate(e.date); }); $("#conference-end-datepicker").on("dp.change",function (e) { From 33feb73246101bdd1c0df80b56e012d445f7a07e Mon Sep 17 00:00:00 2001 From: Shriyansh Date: Mon, 28 Mar 2016 02:54:26 +0530 Subject: [PATCH 5/6] removed defaultDate parametre from registration-period --- app/assets/javascripts/osem-datepickers.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/app/assets/javascripts/osem-datepickers.js b/app/assets/javascripts/osem-datepickers.js index 40a72163..24d0df12 100644 --- a/app/assets/javascripts/osem-datepickers.js +++ b/app/assets/javascripts/osem-datepickers.js @@ -68,7 +68,7 @@ $(function () { format: "YYYY-MM-DD", minDate : today, maxDate : $("#registration-period-start-datepicker").attr('end_date'), - defaultDate : today, + // defaultDate : today, }); $("#registration-period-end-datepicker").datetimepicker({ @@ -77,7 +77,7 @@ $(function () { format: "YYYY-MM-DD", minDate: today, maxDate : $("#registration-period-start-datepicker").attr('end_date'), - defaultDate : $("#registration-period-start-datepicker").attr('end_date'), + // defaultDate : $("#registration-period-start-datepicker").attr('end_date'), }); // end_date_conference >= registration-period-Start_date >= Current_date From 40d478d500f6adeb1db578d7b1856aea26844995 Mon Sep 17 00:00:00 2001 From: Shriyansh Date: Tue, 29 Mar 2016 01:28:05 +0530 Subject: [PATCH 6/6] with removed comments on osem-datepicker.js --- app/assets/javascripts/osem-datepickers.js | 13 ++----------- 1 file changed, 2 insertions(+), 11 deletions(-) diff --git a/app/assets/javascripts/osem-datepickers.js b/app/assets/javascripts/osem-datepickers.js index 24d0df12..7f97d6c7 100644 --- a/app/assets/javascripts/osem-datepickers.js +++ b/app/assets/javascripts/osem-datepickers.js @@ -24,16 +24,13 @@ $(function () { }); $("#registration-arrival-datepicker").on("dp.change",function (e) { - // $('#registration-departure-datepicker').data("DateTimePicker").setDate(e.date); - // console.log(new Date(e.date).getTime() ,new Date($("#registration-arrival-datepicker").attr('start_date')).getTime()) - // departure_date > start_date,arrival_date if ((new Date(e.date).getTime()) > (new Date($("#registration-arrival-datepicker").attr('start_date')).getTime())){ - // console.log (e.date, "arrival") + console.log (e.date, "arrival") $('#registration-departure-datepicker').data("DateTimePicker").setMinDate(e.date); } else{ - // console.log ($("#registration-arrival-datepicker").attr('start_date'),"start_date") + console.log ($("#registration-arrival-datepicker").attr('start_date'),"start_date") $('#registration-departure-datepicker').data("DateTimePicker").setMinDate($("#registration-arrival-datepicker").attr('start_date')); } @@ -41,9 +38,7 @@ $(function () { // departure_date >= arrival_date $("#registration-departure-datepicker").on("dp.change",function (e) { - $('#registration-arrival-datepicker').data("DateTimePicker").setMaxDate(e.date); - }); $("#conference-start-datepicker").datetimepicker({ @@ -68,7 +63,6 @@ $(function () { format: "YYYY-MM-DD", minDate : today, maxDate : $("#registration-period-start-datepicker").attr('end_date'), - // defaultDate : today, }); $("#registration-period-end-datepicker").datetimepicker({ @@ -77,7 +71,6 @@ $(function () { format: "YYYY-MM-DD", minDate: today, maxDate : $("#registration-period-start-datepicker").attr('end_date'), - // defaultDate : $("#registration-period-start-datepicker").attr('end_date'), }); // end_date_conference >= registration-period-Start_date >= Current_date @@ -101,7 +94,6 @@ $(function () { $("#conference-start-datepicker").on("dp.change",function (e) { console.log (e.date) - // $('#conference-end-datepicker').data("DateTimePicker").setDate(e.date); $('#conference-end-datepicker').data("DateTimePicker").setMinDate(e.date); }); $("#conference-end-datepicker").on("dp.change",function (e) { @@ -110,7 +102,6 @@ $(function () { $("#registration-period-start-datepicker").on("dp.change",function (e) { console.log (e.date) - // $('#registration-period-end-datepicker').data("DateTimePicker").setDate(e.date); $('#registration-period-end-datepicker').data("DateTimePicker").setMinDate(e.date); }); $("#registration-period-end-datepicker").on("dp.change",function (e) {