Javascript transform tester

Testing javascript transforms

HTML

Input: <input id="input" oninput="javascript:update(this.value)"/>
<br />
Output:
<pre>
<div id="output" />
</pre>

Formatted output:
<pre>
<div id="formattedOutput" />
</pre>

JavaScript

function update(input) {
//input = document.getElementById('input').value;

document.getElementById('output').innerHTML = (




//
// openHAB transform begins
//


// Wrap everything in a function
// variable "input" contains data passed by openhab
(function(cmd) {
    var cmdToValue = {"UP": 1,  "DOWN": -1, "MOVE": 1, "STOP": 0};
    var cmdToAddress = {"UP": 1, "DOWN": 1, "MOVE": 2, "STOP": 2};

    var value = cmdToValue[cmd];
    var address = cmdToAddress[cmd];
    if(value === undefined || address === undefined) {
        // unknown command, do not write anything
        return "[]";
    } else {
        return (
            "["
              + "{\"functionCode\": 6, \"index\":" + address.toString() + ", \"value\": [" + value +  "] }" 
            + "]"
        );
    }
})(input)


//
// openHAB transform ends
//





);
document.getElementById('formattedOutput').innerHTML = JSON.stringify(JSON.parse(document.getElementById('output').innerHTML), null, 4);

console.log(input + " -> " + document.getElementById('output').innerHTML);

};