Upload / delete themes (#20)
- Moved themes to section of installation admin page (will also implement #23 there)
This commit is contained in:
@@ -21,7 +21,7 @@
|
||||
{{ "admin/settings" | nav_link: "Settings" }}
|
||||
{%- endif %}
|
||||
{%- if is_administrator %}
|
||||
{{ "admin/themes" | nav_link: "Themes" }}
|
||||
{{ "admin/dashboard/administration" | nav_link: "Admin" }}
|
||||
{%- endif %}
|
||||
</ul>
|
||||
{%- endif %}
|
||||
|
||||
32
src/admin-theme/admin-dashboard.liquid
Normal file
32
src/admin-theme/admin-dashboard.liquid
Normal file
@@ -0,0 +1,32 @@
|
||||
<h2 class="my-3">{{ page_title }}</h2>
|
||||
<article>
|
||||
<fieldset class="container pb-3">
|
||||
<legend>Themes</legend>
|
||||
<div class="row">
|
||||
<div class="col">
|
||||
<a href="{{ "admin/theme/new" | relative_link }}" class="btn btn-primary btn-sm mb-3"
|
||||
hx-target="#theme_new">
|
||||
Upload a New Theme
|
||||
</a>
|
||||
<div class="container">
|
||||
{% include_template "_theme-list-columns" %}
|
||||
<div class="row mwl-table-heading">
|
||||
<div class="{{ theme_col }}">Theme</div>
|
||||
<div class="{{ slug_col }} d-none d-md-inline-block">Slug</div>
|
||||
<div class="{{ tmpl_col }} d-none d-md-inline-block">Templates</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row mwl-table-detail" id="theme_new"></div>
|
||||
{{ theme_list }}
|
||||
</div>
|
||||
</div>
|
||||
</fieldset>
|
||||
<fieldset class="container">
|
||||
<legend>Caches</legend>
|
||||
<div class="row">
|
||||
<div class="col">
|
||||
TODO
|
||||
</div>
|
||||
</div>
|
||||
</fieldset>
|
||||
</article>
|
||||
@@ -1,6 +1,5 @@
|
||||
<form method="post" id="themeList" class="container" hx-target="this" hx-swap="outerHTML show:window:top">
|
||||
<input type="hidden" name="{{ csrf.form_field_name }}" value="{{ csrf.request_token }}">
|
||||
<div class="row mwl-table-detail" id="theme_new"></div>
|
||||
{% include_template "_theme-list-columns" %}
|
||||
{% for theme in themes -%}
|
||||
<div class="row mwl-table-detail" id="theme_{{ theme.id }}">
|
||||
@@ -16,7 +15,7 @@
|
||||
<span class="text-muted">v{{ theme.version }}</span>
|
||||
{% unless theme.is_in_use or theme.id == "default" %}
|
||||
<span class="text-muted"> • </span>
|
||||
{%- assign theme_del_link = "admin/" | append: theme.id | append: "/delete" | relative_link -%}
|
||||
{%- assign theme_del_link = "admin/theme/" | append: theme.id | append: "/delete" | relative_link -%}
|
||||
<a href="{{ theme_del_link }}" hx-post="{{ theme_del_link }}" class="text-danger"
|
||||
hx-confirm="Are you sure you want to delete the theme “{{ theme.name }}”? This action cannot be undone.">
|
||||
Delete
|
||||
|
||||
@@ -1,16 +0,0 @@
|
||||
<h2 class="my-3">{{ page_title }}</h2>
|
||||
<article>
|
||||
<a href="{{ "admin/theme/upload" | relative_link }}" class="btn btn-primary btn-sm mb-3"
|
||||
hx-target="#theme_new">
|
||||
Upload a New Theme
|
||||
</a>
|
||||
<div class="container">
|
||||
{% include_template "_theme-list-columns" %}
|
||||
<div class="row mwl-table-heading">
|
||||
<div class="{{ theme_col }}">Theme</div>
|
||||
<div class="{{ slug_col }} d-none d-md-inline-block">Slug</div>
|
||||
<div class="{{ tmpl_col }} d-none d-md-inline-block">Templates</div>
|
||||
</div>
|
||||
</div>
|
||||
{{ theme_list }}
|
||||
</article>
|
||||
@@ -1,26 +1,30 @@
|
||||
<h2>{{ page_title }}</h2>
|
||||
<article>
|
||||
<form action="{{ "admin/theme/new" | relative_link }}"
|
||||
method="post" class="container" enctype="multipart/form-data" hx-boost="false">
|
||||
<div class="col">
|
||||
<h5>{{ page_title }}</h5>
|
||||
<form action="{{ "admin/theme/new" | relative_link }}" method="post" class="container" enctype="multipart/form-data"
|
||||
hx-boost="false">
|
||||
<input type="hidden" name="{{ csrf.form_field_name }}" value="{{ csrf.request_token }}">
|
||||
<div class="row">
|
||||
<div class="col-12 col-sm-6 offset-sm-3 pb-3">
|
||||
<div class="col-12 col-sm-6 pb-3">
|
||||
<div class="form-floating">
|
||||
<input type="file" id="file" name="file" class="form-control" accept=".zip" placeholder="Theme File" required>
|
||||
<label for="file">Theme File</label>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-12 col-sm-6 pb-3">
|
||||
<div class="col-12 col-sm-6 pb-3 d-flex justify-content-center align-items-center">
|
||||
<div class="form-check form-switch pb-2">
|
||||
<input type="checkbox" name="DoOverwrite" id="doOverwrite" class="form-check-input" value="true">
|
||||
<label for="doOverwrite" class="form-check-label">Overwrite an Existing Theme If Required</label>
|
||||
<label for="doOverwrite" class="form-check-label">Overwrite</label>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row pb-3">
|
||||
<div class="col text-center">
|
||||
<button type="submit" class="btn btn-primary">Upload Theme</button>
|
||||
<button type="submit" class="btn btn-sm btn-primary">Upload Theme</button>
|
||||
<button type="button" class="btn btn-sm btn-secondary ms-3"
|
||||
onclick="document.getElementById('theme_new').innerHTML = ''">
|
||||
Cancel
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
</article>
|
||||
</div>
|
||||
|
||||
Reference in New Issue
Block a user