|
<!DOCTYPE html> |
|
<html lang="en"> |
|
<head> |
|
<meta charset="UTF-8"> |
|
<meta name="viewport" content="width=device-width, initial-scale=1.0"> |
|
<meta http-equiv="X-UA-Compatible" content="ie=edge"> |
|
|
|
{# <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css" integrity="sha384-ggOyR0iXCbMQv3Xipma34MD+dH/1fQ784/j6cY/iJTQUOhcWr7x9JvoRxT2MZw1T" crossorigin="anonymous">#} |
|
<link href="https://cdn.jsdelivr.net/npm/[email protected]/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-BmbxuPwQa2lc/FVzBcNJ7UAyJxM6wuqIj61tLrc4wSX0szH/Ev+nYRRuWlolflfl" crossorigin="anonymous"> |
|
|
|
<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/js/bootstrap.bundle.min.js" integrity="sha384-b5kHyXgcpbZJO/tY9Ul7kGkf1S0CWuKcCD38l8YkeH8z8QjE0GmW1gYU5S9FOnJ0" crossorigin="anonymous"></script> |
|
{% if title %} |
|
<title>{{ title }}</title> |
|
{% else %} |
|
<title>欢迎来到DetectWeb</title> |
|
{% endif %} |
|
|
|
</head> |
|
<body style="background-color:#f3f8ff;"> |
|
|
|
<div class="sticky-top d-flex flex-column flex-md-row align-items-center p-2 px-md-4 mb-3 bg-body border-bottom shadow-sm"> |
|
{% if current_user.is_visitor %} |
|
<a class="h5 my-0 me-md-auto text-dark fw-bold" style="text-decoration:none" data-bs-toggle="popover" data-bs-trigger="hover focus" role="button" title="访问受限" data-bs-content="注册登录开启更多功能">DetectWeb</a> |
|
{% else %} |
|
<a class="h5 my-0 me-md-auto text-dark fw-bold" style="text-decoration:none" href="{{ url_for('index') }}">DetectWeb</a> |
|
{% endif %} |
|
<nav class="my-2 my-md-0 me-md-3"> |
|
{% if current_user.is_visitor %} |
|
<a class="p-2 text-dark" data-bs-toggle="popover" data-bs-trigger="hover focus" role="button" title="访问受限" data-bs-content="注册登录开启更多功能">发现</a> |
|
{% else %} |
|
<a class="p-2 text-dark" href="{{ url_for('explore') }}">发现</a> |
|
{% endif %} |
|
</nav> |
|
|
|
{% if current_user.is_anonymous %} |
|
<a class="btn btn-outline-primary" href="{{ url_for('login') }}">登录</a> |
|
{% else %} |
|
<a class="btn btn-outline-primary" href="{{ url_for('logout') }}">登出</a> |
|
{% endif %} |
|
</div> |
|
<script> |
|
var popoverTriggerList = [].slice.call(document.querySelectorAll('[data-bs-toggle="popover"]')) |
|
var popoverList = popoverTriggerList.map(function (popoverTriggerEl) { |
|
return new bootstrap.Popover(popoverTriggerEl) |
|
}) |
|
</script> |
|
{% with messages = get_flashed_messages(with_categories=True) %} |
|
{% if messages %} |
|
{% for message in messages %} |
|
{% if message[0] == "message" %} |
|
<div class="alert alert-danger alert-dismissible fade show" role="alert"> |
|
{{ message[1] }} |
|
<button type="button" class="btn-close" data-bs-dismiss="alert" aria-label="Close"></button> |
|
</div> |
|
{% else %} |
|
<div class="alert alert-{{ message[0] }} alert-dismissible fade show" role="alert"> |
|
{{ message[1] }} |
|
<button type="button" class="btn-close" data-bs-dismiss="alert" aria-label="Close"></button> |
|
</div> |
|
{% endif %} |
|
{% endfor %} |
|
{% endif %} |
|
{% endwith %} |
|
<div class="container-fluid"> |
|
{% block content %} {% endblock %} |
|
</div> |
|
</body> |
|
|