Fixes #3291 - Date and Datetime widgets can not be disabled
This commit is contained in:
parent
a9a7b97e7a
commit
f0fa4a6f9b
3 changed files with 16 additions and 9 deletions
|
@ -1,4 +1,4 @@
|
||||||
<div class="control controls--date" data-name="<%= @attribute.nameRaw %>">
|
<div class="control controls--date" data-name="<%= @attribute.nameRaw %>">
|
||||||
<input type="hidden" value="<%= @attribute.value %>" name="<%= @attribute.name %>">
|
<input type="hidden" value="<%= @attribute.value %>" name="<%= @attribute.name %>">
|
||||||
<input type="text" value="" class="form-control js-datepicker <%= @attribute.class %>" data-item="date">
|
<input type="text" value="" class="form-control js-datepicker <%= @attribute.class %>" data-item="date" <% if @attribute.disabled: %> disabled<% end %>>
|
||||||
</div>
|
</div>
|
|
@ -1,6 +1,6 @@
|
||||||
<div class="controls controls--datetime" data-name="<%= @attribute.nameRaw %>">
|
<div class="controls controls--datetime" data-name="<%= @attribute.nameRaw %>">
|
||||||
<input type="hidden" value="<%= @attribute.value %>" name="<%= @attribute.name %>">
|
<input type="hidden" value="<%= @attribute.value %>" name="<%= @attribute.name %>">
|
||||||
<input type="text" value="" class="form-control flex-shrink-horizontal js-datepicker <%= @attribute.class %>" data-item="date">
|
<input type="text" value="" class="form-control flex-shrink-horizontal js-datepicker <%= @attribute.class %>" data-item="date" <% if @attribute.disabled: %> disabled<% end %>>
|
||||||
<div class="controls-label"><%- @T('at') %></div>
|
<div class="controls-label"><%- @T('at') %></div>
|
||||||
<input type="text" value="" class="form-control time js-timepicker <%= @attribute.class %>" data-item="time">
|
<input type="text" value="" class="form-control time js-timepicker <%= @attribute.class %>" data-item="time" <% if @attribute.disabled: %> disabled<% end %>>
|
||||||
</div>
|
</div>
|
|
@ -11,18 +11,25 @@ test("DateTime timepicker focuses hours", function(assert) {
|
||||||
model: {
|
model: {
|
||||||
configure_attributes: [
|
configure_attributes: [
|
||||||
{ name: 'datetime1', display: 'Datetime1', tag: 'datetime', null: true },
|
{ name: 'datetime1', display: 'Datetime1', tag: 'datetime', null: true },
|
||||||
|
{ name: 'datetime2', display: 'Datetime2', tag: 'datetime', null: true, disabled: true },
|
||||||
|
{ name: 'date3', display: 'Date3', tag: 'date', null: true, disabled: true },
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
autofocus: true
|
autofocus: true
|
||||||
});
|
});
|
||||||
|
|
||||||
let timepicker = el.find('[data-item=time]')
|
let timepicker1 = el.find('[data-name=datetime1] [data-item=time]')
|
||||||
|
//debugger
|
||||||
|
|
||||||
timepicker.focus()
|
timepicker1.focus()
|
||||||
|
|
||||||
setTimeout(function(){ // give it time to apply focus
|
setTimeout(function(){ // give it time to apply focus
|
||||||
equal(timepicker[0].selectionStart, 0)
|
equal(timepicker1[0].selectionStart, 0)
|
||||||
equal(timepicker[0].selectionEnd, 2)
|
equal(timepicker1[0].selectionEnd, 2)
|
||||||
|
|
||||||
|
equal(el.find('[data-name=datetime2] [data-item=date]')[0].disabled, true)
|
||||||
|
equal(el.find('[data-name=datetime2] [data-item=time]')[0].disabled, true)
|
||||||
|
equal(el.find('[data-name=date3] [data-item=date]')[0].disabled, true)
|
||||||
|
|
||||||
done()
|
done()
|
||||||
}, 100)
|
}, 100)
|
||||||
|
|
Loading…
Reference in a new issue