mirror of
				https://github.com/h44z/wg-portal.git
				synced 2025-11-03 23:56:18 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			67 lines
		
	
	
		
			3.2 KiB
		
	
	
	
		
			HTML
		
	
	
	
	
	
			
		
		
	
	
			67 lines
		
	
	
		
			3.2 KiB
		
	
	
	
		
			HTML
		
	
	
	
	
	
<!DOCTYPE html>
 | 
						|
<html lang="en">
 | 
						|
<head>
 | 
						|
    <meta charset="utf-8">
 | 
						|
    <meta name="viewport" content="width=device-width, initial-scale=1.0, shrink-to-fit=no">
 | 
						|
    <title>{{ .Static.WebsiteTitle }} - Users</title>
 | 
						|
    <meta name="description" content="{{ .Static.WebsiteTitle }}">
 | 
						|
    <link rel="stylesheet" href="/css/bootstrap.min.css">
 | 
						|
    <link rel="stylesheet" href="/fonts/fontawesome-all.min.css">
 | 
						|
    <link rel="stylesheet" href="/css/custom.css">
 | 
						|
</head>
 | 
						|
 | 
						|
<body id="page-top" class="d-flex flex-column min-vh-100">
 | 
						|
    {{template "prt_nav.html" .}}
 | 
						|
    <div class="container mt-5">
 | 
						|
        <h1>WireGuard VPN Users</h1>
 | 
						|
        {{template "prt_flashes.html" .}}
 | 
						|
        <div class="mt-4 row">
 | 
						|
            <div class="col-sm-10 col-12">
 | 
						|
                <h2 class="mt-2">All Users</h2>
 | 
						|
            </div>
 | 
						|
            <div class="col-sm-2 col-12 text-right">
 | 
						|
                <a href="/admin/users/create" title="Add a user" class="btn btn-primary"><i class="fa fa-fw fa-plus"></i>M</a>
 | 
						|
            </div>
 | 
						|
        </div>
 | 
						|
        <div class="mt-2 table-responsive">
 | 
						|
            <table class="table table-sm" id="userTable">
 | 
						|
                <thead>
 | 
						|
                <tr>
 | 
						|
                    <th scope="col"><a href="?sort=email">E-Mail <i class="fa fa-fw {{.Session.GetSortIcon "users" "email"}}"></i></a></th>
 | 
						|
                    <th scope="col"><a href="?sort=lastname">Lastname <i class="fa fa-fw {{.Session.GetSortIcon "users" "lastname"}}"></i></a></th>
 | 
						|
                    <th scope="col"><a href="?sort=firstname">Firstname <i class="fa fa-fw {{.Session.GetSortIcon "users" "firstname"}}"></i></a></th>
 | 
						|
                    <th scope="col"><a href="?sort=source">Source <i class="fa fa-fw {{.Session.GetSortIcon "users" "source"}}"></i></a></th>
 | 
						|
                    <th scope="col"><a href="?sort=admin">Is Admin <i class="fa fa-fw {{.Session.GetSortIcon "users" "admin"}}"></i></a></th>
 | 
						|
                    <th scope="col"></th><!-- Actions -->
 | 
						|
                </tr>
 | 
						|
                </thead>
 | 
						|
                <tbody>
 | 
						|
                {{range $i, $u :=.Users}}
 | 
						|
                    <tr id="user-pos-{{$i}}" {{if $u.DeletedAt.Valid}}class="disabled-peer"{{end}}>
 | 
						|
                        <td>{{$u.Email}}</td>
 | 
						|
                        <td>{{$u.Lastname}}</td>
 | 
						|
                        <td>{{$u.Firstname}}</td>
 | 
						|
                        <td>{{$u.Source}}</td>
 | 
						|
                        <td>{{if $u.IsAdmin}}True{{else}}False{{end}}</td>
 | 
						|
                        <td>
 | 
						|
                            {{if eq $.Session.IsAdmin true}}
 | 
						|
                            {{if eq $u.Source "db"}}
 | 
						|
                                <a href="/admin/users/edit?pkey={{$u.Email}}" title="Edit user"><i class="fas fa-cog"></i></a>
 | 
						|
                            {{end}}
 | 
						|
                            {{end}}
 | 
						|
                        </td>
 | 
						|
                    </tr>
 | 
						|
                {{end}}
 | 
						|
                </tbody>
 | 
						|
            </table>
 | 
						|
            <p>Currently listed users: <strong>{{len .Users}}</strong></p>
 | 
						|
        </div>
 | 
						|
    </div>
 | 
						|
    {{template "prt_footer.html" .}}
 | 
						|
    <script src="/js/jquery.min.js"></script>
 | 
						|
    <script src="/js/bootstrap.bundle.min.js"></script>
 | 
						|
    <script src="/js/jquery.easing.js"></script>
 | 
						|
    <script src="/js/custom.js"></script>
 | 
						|
</body>
 | 
						|
 | 
						|
</html> |