mirror of
https://github.com/scinote-eln/scinote-web.git
synced 2025-10-06 03:46:39 +08:00
Fix experiment table due date initialization [SCI-7649] (#4730)
* Fix experiment table due date initialization [SCI-7649] * Fix due date overflow [SCI-7649]
This commit is contained in:
parent
2ea5000ea5
commit
194c519a9b
4 changed files with 18 additions and 4 deletions
|
@ -66,8 +66,8 @@ var ExperimnetTable = {
|
||||||
},
|
},
|
||||||
initDueDatePicker: function(data) {
|
initDueDatePicker: function(data) {
|
||||||
// eslint-disable-next-line no-unused-vars
|
// eslint-disable-next-line no-unused-vars
|
||||||
$.each(data, (id, _) => {
|
$.each(data, (_, row) => {
|
||||||
let element = `#calendarDueDate${id}`;
|
let element = `#calendarDueDate${row.id}`;
|
||||||
let dueDateContainer = $(element).closest('#dueDateContainer');
|
let dueDateContainer = $(element).closest('#dueDateContainer');
|
||||||
let dateText = $(element).closest('.date-text');
|
let dateText = $(element).closest('.date-text');
|
||||||
let clearDate = $(element).closest('.datetime-container').find('.clear-date');
|
let clearDate = $(element).closest('.datetime-container').find('.clear-date');
|
||||||
|
@ -95,6 +95,15 @@ var ExperimnetTable = {
|
||||||
});
|
});
|
||||||
|
|
||||||
$(element).on('dp.show', function() {
|
$(element).on('dp.show', function() {
|
||||||
|
var datePicker = $('.bootstrap-datetimepicker-widget.dropdown-menu')[0];
|
||||||
|
|
||||||
|
// show full datepicker menu for due date
|
||||||
|
if (datePicker.getBoundingClientRect().bottom > window.innerHeight) {
|
||||||
|
datePicker.scrollIntoView(false);
|
||||||
|
} else if (datePicker.getBoundingClientRect().top < 0) {
|
||||||
|
datePicker.scrollIntoView();
|
||||||
|
}
|
||||||
|
|
||||||
dateText.attr('data-original-title', '').tooltip('hide');
|
dateText.attr('data-original-title', '').tooltip('hide');
|
||||||
if (dueDateContainer.find('.due-date-label').data('due-date')) {
|
if (dueDateContainer.find('.due-date-label').data('due-date')) {
|
||||||
clearDate.addClass('open');
|
clearDate.addClass('open');
|
||||||
|
|
|
@ -6,12 +6,17 @@
|
||||||
ev.stopPropagation();
|
ev.stopPropagation();
|
||||||
|
|
||||||
let dt = $(this);
|
let dt = $(this);
|
||||||
|
let options = { ignoreReadonly: true };
|
||||||
|
|
||||||
if (dt.data('DateTimePicker')) {
|
if (dt.data('DateTimePicker')) {
|
||||||
dt.data('DateTimePicker').destroy();
|
dt.data('DateTimePicker').destroy();
|
||||||
}
|
}
|
||||||
|
|
||||||
dt.datetimepicker({ ignoreReadonly: true });
|
if (dt.data('positioningVertical')) {
|
||||||
|
options.widgetPositioning = { vertical: dt.data('positioningVertical') };
|
||||||
|
}
|
||||||
|
|
||||||
|
dt.datetimepicker(options);
|
||||||
dt.data('DateTimePicker').show();
|
dt.data('DateTimePicker').show();
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
|
@ -380,7 +380,6 @@
|
||||||
top: 0;
|
top: 0;
|
||||||
visibility: hidden;
|
visibility: hidden;
|
||||||
width: 16px;
|
width: 16px;
|
||||||
z-index: 999;
|
|
||||||
|
|
||||||
&.open {
|
&.open {
|
||||||
visibility: visible;
|
visibility: visible;
|
||||||
|
|
|
@ -21,6 +21,7 @@
|
||||||
data-date-locale="<%= I18n.locale %>"
|
data-date-locale="<%= I18n.locale %>"
|
||||||
data-date-use-current="false"
|
data-date-use-current="false"
|
||||||
data-date-orientation="left"
|
data-date-orientation="left"
|
||||||
|
data-positioning-vertical="bottom"
|
||||||
value="<%= my_module.due_date ? l(my_module.due_date, format: :full) : '' %>"/>
|
value="<%= my_module.due_date ? l(my_module.due_date, format: :full) : '' %>"/>
|
||||||
</div>
|
</div>
|
||||||
<div class="fas fa-times-circle clear-date"
|
<div class="fas fa-times-circle clear-date"
|
||||||
|
|
Loading…
Add table
Reference in a new issue