107 lines
4.4 KiB
HTML
107 lines
4.4 KiB
HTML
<!doctype html>
|
|
<html lang="{{ lang or 'en' }}">
|
|
<head>
|
|
<meta charset="UTF-8">
|
|
<title>{% block title %}{{config.SERVICE_NAME}}{% endblock %}</title>
|
|
<!-- google optimize and analytics -->
|
|
<style>.async-hide { opacity: 0 !important} </style>
|
|
<script>(function(a,s,y,n,c,h,i,d,e){s.className+=' '+y;h.start=1*new Date;
|
|
h.end=i=function(){s.className=s.className.replace(RegExp(' ?'+y),'')};
|
|
(a[n]=a[n]||[]).hide=h;setTimeout(function(){i();h.end=null},c);h.timeout=c;
|
|
})(window,document.documentElement,'async-hide','dataLayer',4000,
|
|
{'GTM-KCSJ8DK':true});</script>
|
|
<script>
|
|
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
|
|
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
|
|
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
|
|
})(window,document,'script','https://www.google-analytics.com/analytics.js','ga');
|
|
ga('create', '{{config.GA_KEY}}', 'auto');
|
|
ga('require', 'GTM-KCSJ8DK');
|
|
ga('send', 'pageview');
|
|
</script>
|
|
<!-- end google optimize and analytics -->
|
|
<script src="//use.typekit.net/{{config.TYPEKIT_KEY}}.js"></script>
|
|
<script>try{Typekit.load();}catch(e){}</script>
|
|
<link rel="icon" type="image/png" href="{{config.SERVICE_URL}}/static/img/favicon.ico">
|
|
<meta name="viewport" content="initial-scale=1">
|
|
<script defer src="https://use.fontawesome.com/releases/v5.0.9/js/all.js"></script>
|
|
<script defer src="https://use.fontawesome.com/releases/v5.0.9/js/v4-shims.js"></script>
|
|
|
|
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
|
|
<script type="text/javascript" src="https://js.stripe.com/v3/"></script>
|
|
{% block head_scripts %}{% endblock %}
|
|
<link rel="stylesheet" href="{{url_for('static', filename='main.css')}}">
|
|
</head>
|
|
<body class="{% block bodyclass %}{% endblock %}" id="{% block bodyid %}card{% endblock %}">
|
|
|
|
<noscript>
|
|
{% with messages = get_flashed_messages(with_categories=true) %}
|
|
{% if messages %}
|
|
<div class="row">
|
|
<div class="container">
|
|
<div class="col-1-1">
|
|
{% for category, flashed in messages %}
|
|
<div class="alert-box {{ category }} banner">
|
|
{{ flashed|safe }}
|
|
</div>
|
|
{% endfor %}
|
|
</div>
|
|
</div>
|
|
</div>
|
|
{% endif %}
|
|
{% endwith %}
|
|
</noscript>
|
|
|
|
{% block nav %}
|
|
<nav>
|
|
{% if g.user.is_authenticated %}
|
|
<div class="greetings">
|
|
<h4 class="light">Welcome {{ current_user.email }}
|
|
(<a href="{{ url_for('logout') }}">logout</a>)
|
|
</h4>
|
|
</div>
|
|
<div class="menu">
|
|
{% if request.path != '/' %}<span class="item"><a href="/">Home</a></span>{% endif %}
|
|
<span class="item"><a href="{{ url_for('dashboard') }}">Your forms</a></span>
|
|
<span class="item"><a href="{{ url_for('account') }}">{% if current_user.upgraded %}Your{% else %}Upgrade{% endif %} account</a></span>
|
|
{% else %}
|
|
<div class="greetings">
|
|
<h4 class="light">
|
|
<a href="http://testformspree.com/" target="_blank">Try Formspree!</a>
|
|
</h4>
|
|
</div>
|
|
<div class="menu">
|
|
{% if request.path != '/' %}<span class="item"><a href="/">Home</a></span>{% endif %}
|
|
{% if request.path != '/login' %}<span class="item"><a href="{{ url_for('login') }}" class="login">{{ config.UPGRADED_PLAN_NAME }} account login</a></span>{% endif %}
|
|
{% endif %}
|
|
</div>
|
|
</nav>
|
|
{% endblock %}
|
|
|
|
<div class="row">
|
|
{% block base %}
|
|
<div class="container narrow card">
|
|
<h1>Nothing to see here</h1>
|
|
</div>
|
|
{% endblock base %}
|
|
|
|
{% block footer %}{% endblock %}
|
|
</div>
|
|
|
|
|
|
{% block tail_scripts %}{% endblock %}
|
|
<script src="//cdnjs.cloudflare.com/ajax/libs/SlickNav/1.0.3/jquery.slicknav.min.js"></script>
|
|
<script src="//cdnjs.cloudflare.com/ajax/libs/toastr.js/2.1.1/toastr.min.js"></script>
|
|
<script>
|
|
/* turning flask flash messages into js popup notifications */
|
|
window.popupMessages = {{ get_flashed_messages(with_categories=True) | json | safe }}
|
|
</script>
|
|
<script src="https://checkout.stripe.com/checkout.js"></script>
|
|
<script type="text/javascript" src="https://js.stripe.com/v2/"></script>
|
|
<script type="text/javascript">
|
|
Stripe.setPublishableKey('{{config.STRIPE_PUBLISHABLE_KEY}}');
|
|
</script>
|
|
<script src="{{ url_for('static', filename='bundle.js' if config.DEBUG else 'bundle.prod.js') }}"></script>
|
|
</body>
|
|
</html>
|