JSFiddle - React, Tailwind, and code Playground
by Nick Iaconis
HTML
<textarea id="input" placeholder="Terminals XML"></textarea>
<button id="go">Go</button><br />
Output<br />
<textarea id="terminals" disabled="disabled"></textarea><br />
JavaScript
// MUOS Terminal Results Fixtures XML Parser
function parseLocation(string) {
var array = string.split(",")
return '[' + array[0] + ', ' + array[1] + ']'
}
function parseTerminal(xml, supported) {
var $xml = $(xml)
return '{\n id: generateId(),\n terminal: "' + $xml.attr('name') + '",\n location: ' + parseLocation($xml.find('LatLon').text()) + ',\n supported: ' + supported.toString() + '\n}, '
}
$('#go').on('click', function() {
var inputStr = $('#input').val(),
$xml = $($.parseXML(inputStr)),
outputStr = ""
// Parse SUPPORTED terminals
$xml.find('Supported').find('user').each(function() {
outputStr = outputStr + parseTerminal(this, true)
})
// Parse UNSUPPORTED terminals
$xml.find('Unsupported').find('user').each(function() {
outputStr = outputStr + parseTerminal(this, false)
})
// Clean output
outputStr = outputStr.substring(0, outputStr.length - 2)
// Output
$('#terminals').val(outputStr)
})