UNPKG

node-red-contrib-deconz

Version:
101 lines (95 loc) 4.24 kB
<script type="text/x-red" data-template-name="deconz-server"> <link rel="stylesheet" href="deconz/static/css/common.css" type="text/css" /> <div class="form-row"> <label for="node-config-input-name" class="l-width"><i class="icon-bookmark"></i> <span data-i18n="label.name"></span></label> <input type="text" id="node-config-input-name"> </div> <div class="form-row"> <label for="node-config-input-ip" class="l-width"><i class="icon-globe"></i> <span data-i18n="label.ip_address"></span></label> <input type="text" id="node-config-input-ip"> </div> <div class="form-row"> <label for="node-config-input-port" class="l-width"><i class="icon-tag"></i> <span data-i18n="label.port"></span></label> <input type="text" id="node-config-input-port"> </div> <div class="form-row"> <label for="node-config-input-apikey" class="l-width"><i class="icon-lock"></i> <span data-i18n="label.api_key"></span></label> <input type="text" id="node-config-input-apikey"> </div> <div class="form-row"> <label for="node-config-input-ws_port" class="l-width"><i class="icon-tag"></i> <span data-i18n="label.websocket_port"></span></label> <input type="text" id="node-config-input-ws_port"> </div> <div class="form-row"> <label for="node-config-input-secure" class="l-width"><i class="icon-tag"></i> SSL</label> <input type="checkbox" id="node-config-input-secure" style="display: inline-block; width: auto; vertical-align: top;"> <span data-i18n="label.use_secured_ssl"></span></input> </div> <div class="form-row"> <label for="node-input-polling" class="l-width"><i class="icon-time"></i> <span data-i18n="label.polling"></span></label> <input type="text" id="node-config-input-polling" placeholder="15"> </div> <div class="form-row"> <label for="force-refresh" class="l-width"><i class="fa fa-refresh"></i> <span data-i18n="label.magick"></span></label> <a style="width: 70%" class="red-ui-button" id="force-refresh" name="force-refresh"><span data-i18n="label.get_settings"></span></a> </div> <div class="form-tips" data-i18n="[html]tip.deploy"></div> </script> <script type='text/javascript'> RED.nodes.registerType('deconz-server', { category: 'config', defaults: { name: { value: '', required: false }, ip: { value: '', required: true }, port: { value: '', required: true }, apikey: { value: '', required: true }, ws_port: { value: '', required: true }, secure: { value: false, required: true }, polling: { value: 15, required: false, validate: function (value) { return !value || value > 2; } }, }, label: function() { return this.name ||  this.ip+':'+this.port; }, oneditprepare: function () { var node = this; var $refreshBtn = $('#force-refresh'); $refreshBtn.on('click', function(){ var currentSettings = { name:$('#node-config-input-name').val(), ip:$('#node-config-input-ip').val(), port:$('#node-config-input-port').val(), }; deconz_initSettings(function(settings){ if (settings.name) $('#node-config-input-name').val(settings.name); if (settings.ip) $('#node-config-input-ip').val(settings.ip); if (settings.port) $('#node-config-input-port').val(settings.port); if (settings.apikey) $('#node-config-input-apikey').val(settings.apikey); if (settings.ws_port) $('#node-config-input-ws_port').val(settings.ws_port); }, currentSettings); }); }, }); </script>