const legisnation = (function(_) { _.gsp = (function(__) { __.searchLegislatorsByAddress = function(button) { const url = 'https://api.legisnation.net/nh/search/report-cards/address/'; const container = document.getElementById('legisnation-gsp-results'); const search = document.getElementById('legisnation-gsp-search'); let address = search.value; var http = new XMLHttpRequest(); http.addEventListener("load", handleResponse); http.open("GET", `${url}${encodeURI(address)}`); http.send(); function handleResponse(response) { var json = JSON.parse(http.responseText); container.innerHTML = ''; var count = 0; for (var i in json) { OutputGroup(i, json[i]); count++; } if (count === 0) { container.innerHTML = 'No results found'; } } function OutputGroup(name, legislators) { var e = document.createElement('div'); e.innerHTML = `

${name}


`; container.appendChild(e); legislators.forEach(OutputLegislator); } function OutputLegislator(legislator) { var f = document.createElement('div'); f.innerHTML = `${legislator.name}
${legislator.legislativeBody} - ${legislator.party.toUpperCase()}
${legislator.district}
`; container.appendChild(f); } }; return __; })({}); return _; })({})