{%- import "util/forms.html" as forms -%}
<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="utf-8">
	{% include "analytics.html" %}

	<meta name="description" content="{{config('DESCRIPTION')}}">
	<script src="{{ 'js/bootstrap.js' | asset }}"></script>

	<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">

	<link rel="icon" type="image/png" href="{{ ('images/'~SITE_ID~'/icon.webp') | asset }}">

	<title>{% block pagetitle %}Settings - {{SITE_TITLE}}{% endblock %}</title>
		<meta property="og:type" content="article">
		<meta property="og:title" content="{{SITE_TITLE}}">
		<meta property="og:site_name" content="{{request.host}}">
		<meta property="og:image" content="{{ ('images/'~SITE_ID~'/site_preview.webp') | asset }}">
		<meta property="og:url" content="{{request.host}}">
		<meta property="og:description" name="description" content="{{config('DESCRIPTION')}}">
		<meta property="og:author" name="author" content="{{SITE_FULL}}">
		<meta property="og:site_name" content="{{request.host}}">

		<meta name="twitter:card" content="summary_large_image">
		<meta name="twitter:site" content="{{SITE_FULL}}">
		<meta name="twitter:title" content="{{SITE_TITLE}}">
		<meta name="twitter:creator" content="{{SITE_FULL}}">
		<meta name="twitter:description" content="{{config('DESCRIPTION')}}">
		<meta name="twitter:image" content="{{ ('images/'~SITE_ID~'/site_preview.webp') | asset }}">
		<meta name="twitter:url" content="{{request.host}}">


	<style>:root{--primary:#{{v.themecolor}}}</style>
	<link rel="stylesheet" href="{{ 'css/main.css' | asset }}">
	<link rel="stylesheet" href="{{ ('css/'~v.theme~'.css') | asset }}">
	{% if v.css and not request.path.startswith('/settings/css') %}
		<style>{{v.css | safe}}</style>
	{% endif %}
</head>

<body id="settings">
	{% include "header.html" %}
		<div class="container">
		<div class="row justify-content-around">
	<div class="col h-100">
		{% if error %}
		<div class="alert alert-danger alert-dismissible fade show my-3" role="alert">
			<i class="fas fa-exclamation-circle my-auto"></i>
			<span>
				{{error}}
			</span>
			<button class="close" data-bs-dismiss="alert" aria-label="Close">
				<span aria-hidden="true"><i class="far fa-times"></i></span>
			</button>
		</div>
		{% endif %}
		{% if msg %}
		<div class="alert alert-success alert-dismissible fade show my-3" role="alert">
			<i class="fas fa-check-circle my-auto" aria-hidden="true"></i>
			<span>
				{{msg}}
			</span>
			<button class="close" data-bs-dismiss="alert" aria-label="Close">
				<span aria-hidden="true"><i class="far fa-times"></i></span>
			</button>
		</div>
		{% endif %}

		<div class="mt-3">

			<h1 class="d-none d-md-block">Settings</h1>

			<h2 class="h3 mt-5 d-md-none">Settings</h2>

		</div>

		
		
		<div class="flex-row bg-white box-shadow-bottom d-none d-sm-flex mt-3 mb-3 mb-sm-5">

			<ul class="nav settings-nav">
				<li class="nav-item">
					<a class="nav-link{% if request.path=='/settings/profile' %} active{% endif %}" href="/settings/profile">Profile</a>
				</li>
				<li class="nav-item">
					<a class="nav-link{% if request.path=='/settings/content' %} active{% endif %}" href="/settings/content">Content</a>
				</li>
				<li class="nav-item">
					<a class="nav-link{% if request.path=='/settings/css' %} active{% endif %}" href="/settings/css">Custom CSS</a>
				</li>
				<li class="nav-item">
					<a class="nav-link{% if request.path=='/settings/profilecss' %} active{% endif %}" href="/settings/profilecss">Profile CSS</a>
				</li>
				<li class="nav-item">
					<a class="nav-link{% if request.path=='/settings/security' %} active{% endif %}" href="/settings/security">Security</a>
				</li>
				<li class="nav-item">
					<a class="nav-link{% if request.path=='/settings/blocks' %} active{% endif %}" href="/settings/blocks">Block users</a>
				</li>
				<li class="nav-item">
					<a class="nav-link{% if request.path=='/settings/apps' %} active{% endif %}" href="/settings/apps">Apps</a>
				</li>
			</ul>

		</div>

		
		<div class="flex-row bg-white box-shadow-bottom justify-content-center d-flex d-sm-none mt-3 mb-3 mb-sm-5">

			<ul class="nav settings-nav">
				<li class="nav-item">
					<a class="nav-link{% if request.path=='/settings/profile' %} active{% endif %} navsettings" href="/settings/profile"><i class="fas fa-cog text-base mr-0"></i></a>
				</li>
				<li class="nav-item">
					<a class="nav-link{% if request.path=='/settings/content' %} active{% endif %} navsettings" href="/settings/content"><i class="fas fa-filter text-base mr-0"></i></a>
				</li>
				<li class="nav-item">
					<a class="nav-link{% if request.path=='/settings/css' %} active{% endif %} navsettings" href="/settings/css"><i class="fas fa-palette text-base mr-0"></i></a>
				</li>
				<li class="nav-item">
					<a class="nav-link{% if request.path=='/settings/profilecss' %} active{% endif %} navsettings" href="/settings/profilecss"><i class="fas fa-palette text-base mr-0"></i></a>
				</li>
				<li class="nav-item">
					<a class="nav-link{% if request.path=='/settings/security' %} active{% endif %} navsettings" href="/settings/security"><i class="fas fa-lock-alt text-base mr-0"></i></a>
				</li>
				<li class="nav-item">
					<a class="nav-link{% if request.path=='/settings/blocks' %} active{% endif %} navsettings" href="/settings/blocks"><i class="fas fa-user-minus text-base mr-0"></i></a>
				</li>
				<li class="nav-item">
					<a class="nav-link{% if request.path=='/settings/apps' %} active{% endif %} navsettings" href="/settings/apps"><i class="fas fa-code text-base mr-0"></i></a>
				</li>
			</ul>

		</div>

	{% block content %}
	{% endblock %}
	</div>
</div>

 </div>

 {% if request.path == '/settings/security'  %}
		<div class="modal fade" id="2faModal" tabindex="-1" role="dialog" aria-labelledby="2faModalTitle" aria-hidden="true">
		<div class="modal-dialog modal-dialog-centered" role="document">
			<div class="modal-content">
				<div class="modal-header">
					<h5 class="modal-title">{% if mfa_secret %}Setup two-step login{% elif mfa_secret and not v.email %}Email required for two-step login{% else %}Disable two-step login{% endif %}</h5>
					<button class="close" data-bs-dismiss="modal" aria-label="Close">
						<span aria-hidden="true"><i class="far fa-times"></i></span>
					</button>
				</div>
				{% if mfa_secret %}
				<div>
					<form action="/settings/security" method="post">
						{{forms.formkey(v)}}
						<input type="hidden" name="2fa_secret" value="{{mfa_secret}}">
						<div class="modal-body">
							<p>
								<span class="font-weight-bold">Step 1:</span> Scan this barcode (or enter the code) using a two-factor authentication app such as Google Authenticator or Authy.
							</p>
							<div class="text-center mb-3">
								<img alt="two-factor QR code" loading="lazy" class="img-fluid" width=175 src="/2faqr/{{mfa_secret}}">
								<pre></pre>
								<div class="text-small text-muted">Or enter this code: {{mfa_secret}}</div>
							</div>
							<p>
								<span class="font-weight-bold">Step 2:</span> Enter the six-digit code generated in the authenticator app and your {{SITE_TITLE}} account password.
							</p>
							<label for="2fa_input">6-digit code</label>
							<input autocomplete="off" type="text" class="form-control mb-2" id="2fa_input" name="2fa_token" placeholder="# # # # # #" required>

							<label for="2fa_input_password">Password</label>
							<input autocomplete="off" type="password" class="form-control mb-2" id="2fa_input_password" name="password" oninput="document.getElementById('enable2faButton').disabled=false" required>
						</div>
						<div class="modal-footer">
							<button class="btn btn-link text-muted" data-bs-dismiss="modal">Cancel</button>
							<input autocomplete="off" id="enable2faButton" class="btn btn-primary" type="submit" value="Enable 2-step login" disabled>
						</div>
					</form>
				</div>
				{% else %}
				<div>
					<form action="/settings/security" method="post">
						{{forms.formkey(v)}}
						<input type="hidden" name="2fa_secret" value="{{mfa_secret}}">
						<div class="modal-body">

							<div class="alert alert-warning" role="alert">
								<i class="fas fa-info-circle"></i>
								To disable two-step login, please enter your {{SITE_TITLE}} account password and the 6-digit code generated in your authentication app. If you no longer have your two-step device, <a href="/lost_2fa">click here</a>.
							</div>

							<label for="2fa_input_password">Password</label>
							<input autocomplete="off" type="password" class="form-control mb-2" id="2fa_input_password" name="password" required>

							<label for="2fa_input">6-digit code</label>
							<input autocomplete="off" type="text" class="form-control mb-2" id="2fa_input" name="2fa_remove" placeholder="# # # # # #" oninput="document.getElementById('disable2faButton').disabled=false" required>
						</div>
						<div class="modal-footer">
							<button class="btn btn-link text-muted" data-bs-dismiss="modal">Cancel</button>
							<input autocomplete="off" id="disable2faButton" class="btn btn-primary" type="submit" value="Disable 2-step login" disabled>
						</div>
					</form>
				</div>
				{% endif %}
			</div>
		</div>
	</div>
{% endif %}

 
{% block clipboard %}
<div class="toast clipboard" id="toast-success" role="alert" aria-live="assertive" aria-atomic="true" data-bs-animation="true" data-bs-autohide="true" data-bs-delay="5000">
	<div class="toast-body text-center">
		<i class="fas fa-check-circle text-success mr-2"></i>Link copied to clipboard
	</div>
</div>
{% endblock %}


<div class="toast" id="toast-post-success" style="position: fixed; bottom: 1.5rem; margin: 0 auto; left: 0; right: 0; width: 275px;" role="alert" aria-live="assertive" aria-atomic="true" data-bs-animation="true" data-bs-autohide="true" data-bs-delay="5000">
	<div class="toast-body bg-success text-center text-white">
		<i class="fas fa-comment-alt-smile mr-2"></i><span id="toast-post-success-text">Action successful!</span>
	</div>
</div>
<div class="toast" id="toast-post-error" style="position: fixed; bottom: 1.5rem; margin: 0 auto; left: 0; right: 0; width: 275px;" role="alert" aria-live="assertive" aria-atomic="true" data-bs-animation="true" data-bs-autohide="true" data-bs-delay="5000">
	<div class="toast-body bg-danger text-center text-white">
		<i class="fas fa-exclamation-circle mr-2"></i><span id="toast-post-error-text">Error, please try again later.</span>
	</div>
</div>



{% block onload %}{% endblock %}

<script src="{{ 'js/clipboard.js' | asset }}"></script>

</body>

</html>
