Beispiel #1
0
def render_email(app_title, app_url, recipient, subject, template_file, parameters, action=None):
    def app_link_handler(url=None):
        return app_url + "/" + url if url else app_url

    app_logo = app.config.get("ENTERPRISE_LOGO_URL", "https://quay.io/static/img/quay-logo.png")

    parameters.update(
        {
            "subject": subject,
            "app_logo": app_logo,
            "app_url": app_url,
            "app_title": app_title,
            "hosted": features.BILLING,
            "app_link": app_link_handler,
            "action_metadata": json.dumps(action.metadata) if action else None,
            "with_base_template": True,
        }
    )

    rendered_html = template_env.get_template(template_file + ".html").render(parameters)

    parameters.update(
        {"with_base_template": False,}
    )

    rendered_for_plain = template_env.get_template(template_file + ".html").render(parameters)
    return rendered_html, html2text(rendered_for_plain)
Beispiel #2
0
def render_email(app_title,
                 app_url,
                 recipient,
                 subject,
                 template_file,
                 parameters,
                 action=None):
    def app_link_handler(url=None):
        return app_url + '/' + url if url else app_url

    app_logo = app.config.get('ENTERPRISE_LOGO_URL',
                              'https://quay.io/static/img/quay-logo.png')

    parameters.update({
        'subject':
        subject,
        'app_logo':
        app_logo,
        'app_url':
        app_url,
        'app_title':
        app_title,
        'hosted':
        features.BILLING,
        'app_link':
        app_link_handler,
        'action_metadata':
        json.dumps(action.metadata) if action else None,
        'with_base_template':
        True,
    })

    rendered_html = template_env.get_template(template_file +
                                              '.html').render(parameters)

    parameters.update({
        'with_base_template': False,
    })

    rendered_for_plain = template_env.get_template(template_file +
                                                   '.html').render(parameters)
    return rendered_html, html2text(rendered_for_plain)
Beispiel #3
0
def test_html2text(input, expected):
    assert html2text(input) == expected