deblan.io-murph/templates/blog/post_admin/index.html.twig

115 lines
4.8 KiB
Twig

{% extends '@Core/admin/layout.html.twig' %}
{% block title %}{{ 'Articles'|trans }} - {{ parent() }}{% endblock %}
{% block body %}
<div class="bg-light pl-5 pr-4 pt-5">
<div class="d-flex">
<div class="mr-auto w-50">
<h1 class="display-5">Articles</h1>
</div>
<div class="ml-auto">
<div class="btn-group">
<a href="{{ path('admin_blog_post_new') }}" class="btn btn-primary">
<span class="fa fa-plus pr-1"></span>
Nouveau
</a>
</div>
</div>
</div>
<div class="row pb-3">
<div class="col-auto ml-auto {% if pager.getPaginationData.pageCount > 1 %}mr-3{% endif %}">
<button data-modal="{{ path('admin_blog_post_filters') }}" class="btn btn-sm btn-secondary">
Filtrer {% if hasFilters %}(oui){% endif %}
</button>
</div>
<div class="col-auto">
{{ knp_pagination_render(pager) }}
</div>
</div>
</div>
<table class="table" data-table-fixed>
<thead class="thead-light">
<tr>
<th class="col-6">Titre</th>
<th class="col-2">Mise à jour</th>
<th class="col-1">Statut</th>
<th class="col-3 text-right">Actions</th>
</tr>
</thead>
<tbody>
{% for item in pager %}
{% set edit = path('admin_blog_post_edit', {entity: item.id}) %}
{% set show = path('admin_blog_post_show', {entity: item.id}) %}
<tr>
<td class="col-6">
{% if item.image %}
{% set image = asset(item.image.pathname) %}
{% else %}
{% set image = asset('build/images/no-image.png') %}
{% endif %}
<img src="{{ asset('build/images/blank.png') }}" style="background: url({{ image }}); background-size: cover" class="rounded float-left mr-2">
<a href="{{ show }}" class="font-weight-bold text-body d-block">
{{ item.title }}
</a>
{% set categories = [] %}
{% for category in item.categories %}
{% set url = path('admin_blog_category_show', {entity: category.id}) %}
{% set categories = categories|merge(['<a href="' ~ url ~ '">' ~ category.title ~ '</a>']) %}
{% endfor %}
Dans {{ categories|join(', ')|raw }}
</td>
<td class="col-2">
<span class="btn btn-sm btn-light">
<span class="fa fa-calendar-alt text-black-50 mr-1"></span>
{{ item.updatedAt|date('d/m/Y H:i') }}
</span>
</td>
<td class="col-1">
{% set map = {
0: ['warning', 'Brouillon'],
1: ['success', 'Publié'],
} %}
<button class="btn btn-sm btn-{{ map[item.status].0 }}">
{{ map[item.status].1 }}
</button>
</td>
<td class="col-3 text-right">
<a href="{{ edit }}" class="btn btn-sm btn-primary mr-1">
<span class="fa fa-edit"></span>
</a>
<button type="submit" form="form-delete-{{ item.id }}" class="btn btn-sm btn-danger">
<span class="fa fa-trash"></span>
</button>
<form method="post" action="{{ path('admin_blog_post_delete', {entity: item.id}) }}" id="form-delete-{{ item.id }}" data-form-confirm>
<input type="hidden" name="_method" value="DELETE">
<input type="hidden" name="_token" value="{{ csrf_token('delete' ~ item.id) }}">
</form>
</td>
</tr>
{% else %}
<tr>
<td class="col-12 text-center p-4 text-black-50">
<div class="display-1">
<span class="fa fa-search"></span>
</div>
<div class="display-5 mt-3">
Aucun résultat
</div>
</td>
</tr>
{% endfor %}
</tbody>
</table>
{% endblock %}