def translate()

in background/app/main.py [0:0]


def translate():
    """Handle a request to translate a string (form field 'v') to a given
    language (form field 'lang'), by sending a PubSub message to a topic.
    """
    source_string = request.form.get("v", "")
    to_language = request.form.get("lang", "")

    if source_string == "":
        error_message = "Empty value"
        return error_message, 400

    if to_language not in ACCEPTABLE_LANGUAGES:
        error_message = "Unsupported language: {}".format(to_language)
        return error_message, 400

    message = {
        "Original": source_string,
        "Language": to_language,
        "Translated": "",
        "OriginalLanguage": "",
    }

    topic_name = "projects/{}/topics/{}".format(
        os.getenv("GOOGLE_CLOUD_PROJECT"), "translate"
    )
    publisher.publish(
        topic=topic_name, data=json.dumps(message).encode("utf8")
    )
    return redirect("/")