XBackBone/resources/templates/dashboard/list.twig
2019-11-14 12:31:18 +01:00

87 lines
6.6 KiB
Twig

{% extends 'base.twig' %}
{% block title %}{{ lang('home') }}{% endblock %}
{% block content %}
{% include 'comp/navbar.twig' %}
<div class="container">
{% include 'comp/alert.twig' %}
<div class="card shadow-sm">
<div class="card-body">
{% include 'dashboard/pager_header.twig' with {'path': 'home'} %}
{% if medias|length > 0 %}
<div class="row">
<div class="col-md-12">
<div class="table-responsive">
<table class="table table-hover">
<thead>
<tr>
<th>{{ lang('preview') }}</th>
<th>{{ lang('filename') }}</th>
<th>{{ lang('size') }}</th>
<th>{{ lang('public') }}</th>
<th>{{ lang('owner') }}</th>
<th>{{ lang('date') }}</th>
<th></th>
</tr>
</thead>
<tbody>
{% for media in medias %}
<tr id="media_{{ media.id }}">
<td class="text-center">
{% if isDisplayableImage(media.mimetype) %}
{% if media.username is not null %}
<img src="{{ urlFor('/' ~ media.user_code ~ '/' ~ media.code ~ '.' ~ media.extension ~ '/raw?width=84&height=42') }}" class="img-fluid rounded">
{% else %}
<img src="{{ route('upload.raw', {'id': media.id}) }}" class="img-fluid rounded">
{% endif %}
{% else %}
<i class="far {{ mime2font(media.mimetype) }} fa-2x"></i>
{% endif %}
</td>
<td>{{ media.filename }}</td>
<td>{{ media.size }}</td>
<td id="published_{{ media.id }}">
{% if media.published %}
<span class="badge badge-success"><i class="fas fa-check"></i></span>
{% else %}
<span class="badge badge-danger"><i class="fas fa-times"></i></span>
{% endif %}
</td>
<td>{{ media.username|default('<None>') }}</td>
<td>{{ media.timestamp|date("d/m/Y H:i:s") }}</td>
<td class="text-right">
<div class="btn-group">
{% if media.username is not null %}
<a href="{{ urlFor('/' ~ media.user_code ~ '/' ~ media.code ~ '.' ~ media.extension) }}" class="btn btn-sm btn-outline-secondary" data-toggle="tooltip" title="{{ lang('open') }}" target="_blank"><i class="fas fa-external-link-alt"></i></a>
<a href="{{ urlFor('/' ~ media.user_code ~ '/' ~ media.code ~ '.' ~ media.extension ~ '/download') }}" class="btn btn-sm btn-outline-primary" data-toggle="tooltip" title="{{ lang('download') }}"><i class="fas fa-cloud-download-alt"></i></a>
<a href="javascript:void(0)" class="btn btn-sm btn-outline-success btn-clipboard" data-toggle="tooltip" title="{{ lang('copy_link') }}" data-clipboard-text="{{ urlFor('/' ~ media.user_code ~ '/' ~ media.code ~ '.' ~ media.extension) }}"><i class="fas fa-link"></i></a>
{% else %}
<a href="{{ route('upload.raw', {'id': media.id}) }}" class="btn btn-sm btn-outline-dark" data-toggle="tooltip" title="{{ lang('raw') }}" target="_blank"><i class="fas fa-external-link-alt"></i></a>
{% endif %}
{% if media.published %}
<a href="javascript:void(0)" class="btn btn-sm btn-outline-warning publish-toggle" data-toggle="tooltip" title="{{ lang('hide') }}" data-id="{{ media.id }}" data-published="{{ media.published }}"><i class="fas fa-times-circle"></i></a>
{% else %}
<a href="javascript:void(0)" class="btn btn-sm btn-outline-info publish-toggle" data-toggle="tooltip" title="{{ lang('publish') }}" data-id="{{ media.id }}" data-published="{{ media.published }}"><i class="fas fa-check-circle"></i></a>
{% endif %}
<a href="javascript:void(0)" class="btn btn-sm btn-outline-danger media-delete" data-link="{{ route('upload.delete', {'id': media.id}) }}" data-id="{{ media.id }}" data-toggle="tooltip" title="{{ lang('delete') }}"><i class="fas fa-trash"></i></a>
</div>
</td>
</tr>
{% endfor %}
</tbody>
</table>
</div>
<div class="d-flex justify-content-center">
{% include 'comp/pager.twig' with {'path': 'home'} %}
</div>
</div>
</div>
{% else %}
<div class="text-center text-muted"><i>{{ lang('no_media') }}</i></div>
{% endif %}
</div>
</div>
</div>
{% endblock %}