From 58535ab323fb537fdfac757739afce60f2a3f651 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Per=20Sandstr=C3=B6m?= Date: Tue, 15 Sep 2015 20:17:43 +0200 Subject: [PATCH] change to badge and remove keypad --- src/components/entity/ha-state-label-badge.js | 6 +++ src/components/ha-zone-cards.js | 7 +-- src/more-infos/more-info-alarm.html | 45 ------------------- .../more-info-alarm_control_panel.html | 17 +++++++ ...rm.js => more-info-alarm_control_panel.js} | 38 +++------------- src/more-infos/more-info-content.html | 2 +- src/more-infos/more-info-content.js | 2 +- src/util/domain-icon.js | 8 ++-- src/util/state-more-info-type.js | 2 +- 9 files changed, 39 insertions(+), 88 deletions(-) delete mode 100644 src/more-infos/more-info-alarm.html create mode 100644 src/more-infos/more-info-alarm_control_panel.html rename src/more-infos/{more-info-alarm.js => more-info-alarm_control_panel.js} (52%) diff --git a/src/components/entity/ha-state-label-badge.js b/src/components/entity/ha-state-label-badge.js index 805fd01ffd..981ddd2aff 100644 --- a/src/components/entity/ha-state-label-badge.js +++ b/src/components/entity/ha-state-label-badge.js @@ -66,6 +66,7 @@ export default new Polymer({ case 'sun': case 'scene': case 'script': + case 'alarm_control_panel': return undefined; case 'sensor': return state.attributes.unit_of_measurement && state.state; @@ -76,6 +77,9 @@ export default new Polymer({ computeIcon(state) { switch (state.domain) { + case 'alarm_control_panel': + return state.state === 'disarmed' ? + 'icons:lock-open' : 'icons:lock'; case 'device_tracker': return !state.attributes.entity_picture && domainIcon(state.domain); case 'scene': @@ -109,6 +113,8 @@ export default new Polymer({ return state.attributes.unit_of_measurement || state.state; case 'device_tracker': return state.state === 'home' ? 'Home' : 'Away'; + case 'alarm_control_panel': + return state.state; default: return state.attributes.unit_of_measurement; } diff --git a/src/components/ha-zone-cards.js b/src/components/ha-zone-cards.js index 8c6430f15c..720c1e237e 100644 --- a/src/components/ha-zone-cards.js +++ b/src/components/ha-zone-cards.js @@ -12,9 +12,10 @@ const PRIORITY = { a: -1, sun: 0, device_tracker: 1, - sensor: 2, - scene: 3, - script: 4, + alarm_control_panel: 2, + sensor: 3, + scene: 4, + script: 5, thermostat: 40, media_player: 50, camera: 60, diff --git a/src/more-infos/more-info-alarm.html b/src/more-infos/more-info-alarm.html deleted file mode 100644 index 8b62217b3c..0000000000 --- a/src/more-infos/more-info-alarm.html +++ /dev/null @@ -1,45 +0,0 @@ - - - - - - - - diff --git a/src/more-infos/more-info-alarm_control_panel.html b/src/more-infos/more-info-alarm_control_panel.html new file mode 100644 index 0000000000..512b529b6f --- /dev/null +++ b/src/more-infos/more-info-alarm_control_panel.html @@ -0,0 +1,17 @@ + + + + + + + + diff --git a/src/more-infos/more-info-alarm.js b/src/more-infos/more-info-alarm_control_panel.js similarity index 52% rename from src/more-infos/more-info-alarm.js rename to src/more-infos/more-info-alarm_control_panel.js index 09dccca174..f183e4b2a0 100644 --- a/src/more-infos/more-info-alarm.js +++ b/src/more-infos/more-info-alarm_control_panel.js @@ -6,37 +6,7 @@ import attributeClassNames from '../util/attribute-class-names'; const ATTRIBUTE_CLASSES = []; export default new Polymer({ - is: 'more-info-alarm', - handle0Tap(number) { - this.entered_code += '0'; - }, - handle1Tap(number) { - this.entered_code += '1'; - }, - handle2Tap(number) { - this.entered_code += '2'; - }, - handle3Tap(number) { - this.entered_code += '3'; - }, - handle4Tap(number) { - this.entered_code += '4'; - }, - handle5Tap(number) { - this.entered_code += '5'; - }, - handle6Tap(number) { - this.entered_code += '6'; - }, - handle7Tap(number) { - this.entered_code += '7'; - }, - handle8Tap(number) { - this.entered_code += '8'; - }, - handle9Tap(number) { - this.entered_code += '9'; - }, + is: 'more-info-alarm_control_panel', handleDisarmTap(number) { this.callService('alarm_disarm', {code: this.entered_code}); }, @@ -52,10 +22,12 @@ export default new Polymer({ value: '', }, }, - + enteredCodeChanged(ev) { + this.entered_code = ev.target.value; + }, callService(service, data) { const serviceData = data || {}; serviceData.entity_id = this.stateObj.entityId; - serviceActions.callService('alarm', service, serviceData); + serviceActions.callService('alarm_control_panel', service, serviceData); }, }); diff --git a/src/more-infos/more-info-content.html b/src/more-infos/more-info-content.html index 8a3fc82640..f7b59075b1 100644 --- a/src/more-infos/more-info-content.html +++ b/src/more-infos/more-info-content.html @@ -10,7 +10,7 @@ - +