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)
})