move to goresources and add build scripts
This commit is contained in:
34
server/assets_src/templates/layout.tmpl
Normal file
34
server/assets_src/templates/layout.tmpl
Normal file
@@ -0,0 +1,34 @@
|
||||
{{ define "layout" }}
|
||||
<!doctype html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>{{ template "title" }}</title>
|
||||
<link rel="stylesheet" href="https://cdn.materialdesignicons.com/3.6.95/css/materialdesignicons.min.css">
|
||||
<link rel="stylesheet" href="/admin/static/stylesheets/main.css">
|
||||
<link rel="shortcut icon" href="/admin/static/images/favicon.ico" type="image/x-icon">
|
||||
<link rel="icon" href="/admin/static/images/favicon.ico" type="image/x-icon">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=no">
|
||||
</head>
|
||||
<body>
|
||||
<div>
|
||||
<div id="header">
|
||||
<img src="/admin/static/images/gonic.png">
|
||||
</div>
|
||||
<div id="content">
|
||||
{{ if .Flashes }}
|
||||
<div id="flashes" class="padded mono">
|
||||
<i class="mdi mdi-alert-circle"></i> {{ index .Flashes 0 }}
|
||||
</div>
|
||||
{{ end }}
|
||||
{{ template "content" . }}
|
||||
</div>
|
||||
</div>
|
||||
<div id="footer" class="padded mono">
|
||||
senan kelly, 2019
|
||||
<span class="light">|</span>
|
||||
<a href="https://github.com/sentriz/gonic">github</a>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
{{ end }}
|
||||
14
server/assets_src/templates/pages/change_own_password.tmpl
Normal file
14
server/assets_src/templates/pages/change_own_password.tmpl
Normal file
@@ -0,0 +1,14 @@
|
||||
{{ define "title" }}home{{ end }}
|
||||
|
||||
{{ define "user" }}
|
||||
<div class="padded box mono">
|
||||
<div class="box-title">
|
||||
<i class="mdi mdi-account-key"></i> changing account password
|
||||
</div>
|
||||
<form action="/admin/change_own_password_do" method="post">
|
||||
<input type="password" id="password_one" name="password_one" placeholder="new password">
|
||||
<input type="password" id="password_two" name="password_two" placeholder="verify new password">
|
||||
<input type="submit" value="change">
|
||||
</form>
|
||||
</div>
|
||||
{{ end }}
|
||||
14
server/assets_src/templates/pages/change_password.tmpl
Normal file
14
server/assets_src/templates/pages/change_password.tmpl
Normal file
@@ -0,0 +1,14 @@
|
||||
{{ define "title" }}home{{ end }}
|
||||
|
||||
{{ define "user" }}
|
||||
<div class="padded box mono">
|
||||
<div class="box-title">
|
||||
<i class="mdi mdi-account-key"></i> changing {{ .SelectedUser.Name }}'s password
|
||||
</div>
|
||||
<form action="/admin/change_password_do?user={{ .SelectedUser.Name }}" method="post">
|
||||
<input type="password" id="password_one" name="password_one" placeholder="new password">
|
||||
<input type="password" id="password_two" name="password_two" placeholder="verify new password">
|
||||
<input type="submit" value="change">
|
||||
</form>
|
||||
</div>
|
||||
{{ end }}
|
||||
15
server/assets_src/templates/pages/create_user.tmpl
Normal file
15
server/assets_src/templates/pages/create_user.tmpl
Normal file
@@ -0,0 +1,15 @@
|
||||
{{ define "title" }}home{{ end }}
|
||||
|
||||
{{ define "user" }}
|
||||
<div class="padded box mono">
|
||||
<div class="box-title">
|
||||
<i class="mdi mdi-account-plus"></i> creating new user
|
||||
</div>
|
||||
<form action="/admin/create_user_do" method="post">
|
||||
<input type="text" id="username" name="username" placeholder="username">
|
||||
<input type="password" id="password_one" name="password_one" placeholder="password">
|
||||
<input type="password" id="password_two" name="password_two" placeholder="verify password">
|
||||
<input type="submit" value="create">
|
||||
</form>
|
||||
</div>
|
||||
{{ end }}
|
||||
15
server/assets_src/templates/pages/delete_user.tmpl
Normal file
15
server/assets_src/templates/pages/delete_user.tmpl
Normal file
@@ -0,0 +1,15 @@
|
||||
{{ define "title" }}home{{ end }}
|
||||
|
||||
{{ define "user" }}
|
||||
<div class="padded box mono">
|
||||
<div class="box-title">
|
||||
<i class="mdi mdi-account-remove"></i> deleting user {{ .SelectedUser.Name }}
|
||||
</div>
|
||||
<div class="right">
|
||||
are you sure?
|
||||
</div>
|
||||
<form action="/admin/delete_user_do?user={{ .SelectedUser.Name }}" method="post">
|
||||
<input type="submit" value="yes">
|
||||
</form>
|
||||
</div>
|
||||
{{ end }}
|
||||
79
server/assets_src/templates/pages/home.tmpl
Normal file
79
server/assets_src/templates/pages/home.tmpl
Normal file
@@ -0,0 +1,79 @@
|
||||
{{ define "title" }}home{{ end }}
|
||||
|
||||
{{ define "user" }}
|
||||
<div class="padded box mono">
|
||||
<div class="box-title">
|
||||
<i class="mdi mdi-chart-arc"></i> stats
|
||||
</div>
|
||||
<div class="right">
|
||||
<span class="pre">artists: {{ printf "%7v" .ArtistCount }}</span><br/>
|
||||
<span class="pre">albums: {{ printf "%7v" .AlbumCount }}</span><br/>
|
||||
<span class="pre">tracks: {{ printf "%7v" .TrackCount }}</span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="padded box mono">
|
||||
<div class="box-title">
|
||||
<i class="mdi mdi-lastfm"></i> last.fm
|
||||
</div>
|
||||
<div class="right">
|
||||
{{ if .User.IsAdmin }}
|
||||
<a href="/admin/update_lastfm_api_key">update api key</a><br/>
|
||||
{{ end }}
|
||||
{{ if .CurrentLastFMAPIKey }}
|
||||
<span class="light">current status</span>
|
||||
{{ if .User.LastFMSession }}
|
||||
linked
|
||||
<span class="light">|</span>
|
||||
<a href="/admin/unlink_lastfm_do">unlink</a><br/>
|
||||
{{ else }}
|
||||
<span class="angry">unlinked</span>
|
||||
<a href="https://www.last.fm/api/auth/?api_key={{ .CurrentLastFMAPIKey }}&cb={{ .RequestRoot }}/admin/link_lastfm_do">link</a><br/>
|
||||
{{ end }}
|
||||
{{ else if not .User.IsAdmin }}
|
||||
<span class="light">api key not set. please ask your admin to set it</span>
|
||||
{{ end }}
|
||||
</div>
|
||||
</div>
|
||||
<div class="padded box mono">
|
||||
{{ if .User.IsAdmin }}
|
||||
{{/* admin panel to manage all users */}}
|
||||
<div class="box-title">
|
||||
<i class="mdi mdi-account-multiple"></i> users
|
||||
</div>
|
||||
<div class="right">
|
||||
{{ range $user := .AllUsers }}
|
||||
<i>{{ $user.Name }}</i>
|
||||
<span class="light">{{ $user.CreatedAt.Format "jan 02, 2006" }}</span>
|
||||
<span class="light">|</span>
|
||||
<a href="/admin/change_password?user={{ $user.Name }}">change password</a>
|
||||
<span class="light">|</span>
|
||||
<a href="/admin/delete_user?user={{ $user.Name }}">delete</a><br/>
|
||||
{{ end }}
|
||||
<a href="/admin/create_user" class="button">create new</a>
|
||||
</div>
|
||||
{{ else }}
|
||||
{{/* user panel to manage themselves */}}
|
||||
<div class="box-title">
|
||||
<i class="mdi mdi-account"></i> your account
|
||||
</div>
|
||||
<div class="right">
|
||||
<a href="/admin/change_own_password" class="button">change password</a>
|
||||
</div>
|
||||
{{ end }}
|
||||
</div>
|
||||
<div class="padded box mono">
|
||||
<div class="box-title">
|
||||
<i class="mdi mdi-folder-multiple"></i> recent folders
|
||||
</div>
|
||||
<div class="left-cut">
|
||||
<table id="recent-folders">
|
||||
{{ range $folder := .RecentFolders }}
|
||||
<tr>
|
||||
<td><span>{{ $folder.RightPath }}</span></td>
|
||||
<td><span class="light">{{ $folder.CreatedAt | humandate }}</span></td>
|
||||
</tr>
|
||||
{{ end }}
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
{{ end }}
|
||||
14
server/assets_src/templates/pages/login.tmpl
Normal file
14
server/assets_src/templates/pages/login.tmpl
Normal file
@@ -0,0 +1,14 @@
|
||||
{{ define "title" }}gonic{{ end }}
|
||||
|
||||
{{ define "content" }}
|
||||
<div class="padded box mono">
|
||||
<div class="box-title">
|
||||
<i class="mdi mdi-login-variant"></i> login
|
||||
</div>
|
||||
<form action="/admin/login_do" method="post">
|
||||
<input type="text" id="username" name="username" placeholder="username">
|
||||
<input type="password" id="password" name="password" placeholder="password">
|
||||
<input type="submit" value="login">
|
||||
</form>
|
||||
</div>
|
||||
{{ end }}
|
||||
18
server/assets_src/templates/pages/update_lastfm_api_key.tmpl
Normal file
18
server/assets_src/templates/pages/update_lastfm_api_key.tmpl
Normal file
@@ -0,0 +1,18 @@
|
||||
{{ define "title" }}home{{ end }}
|
||||
|
||||
{{ define "user" }}
|
||||
<div class="padded box mono">
|
||||
<div class="box-title">
|
||||
<i class="mdi mdi-key-change"></i> updating last.fm keys
|
||||
</div>
|
||||
<div class="right">
|
||||
<span class="light">current key</span> <i>{{ if .CurrentLastFMAPIKey }}{{ .CurrentLastFMAPIKey }}{{ else }}not set{{ end }}</i><br/>
|
||||
<span class="light">current secret</span> <i>{{ if .CurrentLastFMAPISecret }}{{ .CurrentLastFMAPISecret }}{{ else }}not set{{ end }}</i>
|
||||
</div>
|
||||
<form action="/admin/update_lastfm_api_key_do" method="post">
|
||||
<input type="text" id="api_key" name="api_key" placeholder="new key">
|
||||
<input type="text" id="secret" name="secret" placeholder="new secret">
|
||||
<input type="submit" value="update">
|
||||
</form>
|
||||
</div>
|
||||
{{ end }}
|
||||
12
server/assets_src/templates/user.tmpl
Normal file
12
server/assets_src/templates/user.tmpl
Normal file
@@ -0,0 +1,12 @@
|
||||
{{ define "title" }}home{{ end }}
|
||||
|
||||
{{ define "content" }}
|
||||
<div class="side-padded light right mono">
|
||||
welcome {{ .User.Name }}
|
||||
|
|
||||
<a href="/admin/home">home</a>
|
||||
|
|
||||
<a href="/admin/logout">logout <i class="mdi mdi-logout-variant"></i></a>
|
||||
</div>
|
||||
{{ template "user" . }}
|
||||
{{ end }}
|
||||
Reference in New Issue
Block a user