Update styles

This commit is contained in:
2022-10-11 14:21:06 +02:00
parent 2ed58774b7
commit 14df7e8a70
49 changed files with 900 additions and 662 deletions

Binary file not shown.

Before

Width:  |  Height:  |  Size: 54 KiB

After

Width:  |  Height:  |  Size: 38 KiB

Binary file not shown.

BIN
res/static/img/nebula.webp Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 298 KiB

View File

@@ -75,8 +75,6 @@ body {
transition: opacity 0.2s;
}
header,
footer,
.checkers {
background-image: var(--background_pattern);
background-color: var(--background_pattern_color);
@@ -85,24 +83,23 @@ footer,
header,
footer {
border: 2px solid var(--separator);
border-radius: 12px;
text-align: center;
overflow: hidden;
clear: both;
}
header>h1 {
text-shadow: 1px 1px 4px var(--shadow_color);
margin-top: 80px;
margin-bottom: 80px;
margin-top: 30px;
margin-bottom: 30px;
color: var(--background_text_color);
}
footer>.footer_content {
background-color: var(--shaded_background);
background-color: var(--body_background);
color: var(--body_text_color);
display: inline-block;
border-radius: 8px;
margin: 200px 0 60px 0;
margin: 120px 0 60px 0;
}
/* Page layout elements */
@@ -153,14 +150,17 @@ footer>.footer_content {
/* Center the header and body */
overflow-y: auto;
overflow-x: hidden;
background: var(--body_background);
border-top-left-radius: 16px;
border-bottom-left-radius: 16px;
padding: 8px;
transition: margin-left 0.5s;
}
@media (max-width: 1000px) {
.page_content {
background: var(--body_background);
border-top-left-radius: 12px;
border-bottom-left-radius: 12px;
transition: border-top-left-radius 1s, border-bottom-left-radius 1s;
}
@media (max-width: 1100px) {
.page_navigation {
left: -18em;
}
@@ -168,17 +168,27 @@ footer>.footer_content {
.page_body {
margin-left: 0;
width: 100%;
padding: 4px;
}
.page_content {
border-top-left-radius: 0;
border-bottom-left-radius: 0;
}
header>h1 {
/* We want the header text to appear below the menu button, so the top
margin needs to be fairly large when the screen is small */
margin-top: 60px;
}
}
section {
position: relative;
display: block;
padding: 8px;
max-width: 1000px;
width: 100%;
height: auto;
padding: 0;
margin: auto;
text-align: initial;
clear: both;
@@ -192,9 +202,9 @@ section {
color: var(--background_text_color);
text-align: center;
padding: 4px;
margin: 0.3em 15px 0.3em 15px;
margin: 0.2em 15px 0.2em 15px;
font-family: 'Open Sans Light', sans-serif;
font-weight: lighter;
font-weight: light;
font-size: 1.5em;
overflow: hidden;
text-overflow: ellipsis;
@@ -210,6 +220,7 @@ section {
}
.highlight_shaded,
.highlight_border,
.highlight_green,
.highlight_blue,
.highlight_yellow,
@@ -223,9 +234,12 @@ section {
border-radius: 8px;
}
.highlight_border {
border: 2px solid var(--separator);
}
.highlight_shaded {
background: var(--background_color);
color: var(--background_text_color);
background: var(--card_color);
}
.highlight_green {
@@ -328,7 +342,7 @@ p {
margin-left: auto;
margin-right: auto;
text-align: initial;
max-width: 500px;
max-width: 600px;
width: 100%;
}
@@ -553,7 +567,6 @@ button>svg,
overflow-y: hidden;
white-space: nowrap;
text-align: center;
box-shadow: inset 0 -10px 8px -12px var(--shadow_color);
}
.tab_bar>button,

View File

@@ -9,20 +9,22 @@
<header>
<h1>This page does not exist!</h1>
</header>
<section>
<p>
If you came here by a link from this very same website you can
tell me about it on
<a href="https://twitter.com/Fornax96">twitter</a>.
</p>
<p>
Either way, there's nothing to see here, so you'll have to
<a href='/'>head over to the home page</a>.
</p>
<p>
Bye!
</p>
</section>
<div id="page_content" class="page_content">
<section>
<p>
If you came here by a link from this very same website you can
tell me about it on
<a href="https://twitter.com/Fornax96">twitter</a>.
</p>
<p>
Either way, there's nothing to see here, so you'll have to
<a href='/'>head over to the home page</a>.
</p>
<p>
Bye!
</p>
</section>
</div>
{{template "page_bottom" .}}
{{template "analytics"}}
</body>

View File

@@ -9,12 +9,14 @@
<header>
<h1>451, Unavailable For Legal Reasons</h1>
</header>
<section>
<p>
Hello. This file has received an abuse report and has been taken
down. It cannot be shared anymore.
</p>
</section>
<div id="page_content" class="page_content">
<section>
<p>
Hello. This file has received an abuse report and has been taken
down. It cannot be shared anymore.
</p>
</section>
</div>
{{template "page_bottom" .}}
{{template "analytics"}}
</body>

View File

@@ -9,21 +9,23 @@
<header>
<h1>You broke pixeldrain</h1>
</header>
<section>
<p>
Great job.
</p>
<p>
Just kidding, something went wrong on the pixeldrain server and
it's my fault. This can happen when the website is overloaded,
there is a problem with the software or there is a hardware
problem. When there is a large scale outage you can usually find
more info on my twitter <a
href="https://twitter.com/Fornax96"></a>@Fornax96</a>. You can
try again in a few minutes (or hours), or go back to the <a
href='/'>home page</a> and start over.
</p>
</section>
<div id="page_content" class="page_content">
<section>
<p>
Great job.
</p>
<p>
Just kidding, something went wrong on the pixeldrain server and
it's my fault. This can happen when the website is overloaded,
there is a problem with the software or there is a hardware
problem. When there is a large scale outage you can usually find
more info on my twitter <a
href="https://twitter.com/Fornax96"></a>@Fornax96</a>. You can
try again in a few minutes (or hours), or go back to the <a
href='/'>home page</a> and start over.
</p>
</section>
</div>
{{template "page_bottom" .}}
{{template "analytics"}}
</body>

View File

@@ -7,14 +7,14 @@
<script>
window.api_endpoint = '{{.APIEndpoint}}';
window.server_hostname = "{{.Hostname}}";
</script>
<link rel='stylesheet' href='/res/svelte/admin_panel.css?v{{.CacheID}}'>
<script defer src='/res/svelte/admin_panel.js?v{{.CacheID}}'></script>
</head>
<body>
{{template "page_top" .}}
<div id="page_content" class="page_content"></div>
{{template "page_bottom" .}}
{{template "menu" .}}
<div id="page_body" class="page_body"></div>
</body>
{{else}}
<head>
@@ -22,7 +22,12 @@
</head>
<body>
{{template "page_top" .}}
<div class="page_content">;-)</div>
<header>
<h1>Admin Panel</h1>
</header>
<div id="page_content" class="page_content">
;-)
</div>
{{template "page_bottom" .}}
</body>
{{end}}

View File

@@ -10,70 +10,72 @@
<header>
<h1>Change website appearance</h1>
</header>
<section>
<p>
You can change how pixeldrain looks! Your theme choice will
be saved in a cookie.
</p>
<h2>Theme</h2>
<input type="radio" id="style_nord" name="style"><label for="style_nord">Nord</label>
(Inspired by <a href="https://www.nordtheme.com/" target="_blank">Nord</a>)
<br/>
Dynamic theme, changes based on operating system settings. Here you can choose a specific variant:
<br/>
<input type="radio" id="style_nord_dark" name="style"><label for="style_nord_dark">Nord dark</label>
<br/>
<input type="radio" id="style_nord_light" name="style"><label for="style_nord_light">Nord light</label>
<br/>
<br/>
<input type="radio" id="style_solarized" name="style"><label for="style_solarized">Solarized</label>
(Inspired by <a href="https://ethanschoonover.com/solarized/" target="_blank">Solarized</a>)
<br/>
Dynamic theme, changes based on operating system settings. Here you can choose a specific variant:
<br/>
<input type="radio" id="style_solarized_dark" name="style"><label for="style_solarized_dark">Solarized dark</label>
<br/>
<input type="radio" id="style_solarized_light" name="style"><label for="style_solarized_light">Solarized light</label>
<br/>
<!-- <br/> -->
<!-- <input type="radio" id="style_adwaita" name="style"><label for="style_adwaita">Adwaita</label><br/> -->
<br/>
<input type="radio" id="style_purple_drain" name="style"><label for="style_purple_drain">Purple drain</label>
<br/>
Classic 2022 style, with purple gradients
<br/>
<br/>
<input type="radio" id="style_classic" name="style"><label for="style_classic">Pixeldrain classic (gray)</label>
<br/>
Classic pre-2020 pixeldrain style, dark gray
<br/>
<br/>
Other (experimental) themes
<br/>
<input type="radio" id="style_maroon" name="style"><label for="style_maroon">Maroon Style</label>
<br/>
<input type="radio" id="style_hacker" name="style"><label for="style_hacker">Hacker Style</label>
<br/>
<input type="radio" id="style_canta" name="style"><label for="style_canta">Canta Style</label>
(Inspired by <a href="https://github.com/vinceliuice/Canta-theme" target="_blank">Canta GTK</a>)
<br/>
<input type="radio" id="style_skeuos" name="style"><label for="style_skeuos">Skeuos Style</label>
(Inspired by <a href="https://www.gnome-look.org/p/1441725/" target="_blank">Skeuos GTK</a>)
<br/>
<input type="radio" id="style_sweet" name="style"><label for="style_sweet">Sweet</label>
<div id="page_content" class="page_content">
<section>
<p>
You can change how pixeldrain looks! Your theme choice will
be saved in a cookie.
</p>
<h2>Theme</h2>
<input type="radio" id="style_nord" name="style"><label for="style_nord">Nord</label>
(Inspired by <a href="https://www.nordtheme.com/" target="_blank">Nord</a>)
<br/>
Dynamic theme, changes based on operating system settings. Here you can choose a specific variant:
<br/>
<input type="radio" id="style_nord_dark" name="style"><label for="style_nord_dark">Nord dark</label>
<br/>
<input type="radio" id="style_nord_light" name="style"><label for="style_nord_light">Nord light</label>
<br/>
<br/>
<input type="radio" id="style_solarized" name="style"><label for="style_solarized">Solarized</label>
(Inspired by <a href="https://ethanschoonover.com/solarized/" target="_blank">Solarized</a>)
<br/>
Dynamic theme, changes based on operating system settings. Here you can choose a specific variant:
<br/>
<input type="radio" id="style_solarized_dark" name="style"><label for="style_solarized_dark">Solarized dark</label>
<br/>
<input type="radio" id="style_solarized_light" name="style"><label for="style_solarized_light">Solarized light</label>
<br/>
<!-- <br/> -->
<!-- <input type="radio" id="style_adwaita" name="style"><label for="style_adwaita">Adwaita</label><br/> -->
<br/>
<input type="radio" id="style_purple_drain" name="style"><label for="style_purple_drain">Purple drain</label>
<br/>
Classic 2022 style, with purple gradients
<br/>
<br/>
<input type="radio" id="style_classic" name="style"><label for="style_classic">Pixeldrain classic (gray)</label>
<br/>
Classic pre-2020 pixeldrain style, dark gray
<br/>
<br/>
Other (experimental) themes
<br/>
<input type="radio" id="style_maroon" name="style"><label for="style_maroon">Maroon Style</label>
<br/>
<input type="radio" id="style_hacker" name="style"><label for="style_hacker">Hacker Style</label>
<br/>
<input type="radio" id="style_canta" name="style"><label for="style_canta">Canta Style</label>
(Inspired by <a href="https://github.com/vinceliuice/Canta-theme" target="_blank">Canta GTK</a>)
<br/>
<input type="radio" id="style_skeuos" name="style"><label for="style_skeuos">Skeuos Style</label>
(Inspired by <a href="https://www.gnome-look.org/p/1441725/" target="_blank">Skeuos GTK</a>)
<br/>
<input type="radio" id="style_sweet" name="style"><label for="style_sweet">Sweet</label>
<h2>Hue</h2>
<p>
Many themes support custom hues. The hue does not change the
contrast of the theme, only the color itself.
</p>
<input type="radio" id="hue_default" name="hue"><label for="hue_default">Default</label><br/>
<input type="radio" id="hue_354" name="hue"><label for="hue_354">Red</label><br/>
<input type="radio" id="hue_14" name="hue"><label for="hue_14">Orange</label><br/>
<input type="radio" id="hue_40" name="hue"><label for="hue_40">Yellow</label><br/>
<input type="radio" id="hue_92" name="hue"><label for="hue_92">Green</label><br/>
<input type="radio" id="hue_311" name="hue"><label for="hue_311">Purple</label><br/>
</section>
<h2>Hue</h2>
<p>
Many themes support custom hues. The hue does not change the
contrast of the theme, only the color itself.
</p>
<input type="radio" id="hue_default" name="hue"><label for="hue_default">Default</label><br/>
<input type="radio" id="hue_354" name="hue"><label for="hue_354">Red</label><br/>
<input type="radio" id="hue_14" name="hue"><label for="hue_14">Orange</label><br/>
<input type="radio" id="hue_40" name="hue"><label for="hue_40">Yellow</label><br/>
<input type="radio" id="hue_92" name="hue"><label for="hue_92">Green</label><br/>
<input type="radio" id="hue_311" name="hue"><label for="hue_311">Purple</label><br/>
</section>
</div>
<script>
function get_cookie(cname) {

View File

@@ -16,117 +16,119 @@
<header>
<h1>Apps</h1>
</header>
<section>
<h2>ShareX</h2>
<div class="specs">
Platform: Windows 7, 8.1 and 10 |
License: GPL-3.0 |
<a href="https://getsharex.com" target="_blank">Website</a> |
<a href="https://github.com/ShareX/ShareX" target="_blank">GitHub</a>
</div>
<p>
<img src="/res/img/sharex.png" style="float: right; height: 6em; margin: 0.5em;" />
</p>
<p>
ShareX is a Screen capture, file sharing and productivity tool.
Pixeldrain is supported as a custom uploader. You can <a
href="https://getsharex.com/" target="_blank">get ShareX
here</a>.
</p>
<p>
Here you can download our custom ShareX uploader which uses
pixeldrain to upload your files.
</p>
<div id="page_content" class="page_content">
<section>
<h2>ShareX</h2>
<div class="specs">
Platform: Windows 7, 8.1 and 10 |
License: GPL-3.0 |
<a href="https://getsharex.com" target="_blank">Website</a> |
<a href="https://github.com/ShareX/ShareX" target="_blank">GitHub</a>
</div>
<p>
<img src="/res/img/sharex.png" style="float: right; height: 6em; margin: 0.5em;" />
</p>
<p>
ShareX is a Screen capture, file sharing and productivity tool.
Pixeldrain is supported as a custom uploader. You can <a
href="https://getsharex.com/" target="_blank">get ShareX
here</a>.
</p>
<p>
Here you can download our custom ShareX uploader which uses
pixeldrain to upload your files.
</p>
<div class="highlight_shaded" style="clear: right;">
<a href="/misc/sharex/pixeldrain.com.sxcu" class="button button_highlight">
<i class="icon small">save</i>
Download ShareX Uploader
</a><br/>
<div class="highlight_shaded" style="clear: right;">
<a href="/misc/sharex/pixeldrain.com.sxcu" class="button button_highlight">
<i class="icon small">save</i>
Download ShareX Uploader
</a><br/>
{{if .Authenticated}}
This uploader is configured to upload files to your personal
pixeldrain account. Do not share the configuration file with
anyone, it contains your account credentials.
{{else}}
<a href="/login">Log in</a> to use ShareX with your own
pixeldrain account. {{end}}
</div>
{{if .Authenticated}}
This uploader is configured to upload files to your personal
pixeldrain account. Do not share the configuration file with
anyone, it contains your account credentials.
{{else}}
<a href="/login">Log in</a> to use ShareX with your own
pixeldrain account. {{end}}
</div>
<h3>Setting pixeldrain as default uploader</h3>
<p>
Download the uploader config and choose 'Open file'<br/>
<img src="/res/img/sharex_download.png" style="max-width: 100%;" /><br/>
Set pixeldrain.com as active uploader. Choose Yes<br/>
<img src="/res/img/sharex_default.png" style="max-width: 100%;" /><br/>
</p>
<h3>Setting pixeldrain as default uploader</h3>
<p>
Download the uploader config and choose 'Open file'<br/>
<img src="/res/img/sharex_download.png" style="max-width: 100%;" /><br/>
Set pixeldrain.com as active uploader. Choose Yes<br/>
<img src="/res/img/sharex_default.png" style="max-width: 100%;" /><br/>
</p>
<h2>Pixeldrain Android</h2>
<div class="specs">
Platform: Android |
License: None |
<a href="https://github.com/wimvdputten/Pixeldrain_android" target="_blank">GitHub</a>
</div>
<p>
An Android app for uploading and sharing files on pixeldrain.
You can get a compiled APK package from the <a
href="https://github.com/wimvdputten/Pixeldrain_android/releases"
target="_blank">GitHub releases page</a>.
</p>
<h2>Pixeldrain Android</h2>
<div class="specs">
Platform: Android |
License: None |
<a href="https://github.com/wimvdputten/Pixeldrain_android" target="_blank">GitHub</a>
</div>
<p>
An Android app for uploading and sharing files on pixeldrain.
You can get a compiled APK package from the <a
href="https://github.com/wimvdputten/Pixeldrain_android/releases"
target="_blank">GitHub releases page</a>.
</p>
<h2>go-pd</h2>
<div class="specs">
Platform: Linux, Mac OS, Windows (CLI) |
License: MIT |
<a href="https://github.com/ManuelReschke/go-pd" target="_blank">GitHub</a>
</div>
<p>
go-pd is a command line interface and client library for
pixeldrain created by Manuel Reschke. The CLI supports uploading
files anonymously, and uploading to user accounts. The client
library supports uploading, downloading and deleting files,
creating and viewing lists and user accounts. Compiled binaries
are available on the <a
href="https://github.com/ManuelReschke/go-pd/releases"
target="_blank">GitHub releases page</a>.
</p>
<h2>go-pd</h2>
<div class="specs">
Platform: Linux, Mac OS, Windows (CLI) |
License: MIT |
<a href="https://github.com/ManuelReschke/go-pd" target="_blank">GitHub</a>
</div>
<p>
go-pd is a command line interface and client library for
pixeldrain created by Manuel Reschke. The CLI supports uploading
files anonymously, and uploading to user accounts. The client
library supports uploading, downloading and deleting files,
creating and viewing lists and user accounts. Compiled binaries
are available on the <a
href="https://github.com/ManuelReschke/go-pd/releases"
target="_blank">GitHub releases page</a>.
</p>
<h2>go-pixeldrain</h2>
<div class="specs">
Platform: Linux, Mac OS, Windows (CLI) |
License: MIT |
<a href="https://jkawamoto.github.io/go-pixeldrain/" target="_blank">Website</a> |
<a href="https://github.com/jkawamoto/go-pixeldrain" target="_blank">GitHub</a>
</div>
<p>
go-pixeldrain is a command line interface for pixeldrain created
by Junpei Kawamoto. You can use it to upload and download files
and directories from your terminal. Compiled binaries are
available on the <a
href="https://github.com/jkawamoto/go-pixeldrain/releases"
target="_blank">GitHub releases page</a>.
</p>
<h2>go-pixeldrain</h2>
<div class="specs">
Platform: Linux, Mac OS, Windows (CLI) |
License: MIT |
<a href="https://jkawamoto.github.io/go-pixeldrain/" target="_blank">Website</a> |
<a href="https://github.com/jkawamoto/go-pixeldrain" target="_blank">GitHub</a>
</div>
<p>
go-pixeldrain is a command line interface for pixeldrain created
by Junpei Kawamoto. You can use it to upload and download files
and directories from your terminal. Compiled binaries are
available on the <a
href="https://github.com/jkawamoto/go-pixeldrain/releases"
target="_blank">GitHub releases page</a>.
</p>
<h2>pdup</h2>
<div class="specs">
Platform: Linux, BSD, Mac OS (CLI) |
License: None |
<a href="https://github.com/Fornax96/pdup" target="_blank">GitHub</a>
</div>
<p>
pdup is a little bash script for uploading files to pixeldrain
from the terminal. It's available <a
href="https://github.com/Fornax96/pdup" target="_blank">from
GitHub</a>.
</p>
<h2>pdup</h2>
<div class="specs">
Platform: Linux, BSD, Mac OS (CLI) |
License: None |
<a href="https://github.com/Fornax96/pdup" target="_blank">GitHub</a>
</div>
<p>
pdup is a little bash script for uploading files to pixeldrain
from the terminal. It's available <a
href="https://github.com/Fornax96/pdup" target="_blank">from
GitHub</a>.
</p>
<h2>More apps</h2>
<p>
If you know more open source apps which work with pixeldrain
please send them to
<a href="mailto:support@pixeldrain.com">support@pixeldrain.com</a>.
</p>
</section>
<h2>More apps</h2>
<p>
If you know more open source apps which work with pixeldrain
please send them to
<a href="mailto:support@pixeldrain.com">support@pixeldrain.com</a>.
</p>
</section>
</div>
{{template "page_bottom" .}}
{{template "analytics"}}
</body>

View File

@@ -14,6 +14,9 @@
<body>
{{template "page_top" .}}
<header>
<h1>Directory upload</h1>
</header>
<div id="page_content" class="page_content"></div>
{{template "page_bottom" .}}

View File

@@ -10,32 +10,38 @@
<header>
<h1>Success!</h1>
</header>
<section>
<p>
Your account's e-mail address has been updated.
</p>
</section>
<div id="page_content" class="page_content">
<section>
<p>
Your account's e-mail address has been updated.
</p>
</section>
</div>
{{else if eq .Other "not_found"}}
<header>
<h1>E-mail change failed</h1>
</header>
<section>
<p>
This e-mail change request does not exist or has expired.
Please try again if you still want to change your e-mail
address.
</p>
</section>
<div id="page_content" class="page_content">
<section>
<p>
This e-mail change request does not exist or has expired.
Please try again if you still want to change your e-mail
address.
</p>
</section>
</div>
{{else}}
<header>
<h1>Error</h1>
</header>
<section>
<p>
Something went wrong while processing this request. Please
try again later.
</p>
</section>
<div id="page_content" class="page_content">
<section>
<p>
Something went wrong while processing this request. Please
try again later.
</p>
</section>
</div>
{{end}}
{{template "page_bottom" .}}

View File

@@ -9,23 +9,25 @@
<header>
<h1>404, File Not Found!</h1>
</header>
<section>
<p>
This file does not exist, or it has been removed. Possible
reasons for this are:
</p>
<ul>
<li>
The file has not been viewed for 60 days and has expired
</li>
<li>
The person who uploaded the file has deleted it
</li>
</ul>
<p>
I'm sorry for the inconvenience.
</p>
</section>
<div id="page_content" class="page_content">
<section>
<p>
This file does not exist, or it has been removed. Possible
reasons for this are:
</p>
<ul>
<li>
The file has not been viewed for 60 days and has expired
</li>
<li>
The person who uploaded the file has deleted it
</li>
</ul>
<p>
I'm sorry for the inconvenience.
</p>
</section>
</div>
{{template "page_bottom" .}}
{{template "analytics"}}
</body>
@@ -42,24 +44,26 @@
<header>
<h1>404, List Not Found!</h1>
</header>
<section>
<p>
This list does not exist, or it has been removed. Possible
reasons for this are:
</p>
<ul>
<li>
All files in this list have not been viewed for 60 days and
have expired
</li>
<li>
The person who created the list has deleted it
</li>
</ul>
<p>
I'm sorry for the inconvenience.
</p>
</section>
<div id="page_content" class="page_content">
<section>
<p>
This list does not exist, or it has been removed. Possible
reasons for this are:
</p>
<ul>
<li>
All files in this list have not been viewed for 60 days and
have expired
</li>
<li>
The person who created the list has deleted it
</li>
</ul>
<p>
I'm sorry for the inconvenience.
</p>
</section>
</div>
{{template "page_bottom" .}}
{{template "analytics"}}
</body>

View File

@@ -30,45 +30,47 @@
<header>
<h1>{{.Title}}</h1>
</header>
<section>
{{if eq .Other.Type "file"}}
Download <a href="{{.APIEndpoint}}/file/{{.Other.APIResponse.ID}}?download">{{.Other.APIResponse.Name}}</a> here.
{{else}}
<div id="page_content" class="page_content">
<section>
{{if eq .Other.Type "file"}}
Download <a href="{{.APIEndpoint}}/file/{{.Other.APIResponse.ID}}?download">{{.Other.APIResponse.Name}}</a> here.
{{else}}
<ul>
{{$totalSize := 0}}
{{range $file := .Other.APIResponse.Files}}
{{$totalSize = add $totalSize $file.Size}}
<li><a href="{{$.APIEndpoint}}/file/{{$file.ID}}?download">{{$file.Name}}</a> ({{formatData $file.Size}})</li>
{{end}}
</ul>
{{if ne .Other.APIResponse.ID ""}}
<a href="{{.APIEndpoint}}/list/{{.Other.APIResponse.ID}}/zip">Download all files</a> (~{{formatData $totalSize}})
{{end}}
{{end}}
<h2>Compatibility file viewer</h2>
<p>
Welcome to the compatibility version of the file viewer. This
page is only shown to web browsers which can't properly display
the regular file viewer.
</p>
<p>
This page only allows you to download the linked files. If you
want more features like online video / audio players, an image
viewer, a PDF viewer or a text file viewer, please download any
of the supported web browsers:
</p>
<ul>
{{$totalSize := 0}}
{{range $file := .Other.APIResponse.Files}}
{{$totalSize = add $totalSize $file.Size}}
<li><a href="{{$.APIEndpoint}}/file/{{$file.ID}}?download">{{$file.Name}}</a> ({{formatData $file.Size}})</li>
{{end}}
<li><a href="https://brave.com/pix009">Brave</a> (Linux, Mac OS, Windows)</li>
<li><a href="https://www.mozilla.org/en-US/firefox/">Firefox</a> (Linux, Mac OS, Windows)</li>
<li><a href="https://www.google.com/chrome/">Chrome</a> / <a href="https://www.chromium.org/Home">Chromium</a> (Linux, Mac OS, Windows)</li>
<li><a href="https://vivaldi.com/">Vivaldi</a> (Linux, Mac OS, Windows)</li>
<li><a href="https://www.opera.com/">Opera</a> (Linux, Mac OS, Windows)</li>
<li><a href="https://wiki.gnome.org/Apps/Web/">GNOME Web</a> (Linux)</li>
<li><a href="https://www.palemoon.org/">Pale Moon</a> (Linux, Windows)</li>
<li><a href="https://www.apple.com/safari/">Safari</a> (Mac OS)</li>
<li><a href="https://www.microsoft.com/en-us/edge">Edge</a> (Windows)</li>
</ul>
{{if ne .Other.APIResponse.ID ""}}
<a href="{{.APIEndpoint}}/list/{{.Other.APIResponse.ID}}/zip">Download all files</a> (~{{formatData $totalSize}})
{{end}}
{{end}}
<h2>Compatibility file viewer</h2>
<p>
Welcome to the compatibility version of the file viewer. This
page is only shown to web browsers which can't properly display
the regular file viewer.
</p>
<p>
This page only allows you to download the linked files. If you
want more features like online video / audio players, an image
viewer, a PDF viewer or a text file viewer, please download any
of the supported web browsers:
</p>
<ul>
<li><a href="https://brave.com/pix009">Brave</a> (Linux, Mac OS, Windows)</li>
<li><a href="https://www.mozilla.org/en-US/firefox/">Firefox</a> (Linux, Mac OS, Windows)</li>
<li><a href="https://www.google.com/chrome/">Chrome</a> / <a href="https://www.chromium.org/Home">Chromium</a> (Linux, Mac OS, Windows)</li>
<li><a href="https://vivaldi.com/">Vivaldi</a> (Linux, Mac OS, Windows)</li>
<li><a href="https://www.opera.com/">Opera</a> (Linux, Mac OS, Windows)</li>
<li><a href="https://wiki.gnome.org/Apps/Web/">GNOME Web</a> (Linux)</li>
<li><a href="https://www.palemoon.org/">Pale Moon</a> (Linux, Windows)</li>
<li><a href="https://www.apple.com/safari/">Safari</a> (Mac OS)</li>
<li><a href="https://www.microsoft.com/en-us/edge">Edge</a> (Windows)</li>
</ul>
</section>
</section>
</div>
{{template "analytics"}}
</body>
</html>

View File

@@ -1,6 +1,6 @@
{{define "form"}}
{{.PreFormHTML}}
<form class="highlight_shaded" method="POST">
<form class="highlight_border" method="POST">
{{if eq .Submitted true}}
{{if eq .SubmitSuccess true}}
<div id="submit_result" class="highlight_green">
@@ -91,11 +91,14 @@
<header>
<h1>{{.Form.Title}}</h1>
</header>
<br/>
<section>
{{template "form" .Form}}
<div id="page_content" class="page_content">
<br/>
</section>
<section>
{{template "form" .Form}}
<br/>
</section>
</div>
{{template "page_bottom" .}}
</div>

View File

@@ -6,12 +6,14 @@
<body>
{{template "page_top" .}}
<header>
<h1>{{.Title}}</h1>
</header>
<section>
{{.Other}}
</section>
<header>
<h1>{{.Title}}</h1>
</header>
<div id="page_content" class="page_content">
<section>
{{.Other}}
</section>
</div>
{{template "page_bottom" .}}
{{template "analytics"}}
</body>

View File

@@ -1,4 +1,4 @@
{{define "page_menu"}}
{{define "menu"}}
<button id="button_toggle_navigation" class="button_toggle_navigation" onclick="toggleMenu();"></button>
<nav id="page_navigation" class="page_navigation">
<a href="/#">Home</a>
@@ -29,14 +29,19 @@
function toggleMenu() {
var nav = document.getElementById("page_navigation");
var body = document.getElementById("page_body");
var content = document.getElementById("page_content");
if (nav.offsetLeft === 0) {
// Menu is visible, hide it
nav.style.left = -nav.offsetWidth + "px";
body.style.marginLeft = "0";
content.style.borderTopLeftRadius = "0"
content.style.borderBottomLeftRadius = "0"
} else {
// Menu is hidden, show it
nav.style.left = "0";
body.style.marginLeft = nav.offsetWidth + "px";
content.style.borderTopLeftRadius = "12px"
content.style.borderBottomLeftRadius = "12px"
}
}
function resetMenu() {
@@ -46,31 +51,35 @@ function resetMenu() {
</script>
{{end}}
{{define "footer"}}
<footer>
<div class="footer_content">
<div style="display: inline-block; margin: 0 8px 0 8px;">
Pixeldrain is a product by <a href="//fornaxian.tech" target="_blank">Fornaxian Technologies</a>
</div>
<div style="display: inline-block; margin: 0 8px 0 8px;">
(
<a href="https://www.patreon.com/pixeldrain" target="_blank">{{template `patreon.svg` .}} Patreon</a> |
<a href="https://twitter.com/Fornax96" target="_blank">{{template `twitter.svg` .}} Twitter</a> |
<a href="https://reddit.com/r/pixeldrain" target="_blank">{{template `reddit.svg` .}} Reddit</a> |
<a href="https://github.com/Fornaxian" target="_blank">{{template `github.svg` .}} GitHub</a> |
<a href="https://mastodon.social/web/@fornax" target="_blank">{{template `mastodon.svg` .}} Mastodon</a>
)
</div>
<br/>
<span class="small_footer_text" style="font-size: .75em; line-height: .75em;">
page rendered by {{.Hostname}}
</span>
</div>
</footer>
{{end}}
{{define "page_top"}}
{{template "page_menu" .}}
{{template "menu" .}}
<div id="page_body" class="page_body">
{{end}}
{{define "page_bottom"}}
<footer>
<div class="footer_content">
<div style="display: inline-block; margin: 0 8px 0 8px;">
Pixeldrain is a product by <a href="//fornaxian.tech" target="_blank">Fornaxian Technologies</a>
</div>
<div style="display: inline-block; margin: 0 8px 0 8px;">
(
<a href="https://www.patreon.com/pixeldrain" target="_blank">{{template `patreon.svg` .}} Patreon</a> |
<a href="https://twitter.com/Fornax96" target="_blank">{{template `twitter.svg` .}} Twitter</a> |
<a href="https://reddit.com/r/pixeldrain" target="_blank">{{template `reddit.svg` .}} Reddit</a> |
<a href="https://github.com/Fornaxian" target="_blank">{{template `github.svg` .}} GitHub</a> |
<a href="https://mastodon.social/web/@fornax" target="_blank">{{template `mastodon.svg` .}} Mastodon</a>
)
</div>
<br/>
<span class="small_footer_text" style="font-size: .75em; line-height: .75em;">
page rendered by {{.Hostname}}
</span>
</div>
</footer>
</div><!-- end page_body -->
{{template "footer" .}}
</div>
{{end}}

View File

@@ -51,15 +51,16 @@
<header>
<h1>Upload History</h1>
</header>
<div id="page_content" class="page_content">
<section>
<p>
Here are all files you have previously uploaded to pixeldrain using this computer.
This data is saved locally in your web browser and gets updated every time you upload a file through your current browser.
</p>
</section>
<section>
<p>
Here are all files you have previously uploaded to pixeldrain using this computer.
This data is saved locally in your web browser and gets updated every time you upload a file through your current browser.
</p>
</section>
<div id="uploaded_files"></div>
<div id="uploaded_files"></div>
</div>
{{template "page_bottom" .}}
<script>

View File

@@ -7,32 +7,29 @@
<style>
/* Override the default background with something spectacular */
header, footer, .checkers {
background-image: url("/res/img/horsehead.webp");
background-color: var(--parallax_slider_color);
background-repeat: no-repeat;
background-image: url("/res/img/nebula.webp");
background-color: var(--background_color);
background-blend-mode: luminosity;
background-attachment: fixed;
background-position: center top;
background-size: cover;
color: #ffffff;
box-shadow: inset 0 0 2px 0 var(--shadow_color);
border: none;
}
header>h1 {
color: #ffffff;
}
</style>
<script>
window.api_endpoint = '{{.APIEndpoint}}';
window.user = {{.User}};
window.server_hostname = "{{.Hostname}}";
</script>
<link rel='stylesheet' href='/res/svelte/home_page.css?v{{.CacheID}}'>
<script defer src='/res/svelte/home_page.js?v{{.CacheID}}'></script>
</head>
<body>
{{template "page_top" .}}
<div id="page_content" class="page_content"></div>
{{template "page_bottom" .}}
{{template "menu" .}}
<div id="page_body" class="page_body"></div>
{{template "analytics"}}
</body>
</html>

View File

@@ -8,14 +8,8 @@
<script defer src='/res/svelte/user_buckets.js?v{{.CacheID}}'></script>
</head>
<body>
{{template "page_top" .}}
<header>
<h1>My Buckets</h1>
</header>
<div id="page_content" class="page_content"></div>
{{template "page_bottom" .}}
{{template "menu" .}}
<div id="page_body" class="page_body"></div>
{{template "analytics"}}
</body>
</html>

View File

@@ -11,7 +11,7 @@
</head>
<body>
{{template "page_menu" .}}
{{template "menu" .}}
<div id="page_body" class="page_body"></div>
{{template "analytics"}}
</body>

View File

@@ -6,17 +6,15 @@
<script>
window.api_endpoint = '{{.APIEndpoint}}';
window.user = {{.User}};
window.server_hostname = "{{.Hostname}}";
</script>
<link rel='stylesheet' href='/res/svelte/user_home.css?v{{.CacheID}}'>
<script defer src='/res/svelte/user_home.js?v{{.CacheID}}'></script>
</head>
<body>
{{template "page_top" .}}
<div id="page_content" class="page_content"></div>
{{template "page_bottom" .}}
{{template "menu" .}}
<div id="page_body" class="page_body"></div>
{{template "analytics"}}
</body>
</html>

View File

@@ -8,27 +8,32 @@
<header>
<h1>Logging out of your pixeldrain account</h1>
</header>
<br/>
<form method="POST" action="/logout">
<input type="submit" value="I want to log out of pixeldrain on this computer" class="button_highlight"/>
</form>
<br/>
<section>
<h2>Why do I need to confirm my logout?</h2>
<p>
We need you to confirm your action so we can be sure that you
really requested a logout. If we didn't do this, anyone (or any
website) would be able to send you to this page and you would
automatically get logged out of pixeldrain, which would be very
annoying.
</p>
<p>
To prevent this from happening we're verifying that you actually
want to log out by making you click this button. Because this
logout button triggers a different request type than normal
page visit we can confirm that you really want to log out.
</p>
</section>
<div id="page_content" class="page_content">
<br/>
<form method="POST" action="/logout">
<button role="submit" class="button_highlight">
<i class="icon">logout</i>
Log out of pixeldrain on this computer
</button>
</form>
<br/>
<section>
<h2>Why do I need to confirm my logout?</h2>
<p>
We need you to confirm your action so we can be sure that you
really requested a logout. If we didn't do this, anyone (or any
website) would be able to send you to this page and you would
automatically get logged out of pixeldrain, which would be very
annoying.
</p>
<p>
To prevent this from happening we're verifying that you actually
want to log out by making you click this button. Because this
logout button triggers a different request type than normal
page visit we can confirm that you really want to log out.
</p>
</section>
</div>
{{template "page_bottom" .}}
{{template "analytics"}}
</body>

View File

@@ -6,61 +6,62 @@
</head>
<body>
{{template "page_top" .}}
<header>
<h1>Widget showcase</h1>
</header>
<section>
<h2>Size 2 header</h2>
<h3>Size 3 header</h3>
<h4>Size 4 header</h4>
<h5>Size 5 header</h5>
<h6>Size 6 header</h6>
<div id="page_content" class="page_content">
<section>
<h2>Size 2 header</h2>
<h3>Size 3 header</h3>
<h4>Size 4 header</h4>
<h5>Size 5 header</h5>
<h6>Size 6 header</h6>
<div class="highlight_shaded">Shaded highlight</div>
<br/>
Link <a href="#">A link to someplace</a>.
<hr/>
Buttons <button>Regular ol' button!</button>
Width indicator
<button class="button_highlight">Important button!</button>
Width indicator
<button class="button_red">Dangerous button!</button>
<hr/>
Textarea <textarea>Hello!</textarea>
<hr/>
Checkbox <input type="checkbox"/>
<hr/>
Radio
<input name="radioform" type="radio"/>
<input name="radioform" type="radio"/>
<hr/>
Text field <input type="text"/>
<hr/>
Password <input type="password"/>
<hr/>
Number <input type="number"/>
<hr/>
Select
<select name="select">
<option>cherry</option>
<option>orange</option>
<option>apple</option>
</select>
<hr/>
Select2 <select name="select2" size="3">
<option>cherry</option>
<option>orange</option>
<option>apple</option>
</select>
<hr/>
File <input type="file" name="file">
<hr/>
Color <input type="color" name="favcolor" value="#ff0000">
<div class="highlight_shaded">Shaded highlight</div>
<br/>
Link <a href="#">A link to someplace</a>.
<hr/>
Buttons <button>Regular ol' button!</button>
Width indicator
<button class="button_highlight">Important button!</button>
Width indicator
<button class="button_red">Dangerous button!</button>
<hr/>
Textarea <textarea>Hello!</textarea>
<hr/>
Checkbox <input type="checkbox"/>
<hr/>
Radio
<input name="radioform" type="radio"/>
<input name="radioform" type="radio"/>
<hr/>
Text field <input type="text"/>
<hr/>
Password <input type="password"/>
<hr/>
Number <input type="number"/>
<hr/>
Select
<select name="select">
<option>cherry</option>
<option>orange</option>
<option>apple</option>
</select>
<hr/>
Select2 <select name="select2" size="3">
<option>cherry</option>
<option>orange</option>
<option>apple</option>
</select>
<hr/>
File <input type="file" name="file">
<hr/>
Color <input type="color" name="favcolor" value="#ff0000">
<br/><br/>
<iframe src="https://pixeldrain.com/u/Nygt1on4?embed" style="border: none; width: 800px; max-width: 100%; height: 600px; max-height: 100%; border-radius: 16px;"></iframe>
</section>
<br/><br/>
<iframe src="https://pixeldrain.com/u/Nygt1on4?embed" style="border: none; width: 800px; max-width: 100%; height: 600px; max-height: 100%; border-radius: 16px;"></iframe>
</section>
</div>
{{template "page_bottom" .}}
</body>
</html>