frontend: make use of new width space and use more icons

This commit is contained in:
Alice Gaudon 2021-01-26 14:29:29 +01:00
parent 8b42d83edf
commit 7d6242861e
6 changed files with 113 additions and 109 deletions

View File

@ -29,5 +29,5 @@ $errorText: darken($error, 30%);
$errorColor: desaturate($errorText, 50%); $errorColor: desaturate($errorText, 50%);
// Responsivity // Responsivity
$mobileThreshold: 632px; $mobileThreshold: 850px;
$desktopThreshold: 940px; $desktopThreshold: 940px;

View File

@ -1,6 +1,6 @@
<div class="container"> <div class="container">
<section class="panel"> <section class="panel">
<h2>Setup a desktop utility</h2> <h2><i data-feather="tool"></i> Setup a desktop utility</h2>
<p>There may be a desktop client at some point. For now, if you're an advanced user, you can setup <p>There may be a desktop client at some point. For now, if you're an advanced user, you can setup
scripts/macros.</p> scripts/macros.</p>
@ -12,7 +12,7 @@
<table class="data-table"> <table class="data-table">
<thead> <thead>
<tr> <tr>
<th>Name</th> <th class="table-col-grow">Name</th>
<th>Download link</th> <th>Download link</th>
</tr> </tr>
</thead> </thead>
@ -114,46 +114,46 @@
<p>For examples with curl, please download and review the scripts above.</p> <p>For examples with curl, please download and review the scripts above.</p>
</section> </section>
</section> </section>
</div>
<section class="panel"> <section class="panel">
<h2>Auth tokens</h2> <h2><i data-feather="key"></i> Auth tokens</h2>
<form action="{{ route('generate-token') }}" method="POST"> <form action="{{ route('generate-token') }}" method="POST">
{{ macros.csrf(getCsrfToken) }} {{ macros.csrf(getCsrfToken) }}
<button type="submit"><i data-feather="plus"></i> Generate a new token</button> <button type="submit"><i data-feather="plus"></i> Generate a new token</button>
</form> </form>
<table class="data-table"> <table class="data-table">
<thead> <thead>
<tr>
<th>#</th>
<th>Secret</th>
<th>Created at</th>
<th>Last used at</th>
<th>Actions</th>
</tr>
</thead>
<tbody>
{% for token in auth_tokens %}
<tr> <tr>
<td>{{ token.id }}</td> <th>#</th>
<td> <th class="table-col-grow">Secret</th>
<div class="copyable-text"> <th>Created at</th>
<div class="content">{{ token.secret }}</div> <th>Last used at</th>
<button class="copy-button"><i data-feather="copy"></i></button> <th>Actions</th>
</div>
</td>
<td>{{ token.created_at.toISOString() }}</td>
<td>{{ token.used_at.toISOString() }}</td>
<td>
<form action="{{ route('revoke-token', token.id) }}" method="POST">
<button class="button danger"><i data-feather="trash"></i> Revoke</button>
</form>
</td>
</tr> </tr>
{% endfor %} </thead>
</tbody>
</table> <tbody>
</section> {% for token in auth_tokens %}
<tr>
<td>{{ token.id }}</td>
<td>
<div class="copyable-text">
<div class="content">{{ token.secret }}</div>
<button class="copy-button"><i data-feather="copy"></i></button>
</div>
</td>
<td>{{ token.created_at.toISOString() }}</td>
<td>{{ token.used_at.toISOString() }}</td>
<td class="actions">
<form action="{{ route('revoke-token', token.id) }}" method="POST">
<button class="button danger"><i data-feather="trash"></i> <span class="tip">Revoke</span></button>
</form>
</td>
</tr>
{% endfor %}
</tbody>
</table>
</section>
</div>

View File

@ -10,47 +10,49 @@
<h1>File manager</h1> <h1>File manager</h1>
<p>You're their manager, please be nice with them.</p> <p>You're their manager, please be nice with them.</p>
<section class="panel"> <div class="container">
<h2>File list</h2> <section class="panel">
<table class="data-table"> <h2><i data-feather="folder"></i> File list</h2>
<thead> <table class="data-table">
<tr> <thead>
<th>#</th>
<th>URL</th>
<th>Name</th>
<th>Size</th>
<th>Expires at</th>
<th>Actions</th>
</tr>
</thead>
<tbody>
{% for file in files %}
<tr> <tr>
<td>{{ file.id }}</td> <th>#</th>
<td> <th class="table-col-grow">URL</th>
<div class="copyable-text"> <th>Name</th>
<a class="content" href="{{ file.getURL() }}" target="_blank">{{ file.getURL() }}</a> <th>Size</th>
<button class="copy-button"><i data-feather="copy"></i></button> <th>Expires at</th>
</div> <th>Actions</th>
</td>
<td>{{ file.real_name }}</td>
<td>{{ (file.size / (1024 * 1024)).toFixed(2) }}MB</td>
{% set expires_at = file.getExpirationDate() %}
<td>{% if expires_at %}{{ expires_at.toISOString() }}{% else %}Never{% endif %}</td>
<td>
{% if file.shouldBeDeleted() %}
Pending deletion
{% else %}
<form action="{{ route('delete-file-frontend', file.slug) }}" method="post">
{{ macros.csrf(getCsrfToken) }}
<button class="button danger"><i data-feather="trash"></i> Delete</button>
</form>
{% endif %}
</td>
</tr> </tr>
{% endfor %} </thead>
</tbody>
</table> <tbody>
</section> {% for file in files %}
<tr>
<td>{{ file.id }}</td>
<td>
<div class="copyable-text">
<a class="content" href="{{ file.getURL() }}" target="_blank">{{ file.getURL() }}</a>
<button class="copy-button"><i data-feather="copy"></i></button>
</div>
</td>
<td><pre>{{ file.real_name }}</pre></td>
<td>{{ (file.size / (1024 * 1024)).toFixed(2) }}MB</td>
{% set expires_at = file.getExpirationDate() %}
<td>{% if expires_at %}{{ expires_at.toISOString() }}{% else %}Never{% endif %}</td>
<td class="actions">
{% if file.shouldBeDeleted() %}
Pending deletion
{% else %}
<form action="{{ route('delete-file-frontend', file.slug) }}" method="post">
{{ macros.csrf(getCsrfToken) }}
<button class="button danger"><i data-feather="trash"></i> <span class="tip">Delete</span></button>
</form>
{% endif %}
</td>
</tr>
{% endfor %}
</tbody>
</table>
</section>
</div>
{% endblock %} {% endblock %}

View File

@ -12,7 +12,7 @@
<div class="container"> <div class="container">
<section class="panel"> <section class="panel">
<h2>Upload a file</h2> <h2><i data-feather="upload"></i> Upload a file</h2>
<form action="{{ route('post-file-frontend') }}" method="POST" enctype="multipart/form-data" <form action="{{ route('post-file-frontend') }}" method="POST" enctype="multipart/form-data"
id="upload-form"> id="upload-form">

View File

@ -8,31 +8,33 @@
<h1>URL manager</h1> <h1>URL manager</h1>
<p>These are permanent.</p> <p>These are permanent.</p>
<section class="panel"> <div class="container">
<h2>URL list</h2> <section class="panel">
<table class="data-table"> <h2><i data-feather="link"></i> URL list</h2>
<thead> <table class="data-table">
<tr> <thead>
<th>#</th>
<th>URL</th>
<th>Target</th>
</tr>
</thead>
<tbody>
{% for url in urls %}
<tr> <tr>
<td>{{ url.id }}</td> <th>#</th>
<td> <th class="table-col-grow">URL</th>
<div class="copyable-text"> <th>Target</th>
<a class="content" href="{{ url.getURL() }}" target="_blank">{{ url.getURL() }}</a>
<button class="copy-button"><i data-feather="copy"></i></button>
</div>
</td>
<td>{{ url.target_url }}</td>
</tr> </tr>
{% endfor %} </thead>
</tbody>
</table> <tbody>
</section> {% for url in urls %}
<tr>
<td>{{ url.id }}</td>
<td>
<div class="copyable-text">
<a class="content" href="{{ url.getURL() }}" target="_blank">{{ url.getURL() }}</a>
<button class="copy-button"><i data-feather="copy"></i></button>
</div>
</td>
<td><pre>{{ url.target_url }}</pre></td>
</tr>
{% endfor %}
</tbody>
</table>
</section>
</div>
{% endblock %} {% endblock %}

View File

@ -12,7 +12,7 @@
<div class="container"> <div class="container">
<section class="panel"> <section class="panel">
<h2>Shrink a URL</h2> <h2><i data-feather="crosshair"></i> Shrink a URL</h2>
<form action="{{ route('shrink-url') }}" method="POST" id="url-shrink-form"> <form action="{{ route('shrink-url') }}" method="POST" id="url-shrink-form">
{{ macros.field(_locals, 'text', 'target_url', '', 'Target URL', 'Only valid URLs starting with http:// or https://', validation_attributes='required') }} {{ macros.field(_locals, 'text', 'target_url', '', 'Target URL', 'Only valid URLs starting with http:// or https://', validation_attributes='required') }}