2019-10-07 16:19:01 +00:00
|
|
|
{{define "base"}}
|
|
|
|
<!DOCTYPE html>
|
|
|
|
<html lang="en">
|
|
|
|
|
|
|
|
<head>
|
|
|
|
|
|
|
|
<meta charset="utf-8">
|
|
|
|
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
|
|
|
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
|
|
|
|
<meta name="description" content="">
|
|
|
|
<meta name="author" content="">
|
|
|
|
|
2021-07-26 18:55:49 +00:00
|
|
|
<title>SFTPGo Admin - {{template "title" .}}</title>
|
2019-10-07 16:19:01 +00:00
|
|
|
|
2021-04-09 20:02:48 +00:00
|
|
|
<link rel="shortcut icon" href="{{.StaticURL}}/favicon.ico" />
|
2019-10-07 16:19:01 +00:00
|
|
|
|
|
|
|
<!-- Custom fonts for this template-->
|
2021-04-09 20:02:48 +00:00
|
|
|
<link href="{{.StaticURL}}/vendor/fontawesome-free/css/fontawesome.min.css" rel="stylesheet" type="text/css">
|
|
|
|
<link href="{{.StaticURL}}/vendor/fontawesome-free/css/solid.min.css" rel="stylesheet" type="text/css">
|
2021-05-24 17:09:03 +00:00
|
|
|
<link href="{{.StaticURL}}/vendor/fontawesome-free/css/regular.min.css" rel="stylesheet" type="text/css">
|
2019-10-07 16:19:01 +00:00
|
|
|
|
|
|
|
<!-- Custom styles for this template-->
|
2021-04-09 20:02:48 +00:00
|
|
|
<link href="{{.StaticURL}}/css/sb-admin-2.min.css" rel="stylesheet">
|
2019-10-07 16:19:01 +00:00
|
|
|
<style>
|
2021-04-09 20:02:48 +00:00
|
|
|
@font-face {
|
|
|
|
font-family: 'Roboto';
|
|
|
|
src: url('{{.StaticURL}}/vendor/fonts/Roboto-Bold-webfont.woff');
|
|
|
|
font-weight: 700;
|
|
|
|
font-style: normal;
|
|
|
|
}
|
|
|
|
|
|
|
|
@font-face {
|
|
|
|
font-family: 'Roboto';
|
|
|
|
src: url('{{.StaticURL}}/vendor/fonts/Roboto-Regular-webfont.woff');
|
|
|
|
font-weight: 400;
|
|
|
|
font-style: normal;
|
|
|
|
}
|
|
|
|
|
|
|
|
@font-face {
|
|
|
|
font-family: 'Roboto';
|
|
|
|
src: url('{{.StaticURL}}/vendor/fonts/Roboto-Light-webfont.woff');
|
|
|
|
font-weight: 300;
|
|
|
|
font-style: normal;
|
|
|
|
}
|
|
|
|
|
2019-10-07 16:19:01 +00:00
|
|
|
div.dt-buttons {
|
|
|
|
margin-bottom: 1em;
|
|
|
|
}
|
|
|
|
|
|
|
|
.text-form-error {
|
|
|
|
color: var(--red) !important;
|
|
|
|
}
|
|
|
|
</style>
|
|
|
|
{{block "extra_css" .}}{{end}}
|
|
|
|
|
2022-03-19 20:44:27 +00:00
|
|
|
{{range .ExtraCSS}}
|
|
|
|
<link href="{{$.StaticURL}}{{.Path}}" rel="stylesheet" type="text/css">
|
|
|
|
{{end}}
|
|
|
|
|
2019-10-07 16:19:01 +00:00
|
|
|
</head>
|
|
|
|
|
|
|
|
<body id="page-top">
|
|
|
|
|
|
|
|
<!-- Page Wrapper -->
|
|
|
|
<div id="wrapper">
|
|
|
|
|
2021-01-17 21:29:08 +00:00
|
|
|
{{if .LoggedAdmin.Username}}
|
2019-10-07 16:19:01 +00:00
|
|
|
<!-- Sidebar -->
|
|
|
|
<ul class="navbar-nav bg-gradient-primary sidebar sidebar-dark accordion" id="accordionSidebar">
|
|
|
|
|
|
|
|
<!-- Sidebar - Brand -->
|
|
|
|
<a class="sidebar-brand d-flex align-items-center justify-content-center" href="{{.UsersURL}}">
|
|
|
|
<div class="sidebar-brand-icon">
|
|
|
|
<i class="fas fa-folder-open"></i>
|
|
|
|
</div>
|
2021-08-17 16:08:32 +00:00
|
|
|
<div class="sidebar-brand-text mx-3" style="text-transform: none;">SFTPGo Admin</div>
|
2019-10-07 16:19:01 +00:00
|
|
|
</a>
|
|
|
|
|
|
|
|
<!-- Divider -->
|
|
|
|
<hr class="sidebar-divider my-0">
|
|
|
|
|
2021-01-17 21:29:08 +00:00
|
|
|
{{ if .LoggedAdmin.HasPermission "view_users"}}
|
2019-10-07 16:19:01 +00:00
|
|
|
<li class="nav-item {{if eq .CurrentURL .UsersURL}}active{{end}}">
|
|
|
|
<a class="nav-link" href="{{.UsersURL}}">
|
2021-01-17 21:29:08 +00:00
|
|
|
<i class="fas fa-users"></i>
|
2019-10-07 16:19:01 +00:00
|
|
|
<span>{{.UsersTitle}}</span></a>
|
|
|
|
</li>
|
|
|
|
|
2020-06-07 21:30:18 +00:00
|
|
|
<li class="nav-item {{if eq .CurrentURL .FoldersURL}}active{{end}}">
|
|
|
|
<a class="nav-link" href="{{.FoldersURL}}">
|
|
|
|
<i class="fas fa-folder"></i>
|
|
|
|
<span>{{.FoldersTitle}}</span></a>
|
|
|
|
</li>
|
2021-01-17 21:29:08 +00:00
|
|
|
{{end}}
|
2020-06-07 21:30:18 +00:00
|
|
|
|
2022-04-25 13:49:11 +00:00
|
|
|
{{ if .LoggedAdmin.HasPermission "manage_groups"}}
|
|
|
|
<li class="nav-item {{if eq .CurrentURL .GroupsURL}}active{{end}}">
|
|
|
|
<a class="nav-link" href="{{.GroupsURL}}">
|
|
|
|
<i class="fas fa-user-friends"></i>
|
|
|
|
<span>{{.GroupsTitle}}</span></a>
|
|
|
|
</li>
|
|
|
|
{{end}}
|
|
|
|
|
2021-01-17 21:29:08 +00:00
|
|
|
{{ if .LoggedAdmin.HasPermission "view_conns"}}
|
2019-10-07 16:19:01 +00:00
|
|
|
<li class="nav-item {{if eq .CurrentURL .ConnectionsURL}}active{{end}}">
|
|
|
|
<a class="nav-link" href="{{.ConnectionsURL}}">
|
|
|
|
<i class="fas fa-exchange-alt"></i>
|
|
|
|
<span>{{.ConnectionsTitle}}</span></a>
|
|
|
|
</li>
|
2021-01-17 21:29:08 +00:00
|
|
|
{{end}}
|
|
|
|
|
2021-06-08 11:24:28 +00:00
|
|
|
{{ if and .HasDefender (.LoggedAdmin.HasPermission "view_defender")}}
|
|
|
|
<li class="nav-item {{if eq .CurrentURL .DefenderURL}}active{{end}}">
|
|
|
|
<a class="nav-link" href="{{.DefenderURL}}">
|
|
|
|
<i class="fas fa-shield-alt"></i>
|
|
|
|
<span>{{.DefenderTitle}}</span></a>
|
|
|
|
</li>
|
|
|
|
{{end}}
|
|
|
|
|
2021-01-17 21:29:08 +00:00
|
|
|
{{ if .LoggedAdmin.HasPermission "manage_admins"}}
|
|
|
|
<li class="nav-item {{if eq .CurrentURL .AdminsURL}}active{{end}}">
|
|
|
|
<a class="nav-link" href="{{.AdminsURL}}">
|
|
|
|
<i class="fas fa-user-cog"></i>
|
|
|
|
<span>{{.AdminsTitle}}</span></a>
|
|
|
|
</li>
|
|
|
|
{{end}}
|
2020-12-08 10:18:34 +00:00
|
|
|
|
2021-01-22 18:42:18 +00:00
|
|
|
{{ if .LoggedAdmin.HasPermission "manage_system"}}
|
|
|
|
<li class="nav-item {{if eq .CurrentURL .MaintenanceURL}}active{{end}}">
|
|
|
|
<a class="nav-link" href="{{.MaintenanceURL}}">
|
|
|
|
<i class="fas fa-wrench"></i>
|
|
|
|
<span>{{.MaintenanceTitle}}</span></a>
|
|
|
|
</li>
|
|
|
|
{{end}}
|
|
|
|
|
2021-01-17 21:29:08 +00:00
|
|
|
{{ if .LoggedAdmin.HasPermission "view_status"}}
|
2020-12-08 10:18:34 +00:00
|
|
|
<li class="nav-item {{if eq .CurrentURL .StatusURL}}active{{end}}">
|
|
|
|
<a class="nav-link" href="{{.StatusURL}}">
|
|
|
|
<i class="fas fa-info-circle"></i>
|
|
|
|
<span>{{.StatusTitle}}</span></a>
|
|
|
|
</li>
|
2021-01-17 21:29:08 +00:00
|
|
|
{{end}}
|
2019-10-07 16:19:01 +00:00
|
|
|
|
|
|
|
<!-- Divider -->
|
|
|
|
<hr class="sidebar-divider d-none d-md-block">
|
|
|
|
|
|
|
|
<!-- Sidebar Toggler (Sidebar) -->
|
|
|
|
<div class="text-center d-none d-md-inline">
|
|
|
|
<button class="rounded-circle border-0" id="sidebarToggle"></button>
|
|
|
|
</div>
|
|
|
|
|
|
|
|
</ul>
|
|
|
|
<!-- End of Sidebar -->
|
2021-01-17 21:29:08 +00:00
|
|
|
{{end}}
|
2019-10-07 16:19:01 +00:00
|
|
|
|
|
|
|
<!-- Content Wrapper -->
|
|
|
|
<div id="content-wrapper" class="d-flex flex-column">
|
|
|
|
|
|
|
|
<!-- Main Content -->
|
|
|
|
<div id="content">
|
|
|
|
|
2021-01-17 21:29:08 +00:00
|
|
|
{{if .LoggedAdmin.Username}}
|
2019-10-07 16:19:01 +00:00
|
|
|
<!-- Topbar -->
|
2021-01-17 21:29:08 +00:00
|
|
|
<nav class="navbar navbar-expand navbar-light bg-white topbar mb-4 static-top shadow">
|
|
|
|
|
|
|
|
<button id="sidebarToggleTop" class="btn btn-link d-md-none rounded-circle mr-3">
|
|
|
|
<i class="fa fa-bars"></i>
|
|
|
|
</button>
|
|
|
|
|
|
|
|
<!-- Topbar Navbar -->
|
|
|
|
<ul class="navbar-nav ml-auto">
|
|
|
|
|
|
|
|
<!-- Nav Item - User Information -->
|
|
|
|
<li class="nav-item dropdown no-arrow">
|
|
|
|
<a class="nav-link dropdown-toggle" href="#" id="userDropdown" role="button" data-toggle="dropdown"
|
|
|
|
aria-haspopup="true" aria-expanded="false">
|
|
|
|
<span class="mr-2 d-none d-lg-inline text-gray-600 small">{{.LoggedAdmin.Username}}</span>
|
2021-03-28 09:02:11 +00:00
|
|
|
<i class="fas fa-user fa-fw"></i>
|
2021-01-17 21:29:08 +00:00
|
|
|
</a>
|
|
|
|
<!-- Dropdown - User Information -->
|
|
|
|
<div class="dropdown-menu dropdown-menu-right shadow animated--grow-in" aria-labelledby="userDropdown">
|
2022-02-13 13:30:20 +00:00
|
|
|
{{if not .HasExternalLogin}}
|
2021-09-29 16:46:15 +00:00
|
|
|
<a class="dropdown-item" href="{{.ProfileURL}}">
|
|
|
|
<i class="fas fa-user fa-sm fa-fw mr-2 text-gray-400"></i>
|
|
|
|
Profile
|
|
|
|
</a>
|
|
|
|
<a class="dropdown-item" href="{{.ChangePwdURL}}">
|
2021-01-17 21:29:08 +00:00
|
|
|
<i class="fas fa-key fa-sm fa-fw mr-2 text-gray-400"></i>
|
2021-09-29 16:46:15 +00:00
|
|
|
Change password
|
2021-01-17 21:29:08 +00:00
|
|
|
</a>
|
2021-09-04 10:11:04 +00:00
|
|
|
{{if .LoggedAdmin.CanManageMFA}}
|
|
|
|
<a class="dropdown-item" href="{{.MFAURL}}">
|
|
|
|
<i class="fas fa-user-lock fa-sm fa-fw mr-2 text-gray-400"></i>
|
|
|
|
Two-Factor Auth
|
|
|
|
</a>
|
|
|
|
{{end}}
|
2021-01-17 21:29:08 +00:00
|
|
|
<div class="dropdown-divider"></div>
|
2022-02-13 13:30:20 +00:00
|
|
|
{{end}}
|
2021-01-17 21:29:08 +00:00
|
|
|
<a class="dropdown-item" href="#" data-toggle="modal" data-target="#logoutModal">
|
|
|
|
<i class="fas fa-sign-out-alt fa-sm fa-fw mr-2 text-gray-400"></i>
|
|
|
|
Logout
|
|
|
|
</a>
|
|
|
|
</div>
|
|
|
|
</li>
|
|
|
|
|
|
|
|
</ul>
|
2019-10-07 16:19:01 +00:00
|
|
|
|
|
|
|
</nav>
|
|
|
|
<!-- End of Topbar -->
|
2021-01-17 21:29:08 +00:00
|
|
|
{{end}}
|
2019-10-07 16:19:01 +00:00
|
|
|
|
|
|
|
<!-- Begin Page Content -->
|
|
|
|
<div class="container-fluid">
|
|
|
|
|
|
|
|
{{template "page_body" .}}
|
|
|
|
|
|
|
|
</div>
|
|
|
|
<!-- /.container-fluid -->
|
|
|
|
|
|
|
|
</div>
|
|
|
|
<!-- End of Main Content -->
|
2021-01-17 21:29:08 +00:00
|
|
|
{{if .LoggedAdmin.Username}}
|
2019-10-19 05:52:58 +00:00
|
|
|
<!-- Footer -->
|
|
|
|
<footer class="sticky-footer bg-white">
|
|
|
|
<div class="container my-auto">
|
|
|
|
<div class="copyright text-center my-auto">
|
|
|
|
<span>SFTPGo {{.Version}}</span>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
</footer>
|
|
|
|
<!-- End of Footer -->
|
2021-01-17 21:29:08 +00:00
|
|
|
{{end}}
|
2019-10-19 05:52:58 +00:00
|
|
|
|
2019-10-07 16:19:01 +00:00
|
|
|
</div>
|
|
|
|
<!-- End of Content Wrapper -->
|
|
|
|
|
|
|
|
</div>
|
|
|
|
<!-- End of Page Wrapper -->
|
|
|
|
|
|
|
|
<!-- Scroll to Top Button-->
|
|
|
|
<a class="scroll-to-top rounded" href="#page-top">
|
|
|
|
<i class="fas fa-angle-up"></i>
|
|
|
|
</a>
|
|
|
|
|
2021-05-11 04:54:06 +00:00
|
|
|
{{if .LoggedAdmin.Username}}
|
2021-01-17 21:29:08 +00:00
|
|
|
<!-- Logout Modal-->
|
|
|
|
<div class="modal fade" id="logoutModal" tabindex="-1" role="dialog" aria-labelledby="modalLabel"
|
|
|
|
aria-hidden="true">
|
|
|
|
<div class="modal-dialog" role="document">
|
|
|
|
<div class="modal-content">
|
|
|
|
<div class="modal-header">
|
|
|
|
<h5 class="modal-title" id="modalLabel">Ready to Leave?</h5>
|
|
|
|
<button class="close" type="button" data-dismiss="modal" aria-label="Close">
|
2021-07-26 18:55:49 +00:00
|
|
|
<span aria-hidden="true">×</span>
|
2021-01-17 21:29:08 +00:00
|
|
|
</button>
|
|
|
|
</div>
|
|
|
|
<div class="modal-body">Select "Logout" below if you are ready to end your current session.</div>
|
|
|
|
<div class="modal-footer">
|
|
|
|
<button class="btn btn-secondary" type="button" data-dismiss="modal">Cancel</button>
|
|
|
|
<a class="btn btn-primary" href="{{.LogoutURL}}">Logout</a>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
</div>
|
2021-05-11 04:54:06 +00:00
|
|
|
{{end}}
|
2021-01-17 21:29:08 +00:00
|
|
|
|
2019-10-07 16:19:01 +00:00
|
|
|
{{block "dialog" .}}{{end}}
|
|
|
|
|
|
|
|
<!-- Bootstrap core JavaScript-->
|
2021-04-09 20:02:48 +00:00
|
|
|
<script src="{{.StaticURL}}/vendor/jquery/jquery.min.js"></script>
|
|
|
|
<script src="{{.StaticURL}}/vendor/bootstrap/js/bootstrap.bundle.min.js"></script>
|
2019-10-07 16:19:01 +00:00
|
|
|
|
|
|
|
<!-- Core plugin JavaScript-->
|
2021-04-09 20:02:48 +00:00
|
|
|
<script src="{{.StaticURL}}/vendor/jquery-easing/jquery.easing.min.js"></script>
|
2019-10-07 16:19:01 +00:00
|
|
|
|
|
|
|
<!-- Custom scripts for all pages-->
|
2021-04-09 20:02:48 +00:00
|
|
|
<script src="{{.StaticURL}}/js/sb-admin-2.min.js"></script>
|
2019-10-07 16:19:01 +00:00
|
|
|
|
2021-03-04 08:48:53 +00:00
|
|
|
<script type="text/javascript">
|
|
|
|
function fixedEncodeURIComponent(str) {
|
|
|
|
return encodeURIComponent(str).replace(/[!'()*]/g, function (c) {
|
|
|
|
return '%' + c.charCodeAt(0).toString(16);
|
|
|
|
});
|
|
|
|
}
|
|
|
|
</script>
|
|
|
|
|
2019-10-07 16:19:01 +00:00
|
|
|
<!-- Page level plugins -->
|
|
|
|
{{block "extra_js" .}}{{end}}
|
|
|
|
|
|
|
|
</body>
|
|
|
|
|
|
|
|
</html>
|
|
|
|
{{end}}
|