60 lines
3.2 KiB
Plaintext
60 lines
3.2 KiB
Plaintext
:go:func Index(mainSite, currentPath string, stats *files.DirStats, items *[]files.DirEntry, r *http.Request)
|
|
|
|
:go:import "dwelling-files/pkg/files"
|
|
:go:import "dwelling-files/pkg/utils"
|
|
|
|
doctype html
|
|
html(lang='en')
|
|
head
|
|
title Arav's dwelling / Files
|
|
meta(charset='utf-8')
|
|
meta(http-equiv='X-UA-Compatible' content='IE=edge')
|
|
meta(name='viewport' content='width=device-width, initial-scale=1.0')
|
|
meta(name='theme-color' content='#cd2682')
|
|
meta(name='description' content='My file share.')
|
|
link(rel='icon' type='image/svg+xml' href='/assets/img/favicon.svg' sizes='any')
|
|
link(href='/assets/css/main.css' rel='stylesheet')
|
|
script(src='/assets/js/main.js' defer='')
|
|
body
|
|
header
|
|
svg#logo(viewBox='0 -25 216 40')
|
|
text.logo Arav's dwelling
|
|
text.under(y='11') Welcome to my sacred place, wanderer
|
|
nav
|
|
a(href=mainSite) Back to main website
|
|
h1 Files
|
|
section#files
|
|
span!= currentPath
|
|
p Files: #{stats.Files} (#{stats.FilesSize}); Directories: #{stats.Directories}.
|
|
input.hidden(type="text", name="filter" placeholder="Type in to filter this directory (case insensitive)")
|
|
table
|
|
thead
|
|
tr
|
|
th Name
|
|
th Date
|
|
th Size
|
|
tr(tabindex=0)
|
|
td #[a(href="../") ../]
|
|
tbody
|
|
each item, i in *items
|
|
tr(tabindex=i+1)
|
|
td #[a(href=item.Link) #{item.Name}]
|
|
td!= utils.ToClientTimezone(item.Datetime, r).Format(files.FileDateFormat)
|
|
td= item.Size
|
|
section
|
|
span!= currentPath
|
|
section#usage
|
|
p On a page use up and down arrow keys to navigate through list. Use home and end keys to go to the start and end of a list. Use Ctrl+Backspace to return to a parent directory.
|
|
p In an overlay use a mouse wheel to change a scale of a video or a picture. Use left and right arrow keys to go through media. Use space key to toggle pause. Use escape key to close an overlay, or click outside a media. An audio volume is being kept across site using LocalStorage API.
|
|
section#privacy
|
|
h2 Privacy statements
|
|
p I collect access logs that include access date and time, IP-address, User-Agent, referer URL that tells me where have you came from, request that you sent to me. In addition there are GeoIP information added based on your IP-address that includes country, region, and city for my convenience.
|
|
p This site makes use of JavaScript purely for convenient functionality, like being able to watch video, listen to music, and look images in an overlay without the need to open a file in a new tab or return back.
|
|
footer
|
|
| 2017—2022 Arav <#[a(href='mailto:me@arav.top') me@arav.top]>
|
|
div#overlay
|
|
button(name='prev') ❰
|
|
div
|
|
div
|
|
span
|
|
button(name='next') ❱ |