1
0
mirror of https://github.com/flextype/flextype.git synced 2025-08-13 16:44:36 +02:00

Flextype Box Plugin: Admin #125 #117

- Entries Controller/Views implementation
This commit is contained in:
Awilum
2019-05-13 12:13:36 +03:00
parent 68e1de04ed
commit c607da774f
2 changed files with 93 additions and 0 deletions

View File

@@ -0,0 +1,33 @@
{% extends "plugins/admin/views/partials/base.html" %}
{% block content %}
<form method="post" id="form">
<input type="hidden" name="{{csrf.keys.name}}" value="{{csrf.name}}">
<input type="hidden" name="{{csrf.keys.value}}" value="{{csrf.value}}">
<input type="hidden" id="action" name="action" value="save-form">
<input type="hidden" id="parent_entry" name="parent_entry" value="{{ entry }}">
<div class="row">
<div class="col-md-6">
<div class="form-group">
<label for="title">{{ tr('admin_title') }}</label>
<input type="text" id="entriesTitle" name="title" value="" class="form-control" required="required" data-validation="length required" data-validation-length="min1" data-validation-error-msg="{{ tr('admin_error_title_empty_input') }}">
</div>
<div class="form-group">
<label for="slug">{{ tr('admin_name') }}</label>
<input type="text" id="entriesSlug" name="slug" value="" class="form-control" required="required" data-validation="length required" data-validation-length="min1" data-validation-error-msg="{{ tr('admin_error_name_empty_input') }}">
</div>
<div class="form-group">
<label>{{ tr('admin_type') }}</label>
<select class="form-control" name="fieldset">
{% for key, fieldset in fieldsets %}
<option value="{{ key }}">{{ fieldset }}</option>
{% endfor %}
</select>
</div>
<div class="form-group">
<input type="submit" id="createEntry" name="create_entry" value="{{ tr('admin_create') }}" class="btn btn-black">
</div>
</div>
</div>
</form>
{% endblock %}

View File

@@ -0,0 +1,60 @@
{% extends "plugins/admin/views/partials/base.html" %}
{% block content %}
{% if entries_list|length > 0 %}
<table class="table no-margin">
<thead>
<tr>
<th>{{ tr('admin_entry') }}</th>
<th></th>
</tr>
</thead>
<tbody>
{% for entry in entries_list %}
<tr>
<td>
{% set entries = entries_fetch_all(entry.slug, 'slug', 'ASC') %}
<a href="{% if entries|length > 0 %}{{ base_url() }}/admin/entries?entry={{ entry.slug }}{% else %}{{ base_url() }}/admin/entries/edit?entry={{ entry.slug }}{% endif %}">
{% if entry.fieldset %}
{% set fieldset_path = PATH_THEMES ~ '/' ~ registry.settings.theme ~ '/fieldsets/' ~ entry.fieldset ~ '.json' %}
{% if filesystem_has(fieldset_path) %}
{% set fieldset = json_parser_decode(filesystem_read(fieldset_path)) %}
{% if fieldset.default_field %}
{{ entry[fieldset.default_field] }}
{% else %}
{{ entry.slug }}
{% endif %}
{% else %}
{{ entry.slug }}
{% endif %}
{% else %}
{{ entry.slug }}
{% endif %}
{% if entries|length > 0 %}
({{ entries|length }})
{% endif %}
</a>
</td>
<td class="text-right">
<div class="btn-group">
<a class="btn btn-default" href="{{ path_for('admin.entries.edit') }}/?entry={{ entry.slug }}">{{ tr('admin_edit') }}</a>
<button type="button" class="btn btn-default dropdown-toggle dropdown-toggle-split" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
<span class="sr-only">Toggle Dropdown</span>
</button>
<div class="dropdown-menu">
<a class="dropdown-item" href="{{ path_for('admin.entries.add') }}/?entry={{ entry.slug }} <?= Http::getBaseUrl() ?>/admin/entries/add?entry=<?= $entry['slug'] ?>"><?= __('admin_add') ?></a>
<a class="dropdown-item" href="{{ path_for('admin.entries.duplicate') }}/?entry={{ entry.slug }} <?= Http::getBaseUrl() ?>/admin/entries/duplicate?entry=<?= $entry['slug'] ?>&token=<?= Token::generate() ?>"><?= __('admin_duplicate') ?></a>
<a class="dropdown-item" href="{{ path_for('admin.entries.rename') }}/?entry={{ entry.slug }} <?= Http::getBaseUrl() ?>/admin/entries/rename?entry=<?= $entry['slug'] ?>"><?= __('admin_rename') ?></a>
<a class="dropdown-item" href="{{ path_for('admin.entries.move') }}/?entry={{ entry.slug }} <?= Http::getBaseUrl() ?>/admin/entries/move?entry=<?= $entry['slug'] ?>"><?= __('admin_move') ?></a>
<a class="dropdown-item" href="{{ base_url() }}/{{ entry.slug }}" target="_blank"><?= __('admin_preview') ?></a>
<a class="dropdown-item" href="{{ path_for('admin.entries.type') }}/?entry={{ entry.slug }} <?= Http::getBaseUrl() ?>/admin/entries/type?entry=<?= $entry['slug'] ?>"><?= __('admin_type') ?></a>
</div>
</div>
<a class="btn btn-default" href="<?= Http::getBaseUrl() ?>/admin/entries/delete?entry=<?= $entry['slug'] ?>&entry_current=<?= Http::get('entry') ?>&token=<?= Token::generate() ?>"><?= __('admin_delete') ?></a>
</td>
</tr>
{% endfor %}
</tbody>
</table>
{% endif %}
{% endblock %}