feat(subsonic): add avatar support

closes: #228
This commit is contained in:
Brian Doherty
2022-07-20 23:16:13 +01:00
committed by sentriz
parent 7ab378accb
commit 5e66261f0c
15 changed files with 288 additions and 28 deletions

View File

@@ -0,0 +1,26 @@
{{ define "user" }}
<div class="padded box">
<div class="box-title">
<i class="mdi mdi-account-key"></i> changing {{ .SelectedUser.Name }}'s avatar
</div>
{{ if ne (len .SelectedUser.Avatar) 0 }}
<form class="block" action="{{ printf "/admin/delete_avatar_do?user=%s" .SelectedUser.Name | path }}" method="post">
<input type="submit" value="delete avatar">
</form>
{{ end }}
<form
class="block file-upload"
enctype="multipart/form-data"
action="{{ printf "/admin/change_avatar_do?user=%s" .SelectedUser.Name | path }}"
method="post"
>
<div style="position: relative;">
<input style="position: absolute; opacity: 0;" name="avatar" type="file" accept="image/jpeg image/png image/gif" />
<input type="button" value="upload avatar">
</div>
{{ if ne (len .SelectedUser.Avatar) 0 }}
<p><img class="avatar-preview" src="data:image/jpg;base64,{{ .SelectedUser.Avatar | base64 }}"/></p>
{{ end }}
</form>
</div>
{{ end }}

View File

@@ -0,0 +1,26 @@
{{ define "user" }}
<div class="padded box">
<div class="box-title">
<i class="mdi mdi-account-key"></i> changing account avatar
</div>
{{ if ne (len .SelectedUser.Avatar) 0 }}
<form class="block" action="{{ path "/admin/delete_own_avatar_do" }}" method="post">
<input type="submit" value="delete avatar">
</form>
{{ end }}
<form
class="block file-upload"
enctype="multipart/form-data"
action="{{ path "/admin/change_own_avatar_do" }}"
method="post"
>
<div style="position: relative;">
<input style="position: absolute; opacity: 0;" name="avatar" type="file" accept="image/jpeg image/png image/gif" />
<input type="button" value="upload avatar">
</div>
{{ if ne (len .SelectedUser.Avatar) 0 }}
<p><img class="avatar-preview" src="data:image/jpg;base64,{{ .SelectedUser.Avatar | base64 }}"/></p>
{{ end }}
</form>
</div>
{{ end }}

View File

@@ -82,6 +82,8 @@
<span class="text-light">&#124;</span>
<a href="{{ printf "/admin/change_password?user=%s" $user.Name | path }}">password&#8230;</a>
<span class="text-light">&#124;</span>
<a href="{{ printf "/admin/change_avatar?user=%s" $user.Name | path }}">change avatar&#8230;</a>
<span class="text-light">&#124;</span>
{{ if $user.IsAdmin }}
<span class="text-light">delete&#8230;</span>
{{ else }}
@@ -100,6 +102,8 @@
<a href="{{ path "/admin/change_own_username" }}" class="button">change username&#8230;</a>
<span class="text-light">&#124;</span>
<a href="{{ path "/admin/change_own_password" }}" class="button">change password&#8230;</a>
<span class="text-light">&#124;</span>
<a href="{{ path "/admin/change_own_avatar" }}" class="button">change avatar&#8230;</a>
</div>
{{ end }}
</div>
@@ -260,17 +264,16 @@
{{ end }}
</table>
<form
id="playlist-upload-form"
class="file-upload"
enctype="multipart/form-data"
action="{{ path "/admin/upload_playlist_do" }}"
method="post"
>
<div style="position: relative;">
<input id="playlist-upload-input" style="position: absolute; opacity: 0;" name="playlist-files" type="file" multiple />
<input style="position: absolute; opacity: 0;" name="playlist-files" type="file" multiple />
<input type="button" value="upload m3u8">
</div>
</form>
<script src="{{ path "/admin/static/playlist-upload.js" }}"></script>
</div>
</div>
{{ end }}