<!DOCTYPE html> <html> <head> <base target='_top'> <style> html * { font-family: Arial; } </style> <script> function onImport() { const locale = document.getElementById('locale') const format = document.getElementById('format') const input = document.getElementById('input') const replace = document.getElementById('replace') const language = locale.options[locale.selectedIndex].value const provider = format.options[format.selectedIndex].value if (input != '') { locale.disabled = true format.disabled = true input.disabled = true replace.disabled = true const submit = document.getElementById('submit') submit.innerHTML = 'Uploading…' submit.disabled = true google.script.run.withSuccessHandler(onImportCompleted).withFailureHandler(onFailure).performImport(language, provider, input.value, replace.checked) } else { alert('Input cannot be empty') } } function onImportCompleted(result) { google.script.host.close() } function onLanguagesLoaded(languages) { const select = document.getElementById('locale') for (var i = 0; i < languages.length; i++) { var language = languages[i] var option = document.createElement('option') option.appendChild(document.createTextNode(language.name)) option.value = i select.appendChild(option) } } function onProvidersLoaded(providers) { const select = document.getElementById('format') for (var i = 0; i < providers.length; i++) { var provider = providers[i] var option = document.createElement('option') option.appendChild(document.createTextNode(provider.name)) option.value = i select.appendChild(option) } } function onFailure(error) { const div = document.getElementById('output') div.innerHTML = 'ERROR: ' + error.message } google.script.run .withSuccessHandler(onLanguagesLoaded) .withFailureHandler(onFailure) .getAvailableLanguages() google.script.run .withSuccessHandler(onProvidersLoaded) .withFailureHandler(onFailure) .getImportProviders() </script> </head> <body> Language: <select id='locale'> </select> <br/> <br/> Format: <select id='format'> </select> <br/> <br/> Replace values: <input type='checkbox' id='replace' checked> <br/> <br/> Input: <br/> <textarea id='input' rows='3'></textarea> <br/> <br/> <button type='button' id='submit' onclick='onImport()'>Import</button> <br/> <div id='output'></div> </body> </html>