grunig-nodes
Version:
Grünig Nodes Library
142 lines (127 loc) • 5.3 kB
HTML
<script type="text/javascript">
RED.nodes.registerType('G-SQLManager', {
category: 'Grunig',
color: 'rgb(176, 223, 227)',
defaults: {
name: { value: "" },
frameId: { value: "" },
process: { value: "none" },
function: { value: "none" },
gFrameManagerEnabled: { value: false }
},
inputs: 2,
outputs: 2,
icon: "file-in.svg",
label: function() {
return this.name || "G-SQLManager";
},
oneditprepare: function() {
// Diese Funktion wird ausgeführt, wenn das Formular zum Bearbeiten des Knotens geladen wird
// Verweis auf das aktuelle Knotenobjekt
var node = this;
// Eingabefeld für den Namen
var nameInput = $("#node-config-input-name");
nameInput.val(node.name);
// Eingabefeld für die frameId
var frameIdInput = $("#node-config-input-frameid");
frameIdInput.val(node.frameId);
// Eingabefeld für den process
var processInput = $("#node-config-input-process");
processInput.val(node.process);
// Eingabefeld für die Funktion
var functionInput = $("#node-config-input-function");
functionInput.val(node.function);
// Checkbox gFrameManagerEnabled
var gFrameManagerEnabledInput = $("#node-config-input-gframemanagerenabled");
gFrameManagerEnabledInput.prop('checked', node.gFrameManagerEnabled);
// Änderungsereignis für den Namen
nameInput.on("change", function() {
node.name = nameInput.val();
RED.nodes.dirty(true);
RED.nodes.node(node.id).changed = true;
});
// Änderungsereignis für die frameId
frameIdInput.on("change", function() {
node.frameId = frameIdInput.val();
RED.nodes.dirty(true);
RED.nodes.node(node.id).changed = true;
});
// Änderungsereignis für den process
processInput.on("change", function() {
node.process = processInput.val();
RED.nodes.dirty(true);
RED.nodes.node(node.id).changed = true;
});
// Änderungsereignis für die Funktion
functionInput.on("change", function() {
node.function = functionInput.val();
RED.nodes.dirty(true);
RED.nodes.node(node.id).changed = true;
});
// Änderungsereignis für gFrameManagerEnabled
gFrameManagerEnabledInput.on("change", function() {
node.gFrameManagerEnabled = gFrameManagerEnabledInput.prop('checked');
RED.nodes.dirty(true);
RED.nodes.node(node.id).changed = true;
});
}
});
</script>
<!-- Styles -->
<style>
div.form-row label {
width: 140px;
display: contents;
}
.form-row {
margin-bottom: 10px;
}
</style>
<script type="text/html" data-template-name="G-SQLManager">
<div class="form-row">
<label for="node-config-input-name">
<i class="fa fa-tag"></i> Name
</label>
<input type="text" id="node-config-input-name" placeholder="Enter name">
</div>
<div class="form-row">
<label for="node-config-input-gframemanagerenabled">
G-FrameManager
</label>
<input type="checkbox" id="node-config-input-gframemanagerenabled">
</div>
<div class="form-row">
<label for="node-config-input-frameid">
<i class="fa fa-picture-o"></i> FrameID
</label>
<input type="text" id="node-config-input-frameid" placeholder="Enter Frame id">
</div>
<div class="form-row">
<label for="node-config-input-process">
<i class="fa fa-cogs"></i> Process
</label>
<select id="node-config-input-process">
<option value="none">none</option>
<option value="FrameCleaning">Frame cleaning</option>
<option value="Stretching">Stretching</option>
<option value="Coating">Coating</option>
<option value="Exposing">Exposing</option>
<option value="Developing">Developing</option>
<option value="Printing">Printing</option>
<option value="Washing">Washing</option>
<option value="Decoating">Decoating</option>
<option value="Decreasing">Decreasing</option>
</select>
</div>
<div class="form-row">
<label for="node-config-input-function">
<i class="fa fa-gear"></i> Function
</label>
<select id="node-config-input-function">
<option value="none">none</option>
<option value="ReadProgram">Read Program</option>
<option value="ReadAllData">Read All Data</option>
<option value="CounterIncrease">Counter Increase</option>
</select>
</div>
</script>