From bdf92230b74faab7e476ab6f75f92203fedaaf54 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Per=20Sandstr=C3=B6m?= Date: Tue, 8 Sep 2015 20:10:16 +0200 Subject: [PATCH 1/2] working prototype --- src/more-infos/more-info-alarm.html | 45 ++++++++++++++++++++ src/more-infos/more-info-alarm.js | 61 +++++++++++++++++++++++++++ src/more-infos/more-info-content.html | 1 + src/more-infos/more-info-content.js | 1 + src/util/domain-icon.js | 8 +++- src/util/state-more-info-type.js | 2 +- 6 files changed, 116 insertions(+), 2 deletions(-) create mode 100644 src/more-infos/more-info-alarm.html create mode 100644 src/more-infos/more-info-alarm.js diff --git a/src/more-infos/more-info-alarm.html b/src/more-infos/more-info-alarm.html new file mode 100644 index 0000000000..8b62217b3c --- /dev/null +++ b/src/more-infos/more-info-alarm.html @@ -0,0 +1,45 @@ + + + + + + + + diff --git a/src/more-infos/more-info-alarm.js b/src/more-infos/more-info-alarm.js new file mode 100644 index 0000000000..09dccca174 --- /dev/null +++ b/src/more-infos/more-info-alarm.js @@ -0,0 +1,61 @@ +import { serviceActions } from '../util/home-assistant-js-instance'; + +import Polymer from '../polymer'; +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'; + }, + handleDisarmTap(number) { + this.callService('alarm_disarm', {code: this.entered_code}); + }, + handleHomeTap(number) { + this.callService('alarm_arm_home', {code: this.entered_code}); + }, + handleAwayTap(number) { + this.callService('alarm_arm_away', {code: this.entered_code}); + }, + properties: { + entered_code: { + type: String, + value: '', + }, + }, + + callService(service, data) { + const serviceData = data || {}; + serviceData.entity_id = this.stateObj.entityId; + serviceActions.callService('alarm', service, serviceData); + }, +}); diff --git a/src/more-infos/more-info-content.html b/src/more-infos/more-info-content.html index 1e7a028c72..8a3fc82640 100644 --- a/src/more-infos/more-info-content.html +++ b/src/more-infos/more-info-content.html @@ -10,6 +10,7 @@ +