Fix for more-info-alarm_control_panel when using code_arm_required (#3052)

* Fix for more-infoalarm_control_panel when using code_arm_required

* Update more-info-alarm_control_panel.js
This commit is contained in:
Kevin Cooper 2019-06-17 23:08:14 +01:00 committed by Paulus Schoutsen
parent c30aca8484
commit 42475becf1

View File

@ -187,7 +187,8 @@ class MoreInfoAlarmControlPanel extends LocalizeMixin(
}, },
_codeValid: { _codeValid: {
type: Boolean, type: Boolean,
computed: "_validateCode(_enteredCode, _codeFormat)", computed:
"_validateCode(_enteredCode, _codeFormat, _armVisible, _codeArmRequired)",
}, },
_disarmVisible: { _disarmVisible: {
type: Boolean, type: Boolean,
@ -220,6 +221,7 @@ class MoreInfoAlarmControlPanel extends LocalizeMixin(
const props = { const props = {
_codeFormat: newVal.attributes.code_format, _codeFormat: newVal.attributes.code_format,
_armVisible: state === "disarmed", _armVisible: state === "disarmed",
_codeArmRequired: newVal.attributes.code_arm_required,
_disarmVisible: _disarmVisible:
this._armedStates.includes(state) || this._armedStates.includes(state) ||
state === "pending" || state === "pending" ||
@ -240,8 +242,8 @@ class MoreInfoAlarmControlPanel extends LocalizeMixin(
return format === "Number"; return format === "Number";
} }
_validateCode(code, format) { _validateCode(code, format, armVisible, codeArmRequired) {
return !format || code.length > 0; return !format || code.length > 0 || (armVisible && !codeArmRequired);
} }
_digitClicked(ev) { _digitClicked(ev) {