configurator now supports fields

This commit is contained in:
Tom Duijf 2015-10-25 10:37:23 +00:00
parent c91fcccf29
commit d315bf6473
2 changed files with 16 additions and 0 deletions

View File

@ -38,6 +38,13 @@
<img src='[[stateObj.attributes.description_image]]' />
</p>
<template is='dom-repeat' items='[[stateObj.attributes.fields]]'>
<paper-input-container id='paper-input-fields-{{item.id}}'>
<label>{{item.name}}</label>
<input is="iron-input" type="{{item.type}}" id='{{item.id}}' on-change="fieldChanged"/>
</paper-input-container>
</template>
<p class='submit'>
<paper-button raised on-click='submitClicked'
hidden$='[[isConfiguring]]'>[[submitCaption]]</paper-button>

View File

@ -43,6 +43,9 @@ export default new Polymer({
type: String,
computed: 'computeSubmitCaption(stateObj)',
},
fieldInput : {
type: Object, value: {}
},
},
computeIsConfigurable(stateObj) {
@ -53,11 +56,17 @@ export default new Polymer({
return stateObj.attributes.submit_caption || 'Set configuration';
},
fieldChanged(ev) {
const el = ev.target
this.fieldInput[el.id] = el.value;
},
submitClicked() {
this.isConfiguring = true;
const data = {
configure_id: this.stateObj.attributes.configure_id,
fields: this.fieldInput
};
serviceActions.callService('configurator', 'configure', data).then(