first commit
This commit is contained in:
146
templates/backend_admin/annonce/add_update.htm.twig
Normal file
146
templates/backend_admin/annonce/add_update.htm.twig
Normal file
@@ -0,0 +1,146 @@
|
||||
{% extends 'base_backend_admin.html.twig' %}
|
||||
|
||||
{% block title %} Annonce {% endblock %}
|
||||
|
||||
{% block content %}
|
||||
|
||||
|
||||
{% set titlePage = 'Ajouter' %}
|
||||
{% if app.request.attributes.get('_route') == 'backend_societe_update' %}
|
||||
{% set titlePage = 'Modifier' %}
|
||||
{% endif %}
|
||||
|
||||
|
||||
<!-- Page Heading -->
|
||||
<div class="d-sm-flex align-items-center justify-content-between mb-4">
|
||||
<h1 class="h3 mb-0 text-gray-800">Annonces</h1>
|
||||
<ol class="breadcrumb float-sm-right">
|
||||
<li class="breadcrumb-item">Annonce</li>
|
||||
<li class="breadcrumb-item">{{ titlePage }}</li>
|
||||
</ol>
|
||||
</div>
|
||||
|
||||
|
||||
<!-- Begin Page Content -->
|
||||
<div class="container-fluid">
|
||||
|
||||
{% include 'backend_admin/basic/notice.html.twig' %}
|
||||
|
||||
<!-- DataTales Example -->
|
||||
<div class="card shadow mb-4">
|
||||
|
||||
<div class="card-header py-3">
|
||||
<h6 class="m-0 font-weight-bold text-primary">{{ titlePage }} une nouvelle Annonce</h6>
|
||||
</div>
|
||||
<div class="card-body">
|
||||
|
||||
{{ form_start(form) }}
|
||||
<div class="row g-3">
|
||||
|
||||
{{ form_errors(form) }}
|
||||
{{ form_row(form._token) }}
|
||||
|
||||
<div class="col-8 my-3">
|
||||
{{ form_label(form.titre, 'Titre *', {'attr': {'class': 'form-label'}}) }}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text"><i class="fa-solid fa-book"></i></span>
|
||||
{{ form_widget(form.titre, {'attr': {'class': 'form-control'}}) }}
|
||||
<div class="invalid-feedback">
|
||||
{{ form_errors(form.titre) }}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-4 my-3">
|
||||
{{ form_label(form.categorie, 'Catégorie', {'attr': {'class': 'form-label'}}) }}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text"><i class="fa-solid fa-bars"></i></span>
|
||||
{{ form_widget(form.categorie, {'attr': {'class': 'form-control'}}) }}
|
||||
<div class="invalid-feedback">
|
||||
{{ form_errors(form.categorie) }}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="col-6 my-3">
|
||||
{{ form_label(form.prix_promo, 'Prix promo *', {'attr': {'class': 'form-label'}}) }}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text"><i class="fa-solid fa-money-bill-wave"></i></span>
|
||||
{{ form_widget(form.prix_promo, {'attr': {'class': 'form-control'}}) }}
|
||||
<div class="invalid-feedback">
|
||||
{{ form_errors(form.prix_promo) }}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-6">
|
||||
{{ form_label(form.pourcentage_reduction, 'Pourcentage reduction', {'attr': {'class': 'form-label'}}) }}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text"><i class="fa-solid fa-percent"></i></span>
|
||||
{{ form_widget(form.pourcentage_reduction, {'attr': {'class': 'form-control'}}) }}
|
||||
<div class="invalid-feedback">
|
||||
{{ form_errors(form.pourcentage_reduction) }}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="col-8">
|
||||
{{ form_label(form.societe, 'Société', {'attr': {'class': 'form-label'}}) }}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text"><i class="fa-solid fa-building"></i></span>
|
||||
{{ form_widget(form.societe, {'attr': {'class': 'form-control select-filter select2bs4 select-filter-speaker'}}) }}
|
||||
<div class="invalid-feedback">
|
||||
{{ form_errors(form.societe) }}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-6">
|
||||
{{ form_label(form.prix_marche, 'Prix du marché', {'attr': {'class': 'form-label'}}) }}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text"><i class="fa-solid fa-money-bill-1"></i></span>
|
||||
{{ form_widget(form.prix_marche, {'attr': {'class': 'form-control'}}) }}
|
||||
<div class="invalid-feedback">
|
||||
{{ form_errors(form.prix_marche) }}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="col-12 my-3">
|
||||
<div class="col-4" >
|
||||
{{ form_label(form.largeur, 'Largeur Annonce', {'attr': {'class': 'form-label'}}) }}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text"><i class="fa-solid fa-left-right"></i></span>
|
||||
{{ form_widget(form.largeur, {'attr': {'class': 'form-control'}}) }}
|
||||
<div class="invalid-feedback">
|
||||
{{ form_errors(form.largeur) }}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="col-12 my-3">
|
||||
{{ form_label(form.description, 'Déscription *', {'attr': {'class': 'form-label'}}) }}
|
||||
{{ form_widget(form.description, {'attr': {'class': 'form-control'}}) }}
|
||||
<div class="invalid-feedback">{{ form_errors(form.description) }}</div>
|
||||
</div>
|
||||
|
||||
<hr class="my-4">
|
||||
{{ form_widget(form.save, {'label': "Enregister", 'attr': {'class': 'w-90 btn btn-primary btn-lg'}}) }}
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
{{ form_end(form) }}
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
{% endblock %}
|
||||
113
templates/backend_admin/annonce/index.html.twig
Normal file
113
templates/backend_admin/annonce/index.html.twig
Normal file
@@ -0,0 +1,113 @@
|
||||
{% extends 'base_backend_admin.html.twig' %}
|
||||
|
||||
{% block title %} Annonce {% endblock %}
|
||||
|
||||
{% block content %}
|
||||
<!-- Page Heading -->
|
||||
<div class="d-sm-flex align-items-center justify-content-between mb-4">
|
||||
<h1 class="h3 mb-0 text-gray-800">Annonce</h1>
|
||||
<ol class="breadcrumb float-sm-right">
|
||||
<li class="breadcrumb-item">Annonce</li>
|
||||
</ol>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
<!-- Begin Page Content -->
|
||||
<div class="container-fluid">
|
||||
|
||||
{% include 'backend_admin/basic/notice.html.twig' %}
|
||||
|
||||
<a href="{{ path('backend_admin_annonce_add') }}" class="btn btn-success btn-icon-split mb-4">
|
||||
<span class="icon text-white"><i class="fa-regular fa-square-plus"></i></span>
|
||||
<span class="text text-white">Ajouter une nouvelle annonce</span>
|
||||
</a>
|
||||
|
||||
|
||||
<!-- DataTales Example -->
|
||||
<div class="card shadow mb-4">
|
||||
|
||||
<div class="card-header py-3">
|
||||
<h6 class="m-0 font-weight-bold text-success">Liste des annonces</h6>
|
||||
</div>
|
||||
<div class="card-body">
|
||||
<div class="table-responsive">
|
||||
<table class="table table-bordered" id="dataTableAnnonce" width="100%" cellspacing="0">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>#</th>
|
||||
<th>Titre</th>
|
||||
<th>Prix Promo</th>
|
||||
<th>Réduction</th>
|
||||
<th>Dimension</th>
|
||||
<th>Société</th>
|
||||
<th>Activer</th>
|
||||
<th>Complet</th>
|
||||
<th>Modifier</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tfoot>
|
||||
<tr>
|
||||
<th>#</th>
|
||||
<th>Titre</th>
|
||||
<th>Prix Promo</th>
|
||||
<th>Réduction</th>
|
||||
<th>Dimension</th>
|
||||
<th>Société</th>
|
||||
<th>Activer</th>
|
||||
<th>Complet</th>
|
||||
<th>Modifier</th>
|
||||
</tr>
|
||||
</tfoot>
|
||||
<tbody>
|
||||
{% for annonce in annonces %}
|
||||
<tr>
|
||||
<td>{{ annonce.getId() }}</td>
|
||||
<td>{{ annonce.getTitre() }}</td>
|
||||
<td>{{ annonce.getPrixPromo() }}</td>
|
||||
<td>{{ annonce.getPourcentageReduction() }}%</td>
|
||||
<td>{{ annonce.Dimension() }}</td>
|
||||
<td>{{ annonce.getSociete().getNom() }}</td>
|
||||
<td>{% if annonce.isActive() and annonce.isComplet() %}
|
||||
<i class="fa-solid fa-circle-check fa-xl" style="color: #26a269;"></i>
|
||||
{% else %}
|
||||
<i class="fa-solid fa-circle-xmark fa-xl" style="color: #e01b24;"></i>
|
||||
{% endif %}
|
||||
</td>
|
||||
<td>
|
||||
{% if annonce.isComplet() %}
|
||||
<i class="fa-solid fa-thumbs-up fa-xl" style="color: #1a5fb4;"></i>
|
||||
{% else %}
|
||||
<i class="fa-solid fa-thumbs-down fa-xl" style="color: #c01c28;"></i>
|
||||
{% endif %}
|
||||
|
||||
|
||||
</td>
|
||||
<td>
|
||||
<a href="{{ path('backend_admin_annonce_update',{id:annonce.id}) }}" title="modifier" class="btn btn-info btn-action"><i class="fa fa-edit"></i></a>
|
||||
<a href="{{ path('backend_admin_annonce_uploder',{id:annonce.id}) }}" title="gestion des images" class="btn btn-warning"><i class="fa-regular fa-image"></i></a>
|
||||
|
||||
{% if annonce.isComplet() and not annonce.isActive() %}
|
||||
<a href="{{ path('backend_admin_annonce_delete',{id:annonce.id, delete: true}) }}" title="activer l'annonce" class="btn btn-success"><i class="fa-solid fa-circle-check"></i></a>
|
||||
{% elseif annonce.isComplet() and annonce.isActive() %}
|
||||
<a href="{{ path('backend_admin_annonce_delete',{id:annonce.id, delete: false}) }}" title="déactiver l'annonce" class="btn btn-danger"><i class="fa-solid fa-circle-xmark"></i></a>
|
||||
{% endif %}
|
||||
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
{% endfor %}
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
{% endblock %}
|
||||
|
||||
|
||||
{% block javascripts %}
|
||||
{{ parent() }}
|
||||
{{ encore_entry_script_tags('app_backend_annonce') }}
|
||||
{% endblock %}
|
||||
306
templates/backend_admin/annonce/uploder.htm.twig
Normal file
306
templates/backend_admin/annonce/uploder.htm.twig
Normal file
@@ -0,0 +1,306 @@
|
||||
{% extends 'base_backend_admin.html.twig' %}
|
||||
|
||||
{% block title %} Annonce {% endblock %}
|
||||
|
||||
|
||||
{% block stylesheets %}
|
||||
{{ parent() }}
|
||||
{{ encore_entry_link_tags('app_backend_annonce') }}
|
||||
{% endblock %}
|
||||
|
||||
{% block content %}
|
||||
<!-- Page Heading -->
|
||||
<div class="d-sm-flex align-items-center justify-content-between mb-4">
|
||||
<h1 class="h3 mb-0 text-gray-800">Anonnce Images</h1>
|
||||
<ol class="breadcrumb float-sm-right">
|
||||
<li class="breadcrumb-item active">Anonnce</li>
|
||||
<li class="breadcrumb-item active">Images</li>
|
||||
</ol>
|
||||
</div>
|
||||
|
||||
<div class="row">
|
||||
|
||||
{% include 'backend_admin/basic/notice.html.twig' %}
|
||||
|
||||
<div class="card shadow mb-4" >
|
||||
<!-- Card Header - Dropdown -->
|
||||
<div class="card-header py-3 d-flex flex-row align-items-center justify-content-between">
|
||||
<h6 class="m-0 font-weight-bold text-primary">Chargement des images d'annonce pour la page d'accueil et de recherche</h6>
|
||||
</div>
|
||||
<!-- Card Body -->
|
||||
<div class="card-body">
|
||||
<table class="table" border="1" align="center">
|
||||
<tbody>
|
||||
<tr>
|
||||
<td width="15%">
|
||||
<div class="holder">
|
||||
{% if annonce.getImageHome() %}
|
||||
<img id="img-preview-home" class="img-thumbnail" src="{{ asset('uploads/images/annonces/' ~ annonce.getImageHome()) }}" alt="pic"/>
|
||||
{% else %}
|
||||
<img id="img-preview-home" class="img-thumbnail" src="{{ asset('images/backend/img/h.png') }}" alt="pic"/>
|
||||
{% endif %}
|
||||
</div>
|
||||
</td>
|
||||
<td width="75%">
|
||||
<div class="progress" >
|
||||
<div class="progress-bar" id="progress-bar-accueil" role="progressbar" style="width: 0%" aria-valuenow="60" aria-valuemin="0" aria-valuemax="100">0%</div>
|
||||
</div>
|
||||
<fieldset class="upload_dropZone text-center mb-3 p-4">
|
||||
<p>
|
||||
Image pour la page <b>d'accueil</b>
|
||||
</p>
|
||||
<p class="small my-3">
|
||||
Largeur d'image doit d'être <b>{{ annonce.getDimensionWidth() }}px</b> | Hauteur d'image doit d'être <b>240px</b><br>
|
||||
</p>
|
||||
<input id="upload_image_accueil" class="position-absolute invisible" type="file" accept="image/jpeg, image/png, image/gif, image/jpg" multiple="false"/>
|
||||
<label class="btn btn-upload mb-3" for="upload_image_accueil">
|
||||
<i class="fa-regular fa-image"></i> choisir l'image
|
||||
</label>
|
||||
</fieldset>
|
||||
</td>
|
||||
<td width="10%">
|
||||
<br>
|
||||
<button type="button" class="btn btn-primary" id="submit-image-accueil">
|
||||
<i class="fa-solid fa-cloud-arrow-up fa-lg"></i> Importer
|
||||
</button>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td width="15%">
|
||||
<div class="holder">
|
||||
{% if annonce.getImageSearch() %}
|
||||
<img id="img-preview-search" class="img-thumbnail" src="{{ asset('uploads/images/annonces/' ~ annonce.getImageSearch()) }}" alt="pic"/>
|
||||
{% else %}
|
||||
<img id="img-preview-search" class="img-thumbnail" src="{{ asset('images/backend/img/h.png') }}" alt="pic"/>
|
||||
{% endif %}
|
||||
</div>
|
||||
</td>
|
||||
<td width="75%">
|
||||
<div class="progress" >
|
||||
<div class="progress-bar" id="progress-bar-search" role="progressbar" style="width: 0%" aria-valuenow="60" aria-valuemin="0" aria-valuemax="100">0%</div>
|
||||
</div>
|
||||
<fieldset class="upload_dropZone text-center mb-3 p-4">
|
||||
<p>
|
||||
Image pour la page <b>de recherche</b>
|
||||
</p>
|
||||
<p class="small my-3">
|
||||
Largeur d'image doit d'être <b>438px</b> | Hauteur d'image doit d'être <b>240px</b><br>
|
||||
</p>
|
||||
<input id="upload_image_search" class="position-absolute invisible" type="file" accept="image/jpeg, image/png, image/gif, image/jpg" />
|
||||
<label class="btn btn-upload mb-3" for="upload_image_search">
|
||||
<i class="fa-regular fa-image"></i> choisir l'image
|
||||
</label>
|
||||
</fieldset>
|
||||
</td>
|
||||
<td width="10%">
|
||||
<br>
|
||||
<button type="button" class="btn btn-primary" id="submit-image-search">
|
||||
<i class="fa-solid fa-cloud-arrow-up fa-lg"></i> Importer
|
||||
</button>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="card shadow mb-4" >
|
||||
<!-- Card Header - Dropdown -->
|
||||
<div class="card-header py-3 d-flex flex-row align-items-center justify-content-between">
|
||||
<h6 class="m-0 font-weight-bold text-primary">Chargement des images d'annonce pour la page détail</h6>
|
||||
</div>
|
||||
<!-- Card Body -->
|
||||
<div class="card-body">
|
||||
<table class="table" border="1" align="center">
|
||||
<tbody>
|
||||
<tr>
|
||||
<td width="15%">
|
||||
<div class="holder">
|
||||
{% if annonce.getImageDetail1() %}
|
||||
<img id="img-preview-detail1" class="img-thumbnail" src="{{ asset('uploads/images/annonces/' ~ annonce.getImageDetail1()) }}" alt="pic"/>
|
||||
{% else %}
|
||||
<img id="img-preview-detail1" class="img-thumbnail" src="{{ asset('images/backend/img/h.png') }}" alt="pic"/>
|
||||
{% endif %}
|
||||
</div>
|
||||
</td>
|
||||
<td width="75%">
|
||||
<div class="progress" >
|
||||
<div class="progress-bar" id="progress-bar-detail1" role="progressbar" style="width: 0%" aria-valuenow="60" aria-valuemin="0" aria-valuemax="100">0%</div>
|
||||
</div>
|
||||
<fieldset class="upload_dropZone text-center mb-3 p-4">
|
||||
<p>
|
||||
Image 1 pour la page <b>détail</b>
|
||||
</p>
|
||||
<p class="small my-3">
|
||||
Taille maximum de l'image 2Mo<br>
|
||||
</p>
|
||||
<input id="upload_image_detail1" class="position-absolute invisible" type="file" accept="image/jpeg, image/png, image/gif, image/jpg" />
|
||||
<label class="btn btn-upload mb-3" for="upload_image_detail1">
|
||||
<i class="fa-regular fa-image"></i> choisir l'image
|
||||
</label>
|
||||
</fieldset>
|
||||
</td>
|
||||
<td width="10%">
|
||||
<br>
|
||||
<button type="button" class="btn btn-primary" id="submit-image-detail1">
|
||||
<i class="fa-solid fa-cloud-arrow-up fa-lg"></i> Importer
|
||||
</button>
|
||||
{#<button type="button" class="btn btn-warning"><i class="fa-solid fa-pen-to-square"></i> Editer </button><button type="button" class="btn btn-success"><i class="fa-solid fa-magnifying-glass"></i> Afficher</button><button type="button" class="btn btn-danger"><i class="fa-solid fa-trash"></i> Supprimer/button>#}
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td width="15%">
|
||||
<div class="holder">
|
||||
{% if annonce.getImageDetail2() %}
|
||||
<img id="img-preview-detail2" class="img-thumbnail" src="{{ asset('uploads/images/annonces/' ~ annonce.getImageDetail2()) }}" alt="pic"/>
|
||||
{% else %}
|
||||
<img id="img-preview-detail2" class="img-thumbnail" src="{{ asset('images/backend/img/h.png') }}" alt="pic"/>
|
||||
{% endif %}
|
||||
</div>
|
||||
</td>
|
||||
<td width="75%">
|
||||
<div class="progress" >
|
||||
<div class="progress-bar" id="progress-bar-detail2" role="progressbar" style="width: 0%" aria-valuenow="60" aria-valuemin="0" aria-valuemax="100">0%</div>
|
||||
</div>
|
||||
<fieldset class="upload_dropZone text-center mb-3 p-4">
|
||||
<p>
|
||||
Image 2 pour la page <b>détail</b>
|
||||
</p>
|
||||
<p class="small my-3">
|
||||
Taille maximum de l'image 2Mo<br>
|
||||
</p>
|
||||
<input id="upload_image_detail2" class="position-absolute invisible" type="file" accept="image/jpeg, image/png, image/gif, image/jpg" />
|
||||
<label class="btn btn-upload mb-3" for="upload_image_detail2">
|
||||
<i class="fa-regular fa-image"></i> choisir l'image
|
||||
</label>
|
||||
</fieldset>
|
||||
</td>
|
||||
<td width="10%">
|
||||
<br>
|
||||
<button type="button" class="btn btn-primary" id="submit-image-detail2">
|
||||
<i class="fa-solid fa-cloud-arrow-up fa-lg"></i> Importer
|
||||
</button>
|
||||
{#<button type="button" class="btn btn-warning"><i class="fa-solid fa-pen-to-square"></i> Editer </button><button type="button" class="btn btn-success"><i class="fa-solid fa-magnifying-glass"></i> Afficher</button><button type="button" class="btn btn-danger"><i class="fa-solid fa-trash"></i> Supprimer/button>#}
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td width="15%">
|
||||
<div class="holder">
|
||||
{% if annonce.getImageDetail3() %}
|
||||
<img id="img-preview-detail3" class="img-thumbnail" src="{{ asset('uploads/images/annonces/' ~ annonce.getImageDetail3()) }}" alt="pic"/>
|
||||
{% else %}
|
||||
<img id="img-preview-detail3" class="img-thumbnail" src="{{ asset('images/backend/img/h.png') }}" alt="pic"/>
|
||||
{% endif %}
|
||||
</div>
|
||||
</td>
|
||||
<td width="75%">
|
||||
<div class="progress" >
|
||||
<div class="progress-bar" id="progress-bar-detail3" role="progressbar" style="width: 0%" aria-valuenow="60" aria-valuemin="0" aria-valuemax="100">0%</div>
|
||||
</div>
|
||||
<fieldset class="upload_dropZone text-center mb-3 p-4">
|
||||
<p>
|
||||
Image 3 pour la page <b>détail</b>
|
||||
</p>
|
||||
<p class="small my-3">
|
||||
Taille maximum de l'image 2Mo<br>
|
||||
</p>
|
||||
<input id="upload_image_detail3" class="position-absolute invisible" type="file" accept="image/jpeg, image/png, image/gif, image/jpg" />
|
||||
<label class="btn btn-upload mb-3" for="upload_image_detail3">
|
||||
<i class="fa-regular fa-image"></i> choisir l'image
|
||||
</label>
|
||||
</fieldset>
|
||||
</td>
|
||||
<td width="10%">
|
||||
<br>
|
||||
<button type="button" class="btn btn-primary" id="submit-image-detail3">
|
||||
<i class="fa-solid fa-cloud-arrow-up fa-lg"></i> Importer
|
||||
</button>
|
||||
{#<button type="button" class="btn btn-warning"><i class="fa-solid fa-pen-to-square"></i> Editer </button><button type="button" class="btn btn-success"><i class="fa-solid fa-magnifying-glass"></i> Afficher</button><button type="button" class="btn btn-danger"><i class="fa-solid fa-trash"></i> Supprimer/button>#}
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td width="15%">
|
||||
<div class="holder">
|
||||
{% if annonce.getImageDetail4() %}
|
||||
<img id="img-preview-detail4" class="img-thumbnail" src="{{ asset('uploads/images/annonces/' ~ annonce.getImageDetail4()) }}" alt="pic"/>
|
||||
{% else %}
|
||||
<img id="img-preview-detail4" class="img-thumbnail" src="{{ asset('images/backend/img/h.png') }}" alt="pic"/>
|
||||
{% endif %}
|
||||
</div>
|
||||
</td>
|
||||
<td width="75%">
|
||||
<div class="progress" >
|
||||
<div class="progress-bar" id="progress-bar-detail4" role="progressbar" style="width: 0%" aria-valuenow="60" aria-valuemin="0" aria-valuemax="100">0%</div>
|
||||
</div>
|
||||
<fieldset class="upload_dropZone text-center mb-3 p-4">
|
||||
<p>
|
||||
Image 4 pour la page <b>détail</b>
|
||||
</p>
|
||||
<p class="small my-3">
|
||||
Taille maximum de l'image 2Mo<br>
|
||||
</p>
|
||||
<input id="upload_image_detail4" class="position-absolute invisible" type="file" accept="image/jpeg, image/png, image/gif, image/jpg" />
|
||||
<label class="btn btn-upload mb-3" for="upload_image_detail4">
|
||||
<i class="fa-regular fa-image"></i> choisir l'image
|
||||
</label>
|
||||
</fieldset>
|
||||
</td>
|
||||
<td width="10%">
|
||||
<br>
|
||||
<button type="button" class="btn btn-primary" id="submit-image-detail4">
|
||||
<i class="fa-solid fa-cloud-arrow-up fa-lg"></i> Importer
|
||||
</button>
|
||||
{#<button type="button" class="btn btn-warning"><i class="fa-solid fa-pen-to-square"></i> Editer </button><button type="button" class="btn btn-success"><i class="fa-solid fa-magnifying-glass"></i> Afficher</button><button type="button" class="btn btn-danger"><i class="fa-solid fa-trash"></i> Supprimer/button>#}
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<!-- Modal -->
|
||||
<div class="modal fade" id="cropperModal" tabindex="-1" aria-labelledby="exampleModalLabel" aria-hidden="true">
|
||||
<div class="modal-dialog">
|
||||
<div class="modal-content">
|
||||
<div class="modal-header">
|
||||
<h5 class="modal-title" id="exampleModalLabel">Modal title</h5>
|
||||
<button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button>
|
||||
</div>
|
||||
<div class="modal-body">
|
||||
<img id="imgPreviewCropper" src="" data-type-img=""/>
|
||||
</div>
|
||||
<div class="modal-footer">
|
||||
<button id="resize-image" type="button" class="btn btn-primary">Redimensionner</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
{% endblock %}
|
||||
|
||||
{% block javascripts %}
|
||||
<script>
|
||||
|
||||
var pathUplodImageAdd = "{{ path('backend_admin_annonce_uploder_add', {id: annonce.id }) }}";
|
||||
var pathUplodImageDelete = "{{ path('backend_admin_annonce_uploder_delete') }}";
|
||||
|
||||
var heightImgAccueil = 240;
|
||||
var widthImgAccueil = {{ annonce.getDimensionWidth() }};
|
||||
var largeurAnnonce = {{ annonce.getLargeur() }};
|
||||
|
||||
</script>
|
||||
|
||||
{{ parent() }}
|
||||
{{ encore_entry_script_tags('app_backend_annonce') }}
|
||||
{% endblock %}
|
||||
180
templates/backend_admin/article/add.html.twig
Normal file
180
templates/backend_admin/article/add.html.twig
Normal file
@@ -0,0 +1,180 @@
|
||||
{% extends 'base_backend_admin.html.twig' %}
|
||||
|
||||
{% block title %} Article {% endblock %}
|
||||
|
||||
{% block content %}
|
||||
<!-- Page Heading -->
|
||||
<div class="d-sm-flex align-items-center justify-content-between mb-4">
|
||||
<h1 class="h3 mb-0 text-gray-800">Article</h1>
|
||||
<ol class="breadcrumb float-sm-right">
|
||||
<li class="breadcrumb-item">Article</li>
|
||||
<li class="breadcrumb-item">Ajouter</li>
|
||||
</ol>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
<!-- Begin Page Content -->
|
||||
<div class="container-fluid">
|
||||
|
||||
{% include 'backend_admin/basic/notice.html.twig' %}
|
||||
|
||||
<!-- DataTales Example -->
|
||||
<div class="card shadow mb-4">
|
||||
|
||||
<div class="card-header py-3">
|
||||
<h6 class="m-0 font-weight-bold text-info">Ajouter un article</h6>
|
||||
</div>
|
||||
<div class="card-body">
|
||||
|
||||
{{ form_start(form) }}
|
||||
<div class="row g-3">
|
||||
|
||||
{{ form_errors(form) }}
|
||||
{{ form_row(form._token) }}
|
||||
|
||||
<div class="col-8 my-3">
|
||||
{{ form_label(form.titre, 'Titre *', {'attr': {'class': 'form-label'}}) }}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text"><i class="fa-solid fa-book"></i></span>
|
||||
{{ form_widget(form.titre, {'attr': {'class': 'form-control'}}) }}
|
||||
<div class="invalid-feedback">
|
||||
{{ form_errors(form.titre) }}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-4 my-3">
|
||||
{{ form_label(form.categorie, 'Catégorie', {'attr': {'class': 'form-label'}}) }}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text"><i class="fa-solid fa-bars"></i></span>
|
||||
{{ form_widget(form.categorie, {'attr': {'class': 'form-control'}}) }}
|
||||
<div class="invalid-feedback">
|
||||
{{ form_errors(form.categorie) }}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="col-6 my-3">
|
||||
{{ form_label(form.adress, 'Adresse', {'attr': {'class': 'form-label'}}) }}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text"><i class="fa-solid fa-percent"></i></span>
|
||||
{{ form_widget(form.adress, {'attr': {'class': 'form-control'}}) }}
|
||||
<div class="invalid-feedback">
|
||||
{{ form_errors(form.adress) }}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-5 offset-1">
|
||||
{{ form_label(form.marque, 'Marque', {'attr': {'class': 'form-label'}}) }}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text"><i class="fa-solid fa-money-bill-wave"></i></span>
|
||||
{{ form_widget(form.marque, {'attr': {'class': 'form-control'}}) }}
|
||||
<div class="invalid-feedback">
|
||||
{{ form_errors(form.marque) }}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-5 my-3">
|
||||
{{ form_label(form.prix_promo, 'Prix promo *', {'attr': {'class': 'form-label'}}) }}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text"><i class="fa-solid fa-money-bill-wave"></i></span>
|
||||
{{ form_widget(form.prix_promo, {'attr': {'class': 'form-control'}}) }}
|
||||
<div class="invalid-feedback">
|
||||
{{ form_errors(form.prix_promo) }}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-5 offset-1">
|
||||
{{ form_label(form.prix_marche, 'Prix du marché', {'attr': {'class': 'form-label'}}) }}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text"><i class="fa-solid fa-money-bill-1"></i></span>
|
||||
{{ form_widget(form.prix_marche, {'attr': {'class': 'form-control'}}) }}
|
||||
<div class="invalid-feedback">
|
||||
{{ form_errors(form.prix_marche) }}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<div class="col-8 my-3">
|
||||
{{ form_label(form.societe, 'Société *', {'attr': {'class': 'form-label'}}) }}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text"><i class="fa-solid fa-building"></i></span>
|
||||
{{ form_widget(form.societe, {'attr': {'class': 'form-control select-filter select2bs4 select-filter-speaker'}}) }}
|
||||
<div class="invalid-feedback">
|
||||
{{ form_errors(form.societe) }}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row my-3">
|
||||
|
||||
<div class="col-3">
|
||||
{{ form_label(form.limit_type, 'Limitation par', {'attr': {'class': 'form-check-input'}}) }}
|
||||
{% for key,child in form.limit_type %}
|
||||
<div class="form-check">
|
||||
{% if key == 0 %}
|
||||
{{ form_widget(child, {'attr': {'class': 'form-check-input', 'checked':''}} ) }}
|
||||
{% else %}
|
||||
{{ form_widget(child, {'attr': {'class': 'form-check-input'}} ) }}
|
||||
{% endif %}
|
||||
{{ form_label(child) }}
|
||||
</div>
|
||||
{% endfor %}
|
||||
</div>
|
||||
|
||||
<div class="col-3" id="article-limita-date">
|
||||
{{ form_label(form.limit_date, 'Limitation Par Date', {'attr': {'class': 'form-label'}}) }}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text"><i class="fa-solid fa-percent"></i></span>
|
||||
{{ form_widget(form.limit_date, {'attr': {'class': 'form-control'}}) }}
|
||||
<div class="invalid-feedback">
|
||||
{{ form_errors(form.limit_date) }}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-3" id="article-limita-quanti" style="display:none">
|
||||
{{ form_label(form.limit_quantite, 'Limitation Par Quantité', {'attr': {'class': 'form-label'}}) }}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text"><i class="fa-solid fa-percent"></i></span>
|
||||
{{ form_widget(form.limit_quantite, {'attr': {'class': 'form-control'}}) }}
|
||||
<div class="invalid-feedback">
|
||||
{{ form_errors(form.limit_quantite) }}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="col-12 my-3">
|
||||
{{ form_label(form.description, 'Déscription *', {'attr': {'class': 'form-label'}}) }}
|
||||
{{ form_widget(form.description, {'attr': {'class': 'form-control'}}) }}
|
||||
<div class="invalid-feedback">{{ form_errors(form.description) }}</div>
|
||||
</div>
|
||||
|
||||
<hr class="my-4">
|
||||
{{ form_widget(form.save, {'label': "Enregister", 'attr': {'class': 'w-90 btn btn-primary btn-lg'}}) }}
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
{{ form_end(form) }}
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
{% endblock %}
|
||||
|
||||
{% block javascripts %}
|
||||
{{ parent() }}
|
||||
{{ encore_entry_script_tags('app_backend_article_service') }}
|
||||
{% endblock %}
|
||||
173
templates/backend_admin/article/detail.html.twig
Normal file
173
templates/backend_admin/article/detail.html.twig
Normal file
@@ -0,0 +1,173 @@
|
||||
{% extends 'base_backend_admin.html.twig' %}
|
||||
|
||||
{% block title %} Article {% endblock %}
|
||||
|
||||
{% block content %}
|
||||
<!-- Page Heading -->
|
||||
<div class="d-sm-flex align-items-center justify-content-between mb-4">
|
||||
<h1 class="h3 mb-0 text-gray-800">Article</h1>
|
||||
<ol class="breadcrumb float-sm-right">
|
||||
<li class="breadcrumb-item">Article</li>
|
||||
<li class="breadcrumb-item">Détail</li>
|
||||
</ol>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<!-- Begin Page Content -->
|
||||
<div class="container-fluid">
|
||||
|
||||
{% include 'backend_admin/basic/notice.html.twig' %}
|
||||
|
||||
<!-- DataTales Example -->
|
||||
<div class="card shadow mb-4">
|
||||
|
||||
<div class="card-header py-3">
|
||||
<h6 class="m-0 font-weight-bold text-info">Détail article</h6>
|
||||
</div>
|
||||
<div class="card-body">
|
||||
|
||||
{{ form_start(form) }}
|
||||
<div class="row g-3">
|
||||
|
||||
{{ form_errors(form) }}
|
||||
{{ form_row(form._token) }}
|
||||
|
||||
<div class="col-8 my-3">
|
||||
{{ form_label(form.titre, 'Titre *', {'attr': {'class': 'form-label'}}) }}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text"><i class="fa-solid fa-book"></i></span>
|
||||
{{ form_widget(form.titre, {'attr': {'class': 'form-control'}}) }}
|
||||
<div class="invalid-feedback">
|
||||
{{ form_errors(form.titre) }}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-4 my-3">
|
||||
{{ form_label(form.categorie, 'Catégorie', {'attr': {'class': 'form-label'}}) }}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text"><i class="fa-solid fa-bars"></i></span>
|
||||
{{ form_widget(form.categorie, {'attr': {'class': 'form-control'}}) }}
|
||||
<div class="invalid-feedback">
|
||||
{{ form_errors(form.categorie) }}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="col-6 my-3">
|
||||
{{ form_label(form.adress, 'Adresse', {'attr': {'class': 'form-label'}}) }}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text"><i class="fa-solid fa-percent"></i></span>
|
||||
{{ form_widget(form.adress, {'attr': {'class': 'form-control'}}) }}
|
||||
<div class="invalid-feedback">
|
||||
{{ form_errors(form.adress) }}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-5 offset-1">
|
||||
{{ form_label(form.marque, 'Marque', {'attr': {'class': 'form-label'}}) }}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text"><i class="fa-solid fa-money-bill-wave"></i></span>
|
||||
{{ form_widget(form.marque, {'attr': {'class': 'form-control'}}) }}
|
||||
<div class="invalid-feedback">
|
||||
{{ form_errors(form.marque) }}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-5 my-3">
|
||||
{{ form_label(form.prix_promo, 'Prix promo *', {'attr': {'class': 'form-label'}}) }}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text"><i class="fa-solid fa-money-bill-wave"></i></span>
|
||||
{{ form_widget(form.prix_promo, {'attr': {'class': 'form-control'}}) }}
|
||||
<div class="invalid-feedback">
|
||||
{{ form_errors(form.prix_promo) }}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-5 offset-1">
|
||||
{{ form_label(form.prix_marche, 'Prix du marché', {'attr': {'class': 'form-label'}}) }}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text"><i class="fa-solid fa-money-bill-1"></i></span>
|
||||
{{ form_widget(form.prix_marche, {'attr': {'class': 'form-control'}}) }}
|
||||
<div class="invalid-feedback">
|
||||
{{ form_errors(form.prix_marche) }}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-8 my-3">
|
||||
{{ form_label(form.societe, 'Société *', {'attr': {'class': 'form-label'}}) }}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text"><i class="fa-solid fa-building"></i></span>
|
||||
{{ form_widget(form.societe, {'attr': {'class': 'form-control select-filter select2bs4 select-filter-speaker'}}) }}
|
||||
<div class="invalid-feedback">
|
||||
{{ form_errors(form.societe) }}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row my-3">
|
||||
|
||||
<div class="col-3">
|
||||
{{ form_label(form.limit_type, 'Limitation par', {'attr': {'class': 'form-check-input'}}) }}
|
||||
{% for key,child in form.limit_type %}
|
||||
<div class="form-check">
|
||||
{{ form_widget(child, {'attr': {'class': 'form-check-input'}} ) }}
|
||||
{{ form_label(child) }}
|
||||
</div>
|
||||
{% endfor %}
|
||||
</div>
|
||||
|
||||
<div class="col-3" id="article-limita-date" {% if article.getLimitType()== 1 %} style="display:none" {% endif %}>
|
||||
{{ form_label(form.limit_date, 'Limitation Par Date', {'attr': {'class': 'form-label'}}) }}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text"><i class="fa-solid fa-percent"></i></span>
|
||||
{{ form_widget(form.limit_date, {'attr': {'class': 'form-control'}}) }}
|
||||
<div class="invalid-feedback">
|
||||
{{ form_errors(form.limit_date) }}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-3" id="article-limita-quanti" {% if article.getLimitType()== 0 %} style="display:none" {% endif %}>
|
||||
{{ form_label(form.limit_quantite, 'Limitation Par Quantité', {'attr': {'class': 'form-label'}}) }}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text"><i class="fa-solid fa-percent"></i></span>
|
||||
{{ form_widget(form.limit_quantite, {'attr': {'class': 'form-control'}}) }}
|
||||
<div class="invalid-feedback">
|
||||
{{ form_errors(form.limit_quantite) }}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="col-12 my-3">
|
||||
{{ form_label(form.description, 'Déscription *', {'attr': {'class': 'form-label'}}) }}
|
||||
{{ form_widget(form.description, {'attr': {'class': 'form-control'}}) }}
|
||||
<div class="invalid-feedback">{{ form_errors(form.description) }}</div>
|
||||
</div>
|
||||
|
||||
<hr class="my-4">
|
||||
{{ form_widget(form.save, {'label': "Enregister", 'attr': {'class': 'w-90 btn btn-primary btn-lg'}}) }}
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
{{ form_end(form) }}
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
{% endblock %}
|
||||
|
||||
{% block javascripts %}
|
||||
{{ parent() }}
|
||||
{{ encore_entry_script_tags('app_backend_article_service') }}
|
||||
{% endblock %}
|
||||
84
templates/backend_admin/article/index.html.twig
Normal file
84
templates/backend_admin/article/index.html.twig
Normal file
@@ -0,0 +1,84 @@
|
||||
{% extends 'base_backend_admin.html.twig' %}
|
||||
|
||||
{% block title %} Article {% endblock %}
|
||||
|
||||
{% block content %}
|
||||
<!-- Page Heading -->
|
||||
<div class="d-sm-flex align-items-center justify-content-between mb-4">
|
||||
<h1 class="h3 mb-0 text-gray-800">Article</h1>
|
||||
<ol class="breadcrumb float-sm-right">
|
||||
<li class="breadcrumb-item">Article</li>
|
||||
</ol>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
<!-- Begin Page Content -->
|
||||
<div class="container-fluid">
|
||||
|
||||
{% include 'backend_admin/basic/notice.html.twig' %}
|
||||
|
||||
<!-- DataTales Example -->
|
||||
<div class="card shadow mb-4">
|
||||
|
||||
<div class="card-header py-3">
|
||||
<h6 class="m-0 font-weight-bold text-info">Liste des articles</h6>
|
||||
</div>
|
||||
<div class="card-body">
|
||||
<div class="table-responsive">
|
||||
<table class="table table-bordered" width="100%" cellspacing="0">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>#</th>
|
||||
<th>Titre</th>
|
||||
<th>Société</th>
|
||||
<th>Date Ajoute</th>
|
||||
<th>Limitation</th>
|
||||
<th>Activer</th>
|
||||
<th>Détail</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
{% for article in articles %}
|
||||
<tr>
|
||||
<td>{{ article.getId() }}</td>
|
||||
<td>{{ article.getTitre()}}</td>
|
||||
<td>{{ article.getSociete().getNom() }}</td>
|
||||
<td>{{ article.getDateAdd()|date("d/m/Y")}}</td>
|
||||
<td>
|
||||
{% if article.getLimitType() == 0 %}
|
||||
Par Date: <b>{{ article.getLimitDate()|date("d/m/Y") }}</b>
|
||||
{% elseif article.getLimitType() == 1 %}
|
||||
Par Quantité: <b>{{ article.getLimitQuantite() }}</b>
|
||||
{% endif %}
|
||||
</td>
|
||||
<td>
|
||||
{% if article.isActive() %}
|
||||
<i class="fa-solid fa-circle-check fa-xl" style="color: #26a269;"></i>
|
||||
{% else %}
|
||||
<i class="fa-solid fa-circle-xmark fa-xl" style="color: #e01b24;"></i>
|
||||
{% endif %}
|
||||
</td>
|
||||
<td>
|
||||
<a href="{{ path('backend_admin_article_update', {'id': article.getId() }) }}" title="Détail" class="btn btn-info btn-action">
|
||||
<i class="fa-solid fa-magnifying-glass"></i>
|
||||
</a>
|
||||
<a href="{{ path('backend_admin_article_uploder',{id:article.id}) }}" title="gestion des images" class="btn btn-warning"><i class="fa-regular fa-image"></i></a>
|
||||
{% if article.isActive() %}
|
||||
<a href="{{ path('backend_admin_article_activation',{id:article.id, 'activation': 'false'}) }}" title="gestion des images" class="btn btn-danger"><i class="fa-solid fa-x"></i></a>
|
||||
{% elseif (article.isActive() == false) and (article.getImageDefault() != '') %}
|
||||
<a href="{{ path('backend_admin_article_activation',{id:article.id, 'activation': 'true'}) }}" title="gestion des images" class="btn btn-success"><i class="fa-solid fa-check"></i></a>
|
||||
{% endif %}
|
||||
</td>
|
||||
</tr>
|
||||
{% endfor %}
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
{% endblock %}
|
||||
258
templates/backend_admin/article/uploder.htm.twig
Normal file
258
templates/backend_admin/article/uploder.htm.twig
Normal file
@@ -0,0 +1,258 @@
|
||||
{% extends 'base_backend_admin.html.twig' %}
|
||||
|
||||
{% block title %} Article {% endblock %}
|
||||
|
||||
|
||||
{% block stylesheets %}
|
||||
{{ parent() }}
|
||||
{{ encore_entry_link_tags('app_backend_article_service') }}
|
||||
{% endblock %}
|
||||
|
||||
|
||||
{% block content %}
|
||||
<!-- Page Heading -->
|
||||
<div class="d-sm-flex align-items-center justify-content-between mb-4">
|
||||
<h1 class="h3 mb-0 text-gray-800">Produit Images</h1>
|
||||
<ol class="breadcrumb float-sm-right">
|
||||
<li class="breadcrumb-item active">Produit</li>
|
||||
<li class="breadcrumb-item active">Images</li>
|
||||
</ol>
|
||||
</div>
|
||||
|
||||
<div class="row">
|
||||
|
||||
{% include 'backend_admin/basic/notice.html.twig' %}
|
||||
|
||||
<div class="card shadow mb-4" >
|
||||
<!-- Card Header - Dropdown -->
|
||||
<div class="card-header py-3 d-flex flex-row align-items-center justify-content-between">
|
||||
<h6 class="m-0 font-weight-bold text-primary">Chargement d'image par default</h6>
|
||||
</div>
|
||||
<!-- Card Body -->
|
||||
<div class="card-body">
|
||||
<table class="table" border="1" align="center">
|
||||
<tbody>
|
||||
<tr>
|
||||
<td width="15%">
|
||||
<div class="holder">
|
||||
{% if article.getImageDefault() %}
|
||||
<img id="img-preview-default" class="img-thumbnail" src="{{ asset('uploads/images/articles/' ~ article.getImageDefault()) }}" alt="pic"/>
|
||||
{% else %}
|
||||
<img id="img-preview-default" class="img-thumbnail" src="{{ asset('images/backend/img/h.png') }}" alt="pic"/>
|
||||
{% endif %}
|
||||
</div>
|
||||
</td>
|
||||
<td width="75%">
|
||||
<div class="progress" >
|
||||
<div class="progress-bar" id="progress-bar-default" role="progressbar" style="width: 0%" aria-valuenow="60" aria-valuemin="0" aria-valuemax="100">0%</div>
|
||||
</div>
|
||||
<fieldset class="upload_dropZone text-center mb-3 p-4">
|
||||
<p>
|
||||
Image pour la page <b>par default</b>
|
||||
</p>
|
||||
<p class="small my-3">
|
||||
Largeur d'image doit d'être <b>438px</b> | Hauteur d'image doit d'être <b>240px</b><br>
|
||||
</p>
|
||||
<input id="upload_image_default" class="position-absolute invisible" type="file" accept="image/jpeg, image/png, image/gif, image/jpg" multiple="false"/>
|
||||
<label class="btn btn-upload mb-3" for="upload_image_default">
|
||||
<i class="fa-regular fa-image"></i> choisir l'image
|
||||
</label>
|
||||
</fieldset>
|
||||
</td>
|
||||
<td width="10%">
|
||||
<br>
|
||||
<button type="button" class="btn btn-primary" id="submit-image-default">
|
||||
<i class="fa-solid fa-cloud-arrow-up fa-lg"></i> Importer
|
||||
</button>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="card shadow mb-4" >
|
||||
<!-- Card Header - Dropdown -->
|
||||
<div class="card-header py-3 d-flex flex-row align-items-center justify-content-between">
|
||||
<h6 class="m-0 font-weight-bold text-primary">Chargement des images d'article pour la page détail</h6>
|
||||
</div>
|
||||
<!-- Card Body -->
|
||||
<div class="card-body">
|
||||
<table class="table" border="1" align="center">
|
||||
<tbody>
|
||||
<tr>
|
||||
<td width="15%">
|
||||
<div class="holder">
|
||||
{% if article.getImageDetail1() %}
|
||||
<img id="img-preview-detail1" class="img-thumbnail" src="{{ asset('uploads/images/articles/' ~ article.getImageDetail1()) }}" alt="pic"/>
|
||||
{% else %}
|
||||
<img id="img-preview-detail1" class="img-thumbnail" src="{{ asset('images/backend/img/h.png') }}" alt="pic"/>
|
||||
{% endif %}
|
||||
</div>
|
||||
</td>
|
||||
<td width="75%">
|
||||
<div class="progress" >
|
||||
<div class="progress-bar" id="progress-bar-detail1" role="progressbar" style="width: 0%" aria-valuenow="60" aria-valuemin="0" aria-valuemax="100">0%</div>
|
||||
</div>
|
||||
<fieldset class="upload_dropZone text-center mb-3 p-4">
|
||||
<p>
|
||||
Image 1 pour la page <b>détail</b>
|
||||
</p>
|
||||
<p class="small my-3">
|
||||
Taille maximum de l'image 2Mo<br>
|
||||
</p>
|
||||
<input id="upload_image_detail1" class="position-absolute invisible" type="file" accept="image/jpeg, image/png, image/gif, image/jpg" />
|
||||
<label class="btn btn-upload mb-3" for="upload_image_detail1">
|
||||
<i class="fa-regular fa-image"></i> choisir l'image
|
||||
</label>
|
||||
</fieldset>
|
||||
</td>
|
||||
<td width="10%">
|
||||
<br>
|
||||
<button type="button" class="btn btn-primary" id="submit-image-detail1">
|
||||
<i class="fa-solid fa-cloud-arrow-up fa-lg"></i> Importer
|
||||
</button>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td width="15%">
|
||||
<div class="holder">
|
||||
{% if article.getImageDetail2() %}
|
||||
<img id="img-preview-detail2" class="img-thumbnail" src="{{ asset('uploads/images/articles/' ~ article.getImageDetail2()) }}" alt="pic"/>
|
||||
{% else %}
|
||||
<img id="img-preview-detail2" class="img-thumbnail" src="{{ asset('images/backend/img/h.png') }}" alt="pic"/>
|
||||
{% endif %}
|
||||
</div>
|
||||
</td>
|
||||
<td width="75%">
|
||||
<div class="progress" >
|
||||
<div class="progress-bar" id="progress-bar-detail2" role="progressbar" style="width: 0%" aria-valuenow="60" aria-valuemin="0" aria-valuemax="100">0%</div>
|
||||
</div>
|
||||
<fieldset class="upload_dropZone text-center mb-3 p-4">
|
||||
<p>
|
||||
Image 2 pour la page <b>détail</b>
|
||||
</p>
|
||||
<p class="small my-3">
|
||||
Taille maximum de l'image 2Mo<br>
|
||||
</p>
|
||||
<input id="upload_image_detail2" class="position-absolute invisible" type="file" accept="image/jpeg, image/png, image/gif, image/jpg" />
|
||||
<label class="btn btn-upload mb-3" for="upload_image_detail2">
|
||||
<i class="fa-regular fa-image"></i> choisir l'image
|
||||
</label>
|
||||
</fieldset>
|
||||
</td>
|
||||
<td width="10%">
|
||||
<br>
|
||||
<button type="button" class="btn btn-primary" id="submit-image-detail2">
|
||||
<i class="fa-solid fa-cloud-arrow-up fa-lg"></i> Importer
|
||||
</button>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td width="15%">
|
||||
<div class="holder">
|
||||
{% if article.getImageDetail3() %}
|
||||
<img id="img-preview-detail3" class="img-thumbnail" src="{{ asset('uploads/images/articles/' ~ article.getImageDetail3()) }}" alt="pic"/>
|
||||
{% else %}
|
||||
<img id="img-preview-detail3" class="img-thumbnail" src="{{ asset('images/backend/img/h.png') }}" alt="pic"/>
|
||||
{% endif %}
|
||||
</div>
|
||||
</td>
|
||||
<td width="75%">
|
||||
<div class="progress" >
|
||||
<div class="progress-bar" id="progress-bar-detail3" role="progressbar" style="width: 0%" aria-valuenow="60" aria-valuemin="0" aria-valuemax="100">0%</div>
|
||||
</div>
|
||||
<fieldset class="upload_dropZone text-center mb-3 p-4">
|
||||
<p>
|
||||
Image 3 pour la page <b>détail</b>
|
||||
</p>
|
||||
<p class="small my-3">
|
||||
Taille maximum de l'image 2Mo<br>
|
||||
</p>
|
||||
<input id="upload_image_detail3" class="position-absolute invisible" type="file" accept="image/jpeg, image/png, image/gif, image/jpg" />
|
||||
<label class="btn btn-upload mb-3" for="upload_image_detail3">
|
||||
<i class="fa-regular fa-image"></i> choisir l'image
|
||||
</label>
|
||||
</fieldset>
|
||||
</td>
|
||||
<td width="10%">
|
||||
<br>
|
||||
<button type="button" class="btn btn-primary" id="submit-image-detail3">
|
||||
<i class="fa-solid fa-cloud-arrow-up fa-lg"></i> Importer
|
||||
</button>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td width="15%">
|
||||
<div class="holder">
|
||||
{% if article.getImageDetail4() %}
|
||||
<img id="img-preview-detail4" class="img-thumbnail" src="{{ asset('uploads/images/articles/' ~ article.getImageDetail4()) }}" alt="pic"/>
|
||||
{% else %}
|
||||
<img id="img-preview-detail4" class="img-thumbnail" src="{{ asset('images/backend/img/h.png') }}" alt="pic"/>
|
||||
{% endif %}
|
||||
</div>
|
||||
</td>
|
||||
<td width="75%">
|
||||
<div class="progress" >
|
||||
<div class="progress-bar" id="progress-bar-detail4" role="progressbar" style="width: 0%" aria-valuenow="60" aria-valuemin="0" aria-valuemax="100">0%</div>
|
||||
</div>
|
||||
<fieldset class="upload_dropZone text-center mb-3 p-4">
|
||||
<p>
|
||||
Image 4 pour la page <b>détail</b>
|
||||
</p>
|
||||
<p class="small my-3">
|
||||
Taille maximum de l'image 2Mo<br>
|
||||
</p>
|
||||
<input id="upload_image_detail4" class="position-absolute invisible" type="file" accept="image/jpeg, image/png, image/gif, image/jpg" />
|
||||
<label class="btn btn-upload mb-3" for="upload_image_detail4">
|
||||
<i class="fa-regular fa-image"></i> choisir l'image
|
||||
</label>
|
||||
</fieldset>
|
||||
</td>
|
||||
<td width="10%">
|
||||
<br>
|
||||
<button type="button" class="btn btn-primary" id="submit-image-detail4">
|
||||
<i class="fa-solid fa-cloud-arrow-up fa-lg"></i> Importer
|
||||
</button>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<!-- Modal -->
|
||||
<div class="modal fade" id="cropperModal" tabindex="-1" aria-labelledby="exampleModalLabel" aria-hidden="true">
|
||||
<div class="modal-dialog">
|
||||
<div class="modal-content">
|
||||
<div class="modal-header">
|
||||
<h5 class="modal-title" id="exampleModalLabel">Modal title</h5>
|
||||
<button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button>
|
||||
</div>
|
||||
<div class="modal-body">
|
||||
<img id="imgPreviewCropper" src="" data-type-img=""/>
|
||||
</div>
|
||||
<div class="modal-footer">
|
||||
<button id="resize-image" type="button" class="btn btn-primary">Redimensionner</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
{% endblock %}
|
||||
|
||||
{% block javascripts %}
|
||||
<script>
|
||||
|
||||
var pathArticleUplodImageAdd = "{{ path('backend_admin_article_uploder_add', {id: article.id }) }}";
|
||||
var pathArticleUplodImageDelete = "{{ path('backend_admin_article_uploder_delete') }}";
|
||||
|
||||
</script>
|
||||
|
||||
{{ parent() }}
|
||||
{{ encore_entry_script_tags('app_backend_article_service') }}
|
||||
{% endblock %}
|
||||
170
templates/backend_admin/basic/menu.html.twig
Normal file
170
templates/backend_admin/basic/menu.html.twig
Normal file
@@ -0,0 +1,170 @@
|
||||
|
||||
|
||||
<!-- Sidebar -->
|
||||
<ul class="navbar-nav bg-gradient-primary sidebar sidebar-dark accordion" id="accordionSidebar">
|
||||
|
||||
<!-- Sidebar - Brand -->
|
||||
<a class="sidebar-brand d-flex align-items-center justify-content-center" href="{{ path('backend_admin_demo_index') }}">
|
||||
<div class="sidebar-brand-icon rotate-n-15">
|
||||
<i class="fas fa-laugh-wink"></i>
|
||||
</div>
|
||||
<div class="sidebar-brand-text mx-3">Promo<sup>TN</sup></div>
|
||||
</a>
|
||||
|
||||
|
||||
<!-- Divider -->
|
||||
<hr class="sidebar-divider my-0">
|
||||
<!-- Nav Item - Dashboard -->
|
||||
<li class="nav-item">
|
||||
<a class="nav-link" href="{{ path('frontend_home_index') }}">
|
||||
<i class="fa-solid fa-right-from-bracket"></i>
|
||||
<span>Retour au site</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<!-- Divider -->
|
||||
<hr class="sidebar-divider">
|
||||
<!-- Heading -->
|
||||
<div class="sidebar-heading">Gestion</div>
|
||||
|
||||
|
||||
<!-- Nav Item - Charts -->
|
||||
<li class="nav-item {{ is_active(['backend_admin_dashboard_index']) }}">
|
||||
<a class="nav-link" href="{{ path('backend_admin_dashboard_index') }}">
|
||||
<i class="fas fa-fw fa-tachometer-alt"></i>
|
||||
<span>Dashboard</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
|
||||
<!-- Nav Item - Charts -->
|
||||
<li class="nav-item ">
|
||||
<a class="nav-link" href="#">
|
||||
<i class="fa-solid fa-envelope"></i>
|
||||
<span>Message</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<!-- Nav Item - Charts -->
|
||||
{% set activeCategorie = is_active(['backend_admin_categorie_index', 'backend_admin_groupe_categorie_index']) %}
|
||||
{% if (activeCategorie == 'active') %} {% set showCategorie = 'show' %} {% else %} {% set showCategorie = ''%} {% endif %}
|
||||
<li class="nav-item {{ showCategorie }}">
|
||||
<a class="nav-link collapsed" href="#collapsecategories" data-toggle="collapse" data-bs-toggle="collapse" aria-expanded="true" aria-controls="collapsecategories">
|
||||
<i class="fa-solid fa-bars"></i>
|
||||
<span>Catégorie</span>
|
||||
</a>
|
||||
<div id="collapsecategories" class="collapse {{ showCategorie }}" data-parent="#accordionSidebar" aria-labelledby="headingcategories">
|
||||
<div class="bg-white py-2 collapse-inner rounded">
|
||||
<h6 class="collapse-header">catégories:</h6>
|
||||
<a class="collapse-item {{ is_active(['backend_admin_groupe_categorie_index']) }}" href="{{ path('backend_admin_groupe_categorie_index') }}">Groupe</a>
|
||||
<a class="collapse-item {{ is_active(['backend_admin_categorie_index']) }}" href="{{ path('backend_admin_categorie_index') }}">Catégorie</a>
|
||||
</div>
|
||||
</div>
|
||||
</li>
|
||||
|
||||
<!-- Nav Item - Partenariat -->
|
||||
{% set activePartenariat = is_active(['backend_admin_societe_index', 'backend_admin_societe_add', 'backend_admin_societe_update', 'backend_admin_partenaire_index', 'backend_admin_partenaire_add']) %}
|
||||
{% if (activePartenariat == 'active') %} {% set showPartenariat = 'show' %} {% else %} {% set showPartenariat = ''%} {% endif %}
|
||||
<li class="nav-item {{ activePartenariat }}">
|
||||
<a class="nav-link collapsed" href="#collapsepartenariat" data-toggle="collapse" data-bs-toggle="collapse" aria-expanded="true" aria-controls="collapsepositions">
|
||||
<i class="fa-regular fa-building"></i>
|
||||
<span>Partenariat</span>
|
||||
</a>
|
||||
<div id="collapsepartenariat" class="collapse {{ showPartenariat }}" data-parent="#accordionSidebar"aria-labelledby="headingpositions" >
|
||||
<div class="bg-white py-2 collapse-inner rounded">
|
||||
<h6 class="collapse-header">Partenariat:</h6>
|
||||
<a class="collapse-item {{ is_active(['backend_admin_societe_index', 'backend_admin_societe_add', 'backend_admin_societe_update']) }}" href="{{ path('backend_admin_societe_index') }}">Société</a>
|
||||
<a class="collapse-item {{ is_active(['backend_admin_partenaire_index', 'backend_admin_partenaire_add']) }}" href="{{ path('backend_admin_partenaire_index') }}">Partenaire </a>
|
||||
</div>
|
||||
</div>
|
||||
</li>
|
||||
|
||||
|
||||
<!-- Nav Item - Annonce -->
|
||||
{% set activeAnnonce = is_active(['backend_admin_annonce_index', 'backend_admin_annonce_add', 'backend_admin_annonce_update', 'backend_admin_annonce_uploder', 'backend_admin_position_index', 'backend_admin_position_creer', 'backend_admin_position_detail']) %}
|
||||
{% if (activeAnnonce == 'active') %} {% set showAnnonce = 'show' %} {% else %} {% set showAnnonce = ''%} {% endif %}
|
||||
<li class="nav-item {{ activeAnnonce }}">
|
||||
<a class="nav-link collapsed" href="#collapseannonce" data-toggle="collapse" data-bs-toggle="collapse" aria-expanded="true" aria-controls="collapsepositions">
|
||||
<i class="fa-solid fa-scroll"></i>
|
||||
<span>Annonce</span>
|
||||
</a>
|
||||
<div id="collapseannonce" class="collapse {{ showAnnonce }}" data-parent="#accordionSidebar"aria-labelledby="headingpositions" >
|
||||
<div class="bg-white py-2 collapse-inner rounded">
|
||||
<h6 class="collapse-header">Annonce:</h6>
|
||||
<a class="collapse-item {{ is_active(['backend_admin_annonce_index', 'backend_admin_annonce_add', 'backend_admin_annonce_update', 'backend_admin_annonce_uploder']) }}" href="{{ path('backend_admin_annonce_index') }}">Gestion des Annonces</a>
|
||||
<a class="collapse-item {{ is_active(['backend_admin_position_index', 'backend_admin_position_creer', 'backend_admin_position_detail']) }}" href="{{ path('backend_admin_position_index') }}">Position & Affichage </a>
|
||||
</div>
|
||||
</div>
|
||||
</li>
|
||||
|
||||
|
||||
<!-- Nav Item - Article -->
|
||||
{% set activeArticle = is_active(['backend_admin_article_index', 'backend_admin_article_add', 'backend_admin_article_update', 'backend_admin_article_uploder']) %}
|
||||
{% if (activeArticle == 'active') %} {% set showArticle = 'show' %} {% else %} {% set showArticle = ''%} {% endif %}
|
||||
<li class="nav-item {{ activeArticle }}">
|
||||
<a class="nav-link collapsed" href="#collapsearticles" data-toggle="collapse" data-bs-toggle="collapse" aria-expanded="true" aria-controls="collapsearticles">
|
||||
<i class="fa-solid fa-barcode"></i>
|
||||
<span>Article</span>
|
||||
</a>
|
||||
<div id="collapsearticles" class="collapse {{ showArticle }}" data-parent="#accordionSidebar"aria-labelledby="headingpositions" >
|
||||
<div class="bg-white py-2 collapse-inner rounded">
|
||||
<h6 class="collapse-header">Article:</h6>
|
||||
<a class="collapse-item {{ is_active(['backend_admin_article_index', 'backend_admin_article_update']) }}" href="{{ path('backend_admin_article_index') }}">Gestion</a>
|
||||
<a class="collapse-item {{ is_active(['backend_admin_article_add', 'backend_admin_article_uploder']) }}" href="{{ path('backend_admin_article_add') }}">Ajouter</a>
|
||||
</div>
|
||||
</div>
|
||||
</li>
|
||||
|
||||
|
||||
<!-- Nav Item - Service -->
|
||||
{% set activeService = is_active(['backend_admin_service_index', 'backend_admin_service_add', 'backend_admin_service_update', 'backend_admin_service_uploder']) %}
|
||||
{% if (activeService == 'active') %} {% set showService = 'show' %} {% else %} {% set showService = ''%} {% endif %}
|
||||
<li class="nav-item {{ activeService }}">
|
||||
<a class="nav-link collapsed" href="#collapseservices" data-toggle="collapse" data-bs-toggle="collapse" aria-expanded="true" aria-controls="collapseservices">
|
||||
<i class="fa-solid fa-handshake"></i>
|
||||
<span>Service</span>
|
||||
</a>
|
||||
<div id="collapseservices" class="collapse {{ showService }}" data-parent="#accordionSidebar"aria-labelledby="headingpositions" >
|
||||
<div class="bg-white py-2 collapse-inner rounded">
|
||||
<h6 class="collapse-header">Service:</h6>
|
||||
<a class="collapse-item {{ is_active(['backend_admin_service_index', 'backend_admin_service_update']) }}" href="{{ path('backend_admin_service_index') }}">Gestion</a>
|
||||
<a class="collapse-item {{ is_active(['backend_admin_service_add', 'backend_admin_service_uploder']) }}" href="{{ path('backend_admin_service_add') }}">Ajouter</a>
|
||||
</div>
|
||||
</div>
|
||||
</li>
|
||||
|
||||
<!-- Nav Item - utilisateurs Collapse Menu -->
|
||||
|
||||
{% set activeUser = is_active(['backend_admin_user_index', 'backend_admin_user_deleted']) %}
|
||||
{% if (activeUser == 'active') %} {% set showUser = 'show' %} {% else %} {% set showUser = ''%} {% endif %}
|
||||
<li class="nav-item {{ activeUser }}">
|
||||
<a class="nav-link collapsed" href="#collapseutilisateurs" data-toggle="collapse" data-bs-toggle="collapse" aria-expanded="true" aria-controls="collapseutilisateurs">
|
||||
<i class="fa-solid fa-users"></i>
|
||||
<span>Utilisateurs</span>
|
||||
</a>
|
||||
<div id="collapseutilisateurs" class="collapse {{ showUser }}" data-parent="#accordionSidebar"aria-labelledby="headingutilisateurs" >
|
||||
<div class="bg-white py-2 collapse-inner rounded">
|
||||
<h6 class="collapse-header">utilisateurs:</h6>
|
||||
<a class="collapse-item {{ is_active(['backend_admin_user_index']) }}" href="{{ path('backend_admin_user_index') }}">Lister</a>
|
||||
<a class="collapse-item {{ is_active(['backend_admin_user_deleted']) }}" href="{{ path('backend_admin_user_deleted') }}">Inactifs</a>
|
||||
</div>
|
||||
</div>
|
||||
</li>
|
||||
|
||||
<!-- Sidebar Message -->
|
||||
<hr class="sidebar-divider">
|
||||
<div class="sidebar-card d-none d-lg-flex">
|
||||
|
||||
<img class="sidebar-card-illustration mb-2" src="{{ asset('images/backend/img/undraw_profile.svg') }}" alt="{{ app.user.firstname ~ ' ' ~ app.user.lastname|e }}">
|
||||
|
||||
<p class="text-center mb-2"><strong>{{ app.user.firstname ~ ' ' ~ app.user.lastname|e }}</strong></p>
|
||||
<a class="btn btn-success btn-sm" href="{{ path('frontend_security_logout') }}">Déconnexion</a>
|
||||
</div>
|
||||
|
||||
<hr class="sidebar-divider">
|
||||
<div class="text-center d-none d-md-inline">
|
||||
<button class="rounded-circle border-0" id="sidebarToggle"></button>
|
||||
</div>
|
||||
|
||||
</ul>
|
||||
<!-- End of Sidebar -->
|
||||
73
templates/backend_admin/basic/notice.html.twig
Normal file
73
templates/backend_admin/basic/notice.html.twig
Normal file
@@ -0,0 +1,73 @@
|
||||
{% for notice in app.flashes('primary') %}
|
||||
|
||||
<div class="card bg-primary text-white shadow mb-4">
|
||||
<div class="card-body">
|
||||
{{ notice.title }}
|
||||
<div class="text-white-50 small">{{ notice.message|raw }}</div>
|
||||
</div>
|
||||
</div>
|
||||
{% endfor %}
|
||||
|
||||
{% for notice in app.flashes('success') %}
|
||||
<div class="card bg-success text-white shadow mb-4">
|
||||
<div class="card-body">
|
||||
{{ notice.title }}
|
||||
<div class="text-white-50 small">{{ notice.message|raw }}</div>
|
||||
</div>
|
||||
</div>
|
||||
{% endfor %}
|
||||
|
||||
{% for notice in app.flashes('info') %}
|
||||
<div class="card bg-info text-white shadow mb-4">
|
||||
|
||||
<div class="card-body">
|
||||
<i class="fa-solid fa-circle-info fa-2x"></i> {{ notice.title }} <br>
|
||||
|
||||
<div class="text-white">{{ notice.message|raw }}</div>
|
||||
</div>
|
||||
</div>
|
||||
{% endfor %}
|
||||
|
||||
{% for notice in app.flashes('warning') %}
|
||||
<div class="card bg-warning text-white shadow mb-4">
|
||||
<div class="card-body">
|
||||
{{ notice.title }} : {{ notice.message|raw }}
|
||||
</div>
|
||||
</div>
|
||||
{% endfor %}
|
||||
|
||||
{% for notice in app.flashes('danger') %}
|
||||
<div class="card bg-danger text-white shadow mb-4">
|
||||
<div class="card-body">
|
||||
{{ notice.title }}
|
||||
<div class="text-white-50 small">{{ notice.message|raw }}</div>
|
||||
</div>
|
||||
</div>
|
||||
{% endfor %}
|
||||
|
||||
{% for notice in app.flashes('secondary') %}
|
||||
<div class="card bg-secondary text-white shadow mb-4">
|
||||
<div class="card-body">
|
||||
{{ notice.title }}
|
||||
<div class="text-white-50 small">{{ notice.message|raw }}</div>
|
||||
</div>
|
||||
</div>
|
||||
{% endfor %}
|
||||
|
||||
{% for notice in app.flashes('light') %}
|
||||
<div class="card bg-light text-black shadow mb-4">
|
||||
<div class="card-body">
|
||||
{{ notice.title }}
|
||||
<div class="text-black-50 small">{{ notice.message|raw }}</div>
|
||||
</div>
|
||||
</div>
|
||||
{% endfor %}
|
||||
|
||||
{% for notice in app.flashes('dark') %}
|
||||
<div class="card bg-dark text-white shadow mb-4">
|
||||
<div class="card-body">
|
||||
{{ notice.title }}
|
||||
<div class="text-white-50 small">{{ notice.message|raw }}</div>
|
||||
</div>
|
||||
</div>
|
||||
{% endfor %}
|
||||
146
templates/backend_admin/categorie/index_categorie.html.twig
Normal file
146
templates/backend_admin/categorie/index_categorie.html.twig
Normal file
@@ -0,0 +1,146 @@
|
||||
{% extends 'base_backend_admin.html.twig' %}
|
||||
|
||||
{% block title %} Catégorie {% endblock %}
|
||||
|
||||
{% block content %}
|
||||
<!-- Page Heading -->
|
||||
<div class="d-sm-flex align-items-center justify-content-between mb-4">
|
||||
<h1 class="h3 mb-0 text-gray-800">Catégories</h1>
|
||||
<ol class="breadcrumb float-sm-right">
|
||||
<li class="breadcrumb-item">Catégorie</li>
|
||||
</ol>
|
||||
</div>
|
||||
|
||||
<!-- Begin Page Content -->
|
||||
<div class="container-fluid">
|
||||
|
||||
{% include 'backend_admin/basic/notice.html.twig' %}
|
||||
|
||||
{% if categorie.id is empty%}
|
||||
<div class="card mb-4">
|
||||
<div class="card-header">
|
||||
Ajouter une nouvelle catégorie
|
||||
</div>
|
||||
<div class="card-body">
|
||||
{{ form_start(form, {'action': path('backend_admin_categorie_add'), 'method': 'POST'}) }}
|
||||
<div class="row g-3">
|
||||
|
||||
<div class="col-6 my-3">
|
||||
{{ form_label(form.nom, 'Nom Catégorie', {'attr': {'class': 'form-label'}}) }}
|
||||
<div class="input-group">
|
||||
|
||||
{{ form_widget(form.nom, {'attr': {'class': 'form-control'}}) }}
|
||||
<div class="invalid-feedback">
|
||||
{{ form_errors(form.nom) }}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-6 my-3">
|
||||
{{ form_label(form.groupeCategorie, 'Nom du groupe', {'attr': {'class': 'form-label'}}) }}
|
||||
<div class="input-group">
|
||||
|
||||
{{ form_widget(form.groupeCategorie, {'attr': {'class': 'form-control' }}) }}
|
||||
<div class="invalid-feedback">
|
||||
{{ form_errors(form.groupeCategorie) }}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-4">
|
||||
{{ form_widget(form.save, {'label': "Ajouter", 'attr': {'class': 'w-90 btn btn-primary '}}) }}
|
||||
</div>
|
||||
|
||||
</div>
|
||||
{{ form_end(form) }}
|
||||
</div>
|
||||
</div>
|
||||
{% else %}
|
||||
<div class="card mb-4">
|
||||
<div class="card-header">
|
||||
Modifier une catégorie
|
||||
</div>
|
||||
<div class="card-body">
|
||||
{{ form_start(form, {'action': path('backend_admin_categorie_update',{'id': categorie.id}), 'method': 'POST'}) }}
|
||||
<div class="row g-3">
|
||||
<div class="col-6 my-3">
|
||||
{{ form_label(form.nom, 'Nom Catégorie', {'attr': {'class': 'form-label'}}) }}
|
||||
<div class="input-group">
|
||||
|
||||
{{ form_widget(form.nom, {'attr': {'class': 'form-control', 'value':categorie.nom }}) }}
|
||||
<div class="invalid-feedback">
|
||||
{{ form_errors(form.nom) }}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-6 my-3">
|
||||
{{ form_label(form.groupeCategorie, 'Nom du groupe', {'attr': {'class': 'form-label'}}) }}
|
||||
<div class="input-group">
|
||||
|
||||
{{ form_widget(form.groupeCategorie, {'attr': {'class': 'form-control'}}) }}
|
||||
<div class="invalid-feedback">
|
||||
{{ form_errors(form.groupeCategorie) }}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-4">
|
||||
{{ form_widget(form.save, {'label': "Modifier", 'attr': {'class': 'w-90 btn btn-primary '}}) }}
|
||||
</div>
|
||||
|
||||
</div>
|
||||
{{ form_end(form) }}
|
||||
</div>
|
||||
</div>
|
||||
{% endif %}
|
||||
|
||||
<!-- DataTales Example -->
|
||||
<div class="card shadow mb-4">
|
||||
|
||||
<div class="card-header py-3">
|
||||
<h6 class="m-0 font-weight-bold text-primary">Liste des catégories</h6>
|
||||
</div>
|
||||
<div class="card-body">
|
||||
<div class="table-responsive">
|
||||
<table id="dataTableCategorie" class="table table-bordered" width="100%" cellspacing="0">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>#</th>
|
||||
<th>Nom</th>
|
||||
<th>Nombre des annonces</th>
|
||||
<th>Modifier</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tfoot>
|
||||
<tr>
|
||||
<th>#</th>
|
||||
<th>Nom</th>
|
||||
<th>Nombre des annonces</th>
|
||||
<th>Modifier</th>
|
||||
</tr>
|
||||
</tfoot>
|
||||
<tbody>
|
||||
{% for categorie in categories %}
|
||||
<tr>
|
||||
<td>{{ categorie.id }}</td>
|
||||
<td>{{ categorie.nom }}</td>
|
||||
<td></td>
|
||||
<td>
|
||||
<a href="{{ path('backend_admin_categorie_index',{idCategorie:categorie.id}) }}" title="modifier" class="btn btn-info btn-action"><i class="fa fa-edit"></i></a>
|
||||
</td>
|
||||
</tr>
|
||||
{% endfor %}
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
{% endblock %}
|
||||
|
||||
|
||||
{% block javascripts %}
|
||||
{{ parent() }}
|
||||
{{ encore_entry_script_tags('app_backend_other') }}
|
||||
{% endblock %}
|
||||
171
templates/backend_admin/categorie/index_group.html.twig
Normal file
171
templates/backend_admin/categorie/index_group.html.twig
Normal file
@@ -0,0 +1,171 @@
|
||||
{% extends 'base_backend_admin.html.twig' %}
|
||||
|
||||
{% block title %} Groupe des catégories {% endblock %}
|
||||
|
||||
{% block content %}
|
||||
<!-- Page Heading -->
|
||||
<div class="d-sm-flex align-items-center justify-content-between mb-4">
|
||||
<h1 class="h3 mb-0 text-gray-800">Groupe des catégories</h1>
|
||||
<ol class="breadcrumb float-sm-right">
|
||||
<li class="breadcrumb-item">Groupe des catégories</li>
|
||||
</ol>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
<!-- Begin Page Content -->
|
||||
<div class="container-fluid">
|
||||
|
||||
{% include 'backend_admin/basic/notice.html.twig' %}
|
||||
|
||||
|
||||
{% if groupe.id is empty%}
|
||||
<div class="card mb-4">
|
||||
<div class="card-header">
|
||||
Ajouter un nouveau groupe
|
||||
</div>
|
||||
<div class="card-body">
|
||||
|
||||
{{ form_start(form, {'action': path('backend_admin_groupe_categorie_add'), 'method': 'POST'}) }}
|
||||
<div class="row g-3">
|
||||
<div class="col-3">
|
||||
{{ form_label(form.nom, 'Nom de groupe', {'attr': {'class': 'form-label'}}) }}
|
||||
<div class="input-group">
|
||||
|
||||
{{ form_widget(form.nom, {'attr': {'class': 'form-control'}}) }}
|
||||
<div class="invalid-feedback">
|
||||
{{ form_errors(form.nom) }}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-3 offset-1">
|
||||
{{ form_label(form.icon_fontawesome, 'Icon fontawesome menu', {'attr': {'class': 'form-label'}}) }}
|
||||
<div class="input-group">
|
||||
|
||||
{{ form_widget(form.icon_fontawesome, {'attr': {'class': 'form-control'}}) }}
|
||||
<div class="invalid-feedback">
|
||||
{{ form_errors(form.icon_fontawesome) }}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-3 offset-1">
|
||||
{{ form_label(form.image, 'Image memu', {'attr': {'class': 'form-label'}}) }}
|
||||
{{ form_widget(form.image, {'attr': {'class': 'form-control'}}) }}
|
||||
<div class="invalid-feedback">{{ form_errors(form.image) }}</div>
|
||||
</div>
|
||||
|
||||
<div class="col-md-2">
|
||||
{{ form_widget(form.save, {'label': "Ajouter", 'attr': {'class': 'w-90 btn btn-primary '}}) }}
|
||||
</div>
|
||||
</div>
|
||||
{{ form_end(form) }}
|
||||
|
||||
</div>
|
||||
</div>
|
||||
{% else %}
|
||||
<div class="card mb-4">
|
||||
<div class="card-header">
|
||||
Modifier un groupe
|
||||
</div>
|
||||
<div class="card-body">
|
||||
{{ form_start(form, {'action': path('backend_admin_groupe_categorie_update',{'id': groupe.id}), 'method': 'POST'}) }}
|
||||
<div class="row g-3">
|
||||
<div class="col-3">
|
||||
{{ form_label(form.nom, 'Nom de groupe', {'attr': {'class': 'form-label'}}) }}
|
||||
<div class="input-group">
|
||||
|
||||
{{ form_widget(form.nom, {'attr': {'class': 'form-control'}}) }}
|
||||
<div class="invalid-feedback">
|
||||
{{ form_errors(form.nom) }}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-3 offset-1">
|
||||
{{ form_label(form.icon_fontawesome, 'Icon fontawesome menu', {'attr': {'class': 'form-label'}}) }}
|
||||
<div class="input-group">
|
||||
|
||||
{{ form_widget(form.icon_fontawesome, {'attr': {'class': 'form-control'}}) }}
|
||||
<div class="invalid-feedback">
|
||||
{{ form_errors(form.icon_fontawesome) }}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-3">
|
||||
{{ form_label(form.image, 'Image memu', {'attr': {'class': 'form-label'}}) }}
|
||||
{{ form_widget(form.image, {'attr': {'class': 'form-control'}}) }}
|
||||
<div class="invalid-feedback">{{ form_errors(form.image) }}</div>
|
||||
</div>
|
||||
|
||||
<div class="col-1">
|
||||
<a href="{{ path('backend_admin_groupe_categorie_remove_image',{id:groupe.id}) }}" class="btn btn-danger mt-4">
|
||||
<i class="fa-solid fa-trash"></i> Image</a>
|
||||
</div>
|
||||
|
||||
<div class="col-md-2">
|
||||
{{ form_widget(form.save, {'label': "Modifier", 'attr': {'class': 'w-90 btn btn-primary '}}) }}
|
||||
</div>
|
||||
</div>
|
||||
{{ form_end(form) }}
|
||||
</div>
|
||||
{% endif %}
|
||||
|
||||
|
||||
<!-- DataTales Example -->
|
||||
<div class="card shadow mb-4">
|
||||
|
||||
<div class="card-header py-3">
|
||||
<h6 class="m-0 font-weight-bold text-primary">Liste des groupes</h6>
|
||||
</div>
|
||||
<div class="card-body">
|
||||
<div class="table-responsive">
|
||||
<table class="table table-bordered" id="dataTableGroupes" width="100%" cellspacing="0">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>#</th>
|
||||
<th>Nom</th>
|
||||
<th>Liste des catégories</th>
|
||||
<th>Modifier</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tfoot>
|
||||
<tr>
|
||||
<th>#</th>
|
||||
<th>Nom</th>
|
||||
<th>Liste des catégories</th>
|
||||
<th>Modifier</th>
|
||||
</tr>
|
||||
</tfoot>
|
||||
<tbody>
|
||||
{% for groupe in groupes %}
|
||||
<tr>
|
||||
<td>{{ groupe.id }}</td>
|
||||
<td>{{ groupe.nom }}</td>
|
||||
<td>
|
||||
<ul class="list-group list-group-flush">
|
||||
{% for categorie in groupe.getCategories() %}
|
||||
<li class="list-group-item">{{ categorie.getNom() }}</li>
|
||||
{% endfor %}
|
||||
</ul>
|
||||
</td>
|
||||
<td>
|
||||
<a href="{{ path('backend_admin_groupe_categorie_index',{idGroupe:groupe.id}) }}" title="modifier" class="btn btn-info btn-action"><i class="fa fa-edit"></i></a>
|
||||
</td>
|
||||
</tr>
|
||||
{% endfor %}
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
{% endblock %}
|
||||
|
||||
{% block javascripts %}
|
||||
{{ parent() }}
|
||||
{{ encore_entry_script_tags('app_backend_other') }}
|
||||
{% endblock %}
|
||||
170
templates/backend_admin/dashboard/index.html.twig
Normal file
170
templates/backend_admin/dashboard/index.html.twig
Normal file
@@ -0,0 +1,170 @@
|
||||
{% extends 'base_backend_admin.html.twig' %}
|
||||
|
||||
{% block title %} Dashboard {% endblock %}
|
||||
|
||||
{% block content %}
|
||||
|
||||
<!-- Page Heading -->
|
||||
<div class="d-sm-flex align-items-center justify-content-between mb-4">
|
||||
<h1 class="h3 mb-0 text-gray-800">Dashboard</h1>
|
||||
<ol class="breadcrumb float-sm-right">
|
||||
<li class="breadcrumb-item active">Dashboard</li>
|
||||
</ol>
|
||||
</div>
|
||||
|
||||
<div class="row">
|
||||
<!-- Earnings (Monthly) Card Example -->
|
||||
<div class="col-xl-3 col-md-6 mb-4">
|
||||
<div class="card border-left-primary shadow h-100 py-2">
|
||||
<div class="card-body">
|
||||
<div class="row no-gutters align-items-center">
|
||||
<div class="col mr-2">
|
||||
<div class="text-xs font-weight-bold text-primary text-uppercase mb-1">
|
||||
Nombre des inscrits</div>
|
||||
<div class="h5 mb-0 font-weight-bold text-gray-800">40.000</div>
|
||||
</div>
|
||||
<div class="col-auto">
|
||||
<i class="fas fa-calendar fa-2x text-gray-300"></i>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- Earnings (Monthly) Card Example -->
|
||||
<div class="col-xl-3 col-md-6 mb-4">
|
||||
<div class="card border-left-success shadow h-100 py-2">
|
||||
<div class="card-body">
|
||||
<div class="row no-gutters align-items-center">
|
||||
<div class="col mr-2">
|
||||
<div class="text-xs font-weight-bold text-success text-uppercase mb-1">
|
||||
Nombre des visiteurs</div>
|
||||
<div class="h5 mb-0 font-weight-bold text-gray-800">215</div>
|
||||
</div>
|
||||
<div class="col-auto">
|
||||
<i class="fas fa-dollar-sign fa-2x text-gray-300"></i>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- Earnings (Monthly) Card Example -->
|
||||
<div class="col-xl-3 col-md-6 mb-4">
|
||||
<div class="card border-left-info shadow h-100 py-2">
|
||||
<div class="card-body">
|
||||
<div class="row no-gutters align-items-center">
|
||||
<div class="col mr-2">
|
||||
<div class="text-xs font-weight-bold text-info text-uppercase mb-1">Nombre des annonces</div>
|
||||
<div class="row no-gutters align-items-center">
|
||||
<div class="col-auto">
|
||||
<div class="h5 mb-0 mr-3 font-weight-bold text-gray-800">50</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-auto">
|
||||
<i class="fas fa-clipboard-list fa-2x text-gray-300"></i>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- Pending Requests Card Example -->
|
||||
<div class="col-xl-3 col-md-6 mb-4">
|
||||
<div class="card border-left-warning shadow h-100 py-2">
|
||||
<div class="card-body">
|
||||
<div class="row no-gutters align-items-center">
|
||||
<div class="col mr-2">
|
||||
<div class="text-xs font-weight-bold text-warning text-uppercase mb-1">
|
||||
Nombre des Commandes</div>
|
||||
<div class="h5 mb-0 font-weight-bold text-gray-800">18</div>
|
||||
</div>
|
||||
<div class="col-auto">
|
||||
<i class="fas fa-comments fa-2x text-gray-300"></i>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<!-- Content Row -->
|
||||
<div class="row">
|
||||
<!-- Area Chart -->
|
||||
<div class="col-xl-8 col-lg-7">
|
||||
<div class="card shadow mb-4">
|
||||
<!-- Card Header - Dropdown -->
|
||||
<div
|
||||
class="card-header py-3 d-flex flex-row align-items-center justify-content-between">
|
||||
<h6 class="m-0 font-weight-bold text-primary">Nombre d’inscrits au site </h6>
|
||||
<div class="dropdown no-arrow">
|
||||
<a class="dropdown-toggle" href="#" role="button" id="dropdownMenuLink"
|
||||
data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
|
||||
<i class="fas fa-ellipsis-v fa-sm fa-fw text-gray-400"></i>
|
||||
</a>
|
||||
<div class="dropdown-menu dropdown-menu-right shadow animated--fade-in"
|
||||
aria-labelledby="dropdownMenuLink">
|
||||
<div class="dropdown-header">Dropdown Header:</div>
|
||||
<a class="dropdown-item" href="#">Action</a>
|
||||
<a class="dropdown-item" href="#">Another action</a>
|
||||
<div class="dropdown-divider"></div>
|
||||
<a class="dropdown-item" href="#">Something else here</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- Card Body -->
|
||||
<div class="card-body">
|
||||
<div class="chart-area">
|
||||
<canvas id="myAreaChart"></canvas>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- Pie Chart -->
|
||||
<div class="col-xl-4 col-lg-5">
|
||||
<div class="card shadow mb-4">
|
||||
<!-- Card Header - Dropdown -->
|
||||
<div
|
||||
class="card-header py-3 d-flex flex-row align-items-center justify-content-between">
|
||||
<h6 class="m-0 font-weight-bold text-primary">les commandes passé</h6>
|
||||
<div class="dropdown no-arrow">
|
||||
<a class="dropdown-toggle" href="#" role="button" id="dropdownMenuLink"
|
||||
data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
|
||||
<i class="fas fa-ellipsis-v fa-sm fa-fw text-gray-400"></i>
|
||||
</a>
|
||||
<div class="dropdown-menu dropdown-menu-right shadow animated--fade-in"
|
||||
aria-labelledby="dropdownMenuLink">
|
||||
<div class="dropdown-header">Dropdown Header:</div>
|
||||
<a class="dropdown-item" href="#">Action</a>
|
||||
<a class="dropdown-item" href="#">Another action</a>
|
||||
<div class="dropdown-divider"></div>
|
||||
<a class="dropdown-item" href="#">Something else here</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- Card Body -->
|
||||
<div class="card-body">
|
||||
<div class="chart-pie pt-4 pb-2">
|
||||
<canvas id="myPieChart"></canvas>
|
||||
</div>
|
||||
<div class="mt-4 text-center small">
|
||||
<span class="mr-2">
|
||||
<i class="fas fa-circle text-primary"></i> Total Commandes
|
||||
</span>
|
||||
<span class="mr-2">
|
||||
<i class="fas fa-circle text-success"></i> Commander
|
||||
</span>
|
||||
<span class="mr-2">
|
||||
<i class="fas fa-circle text-info"></i> Annuler
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
{% endblock %}
|
||||
|
||||
{% block javascripts %}
|
||||
{{ parent() }}
|
||||
{{ encore_entry_script_tags('app_backend_dashboard') }}
|
||||
{% endblock %}
|
||||
519
templates/backend_admin/demo/animation.html.twig
Normal file
519
templates/backend_admin/demo/animation.html.twig
Normal file
@@ -0,0 +1,519 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<title>{% block title %}utilities-animation!{% endblock %}</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
{% block stylesheets %}
|
||||
{{ encore_entry_link_tags('app_backend') }}
|
||||
{% endblock %}
|
||||
|
||||
{% block javascripts %}
|
||||
{{ encore_entry_script_tags('app_backend') }}
|
||||
{% endblock %}
|
||||
|
||||
</head>
|
||||
|
||||
{% block body %}
|
||||
|
||||
<body id="page-top">
|
||||
|
||||
<!-- Page Wrapper -->
|
||||
<div id="wrapper">
|
||||
|
||||
<!-- Sidebar -->
|
||||
<ul class="navbar-nav bg-gradient-primary sidebar sidebar-dark accordion" id="accordionSidebar">
|
||||
|
||||
<!-- Sidebar - Brand -->
|
||||
<a class="sidebar-brand d-flex align-items-center justify-content-center" href="index.html">
|
||||
<div class="sidebar-brand-icon rotate-n-15">
|
||||
<i class="fas fa-laugh-wink"></i>
|
||||
</div>
|
||||
<div class="sidebar-brand-text mx-3">SB Admin <sup>2</sup></div>
|
||||
</a>
|
||||
|
||||
<!-- Divider -->
|
||||
<hr class="sidebar-divider my-0">
|
||||
|
||||
<!-- Nav Item - Dashboard -->
|
||||
<li class="nav-item">
|
||||
<a class="nav-link" href="index.html">
|
||||
<i class="fas fa-fw fa-tachometer-alt"></i>
|
||||
<span>Dashboard</span></a>
|
||||
</li>
|
||||
|
||||
<!-- Divider -->
|
||||
<hr class="sidebar-divider">
|
||||
|
||||
<!-- Heading -->
|
||||
<div class="sidebar-heading">
|
||||
Interface
|
||||
</div>
|
||||
|
||||
<!-- Nav Item - Pages Collapse Menu -->
|
||||
<li class="nav-item">
|
||||
<a class="nav-link collapsed" href="#" data-toggle="collapse" data-target="#collapseTwo"
|
||||
aria-expanded="true" aria-controls="collapseTwo">
|
||||
<i class="fas fa-fw fa-cog"></i>
|
||||
<span>Components</span>
|
||||
</a>
|
||||
<div id="collapseTwo" class="collapse" aria-labelledby="headingTwo" data-parent="#accordionSidebar">
|
||||
<div class="bg-white py-2 collapse-inner rounded">
|
||||
<h6 class="collapse-header">Custom Components:</h6>
|
||||
<a class="collapse-item" href="buttons.html">Buttons</a>
|
||||
<a class="collapse-item" href="cards.html">Cards</a>
|
||||
</div>
|
||||
</div>
|
||||
</li>
|
||||
|
||||
<!-- Nav Item - Utilities Collapse Menu -->
|
||||
<li class="nav-item active">
|
||||
<a class="nav-link" href="#" data-toggle="collapse" data-target="#collapseUtilities"
|
||||
aria-expanded="true" aria-controls="collapseUtilities">
|
||||
<i class="fas fa-fw fa-wrench"></i>
|
||||
<span>Utilities</span>
|
||||
</a>
|
||||
<div id="collapseUtilities" class="collapse show" aria-labelledby="headingUtilities"
|
||||
data-parent="#accordionSidebar">
|
||||
<div class="bg-white py-2 collapse-inner rounded">
|
||||
<h6 class="collapse-header">Custom Utilities:</h6>
|
||||
<a class="collapse-item" href="utilities-color.html">Colors</a>
|
||||
<a class="collapse-item" href="utilities-border.html">Borders</a>
|
||||
<a class="collapse-item active" href="utilities-animation.html">Animations</a>
|
||||
<a class="collapse-item" href="utilities-other.html">Other</a>
|
||||
</div>
|
||||
</div>
|
||||
</li>
|
||||
|
||||
<!-- Divider -->
|
||||
<hr class="sidebar-divider">
|
||||
|
||||
<!-- Heading -->
|
||||
<div class="sidebar-heading">
|
||||
Addons
|
||||
</div>
|
||||
|
||||
<!-- Nav Item - Pages Collapse Menu -->
|
||||
<li class="nav-item">
|
||||
<a class="nav-link collapsed" href="#" data-toggle="collapse" data-target="#collapsePages"
|
||||
aria-expanded="true" aria-controls="collapsePages">
|
||||
<i class="fas fa-fw fa-folder"></i>
|
||||
<span>Pages</span>
|
||||
</a>
|
||||
<div id="collapsePages" class="collapse" aria-labelledby="headingPages" data-parent="#accordionSidebar">
|
||||
<div class="bg-white py-2 collapse-inner rounded">
|
||||
<h6 class="collapse-header">Login Screens:</h6>
|
||||
<a class="collapse-item" href="login.html">Login</a>
|
||||
<a class="collapse-item" href="register.html">Register</a>
|
||||
<a class="collapse-item" href="forgot-password.html">Forgot Password</a>
|
||||
<div class="collapse-divider"></div>
|
||||
<h6 class="collapse-header">Other Pages:</h6>
|
||||
<a class="collapse-item" href="404.html">404 Page</a>
|
||||
<a class="collapse-item" href="blank.html">Blank Page</a>
|
||||
</div>
|
||||
</div>
|
||||
</li>
|
||||
|
||||
<!-- Nav Item - Charts -->
|
||||
<li class="nav-item">
|
||||
<a class="nav-link" href="charts.html">
|
||||
<i class="fas fa-fw fa-chart-area"></i>
|
||||
<span>Charts</span></a>
|
||||
</li>
|
||||
|
||||
<!-- Nav Item - Tables -->
|
||||
<li class="nav-item">
|
||||
<a class="nav-link" href="tables.html">
|
||||
<i class="fas fa-fw fa-table"></i>
|
||||
<span>Tables</span></a>
|
||||
</li>
|
||||
|
||||
<!-- Divider -->
|
||||
<hr class="sidebar-divider d-none d-md-block">
|
||||
|
||||
<!-- Sidebar Toggler (Sidebar) -->
|
||||
<div class="text-center d-none d-md-inline">
|
||||
<button class="rounded-circle border-0" id="sidebarToggle"></button>
|
||||
</div>
|
||||
|
||||
</ul>
|
||||
<!-- End of Sidebar -->
|
||||
|
||||
<!-- Content Wrapper -->
|
||||
<div id="content-wrapper" class="d-flex flex-column">
|
||||
|
||||
<!-- Main Content -->
|
||||
<div id="content">
|
||||
|
||||
<!-- Topbar -->
|
||||
<nav class="navbar navbar-expand navbar-light bg-white topbar mb-4 static-top shadow">
|
||||
|
||||
<!-- Sidebar Toggle (Topbar) -->
|
||||
<button id="sidebarToggleTop" class="btn btn-link d-md-none rounded-circle mr-3">
|
||||
<i class="fa fa-bars"></i>
|
||||
</button>
|
||||
|
||||
<!-- Topbar Search -->
|
||||
<form
|
||||
class="d-none d-sm-inline-block form-inline mr-auto ml-md-3 my-2 my-md-0 mw-100 navbar-search">
|
||||
<div class="input-group">
|
||||
<input type="text" class="form-control bg-light border-0 small" placeholder="Search for..."
|
||||
aria-label="Search" aria-describedby="basic-addon2">
|
||||
<div class="input-group-append">
|
||||
<button class="btn btn-primary" type="button">
|
||||
<i class="fas fa-search fa-sm"></i>
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
|
||||
<!-- Topbar Navbar -->
|
||||
<ul class="navbar-nav ml-auto">
|
||||
|
||||
<!-- Nav Item - Search Dropdown (Visible Only XS) -->
|
||||
<li class="nav-item dropdown no-arrow d-sm-none">
|
||||
<a class="nav-link dropdown-toggle" href="#" id="searchDropdown" role="button"
|
||||
data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
|
||||
<i class="fas fa-search fa-fw"></i>
|
||||
</a>
|
||||
<!-- Dropdown - Messages -->
|
||||
<div class="dropdown-menu dropdown-menu-right p-3 shadow animated--grow-in"
|
||||
aria-labelledby="searchDropdown">
|
||||
<form class="form-inline mr-auto w-100 navbar-search">
|
||||
<div class="input-group">
|
||||
<input type="text" class="form-control bg-light border-0 small"
|
||||
placeholder="Search for..." aria-label="Search"
|
||||
aria-describedby="basic-addon2">
|
||||
<div class="input-group-append">
|
||||
<button class="btn btn-primary" type="button">
|
||||
<i class="fas fa-search fa-sm"></i>
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</li>
|
||||
|
||||
<!-- Nav Item - Alerts -->
|
||||
<li class="nav-item dropdown no-arrow mx-1">
|
||||
<a class="nav-link dropdown-toggle" href="#" id="alertsDropdown" role="button"
|
||||
data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
|
||||
<i class="fas fa-bell fa-fw"></i>
|
||||
<!-- Counter - Alerts -->
|
||||
<span class="badge badge-danger badge-counter">3+</span>
|
||||
</a>
|
||||
<!-- Dropdown - Alerts -->
|
||||
<div class="dropdown-list dropdown-menu dropdown-menu-right shadow animated--grow-in"
|
||||
aria-labelledby="alertsDropdown">
|
||||
<h6 class="dropdown-header">
|
||||
Alerts Center
|
||||
</h6>
|
||||
<a class="dropdown-item d-flex align-items-center" href="#">
|
||||
<div class="mr-3">
|
||||
<div class="icon-circle bg-primary">
|
||||
<i class="fas fa-file-alt text-white"></i>
|
||||
</div>
|
||||
</div>
|
||||
<div>
|
||||
<div class="small text-gray-500">December 12, 2019</div>
|
||||
<span class="font-weight-bold">A new monthly report is ready to download!</span>
|
||||
</div>
|
||||
</a>
|
||||
<a class="dropdown-item d-flex align-items-center" href="#">
|
||||
<div class="mr-3">
|
||||
<div class="icon-circle bg-success">
|
||||
<i class="fas fa-donate text-white"></i>
|
||||
</div>
|
||||
</div>
|
||||
<div>
|
||||
<div class="small text-gray-500">December 7, 2019</div>
|
||||
$290.29 has been deposited into your account!
|
||||
</div>
|
||||
</a>
|
||||
<a class="dropdown-item d-flex align-items-center" href="#">
|
||||
<div class="mr-3">
|
||||
<div class="icon-circle bg-warning">
|
||||
<i class="fas fa-exclamation-triangle text-white"></i>
|
||||
</div>
|
||||
</div>
|
||||
<div>
|
||||
<div class="small text-gray-500">December 2, 2019</div>
|
||||
Spending Alert: We've noticed unusually high spending for your account.
|
||||
</div>
|
||||
</a>
|
||||
<a class="dropdown-item text-center small text-gray-500" href="#">Show All Alerts</a>
|
||||
</div>
|
||||
</li>
|
||||
|
||||
<!-- Nav Item - Messages -->
|
||||
<li class="nav-item dropdown no-arrow mx-1">
|
||||
<a class="nav-link dropdown-toggle" href="#" id="messagesDropdown" role="button"
|
||||
data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
|
||||
<i class="fas fa-envelope fa-fw"></i>
|
||||
<!-- Counter - Messages -->
|
||||
<span class="badge badge-danger badge-counter">7</span>
|
||||
</a>
|
||||
<!-- Dropdown - Messages -->
|
||||
<div class="dropdown-list dropdown-menu dropdown-menu-right shadow animated--grow-in"
|
||||
aria-labelledby="messagesDropdown">
|
||||
<h6 class="dropdown-header">
|
||||
Message Center
|
||||
</h6>
|
||||
<a class="dropdown-item d-flex align-items-center" href="#">
|
||||
<div class="dropdown-list-image mr-3">
|
||||
<img class="rounded-circle" src="img/undraw_profile_1.svg"
|
||||
alt="...">
|
||||
<div class="status-indicator bg-success"></div>
|
||||
</div>
|
||||
<div class="font-weight-bold">
|
||||
<div class="text-truncate">Hi there! I am wondering if you can help me with a
|
||||
problem I've been having.</div>
|
||||
<div class="small text-gray-500">Emily Fowler · 58m</div>
|
||||
</div>
|
||||
</a>
|
||||
<a class="dropdown-item d-flex align-items-center" href="#">
|
||||
<div class="dropdown-list-image mr-3">
|
||||
<img class="rounded-circle" src="img/undraw_profile_2.svg"
|
||||
alt="...">
|
||||
<div class="status-indicator"></div>
|
||||
</div>
|
||||
<div>
|
||||
<div class="text-truncate">I have the photos that you ordered last month, how
|
||||
would you like them sent to you?</div>
|
||||
<div class="small text-gray-500">Jae Chun · 1d</div>
|
||||
</div>
|
||||
</a>
|
||||
<a class="dropdown-item d-flex align-items-center" href="#">
|
||||
<div class="dropdown-list-image mr-3">
|
||||
<img class="rounded-circle" src="img/undraw_profile_3.svg"
|
||||
alt="...">
|
||||
<div class="status-indicator bg-warning"></div>
|
||||
</div>
|
||||
<div>
|
||||
<div class="text-truncate">Last month's report looks great, I am very happy with
|
||||
the progress so far, keep up the good work!</div>
|
||||
<div class="small text-gray-500">Morgan Alvarez · 2d</div>
|
||||
</div>
|
||||
</a>
|
||||
<a class="dropdown-item d-flex align-items-center" href="#">
|
||||
<div class="dropdown-list-image mr-3">
|
||||
<img class="rounded-circle" src="https://source.unsplash.com/Mv9hjnEUHR4/60x60"
|
||||
alt="...">
|
||||
<div class="status-indicator bg-success"></div>
|
||||
</div>
|
||||
<div>
|
||||
<div class="text-truncate">Am I a good boy? The reason I ask is because someone
|
||||
told me that people say this to all dogs, even if they aren't good...</div>
|
||||
<div class="small text-gray-500">Chicken the Dog · 2w</div>
|
||||
</div>
|
||||
</a>
|
||||
<a class="dropdown-item text-center small text-gray-500" href="#">Read More Messages</a>
|
||||
</div>
|
||||
</li>
|
||||
|
||||
<div class="topbar-divider d-none d-sm-block"></div>
|
||||
|
||||
<!-- Nav Item - User Information -->
|
||||
<li class="nav-item dropdown no-arrow">
|
||||
<a class="nav-link dropdown-toggle" href="#" id="userDropdown" role="button"
|
||||
data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
|
||||
<span class="mr-2 d-none d-lg-inline text-gray-600 small">Douglas McGee</span>
|
||||
<img class="img-profile rounded-circle"
|
||||
src="img/undraw_profile.svg">
|
||||
</a>
|
||||
<!-- Dropdown - User Information -->
|
||||
<div class="dropdown-menu dropdown-menu-right shadow animated--grow-in"
|
||||
aria-labelledby="userDropdown">
|
||||
<a class="dropdown-item" href="#">
|
||||
<i class="fas fa-user fa-sm fa-fw mr-2 text-gray-400"></i>
|
||||
Profile
|
||||
</a>
|
||||
<a class="dropdown-item" href="#">
|
||||
<i class="fas fa-cogs fa-sm fa-fw mr-2 text-gray-400"></i>
|
||||
Settings
|
||||
</a>
|
||||
<a class="dropdown-item" href="#">
|
||||
<i class="fas fa-list fa-sm fa-fw mr-2 text-gray-400"></i>
|
||||
Activity Log
|
||||
</a>
|
||||
<div class="dropdown-divider"></div>
|
||||
<a class="dropdown-item" href="#" data-toggle="modal" data-target="#logoutModal">
|
||||
<i class="fas fa-sign-out-alt fa-sm fa-fw mr-2 text-gray-400"></i>
|
||||
Logout
|
||||
</a>
|
||||
</div>
|
||||
</li>
|
||||
|
||||
</ul>
|
||||
|
||||
</nav>
|
||||
<!-- End of Topbar -->
|
||||
|
||||
<!-- Begin Page Content -->
|
||||
<div class="container-fluid">
|
||||
|
||||
<!-- Page Heading -->
|
||||
<h1 class="h3 mb-1 text-gray-800">Animation Utilities</h1>
|
||||
<p class="mb-4">Bootstrap's default utility classes can be found on the official <a
|
||||
href="https://getbootstrap.com/docs">Bootstrap Documentation</a> page. The custom utilities
|
||||
below were created to extend this theme past the default utility classes built into Bootstrap's
|
||||
framework.</p>
|
||||
|
||||
<!-- Content Row -->
|
||||
<div class="row">
|
||||
|
||||
<!-- Grow In Utility -->
|
||||
<div class="col-lg-6">
|
||||
|
||||
<div class="card position-relative">
|
||||
<div class="card-header py-3">
|
||||
<h6 class="m-0 font-weight-bold text-primary">Grow In Animation Utilty</h6>
|
||||
</div>
|
||||
<div class="card-body">
|
||||
<div class="mb-3">
|
||||
<code>.animated--grow-in</code>
|
||||
</div>
|
||||
<div class="small mb-1">Navbar Dropdown Example:</div>
|
||||
<nav class="navbar navbar-expand navbar-light bg-light mb-4">
|
||||
<a class="navbar-brand" href="#">Navbar</a>
|
||||
<ul class="navbar-nav ml-auto">
|
||||
<li class="nav-item dropdown">
|
||||
<a class="nav-link dropdown-toggle" href="#" id="navbarDropdown"
|
||||
role="button" data-toggle="dropdown" aria-haspopup="true"
|
||||
aria-expanded="false">
|
||||
Dropdown
|
||||
</a>
|
||||
<div class="dropdown-menu dropdown-menu-right animated--grow-in"
|
||||
aria-labelledby="navbarDropdown">
|
||||
<a class="dropdown-item" href="#">Action</a>
|
||||
<a class="dropdown-item" href="#">Another action</a>
|
||||
<div class="dropdown-divider"></div>
|
||||
<a class="dropdown-item" href="#">Something else here</a>
|
||||
</div>
|
||||
</li>
|
||||
</ul>
|
||||
</nav>
|
||||
<p class="mb-0 small">Note: This utility animates the CSS transform property,
|
||||
meaning it will override any existing transforms on an element being animated!
|
||||
In this theme, the grow in animation is only being used on dropdowns within the
|
||||
navbar.</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<!-- Fade In Utility -->
|
||||
<div class="col-lg-6">
|
||||
|
||||
<div class="card position-relative">
|
||||
<div class="card-header py-3">
|
||||
<h6 class="m-0 font-weight-bold text-primary">Fade In Animation Utilty</h6>
|
||||
</div>
|
||||
<div class="card-body">
|
||||
<div class="mb-3">
|
||||
<code>.animated--fade-in</code>
|
||||
</div>
|
||||
<div class="small mb-1">Navbar Dropdown Example:</div>
|
||||
<nav class="navbar navbar-expand navbar-light bg-light mb-4">
|
||||
<a class="navbar-brand" href="#">Navbar</a>
|
||||
<ul class="navbar-nav ml-auto">
|
||||
<li class="nav-item dropdown">
|
||||
<a class="nav-link dropdown-toggle" href="#" id="navbarDropdown"
|
||||
role="button" data-toggle="dropdown" aria-haspopup="true"
|
||||
aria-expanded="false">
|
||||
Dropdown
|
||||
</a>
|
||||
<div class="dropdown-menu dropdown-menu-right animated--fade-in"
|
||||
aria-labelledby="navbarDropdown">
|
||||
<a class="dropdown-item" href="#">Action</a>
|
||||
<a class="dropdown-item" href="#">Another action</a>
|
||||
<div class="dropdown-divider"></div>
|
||||
<a class="dropdown-item" href="#">Something else here</a>
|
||||
</div>
|
||||
</li>
|
||||
</ul>
|
||||
</nav>
|
||||
<div class="small mb-1">Dropdown Button Example:</div>
|
||||
<div class="dropdown mb-4">
|
||||
<button class="btn btn-primary dropdown-toggle" type="button"
|
||||
id="dropdownMenuButton" data-toggle="dropdown" aria-haspopup="true"
|
||||
aria-expanded="false">
|
||||
Dropdown
|
||||
</button>
|
||||
<div class="dropdown-menu animated--fade-in"
|
||||
aria-labelledby="dropdownMenuButton">
|
||||
<a class="dropdown-item" href="#">Action</a>
|
||||
<a class="dropdown-item" href="#">Another action</a>
|
||||
<a class="dropdown-item" href="#">Something else here</a>
|
||||
</div>
|
||||
</div>
|
||||
<p class="mb-0 small">Note: This utility animates the CSS opacity property, meaning
|
||||
it will override any existing opacity on an element being animated!</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
<!-- /.container-fluid -->
|
||||
|
||||
</div>
|
||||
<!-- End of Main Content -->
|
||||
|
||||
<!-- Footer -->
|
||||
<footer class="sticky-footer bg-white">
|
||||
<div class="container my-auto">
|
||||
<div class="copyright text-center my-auto">
|
||||
<span>Copyright © Your Website 2020</span>
|
||||
</div>
|
||||
</div>
|
||||
</footer>
|
||||
<!-- End of Footer -->
|
||||
|
||||
</div>
|
||||
<!-- End of Content Wrapper -->
|
||||
|
||||
</div>
|
||||
<!-- End of Page Wrapper -->
|
||||
|
||||
<!-- Scroll to Top Button-->
|
||||
<a class="scroll-to-top rounded" href="#page-top">
|
||||
<i class="fas fa-angle-up"></i>
|
||||
</a>
|
||||
|
||||
<!-- Logout Modal-->
|
||||
<div class="modal fade" id="logoutModal" tabindex="-1" role="dialog" aria-labelledby="exampleModalLabel"
|
||||
aria-hidden="true">
|
||||
<div class="modal-dialog" role="document">
|
||||
<div class="modal-content">
|
||||
<div class="modal-header">
|
||||
<h5 class="modal-title" id="exampleModalLabel">Ready to Leave?</h5>
|
||||
<button class="close" type="button" data-dismiss="modal" aria-label="Close">
|
||||
<span aria-hidden="true">×</span>
|
||||
</button>
|
||||
</div>
|
||||
<div class="modal-body">Select "Logout" below if you are ready to end your current session.</div>
|
||||
<div class="modal-footer">
|
||||
<button class="btn btn-secondary" type="button" data-dismiss="modal">Cancel</button>
|
||||
<a class="btn btn-primary" href="login.html">Logout</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- Bootstrap core JavaScript-->
|
||||
<script src="vendor/jquery/jquery.min.js"></script>
|
||||
<script src="vendor/bootstrap/js/bootstrap.bundle.min.js"></script>
|
||||
|
||||
<!-- Core plugin JavaScript-->
|
||||
<script src="vendor/jquery-easing/jquery.easing.min.js"></script>
|
||||
|
||||
<!-- Custom scripts for all pages-->
|
||||
<script src="js/sb-admin-2.min.js"></script>
|
||||
|
||||
</body>
|
||||
{% endblock %}
|
||||
<script src="{{ asset('assets/js/bootstrap.bundle.min.js.js') }}" integrity="sha384-MrcW6ZMFYlzcLA8Nl+NtUVF0sA7MsXsP1UyJoMp4YLEuNSfAP+JcXn/tWtIaxVXM" crossorigin="anonymous"></script>
|
||||
</html>
|
||||
76
templates/backend_admin/demo/authentication.html.twig
Normal file
76
templates/backend_admin/demo/authentication.html.twig
Normal file
@@ -0,0 +1,76 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<title>{% block title %}Welcome!{% endblock %}</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
{% block stylesheets %}
|
||||
{{ encore_entry_link_tags('app_backend') }}
|
||||
{% endblock %}
|
||||
|
||||
{% block javascripts %}
|
||||
{{ encore_entry_script_tags('app_backend') }}
|
||||
{% endblock %}
|
||||
|
||||
</head>
|
||||
|
||||
{% block body %}
|
||||
|
||||
<body class="bg-gradient-primary">
|
||||
|
||||
<div class="container">
|
||||
|
||||
<!-- Outer Row -->
|
||||
<div class="row justify-content-center mt-5">
|
||||
|
||||
<div class="col-xl-5 col-lg-12 col-md-8 mt-5">
|
||||
|
||||
<!-- Nested Row within Card Body -->
|
||||
<div class="row">
|
||||
|
||||
<div class="card radius-10">
|
||||
<div class="card-body p-4">
|
||||
<div class="text-center">
|
||||
<h1 class="h3 mb-0 text-gray-800">Connexion</h1>
|
||||
<p>connexion a votre compte admin</p>
|
||||
</div>
|
||||
<form class="form-body row g-3">
|
||||
<div class="col-12">
|
||||
<label for="inputEmail" class="form-label">Email</label>
|
||||
<input type="email" class="form-control" id="inputEmail">
|
||||
</div>
|
||||
<div class="col-12">
|
||||
<label for="inputPassword" class="form-label">Mot de passe</label>
|
||||
<input type="password" class="form-control" id="inputPassword">
|
||||
</div>
|
||||
<div class="col-12 col-lg-6">
|
||||
<div class="form-check form-switch">
|
||||
<input class="form-check-input" type="checkbox" role="switch" id="flexSwitchCheckRemember">
|
||||
<label class="form-check-label" for="flexSwitchCheckRemember">Rester connecté</label>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-12 col-lg-6 text-end">
|
||||
<a href="authentication-reset-password-simple.html">mot de passe oublié ?</a>
|
||||
</div>
|
||||
<div class="col-12 col-lg-12">
|
||||
<div class="d-grid">
|
||||
<button type="button" class="btn btn-primary">connexion</button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</body>
|
||||
|
||||
{% endblock %}
|
||||
<script src="{{ asset('assets/js/bootstrap.bundle.min.js.js') }}" integrity="sha384-MrcW6ZMFYlzcLA8Nl+NtUVF0sA7MsXsP1UyJoMp4YLEuNSfAP+JcXn/tWtIaxVXM" crossorigin="anonymous"></script>
|
||||
</html>
|
||||
282
templates/backend_admin/demo/bootstrap.html.twig
Normal file
282
templates/backend_admin/demo/bootstrap.html.twig
Normal file
@@ -0,0 +1,282 @@
|
||||
|
||||
{% extends 'base_backend_admin.html.twig' %}
|
||||
|
||||
{% block title %}Hello HomeController!
|
||||
{% endblock %}
|
||||
|
||||
{% block body %}
|
||||
<div class="container">
|
||||
<nav class="navbar fixed-top navbar-expand-lg navbar-light bg-light">
|
||||
<div class="container-fluid">
|
||||
<a class="navbar-brand" href="#">Navbar</a>
|
||||
<button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarSupportedContent" aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation">
|
||||
<span class="navbar-toggler-icon"></span>
|
||||
</button>
|
||||
<div class="collapse navbar-collapse" id="navbarSupportedContent">
|
||||
<ul class="navbar-nav me-auto mb-2 mb-lg-0">
|
||||
<li class="nav-item">
|
||||
<a class="nav-link active" aria-current="page" href="#">Home</a>
|
||||
</li>
|
||||
<li class="nav-item">
|
||||
<a class="nav-link" href="#">Link</a>
|
||||
</li>
|
||||
<li class="nav-item dropdown">
|
||||
<a class="nav-link dropdown-toggle" href="#" id="navbarDropdown" role="button" data-bs-toggle="dropdown" aria-expanded="false">
|
||||
Dropdown
|
||||
</a>
|
||||
<ul class="dropdown-menu" aria-labelledby="navbarDropdown">
|
||||
<li>
|
||||
<a class="dropdown-item" href="#">Action</a>
|
||||
</li>
|
||||
<li>
|
||||
<a class="dropdown-item" href="#">Another action</a>
|
||||
</li>
|
||||
<li><hr class="dropdown-divider"></li>
|
||||
<li>
|
||||
<a class="dropdown-item" href="#">Something else here</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="nav-item">
|
||||
<a class="nav-link disabled" href="#" tabindex="-1" aria-disabled="true">Disabled</a>
|
||||
</li>
|
||||
</ul>
|
||||
<form class="d-flex">
|
||||
<input class="form-control me-2" type="search" placeholder="Search" aria-label="Search">
|
||||
<button class="btn btn-outline-success" type="submit">Search</button>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
</nav>
|
||||
<main>
|
||||
<div class="py-5 text-center mt-5">
|
||||
<h2>Checkout form</h2>
|
||||
<p class="lead">Below is an example form built entirely with Bootstrap’s form controls. Each required form group has a validation state that can be triggered by attempting to submit the form without completing it.</p>
|
||||
</div>
|
||||
|
||||
<div class="row g-3">
|
||||
<div class="col-md-5 col-lg-4 order-md-last">
|
||||
<h4 class="d-flex justify-content-between align-items-center mb-3">
|
||||
<span class="text-muted">Your cart</span>
|
||||
<span class="badge bg-secondary rounded-pill">3</span>
|
||||
</h4>
|
||||
<ul class="list-group mb-3">
|
||||
<li class="list-group-item d-flex justify-content-between lh-sm">
|
||||
<div>
|
||||
<h6 class="my-0">Product name</h6>
|
||||
<small class="text-muted">Brief description</small>
|
||||
</div>
|
||||
<span class="text-muted">$12</span>
|
||||
</li>
|
||||
<li class="list-group-item d-flex justify-content-between lh-sm">
|
||||
<div>
|
||||
<h6 class="my-0">Second product</h6>
|
||||
<small class="text-muted">Brief description</small>
|
||||
</div>
|
||||
<span class="text-muted">$8</span>
|
||||
</li>
|
||||
<li class="list-group-item d-flex justify-content-between lh-sm">
|
||||
<div>
|
||||
<h6 class="my-0">Third item</h6>
|
||||
<small class="text-muted">Brief description</small>
|
||||
</div>
|
||||
<span class="text-muted">$5</span>
|
||||
</li>
|
||||
<li class="list-group-item d-flex justify-content-between bg-light">
|
||||
<div class="text-success">
|
||||
<h6 class="my-0">Promo code</h6>
|
||||
<small>EXAMPLECODE</small>
|
||||
</div>
|
||||
<span class="text-success">−$5</span>
|
||||
</li>
|
||||
<li class="list-group-item d-flex justify-content-between">
|
||||
<span>Total (USD)</span>
|
||||
<strong>$20</strong>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<form class="card p-2">
|
||||
<div class="input-group">
|
||||
<input type="text" class="form-control" placeholder="Promo code">
|
||||
<button type="submit" class="btn btn-secondary">Redeem</button>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
<div class="col-md-7 col-lg-8">
|
||||
<h4 class="mb-3">Billing address</h4>
|
||||
<form class="needs-validation" novalidate>
|
||||
<div class="row g-3">
|
||||
<div class="col-sm-6">
|
||||
<label for="firstName" class="form-label">First name</label>
|
||||
<input type="text" class="form-control" id="firstName" placeholder="" value="" required>
|
||||
<div class="invalid-feedback">
|
||||
Valid first name is required.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-sm-6">
|
||||
<label for="lastName" class="form-label">Last name</label>
|
||||
<input type="text" class="form-control" id="lastName" placeholder="" value="" required>
|
||||
<div class="invalid-feedback">
|
||||
Valid last name is required.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-12">
|
||||
<label for="username" class="form-label">Username</label>
|
||||
<div class="input-group">
|
||||
<span class="input-group-text">@</span>
|
||||
<input type="text" class="form-control" id="username" placeholder="Username" required>
|
||||
<div class="invalid-feedback">
|
||||
Your username is required.
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-12">
|
||||
<label for="email" class="form-label">Email
|
||||
<span class="text-muted">(Optional)</span>
|
||||
</label>
|
||||
<input type="email" class="form-control" id="email" placeholder="you@example.com">
|
||||
<div class="invalid-feedback">
|
||||
Please enter a valid email address for shipping updates.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-12">
|
||||
<label for="address" class="form-label">Address</label>
|
||||
<input type="text" class="form-control" id="address" placeholder="1234 Main St" required>
|
||||
<div class="invalid-feedback">
|
||||
Please enter your shipping address.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-12">
|
||||
<label for="address2" class="form-label">Address 2
|
||||
<span class="text-muted">(Optional)</span>
|
||||
</label>
|
||||
<input type="text" class="form-control" id="address2" placeholder="Apartment or suite">
|
||||
</div>
|
||||
|
||||
<div class="col-md-5">
|
||||
<label for="country" class="form-label">Country</label>
|
||||
<select class="form-select" id="country" required>
|
||||
<option value="">Choose...</option>
|
||||
<option>United States</option>
|
||||
</select>
|
||||
<div class="invalid-feedback">
|
||||
Please select a valid country.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-md-4">
|
||||
<label for="state" class="form-label">State</label>
|
||||
<select class="form-select" id="state" required>
|
||||
<option value="">Choose...</option>
|
||||
<option>California</option>
|
||||
</select>
|
||||
<div class="invalid-feedback">
|
||||
Please provide a valid state.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-md-3">
|
||||
<label for="zip" class="form-label">Zip</label>
|
||||
<input type="text" class="form-control" id="zip" placeholder="" required>
|
||||
<div class="invalid-feedback">
|
||||
Zip code required.
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<hr class="my-4">
|
||||
|
||||
<div class="form-check">
|
||||
<input type="checkbox" class="form-check-input" id="same-address">
|
||||
<label class="form-check-label" for="same-address">Shipping address is the same as my billing address</label>
|
||||
</div>
|
||||
|
||||
<div class="form-check">
|
||||
<input type="checkbox" class="form-check-input" id="save-info">
|
||||
<label class="form-check-label" for="save-info">Save this information for next time</label>
|
||||
</div>
|
||||
|
||||
<hr class="my-4">
|
||||
|
||||
<h4 class="mb-3">Payment</h4>
|
||||
|
||||
<div class="my-3">
|
||||
<div class="form-check">
|
||||
<input id="credit" name="paymentMethod" type="radio" class="form-check-input" checked required>
|
||||
<label class="form-check-label" for="credit">Credit card</label>
|
||||
</div>
|
||||
<div class="form-check">
|
||||
<input id="debit" name="paymentMethod" type="radio" class="form-check-input" required>
|
||||
<label class="form-check-label" for="debit">Debit card</label>
|
||||
</div>
|
||||
<div class="form-check">
|
||||
<input id="paypal" name="paymentMethod" type="radio" class="form-check-input" required>
|
||||
<label class="form-check-label" for="paypal">PayPal</label>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row gy-3">
|
||||
<div class="col-md-6">
|
||||
<label for="cc-name" class="form-label">Name on card</label>
|
||||
<input type="text" class="form-control" id="cc-name" placeholder="" required>
|
||||
<small class="text-muted">Full name as displayed on card</small>
|
||||
<div class="invalid-feedback">
|
||||
Name on card is required
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-md-6">
|
||||
<label for="cc-number" class="form-label">Credit card number</label>
|
||||
<input type="text" class="form-control" id="cc-number" placeholder="" required>
|
||||
<div class="invalid-feedback">
|
||||
Credit card number is required
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-md-3">
|
||||
<label for="cc-expiration" class="form-label">Expiration</label>
|
||||
<input type="text" class="form-control" id="cc-expiration" placeholder="" required>
|
||||
<div class="invalid-feedback">
|
||||
Expiration date required
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-md-3">
|
||||
<label for="cc-cvv" class="form-label">CVV</label>
|
||||
<input type="text" class="form-control" id="cc-cvv" placeholder="" required>
|
||||
<div class="invalid-feedback">
|
||||
Security code required
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<hr class="my-4">
|
||||
|
||||
<button class="w-100 btn btn-primary btn-lg" type="submit">Continue to checkout</button>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
</main>
|
||||
|
||||
<footer class="my-5 pt-5 text-muted text-center text-small">
|
||||
<p class="mb-1">© 2017–2020 Company Name</p>
|
||||
<ul class="list-inline">
|
||||
<li class="list-inline-item">
|
||||
<a href="#">Privacy</a>
|
||||
</li>
|
||||
<li class="list-inline-item">
|
||||
<a href="#">Terms</a>
|
||||
</li>
|
||||
<li class="list-inline-item">
|
||||
<a href="#">Support</a>
|
||||
</li>
|
||||
</ul>
|
||||
</footer>
|
||||
</div>
|
||||
|
||||
{% endblock %}
|
||||
522
templates/backend_admin/demo/border.html.twig
Normal file
522
templates/backend_admin/demo/border.html.twig
Normal file
@@ -0,0 +1,522 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<title>{% block title %}utilities-border !{% endblock %}</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
{% block stylesheets %}
|
||||
{{ encore_entry_link_tags('app_backend') }}
|
||||
{% endblock %}
|
||||
|
||||
{% block javascripts %}
|
||||
{{ encore_entry_script_tags('app_backend') }}
|
||||
{% endblock %}
|
||||
|
||||
</head>
|
||||
|
||||
{% block body %}
|
||||
<body id="page-top">
|
||||
|
||||
<!-- Page Wrapper -->
|
||||
<div id="wrapper">
|
||||
|
||||
<!-- Sidebar -->
|
||||
<ul class="navbar-nav bg-gradient-primary sidebar sidebar-dark accordion" id="accordionSidebar">
|
||||
|
||||
<!-- Sidebar - Brand -->
|
||||
<a class="sidebar-brand d-flex align-items-center justify-content-center" href="index.html">
|
||||
<div class="sidebar-brand-icon rotate-n-15">
|
||||
<i class="fas fa-laugh-wink"></i>
|
||||
</div>
|
||||
<div class="sidebar-brand-text mx-3">SB Admin <sup>2</sup></div>
|
||||
</a>
|
||||
|
||||
<!-- Divider -->
|
||||
<hr class="sidebar-divider my-0">
|
||||
|
||||
<!-- Nav Item - Dashboard -->
|
||||
<li class="nav-item">
|
||||
<a class="nav-link" href="index.html">
|
||||
<i class="fas fa-fw fa-tachometer-alt"></i>
|
||||
<span>Dashboard</span></a>
|
||||
</li>
|
||||
|
||||
<!-- Divider -->
|
||||
<hr class="sidebar-divider">
|
||||
|
||||
<!-- Heading -->
|
||||
<div class="sidebar-heading">
|
||||
Interface
|
||||
</div>
|
||||
|
||||
<!-- Nav Item - Pages Collapse Menu -->
|
||||
<li class="nav-item">
|
||||
<a class="nav-link collapsed" href="#" data-toggle="collapse" data-target="#collapseTwo"
|
||||
aria-expanded="true" aria-controls="collapseTwo">
|
||||
<i class="fas fa-fw fa-cog"></i>
|
||||
<span>Components</span>
|
||||
</a>
|
||||
<div id="collapseTwo" class="collapse" aria-labelledby="headingTwo" data-parent="#accordionSidebar">
|
||||
<div class="bg-white py-2 collapse-inner rounded">
|
||||
<h6 class="collapse-header">Custom Components:</h6>
|
||||
<a class="collapse-item" href="buttons.html">Buttons</a>
|
||||
<a class="collapse-item" href="cards.html">Cards</a>
|
||||
</div>
|
||||
</div>
|
||||
</li>
|
||||
|
||||
<!-- Nav Item - Utilities Collapse Menu -->
|
||||
<li class="nav-item active">
|
||||
<a class="nav-link" href="#" data-toggle="collapse" data-target="#collapseUtilities"
|
||||
aria-expanded="true" aria-controls="collapseUtilities">
|
||||
<i class="fas fa-fw fa-wrench"></i>
|
||||
<span>Utilities</span>
|
||||
</a>
|
||||
<div id="collapseUtilities" class="collapse show" aria-labelledby="headingUtilities"
|
||||
data-parent="#accordionSidebar">
|
||||
<div class="bg-white py-2 collapse-inner rounded">
|
||||
<h6 class="collapse-header">Custom Utilities:</h6>
|
||||
<a class="collapse-item" href="utilities-color.html">Colors</a>
|
||||
<a class="collapse-item active" href="utilities-border.html">Borders</a>
|
||||
<a class="collapse-item" href="utilities-animation.html">Animations</a>
|
||||
<a class="collapse-item" href="utilities-other.html">Other</a>
|
||||
</div>
|
||||
</div>
|
||||
</li>
|
||||
|
||||
<!-- Divider -->
|
||||
<hr class="sidebar-divider">
|
||||
|
||||
<!-- Heading -->
|
||||
<div class="sidebar-heading">
|
||||
Addons
|
||||
</div>
|
||||
|
||||
<!-- Nav Item - Pages Collapse Menu -->
|
||||
<li class="nav-item">
|
||||
<a class="nav-link collapsed" href="#" data-toggle="collapse" data-target="#collapsePages"
|
||||
aria-expanded="true" aria-controls="collapsePages">
|
||||
<i class="fas fa-fw fa-folder"></i>
|
||||
<span>Pages</span>
|
||||
</a>
|
||||
<div id="collapsePages" class="collapse" aria-labelledby="headingPages" data-parent="#accordionSidebar">
|
||||
<div class="bg-white py-2 collapse-inner rounded">
|
||||
<h6 class="collapse-header">Login Screens:</h6>
|
||||
<a class="collapse-item" href="login.html">Login</a>
|
||||
<a class="collapse-item" href="register.html">Register</a>
|
||||
<a class="collapse-item" href="forgot-password.html">Forgot Password</a>
|
||||
<div class="collapse-divider"></div>
|
||||
<h6 class="collapse-header">Other Pages:</h6>
|
||||
<a class="collapse-item" href="404.html">404 Page</a>
|
||||
<a class="collapse-item" href="blank.html">Blank Page</a>
|
||||
</div>
|
||||
</div>
|
||||
</li>
|
||||
|
||||
<!-- Nav Item - Charts -->
|
||||
<li class="nav-item">
|
||||
<a class="nav-link" href="charts.html">
|
||||
<i class="fas fa-fw fa-chart-area"></i>
|
||||
<span>Charts</span></a>
|
||||
</li>
|
||||
|
||||
<!-- Nav Item - Tables -->
|
||||
<li class="nav-item">
|
||||
<a class="nav-link" href="tables.html">
|
||||
<i class="fas fa-fw fa-table"></i>
|
||||
<span>Tables</span></a>
|
||||
</li>
|
||||
|
||||
<!-- Divider -->
|
||||
<hr class="sidebar-divider d-none d-md-block">
|
||||
|
||||
<!-- Sidebar Toggler (Sidebar) -->
|
||||
<div class="text-center d-none d-md-inline">
|
||||
<button class="rounded-circle border-0" id="sidebarToggle"></button>
|
||||
</div>
|
||||
|
||||
</ul>
|
||||
<!-- End of Sidebar -->
|
||||
|
||||
<!-- Content Wrapper -->
|
||||
<div id="content-wrapper" class="d-flex flex-column">
|
||||
|
||||
<!-- Main Content -->
|
||||
<div id="content">
|
||||
|
||||
<!-- Topbar -->
|
||||
<nav class="navbar navbar-expand navbar-light bg-white topbar mb-4 static-top shadow">
|
||||
|
||||
<!-- Sidebar Toggle (Topbar) -->
|
||||
<button id="sidebarToggleTop" class="btn btn-link d-md-none rounded-circle mr-3">
|
||||
<i class="fa fa-bars"></i>
|
||||
</button>
|
||||
|
||||
<!-- Topbar Search -->
|
||||
<form
|
||||
class="d-none d-sm-inline-block form-inline mr-auto ml-md-3 my-2 my-md-0 mw-100 navbar-search">
|
||||
<div class="input-group">
|
||||
<input type="text" class="form-control bg-light border-0 small" placeholder="Search for..."
|
||||
aria-label="Search" aria-describedby="basic-addon2">
|
||||
<div class="input-group-append">
|
||||
<button class="btn btn-primary" type="button">
|
||||
<i class="fas fa-search fa-sm"></i>
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
|
||||
<!-- Topbar Navbar -->
|
||||
<ul class="navbar-nav ml-auto">
|
||||
|
||||
<!-- Nav Item - Search Dropdown (Visible Only XS) -->
|
||||
<li class="nav-item dropdown no-arrow d-sm-none">
|
||||
<a class="nav-link dropdown-toggle" href="#" id="searchDropdown" role="button"
|
||||
data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
|
||||
<i class="fas fa-search fa-fw"></i>
|
||||
</a>
|
||||
<!-- Dropdown - Messages -->
|
||||
<div class="dropdown-menu dropdown-menu-right p-3 shadow animated--grow-in"
|
||||
aria-labelledby="searchDropdown">
|
||||
<form class="form-inline mr-auto w-100 navbar-search">
|
||||
<div class="input-group">
|
||||
<input type="text" class="form-control bg-light border-0 small"
|
||||
placeholder="Search for..." aria-label="Search"
|
||||
aria-describedby="basic-addon2">
|
||||
<div class="input-group-append">
|
||||
<button class="btn btn-primary" type="button">
|
||||
<i class="fas fa-search fa-sm"></i>
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</li>
|
||||
|
||||
<!-- Nav Item - Alerts -->
|
||||
<li class="nav-item dropdown no-arrow mx-1">
|
||||
<a class="nav-link dropdown-toggle" href="#" id="alertsDropdown" role="button"
|
||||
data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
|
||||
<i class="fas fa-bell fa-fw"></i>
|
||||
<!-- Counter - Alerts -->
|
||||
<span class="badge badge-danger badge-counter">3+</span>
|
||||
</a>
|
||||
<!-- Dropdown - Alerts -->
|
||||
<div class="dropdown-list dropdown-menu dropdown-menu-right shadow animated--grow-in"
|
||||
aria-labelledby="alertsDropdown">
|
||||
<h6 class="dropdown-header">
|
||||
Alerts Center
|
||||
</h6>
|
||||
<a class="dropdown-item d-flex align-items-center" href="#">
|
||||
<div class="mr-3">
|
||||
<div class="icon-circle bg-primary">
|
||||
<i class="fas fa-file-alt text-white"></i>
|
||||
</div>
|
||||
</div>
|
||||
<div>
|
||||
<div class="small text-gray-500">December 12, 2019</div>
|
||||
<span class="font-weight-bold">A new monthly report is ready to download!</span>
|
||||
</div>
|
||||
</a>
|
||||
<a class="dropdown-item d-flex align-items-center" href="#">
|
||||
<div class="mr-3">
|
||||
<div class="icon-circle bg-success">
|
||||
<i class="fas fa-donate text-white"></i>
|
||||
</div>
|
||||
</div>
|
||||
<div>
|
||||
<div class="small text-gray-500">December 7, 2019</div>
|
||||
$290.29 has been deposited into your account!
|
||||
</div>
|
||||
</a>
|
||||
<a class="dropdown-item d-flex align-items-center" href="#">
|
||||
<div class="mr-3">
|
||||
<div class="icon-circle bg-warning">
|
||||
<i class="fas fa-exclamation-triangle text-white"></i>
|
||||
</div>
|
||||
</div>
|
||||
<div>
|
||||
<div class="small text-gray-500">December 2, 2019</div>
|
||||
Spending Alert: We've noticed unusually high spending for your account.
|
||||
</div>
|
||||
</a>
|
||||
<a class="dropdown-item text-center small text-gray-500" href="#">Show All Alerts</a>
|
||||
</div>
|
||||
</li>
|
||||
|
||||
<!-- Nav Item - Messages -->
|
||||
<li class="nav-item dropdown no-arrow mx-1">
|
||||
<a class="nav-link dropdown-toggle" href="#" id="messagesDropdown" role="button"
|
||||
data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
|
||||
<i class="fas fa-envelope fa-fw"></i>
|
||||
<!-- Counter - Messages -->
|
||||
<span class="badge badge-danger badge-counter">7</span>
|
||||
</a>
|
||||
<!-- Dropdown - Messages -->
|
||||
<div class="dropdown-list dropdown-menu dropdown-menu-right shadow animated--grow-in"
|
||||
aria-labelledby="messagesDropdown">
|
||||
<h6 class="dropdown-header">
|
||||
Message Center
|
||||
</h6>
|
||||
<a class="dropdown-item d-flex align-items-center" href="#">
|
||||
<div class="dropdown-list-image mr-3">
|
||||
<img class="rounded-circle" src="img/undraw_profile_1.svg"
|
||||
alt="...">
|
||||
<div class="status-indicator bg-success"></div>
|
||||
</div>
|
||||
<div class="font-weight-bold">
|
||||
<div class="text-truncate">Hi there! I am wondering if you can help me with a
|
||||
problem I've been having.</div>
|
||||
<div class="small text-gray-500">Emily Fowler · 58m</div>
|
||||
</div>
|
||||
</a>
|
||||
<a class="dropdown-item d-flex align-items-center" href="#">
|
||||
<div class="dropdown-list-image mr-3">
|
||||
<img class="rounded-circle" src="img/undraw_profile_2.svg"
|
||||
alt="...">
|
||||
<div class="status-indicator"></div>
|
||||
</div>
|
||||
<div>
|
||||
<div class="text-truncate">I have the photos that you ordered last month, how
|
||||
would you like them sent to you?</div>
|
||||
<div class="small text-gray-500">Jae Chun · 1d</div>
|
||||
</div>
|
||||
</a>
|
||||
<a class="dropdown-item d-flex align-items-center" href="#">
|
||||
<div class="dropdown-list-image mr-3">
|
||||
<img class="rounded-circle" src="img/undraw_profile_3.svg"
|
||||
alt="...">
|
||||
<div class="status-indicator bg-warning"></div>
|
||||
</div>
|
||||
<div>
|
||||
<div class="text-truncate">Last month's report looks great, I am very happy with
|
||||
the progress so far, keep up the good work!</div>
|
||||
<div class="small text-gray-500">Morgan Alvarez · 2d</div>
|
||||
</div>
|
||||
</a>
|
||||
<a class="dropdown-item d-flex align-items-center" href="#">
|
||||
<div class="dropdown-list-image mr-3">
|
||||
<img class="rounded-circle" src="https://source.unsplash.com/Mv9hjnEUHR4/60x60"
|
||||
alt="...">
|
||||
<div class="status-indicator bg-success"></div>
|
||||
</div>
|
||||
<div>
|
||||
<div class="text-truncate">Am I a good boy? The reason I ask is because someone
|
||||
told me that people say this to all dogs, even if they aren't good...</div>
|
||||
<div class="small text-gray-500">Chicken the Dog · 2w</div>
|
||||
</div>
|
||||
</a>
|
||||
<a class="dropdown-item text-center small text-gray-500" href="#">Read More Messages</a>
|
||||
</div>
|
||||
</li>
|
||||
|
||||
<div class="topbar-divider d-none d-sm-block"></div>
|
||||
|
||||
<!-- Nav Item - User Information -->
|
||||
<li class="nav-item dropdown no-arrow">
|
||||
<a class="nav-link dropdown-toggle" href="#" id="userDropdown" role="button"
|
||||
data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
|
||||
<span class="mr-2 d-none d-lg-inline text-gray-600 small">Douglas McGee</span>
|
||||
<img class="img-profile rounded-circle"
|
||||
src="img/undraw_profile.svg">
|
||||
</a>
|
||||
<!-- Dropdown - User Information -->
|
||||
<div class="dropdown-menu dropdown-menu-right shadow animated--grow-in"
|
||||
aria-labelledby="userDropdown">
|
||||
<a class="dropdown-item" href="#">
|
||||
<i class="fas fa-user fa-sm fa-fw mr-2 text-gray-400"></i>
|
||||
Profile
|
||||
</a>
|
||||
<a class="dropdown-item" href="#">
|
||||
<i class="fas fa-cogs fa-sm fa-fw mr-2 text-gray-400"></i>
|
||||
Settings
|
||||
</a>
|
||||
<a class="dropdown-item" href="#">
|
||||
<i class="fas fa-list fa-sm fa-fw mr-2 text-gray-400"></i>
|
||||
Activity Log
|
||||
</a>
|
||||
<div class="dropdown-divider"></div>
|
||||
<a class="dropdown-item" href="#" data-toggle="modal" data-target="#logoutModal">
|
||||
<i class="fas fa-sign-out-alt fa-sm fa-fw mr-2 text-gray-400"></i>
|
||||
Logout
|
||||
</a>
|
||||
</div>
|
||||
</li>
|
||||
|
||||
</ul>
|
||||
|
||||
</nav>
|
||||
<!-- End of Topbar -->
|
||||
|
||||
<!-- Begin Page Content -->
|
||||
<div class="container-fluid">
|
||||
|
||||
<!-- Page Heading -->
|
||||
<h1 class="h3 mb-1 text-gray-800">Border Utilities</h1>
|
||||
<p class="mb-4">Bootstrap's default utility classes can be found on the official <a
|
||||
href="https://getbootstrap.com/docs">Bootstrap Documentation</a> page. The custom utilities
|
||||
below were created to extend this theme past the default utility classes built into Bootstrap's
|
||||
framework.</p>
|
||||
|
||||
<!-- Content Row -->
|
||||
<div class="row">
|
||||
|
||||
<!-- Border Left Utilities -->
|
||||
<div class="col-lg-6">
|
||||
|
||||
<div class="card mb-4 py-3 border-left-primary">
|
||||
<div class="card-body">
|
||||
.border-left-primary
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="card mb-4 py-3 border-left-secondary">
|
||||
<div class="card-body">
|
||||
.border-left-secondary
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="card mb-4 py-3 border-left-success">
|
||||
<div class="card-body">
|
||||
.border-left-success
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="card mb-4 py-3 border-left-info">
|
||||
<div class="card-body">
|
||||
.border-left-info
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="card mb-4 py-3 border-left-warning">
|
||||
<div class="card-body">
|
||||
.border-left-warning
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="card mb-4 py-3 border-left-danger">
|
||||
<div class="card-body">
|
||||
.border-left-danger
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="card mb-4 py-3 border-left-dark">
|
||||
<div class="card-body">
|
||||
.border-left-dark
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<!-- Border Bottom Utilities -->
|
||||
<div class="col-lg-6">
|
||||
|
||||
<div class="card mb-4 py-3 border-bottom-primary">
|
||||
<div class="card-body">
|
||||
.border-bottom-primary
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="card mb-4 py-3 border-bottom-secondary">
|
||||
<div class="card-body">
|
||||
.border-bottom-secondary
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="card mb-4 py-3 border-bottom-success">
|
||||
<div class="card-body">
|
||||
.border-bottom-success
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="card mb-4 py-3 border-bottom-info">
|
||||
<div class="card-body">
|
||||
.border-bottom-info
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="card mb-4 py-3 border-bottom-warning">
|
||||
<div class="card-body">
|
||||
.border-bottom-warning
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="card mb-4 py-3 border-bottom-danger">
|
||||
<div class="card-body">
|
||||
.border-bottom-danger
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="card mb-4 py-3 border-bottom-dark">
|
||||
<div class="card-body">
|
||||
.border-bottom-dark
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
<!-- /.container-fluid -->
|
||||
|
||||
</div>
|
||||
<!-- End of Main Content -->
|
||||
|
||||
<!-- Footer -->
|
||||
<footer class="sticky-footer bg-white">
|
||||
<div class="container my-auto">
|
||||
<div class="copyright text-center my-auto">
|
||||
<span>Copyright © Your Website 2020</span>
|
||||
</div>
|
||||
</div>
|
||||
</footer>
|
||||
<!-- End of Footer -->
|
||||
|
||||
</div>
|
||||
<!-- End of Content Wrapper -->
|
||||
|
||||
</div>
|
||||
<!-- End of Page Wrapper -->
|
||||
|
||||
<!-- Scroll to Top Button-->
|
||||
<a class="scroll-to-top rounded" href="#page-top">
|
||||
<i class="fas fa-angle-up"></i>
|
||||
</a>
|
||||
|
||||
<!-- Logout Modal-->
|
||||
<div class="modal fade" id="logoutModal" tabindex="-1" role="dialog" aria-labelledby="exampleModalLabel"
|
||||
aria-hidden="true">
|
||||
<div class="modal-dialog" role="document">
|
||||
<div class="modal-content">
|
||||
<div class="modal-header">
|
||||
<h5 class="modal-title" id="exampleModalLabel">Ready to Leave?</h5>
|
||||
<button class="close" type="button" data-dismiss="modal" aria-label="Close">
|
||||
<span aria-hidden="true">×</span>
|
||||
</button>
|
||||
</div>
|
||||
<div class="modal-body">Select "Logout" below if you are ready to end your current session.</div>
|
||||
<div class="modal-footer">
|
||||
<button class="btn btn-secondary" type="button" data-dismiss="modal">Cancel</button>
|
||||
<a class="btn btn-primary" href="login.html">Logout</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- Bootstrap core JavaScript-->
|
||||
<script src="vendor/jquery/jquery.min.js"></script>
|
||||
<script src="vendor/bootstrap/js/bootstrap.bundle.min.js"></script>
|
||||
|
||||
<!-- Core plugin JavaScript-->
|
||||
<script src="vendor/jquery-easing/jquery.easing.min.js"></script>
|
||||
|
||||
<!-- Custom scripts for all pages-->
|
||||
<script src="js/sb-admin-2.min.js"></script>
|
||||
|
||||
</body>
|
||||
|
||||
|
||||
{% endblock %}
|
||||
<script src="{{ asset('assets/js/bootstrap.bundle.min.js.js') }}" integrity="sha384-MrcW6ZMFYlzcLA8Nl+NtUVF0sA7MsXsP1UyJoMp4YLEuNSfAP+JcXn/tWtIaxVXM" crossorigin="anonymous"></script>
|
||||
</html>
|
||||
582
templates/backend_admin/demo/button.html.twig
Normal file
582
templates/backend_admin/demo/button.html.twig
Normal file
@@ -0,0 +1,582 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<title>{% block title %}Button{% endblock %}</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
{% block stylesheets %}
|
||||
{{ encore_entry_link_tags('app_backend') }}
|
||||
{% endblock %}
|
||||
|
||||
{% block javascripts %}
|
||||
{{ encore_entry_script_tags('app_backend') }}
|
||||
{% endblock %}
|
||||
|
||||
</head>
|
||||
{% block body %}
|
||||
<body id="page-top">
|
||||
|
||||
<!-- Page Wrapper -->
|
||||
<div id="wrapper">
|
||||
|
||||
<!-- Sidebar -->
|
||||
<ul class="navbar-nav bg-gradient-primary sidebar sidebar-dark accordion" id="accordionSidebar">
|
||||
|
||||
<!-- Sidebar - Brand -->
|
||||
<a class="sidebar-brand d-flex align-items-center justify-content-center" href="index.html">
|
||||
<div class="sidebar-brand-icon rotate-n-15">
|
||||
<i class="fas fa-laugh-wink"></i>
|
||||
</div>
|
||||
<div class="sidebar-brand-text mx-3">SB Admin <sup>2</sup></div>
|
||||
</a>
|
||||
|
||||
<!-- Divider -->
|
||||
<hr class="sidebar-divider my-0">
|
||||
|
||||
<!-- Nav Item - Dashboard -->
|
||||
<li class="nav-item">
|
||||
<a class="nav-link" href="index.html">
|
||||
<i class="fas fa-fw fa-tachometer-alt"></i>
|
||||
<span>Dashboard</span></a>
|
||||
</li>
|
||||
|
||||
<!-- Divider -->
|
||||
<hr class="sidebar-divider">
|
||||
|
||||
<!-- Heading -->
|
||||
<div class="sidebar-heading">
|
||||
Interface
|
||||
</div>
|
||||
|
||||
<!-- Nav Item - Pages Collapse Menu -->
|
||||
<li class="nav-item active">
|
||||
<a class="nav-link" href="#" data-toggle="collapse" data-target="#collapseTwo" aria-expanded="true"
|
||||
aria-controls="collapseTwo">
|
||||
<i class="fas fa-fw fa-cog"></i>
|
||||
<span>Components</span>
|
||||
</a>
|
||||
<div id="collapseTwo" class="collapse show" aria-labelledby="headingTwo"
|
||||
data-parent="#accordionSidebar">
|
||||
<div class="bg-white py-2 collapse-inner rounded">
|
||||
<h6 class="collapse-header">Custom Components:</h6>
|
||||
<a class="collapse-item active" href="buttons.html">Buttons</a>
|
||||
<a class="collapse-item" href="cards.html">Cards</a>
|
||||
</div>
|
||||
</div>
|
||||
</li>
|
||||
|
||||
<!-- Nav Item - Utilities Collapse Menu -->
|
||||
<li class="nav-item">
|
||||
<a class="nav-link collapsed" href="#" data-toggle="collapse" data-target="#collapseUtilities"
|
||||
aria-expanded="true" aria-controls="collapseUtilities">
|
||||
<i class="fas fa-fw fa-wrench"></i>
|
||||
<span>Utilities</span>
|
||||
</a>
|
||||
<div id="collapseUtilities" class="collapse" aria-labelledby="headingUtilities"
|
||||
data-parent="#accordionSidebar">
|
||||
<div class="bg-white py-2 collapse-inner rounded">
|
||||
<h6 class="collapse-header">Custom Utilities:</h6>
|
||||
<a class="collapse-item" href="utilities-color.html">Colors</a>
|
||||
<a class="collapse-item" href="utilities-border.html">Borders</a>
|
||||
<a class="collapse-item" href="utilities-animation.html">Animations</a>
|
||||
<a class="collapse-item" href="utilities-other.html">Other</a>
|
||||
</div>
|
||||
</div>
|
||||
</li>
|
||||
|
||||
<!-- Divider -->
|
||||
<hr class="sidebar-divider">
|
||||
|
||||
<!-- Heading -->
|
||||
<div class="sidebar-heading">
|
||||
Addons
|
||||
</div>
|
||||
|
||||
<!-- Nav Item - Pages Collapse Menu -->
|
||||
<li class="nav-item">
|
||||
<a class="nav-link collapsed" href="#" data-toggle="collapse" data-target="#collapsePages"
|
||||
aria-expanded="true" aria-controls="collapsePages">
|
||||
<i class="fas fa-fw fa-folder"></i>
|
||||
<span>Pages</span>
|
||||
</a>
|
||||
<div id="collapsePages" class="collapse" aria-labelledby="headingPages" data-parent="#accordionSidebar">
|
||||
<div class="bg-white py-2 collapse-inner rounded">
|
||||
<h6 class="collapse-header">Login Screens:</h6>
|
||||
<a class="collapse-item" href="login.html">Login</a>
|
||||
<a class="collapse-item" href="register.html">Register</a>
|
||||
<a class="collapse-item" href="forgot-password.html">Forgot Password</a>
|
||||
<div class="collapse-divider"></div>
|
||||
<h6 class="collapse-header">Other Pages:</h6>
|
||||
<a class="collapse-item" href="404.html">404 Page</a>
|
||||
<a class="collapse-item" href="blank.html">Blank Page</a>
|
||||
</div>
|
||||
</div>
|
||||
</li>
|
||||
|
||||
<!-- Nav Item - Charts -->
|
||||
<li class="nav-item">
|
||||
<a class="nav-link" href="charts.html">
|
||||
<i class="fas fa-fw fa-chart-area"></i>
|
||||
<span>Charts</span></a>
|
||||
</li>
|
||||
|
||||
<!-- Nav Item - Tables -->
|
||||
<li class="nav-item">
|
||||
<a class="nav-link" href="tables.html">
|
||||
<i class="fas fa-fw fa-table"></i>
|
||||
<span>Tables</span></a>
|
||||
</li>
|
||||
|
||||
<!-- Divider -->
|
||||
<hr class="sidebar-divider d-none d-md-block">
|
||||
|
||||
<!-- Sidebar Toggler (Sidebar) -->
|
||||
<div class="text-center d-none d-md-inline">
|
||||
<button class="rounded-circle border-0" id="sidebarToggle"></button>
|
||||
</div>
|
||||
|
||||
</ul>
|
||||
<!-- End of Sidebar -->
|
||||
|
||||
<!-- Content Wrapper -->
|
||||
<div id="content-wrapper" class="d-flex flex-column">
|
||||
|
||||
<!-- Main Content -->
|
||||
<div id="content">
|
||||
|
||||
<!-- Topbar -->
|
||||
<nav class="navbar navbar-expand navbar-light bg-white topbar mb-4 static-top shadow">
|
||||
|
||||
<!-- Sidebar Toggle (Topbar) -->
|
||||
<button id="sidebarToggleTop" class="btn btn-link d-md-none rounded-circle mr-3">
|
||||
<i class="fa fa-bars"></i>
|
||||
</button>
|
||||
|
||||
<!-- Topbar Search -->
|
||||
<form
|
||||
class="d-none d-sm-inline-block form-inline mr-auto ml-md-3 my-2 my-md-0 mw-100 navbar-search">
|
||||
<div class="input-group">
|
||||
<input type="text" class="form-control bg-light border-0 small" placeholder="Search for..."
|
||||
aria-label="Search" aria-describedby="basic-addon2">
|
||||
<div class="input-group-append">
|
||||
<button class="btn btn-primary" type="button">
|
||||
<i class="fas fa-search fa-sm"></i>
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
|
||||
<!-- Topbar Navbar -->
|
||||
<ul class="navbar-nav ml-auto">
|
||||
|
||||
<!-- Nav Item - Search Dropdown (Visible Only XS) -->
|
||||
<li class="nav-item dropdown no-arrow d-sm-none">
|
||||
<a class="nav-link dropdown-toggle" href="#" id="searchDropdown" role="button"
|
||||
data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
|
||||
<i class="fas fa-search fa-fw"></i>
|
||||
</a>
|
||||
<!-- Dropdown - Messages -->
|
||||
<div class="dropdown-menu dropdown-menu-right p-3 shadow animated--grow-in"
|
||||
aria-labelledby="searchDropdown">
|
||||
<form class="form-inline mr-auto w-100 navbar-search">
|
||||
<div class="input-group">
|
||||
<input type="text" class="form-control bg-light border-0 small"
|
||||
placeholder="Search for..." aria-label="Search"
|
||||
aria-describedby="basic-addon2">
|
||||
<div class="input-group-append">
|
||||
<button class="btn btn-primary" type="button">
|
||||
<i class="fas fa-search fa-sm"></i>
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</li>
|
||||
|
||||
<!-- Nav Item - Alerts -->
|
||||
<li class="nav-item dropdown no-arrow mx-1">
|
||||
<a class="nav-link dropdown-toggle" href="#" id="alertsDropdown" role="button"
|
||||
data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
|
||||
<i class="fas fa-bell fa-fw"></i>
|
||||
<!-- Counter - Alerts -->
|
||||
<span class="badge badge-danger badge-counter">3+</span>
|
||||
</a>
|
||||
<!-- Dropdown - Alerts -->
|
||||
<div class="dropdown-list dropdown-menu dropdown-menu-right shadow animated--grow-in"
|
||||
aria-labelledby="alertsDropdown">
|
||||
<h6 class="dropdown-header">
|
||||
Alerts Center
|
||||
</h6>
|
||||
<a class="dropdown-item d-flex align-items-center" href="#">
|
||||
<div class="mr-3">
|
||||
<div class="icon-circle bg-primary">
|
||||
<i class="fas fa-file-alt text-white"></i>
|
||||
</div>
|
||||
</div>
|
||||
<div>
|
||||
<div class="small text-gray-500">December 12, 2019</div>
|
||||
<span class="font-weight-bold">A new monthly report is ready to download!</span>
|
||||
</div>
|
||||
</a>
|
||||
<a class="dropdown-item d-flex align-items-center" href="#">
|
||||
<div class="mr-3">
|
||||
<div class="icon-circle bg-success">
|
||||
<i class="fas fa-donate text-white"></i>
|
||||
</div>
|
||||
</div>
|
||||
<div>
|
||||
<div class="small text-gray-500">December 7, 2019</div>
|
||||
$290.29 has been deposited into your account!
|
||||
</div>
|
||||
</a>
|
||||
<a class="dropdown-item d-flex align-items-center" href="#">
|
||||
<div class="mr-3">
|
||||
<div class="icon-circle bg-warning">
|
||||
<i class="fas fa-exclamation-triangle text-white"></i>
|
||||
</div>
|
||||
</div>
|
||||
<div>
|
||||
<div class="small text-gray-500">December 2, 2019</div>
|
||||
Spending Alert: We've noticed unusually high spending for your account.
|
||||
</div>
|
||||
</a>
|
||||
<a class="dropdown-item text-center small text-gray-500" href="#">Show All Alerts</a>
|
||||
</div>
|
||||
</li>
|
||||
|
||||
<!-- Nav Item - Messages -->
|
||||
<li class="nav-item dropdown no-arrow mx-1">
|
||||
<a class="nav-link dropdown-toggle" href="#" id="messagesDropdown" role="button"
|
||||
data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
|
||||
<i class="fas fa-envelope fa-fw"></i>
|
||||
<!-- Counter - Messages -->
|
||||
<span class="badge badge-danger badge-counter">7</span>
|
||||
</a>
|
||||
<!-- Dropdown - Messages -->
|
||||
<div class="dropdown-list dropdown-menu dropdown-menu-right shadow animated--grow-in"
|
||||
aria-labelledby="messagesDropdown">
|
||||
<h6 class="dropdown-header">
|
||||
Message Center
|
||||
</h6>
|
||||
<a class="dropdown-item d-flex align-items-center" href="#">
|
||||
<div class="dropdown-list-image mr-3">
|
||||
<img class="rounded-circle" src="{{ asset('images/backend/img/undraw_profile_1.svg') }}"
|
||||
alt="...">
|
||||
<div class="status-indicator bg-success"></div>
|
||||
</div>
|
||||
<div class="font-weight-bold">
|
||||
<div class="text-truncate">Hi there! I am wondering if you can help me with a
|
||||
problem I've been having.</div>
|
||||
<div class="small text-gray-500">Emily Fowler · 58m</div>
|
||||
</div>
|
||||
</a>
|
||||
<a class="dropdown-item d-flex align-items-center" href="#">
|
||||
<div class="dropdown-list-image mr-3">
|
||||
<img class="rounded-circle" src="{{ asset('images/backend/img/undraw_profile_2.svg') }}"
|
||||
alt="...">
|
||||
<div class="status-indicator"></div>
|
||||
</div>
|
||||
<div>
|
||||
<div class="text-truncate">I have the photos that you ordered last month, how
|
||||
would you like them sent to you?</div>
|
||||
<div class="small text-gray-500">Jae Chun · 1d</div>
|
||||
</div>
|
||||
</a>
|
||||
<a class="dropdown-item d-flex align-items-center" href="#">
|
||||
<div class="dropdown-list-image mr-3">
|
||||
<img class="rounded-circle" src="{{ asset('images/backend/img/undraw_profile_3.svg') }}"
|
||||
alt="...">
|
||||
<div class="status-indicator bg-warning"></div>
|
||||
</div>
|
||||
<div>
|
||||
<div class="text-truncate">Last month's report looks great, I am very happy with
|
||||
the progress so far, keep up the good work!</div>
|
||||
<div class="small text-gray-500">Morgan Alvarez · 2d</div>
|
||||
</div>
|
||||
</a>
|
||||
<a class="dropdown-item d-flex align-items-center" href="#">
|
||||
<div class="dropdown-list-image mr-3">
|
||||
<img class="rounded-circle" src="https://source.unsplash.com/Mv9hjnEUHR4/60x60"
|
||||
alt="...">
|
||||
<div class="status-indicator bg-success"></div>
|
||||
</div>
|
||||
<div>
|
||||
<div class="text-truncate">Am I a good boy? The reason I ask is because someone
|
||||
told me that people say this to all dogs, even if they aren't good...</div>
|
||||
<div class="small text-gray-500">Chicken the Dog · 2w</div>
|
||||
</div>
|
||||
</a>
|
||||
<a class="dropdown-item text-center small text-gray-500" href="#">Read More Messages</a>
|
||||
</div>
|
||||
</li>
|
||||
|
||||
<div class="topbar-divider d-none d-sm-block"></div>
|
||||
|
||||
<!-- Nav Item - User Information -->
|
||||
<li class="nav-item dropdown no-arrow">
|
||||
<a class="nav-link dropdown-toggle" href="#" id="userDropdown" role="button"
|
||||
data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
|
||||
<span class="mr-2 d-none d-lg-inline text-gray-600 small">Douglas McGee</span>
|
||||
<img class="img-profile rounded-circle"
|
||||
src="{{ asset('images/backend/img/undraw_profile.svg') }}">
|
||||
</a>
|
||||
<!-- Dropdown - User Information -->
|
||||
<div class="dropdown-menu dropdown-menu-right shadow animated--grow-in"
|
||||
aria-labelledby="userDropdown">
|
||||
<a class="dropdown-item" href="#">
|
||||
<i class="fas fa-user fa-sm fa-fw mr-2 text-gray-400"></i>
|
||||
Profile
|
||||
</a>
|
||||
<a class="dropdown-item" href="#">
|
||||
<i class="fas fa-cogs fa-sm fa-fw mr-2 text-gray-400"></i>
|
||||
Settings
|
||||
</a>
|
||||
<a class="dropdown-item" href="#">
|
||||
<i class="fas fa-list fa-sm fa-fw mr-2 text-gray-400"></i>
|
||||
Activity Log
|
||||
</a>
|
||||
<div class="dropdown-divider"></div>
|
||||
<a class="dropdown-item" href="#" data-toggle="modal" data-target="#logoutModal">
|
||||
<i class="fas fa-sign-out-alt fa-sm fa-fw mr-2 text-gray-400"></i>
|
||||
Logout
|
||||
</a>
|
||||
</div>
|
||||
</li>
|
||||
|
||||
</ul>
|
||||
|
||||
</nav>
|
||||
<!-- End of Topbar -->
|
||||
|
||||
<!-- Begin Page Content -->
|
||||
<div class="container-fluid">
|
||||
|
||||
<!-- Page Heading -->
|
||||
<h1 class="h3 mb-4 text-gray-800">Buttons</h1>
|
||||
|
||||
<div class="row">
|
||||
|
||||
<div class="col-lg-6">
|
||||
|
||||
<!-- Circle Buttons -->
|
||||
<div class="card shadow mb-4">
|
||||
<div class="card-header py-3">
|
||||
<h6 class="m-0 font-weight-bold text-primary">Circle Buttons</h6>
|
||||
</div>
|
||||
<div class="card-body">
|
||||
<p>Use Font Awesome Icons (included with this theme package) along with the circle
|
||||
buttons as shown in the examples below!</p>
|
||||
<!-- Circle Buttons (Default) -->
|
||||
<div class="mb-2">
|
||||
<code>.btn-circle</code>
|
||||
</div>
|
||||
<a href="#" class="btn btn-primary btn-circle">
|
||||
<i class="fab fa-facebook-f"></i>
|
||||
</a>
|
||||
<a href="#" class="btn btn-success btn-circle">
|
||||
<i class="fas fa-check"></i>
|
||||
</a>
|
||||
<a href="#" class="btn btn-info btn-circle">
|
||||
<i class="fas fa-info-circle"></i>
|
||||
</a>
|
||||
<a href="#" class="btn btn-warning btn-circle">
|
||||
<i class="fas fa-exclamation-triangle"></i>
|
||||
</a>
|
||||
<a href="#" class="btn btn-danger btn-circle">
|
||||
<i class="fas fa-trash"></i>
|
||||
</a>
|
||||
<!-- Circle Buttons (Small) -->
|
||||
<div class="mt-4 mb-2">
|
||||
<code>.btn-circle .btn-sm</code>
|
||||
</div>
|
||||
<a href="#" class="btn btn-primary btn-circle btn-sm">
|
||||
<i class="fab fa-facebook-f"></i>
|
||||
</a>
|
||||
<a href="#" class="btn btn-success btn-circle btn-sm">
|
||||
<i class="fas fa-check"></i>
|
||||
</a>
|
||||
<a href="#" class="btn btn-info btn-circle btn-sm">
|
||||
<i class="fas fa-info-circle"></i>
|
||||
</a>
|
||||
<a href="#" class="btn btn-warning btn-circle btn-sm">
|
||||
<i class="fas fa-exclamation-triangle"></i>
|
||||
</a>
|
||||
<a href="#" class="btn btn-danger btn-circle btn-sm">
|
||||
<i class="fas fa-trash"></i>
|
||||
</a>
|
||||
<!-- Circle Buttons (Large) -->
|
||||
<div class="mt-4 mb-2">
|
||||
<code>.btn-circle .btn-lg</code>
|
||||
</div>
|
||||
<a href="#" class="btn btn-primary btn-circle btn-lg">
|
||||
<i class="fab fa-facebook-f"></i>
|
||||
</a>
|
||||
<a href="#" class="btn btn-success btn-circle btn-lg">
|
||||
<i class="fas fa-check"></i>
|
||||
</a>
|
||||
<a href="#" class="btn btn-info btn-circle btn-lg">
|
||||
<i class="fas fa-info-circle"></i>
|
||||
</a>
|
||||
<a href="#" class="btn btn-warning btn-circle btn-lg">
|
||||
<i class="fas fa-exclamation-triangle"></i>
|
||||
</a>
|
||||
<a href="#" class="btn btn-danger btn-circle btn-lg">
|
||||
<i class="fas fa-trash"></i>
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- Brand Buttons -->
|
||||
<div class="card shadow mb-4">
|
||||
<div class="card-header py-3">
|
||||
<h6 class="m-0 font-weight-bold text-primary">Brand Buttons</h6>
|
||||
</div>
|
||||
<div class="card-body">
|
||||
<p>Google and Facebook buttons are available featuring each company's respective
|
||||
brand color. They are used on the user login and registration pages.</p>
|
||||
<p>You can create more custom buttons by adding a new color variable in the
|
||||
<code>_variables.scss</code> file and then using the Bootstrap button variant
|
||||
mixin to create a new style, as demonstrated in the <code>_buttons.scss</code>
|
||||
file.</p>
|
||||
<a href="#" class="btn btn-google btn-block"><i class="fab fa-google fa-fw"></i>
|
||||
.btn-google</a>
|
||||
<a href="#" class="btn btn-facebook btn-block"><i
|
||||
class="fab fa-facebook-f fa-fw"></i> .btn-facebook</a>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="col-lg-6">
|
||||
|
||||
<div class="card shadow mb-4">
|
||||
<div class="card-header py-3">
|
||||
<h6 class="m-0 font-weight-bold text-primary">Split Buttons with Icon</h6>
|
||||
</div>
|
||||
<div class="card-body">
|
||||
<p>Works with any button colors, just use the <code>.btn-icon-split</code> class and
|
||||
the markup in the examples below. The examples below also use the
|
||||
<code>.text-white-50</code> helper class on the icons for additional styling,
|
||||
but it is not required.</p>
|
||||
<a href="#" class="btn btn-primary btn-icon-split">
|
||||
<span class="icon text-white-50">
|
||||
<i class="fas fa-flag"></i>
|
||||
</span>
|
||||
<span class="text">Split Button Primary</span>
|
||||
</a>
|
||||
<div class="my-2"></div>
|
||||
<a href="#" class="btn btn-success btn-icon-split">
|
||||
<span class="icon text-white-50">
|
||||
<i class="fas fa-check"></i>
|
||||
</span>
|
||||
<span class="text">Split Button Success</span>
|
||||
</a>
|
||||
<div class="my-2"></div>
|
||||
<a href="#" class="btn btn-info btn-icon-split">
|
||||
<span class="icon text-white-50">
|
||||
<i class="fas fa-info-circle"></i>
|
||||
</span>
|
||||
<span class="text">Split Button Info</span>
|
||||
</a>
|
||||
<div class="my-2"></div>
|
||||
<a href="#" class="btn btn-warning btn-icon-split">
|
||||
<span class="icon text-white-50">
|
||||
<i class="fas fa-exclamation-triangle"></i>
|
||||
</span>
|
||||
<span class="text">Split Button Warning</span>
|
||||
</a>
|
||||
<div class="my-2"></div>
|
||||
<a href="#" class="btn btn-danger btn-icon-split">
|
||||
<span class="icon text-white-50">
|
||||
<i class="fas fa-trash"></i>
|
||||
</span>
|
||||
<span class="text">Split Button Danger</span>
|
||||
</a>
|
||||
<div class="my-2"></div>
|
||||
<a href="#" class="btn btn-secondary btn-icon-split">
|
||||
<span class="icon text-white-50">
|
||||
<i class="fas fa-arrow-right"></i>
|
||||
</span>
|
||||
<span class="text">Split Button Secondary</span>
|
||||
</a>
|
||||
<div class="my-2"></div>
|
||||
<a href="#" class="btn btn-light btn-icon-split">
|
||||
<span class="icon text-gray-600">
|
||||
<i class="fas fa-arrow-right"></i>
|
||||
</span>
|
||||
<span class="text">Split Button Light</span>
|
||||
</a>
|
||||
<div class="mb-4"></div>
|
||||
<p>Also works with small and large button classes!</p>
|
||||
<a href="#" class="btn btn-primary btn-icon-split btn-sm">
|
||||
<span class="icon text-white-50">
|
||||
<i class="fas fa-flag"></i>
|
||||
</span>
|
||||
<span class="text">Split Button Small</span>
|
||||
</a>
|
||||
<div class="my-2"></div>
|
||||
<a href="#" class="btn btn-primary btn-icon-split btn-lg">
|
||||
<span class="icon text-white-50">
|
||||
<i class="fas fa-flag"></i>
|
||||
</span>
|
||||
<span class="text">Split Button Large</span>
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
<!-- /.container-fluid -->
|
||||
|
||||
</div>
|
||||
<!-- End of Main Content -->
|
||||
|
||||
<!-- Footer -->
|
||||
<footer class="sticky-footer bg-white">
|
||||
<div class="container my-auto">
|
||||
<div class="copyright text-center my-auto">
|
||||
<span>Copyright © Your Website 2020</span>
|
||||
</div>
|
||||
</div>
|
||||
</footer>
|
||||
<!-- End of Footer -->
|
||||
|
||||
</div>
|
||||
<!-- End of Content Wrapper -->
|
||||
|
||||
</div>
|
||||
<!-- End of Page Wrapper -->
|
||||
|
||||
<!-- Scroll to Top Button-->
|
||||
<a class="scroll-to-top rounded" href="#page-top">
|
||||
<i class="fas fa-angle-up"></i>
|
||||
</a>
|
||||
|
||||
<!-- Logout Modal-->
|
||||
<div class="modal fade" id="logoutModal" tabindex="-1" role="dialog" aria-labelledby="exampleModalLabel"
|
||||
aria-hidden="true">
|
||||
<div class="modal-dialog" role="document">
|
||||
<div class="modal-content">
|
||||
<div class="modal-header">
|
||||
<h5 class="modal-title" id="exampleModalLabel">Ready to Leave?</h5>
|
||||
<button class="close" type="button" data-dismiss="modal" aria-label="Close">
|
||||
<span aria-hidden="true">×</span>
|
||||
</button>
|
||||
</div>
|
||||
<div class="modal-body">Select "Logout" below if you are ready to end your current session.</div>
|
||||
<div class="modal-footer">
|
||||
<button class="btn btn-secondary" type="button" data-dismiss="modal">Cancel</button>
|
||||
<a class="btn btn-primary" href="login.html">Logout</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</body>
|
||||
{% endblock %}
|
||||
<script src="{{ asset('assets/js/bootstrap.bundle.min.js.js') }}" integrity="sha384-MrcW6ZMFYlzcLA8Nl+NtUVF0sA7MsXsP1UyJoMp4YLEuNSfAP+JcXn/tWtIaxVXM" crossorigin="anonymous"></script>
|
||||
</html>
|
||||
586
templates/backend_admin/demo/cards.html.twig
Normal file
586
templates/backend_admin/demo/cards.html.twig
Normal file
@@ -0,0 +1,586 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<title>{% block title %}Cards{% endblock %}</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
{% block stylesheets %}
|
||||
{{ encore_entry_link_tags('app_backend') }}
|
||||
{% endblock %}
|
||||
|
||||
{% block javascripts %}
|
||||
{{ encore_entry_script_tags('app_backend') }}
|
||||
{% endblock %}
|
||||
|
||||
</head>
|
||||
{% block body %}
|
||||
<body id="page-top">
|
||||
|
||||
<!-- Page Wrapper -->
|
||||
<div id="wrapper">
|
||||
|
||||
<!-- Sidebar -->
|
||||
<ul class="navbar-nav bg-gradient-primary sidebar sidebar-dark accordion" id="accordionSidebar">
|
||||
|
||||
|
||||
<!-- Sidebar - Brand -->
|
||||
<a class="sidebar-brand d-flex align-items-center justify-content-center" href="index.html">
|
||||
<div class="sidebar-brand-icon rotate-n-15">
|
||||
<i class="fas fa-laugh-wink"></i>
|
||||
</div>
|
||||
<div class="sidebar-brand-text mx-3">SB Admin <sup>2</sup></div>
|
||||
</a>
|
||||
|
||||
<!-- Divider -->
|
||||
<hr class="sidebar-divider my-0">
|
||||
|
||||
<!-- Nav Item - Dashboard -->
|
||||
<li class="nav-item">
|
||||
<a class="nav-link" href="index.html">
|
||||
<i class="fas fa-fw fa-tachometer-alt"></i>
|
||||
<span>Dashboard</span></a>
|
||||
</li>
|
||||
|
||||
<!-- Divider -->
|
||||
<hr class="sidebar-divider">
|
||||
|
||||
<!-- Heading -->
|
||||
<div class="sidebar-heading">Interface</div>
|
||||
|
||||
<!-- Nav Item - Components Collapse Menu -->
|
||||
<li class="nav-item active">
|
||||
<a class="nav-link collapsed" href="#project-management" data-toggle="collapse" data-bs-toggle="collapse" aria-expanded="true" aria-controls="project-management" >
|
||||
<i class="fas fa-fw fa-wrench"></i>
|
||||
<span>Components</span>
|
||||
</a>
|
||||
<div id="project-management" class="collapse show" data-parent="#accordionSidebar"aria-labelledby="navbarVerticalCollapse" >
|
||||
|
||||
<div class="bg-white py-2 collapse-inner rounded">
|
||||
<h6 class="collapse-header">Custom Components:</h6>
|
||||
<a class="collapse-item" href="utilities-color.html">Buttons</a>
|
||||
<a class="collapse-item active" href="cards.html">Cards</a>
|
||||
<a class="collapse-item" href="utilities-animation.html">Animations</a>
|
||||
<a class="collapse-item" href="utilities-other.html">Other</a>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</li>
|
||||
|
||||
|
||||
<!-- Nav Item - Utilities Collapse Menu -->
|
||||
<li class="nav-item">
|
||||
<a class="nav-link collapsed" href="#collapseUtilities" data-toggle="collapse" data-bs-toggle="collapse" aria-expanded="true" aria-controls="collapseUtilities">
|
||||
<i class="fas fa-fw fa-cog"></i>
|
||||
<span>Utilities</span>
|
||||
</a>
|
||||
<div id="collapseUtilities" class="collapse" data-parent="#accordionSidebar"aria-labelledby="headingUtilities" >
|
||||
|
||||
<div class="bg-white py-2 collapse-inner rounded">
|
||||
<h6 class="collapse-header">Custom Utilities:</h6>
|
||||
<a class="collapse-item" href="utilities-color.html">Colors</a>
|
||||
<a class="collapse-item" href="utilities-border.html">Borders</a>
|
||||
<a class="collapse-item" href="utilities-animation.html">Animations</a>
|
||||
<a class="collapse-item" href="utilities-other.html">Other</a>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</li>
|
||||
|
||||
<!-- Divider -->
|
||||
<hr class="sidebar-divider">
|
||||
|
||||
<!-- Heading -->
|
||||
<div class="sidebar-heading">
|
||||
Addons
|
||||
</div>
|
||||
|
||||
<!-- Nav Item - Pages Collapse Menu -->
|
||||
<li class="nav-item">
|
||||
<a class="nav-link collapsed" href="#" data-toggle="collapse" data-target="#collapsePages"
|
||||
aria-expanded="true" aria-controls="collapsePages">
|
||||
<i class="fas fa-fw fa-folder"></i>
|
||||
<span>Pages</span>
|
||||
</a>
|
||||
<div id="collapsePages" class="collapse" aria-labelledby="headingPages" data-parent="#accordionSidebar">
|
||||
<div class="bg-white py-2 collapse-inner rounded">
|
||||
<h6 class="collapse-header">Login Screens:</h6>
|
||||
<a class="collapse-item" href="login.html">Login</a>
|
||||
<a class="collapse-item" href="register.html">Register</a>
|
||||
<a class="collapse-item" href="forgot-password.html">Forgot Password</a>
|
||||
<div class="collapse-divider"></div>
|
||||
<h6 class="collapse-header">Other Pages:</h6>
|
||||
<a class="collapse-item" href="404.html">404 Page</a>
|
||||
<a class="collapse-item" href="blank.html">Blank Page</a>
|
||||
</div>
|
||||
</div>
|
||||
</li>
|
||||
|
||||
<!-- Nav Item - Charts -->
|
||||
<li class="nav-item">
|
||||
<a class="nav-link" href="charts.html">
|
||||
<i class="fas fa-fw fa-chart-area"></i>
|
||||
<span>Charts</span></a>
|
||||
</li>
|
||||
|
||||
<!-- Nav Item - Tables -->
|
||||
<li class="nav-item">
|
||||
<a class="nav-link" href="tables.html">
|
||||
<i class="fas fa-fw fa-table"></i>
|
||||
<span>Tables</span></a>
|
||||
</li>
|
||||
|
||||
<!-- Divider -->
|
||||
<hr class="sidebar-divider d-none d-md-block">
|
||||
|
||||
<!-- Sidebar Toggler (Sidebar) -->
|
||||
<div class="text-center d-none d-md-inline">
|
||||
<button class="rounded-circle border-0" id="sidebarToggle"></button>
|
||||
</div>
|
||||
|
||||
<!-- Sidebar Message -->
|
||||
<div class="sidebar-card d-none d-lg-flex">
|
||||
<img class="sidebar-card-illustration mb-2" src="{{ asset('images/backend/img/undraw_rocket.svg') }}" alt="...">
|
||||
<p class="text-center mb-2"><strong>SB Admin Pro</strong> is packed with premium features, components, and more!</p>
|
||||
<a class="btn btn-success btn-sm" href="https://startbootstrap.com/theme/sb-admin-pro">Upgrade to Pro!</a>
|
||||
</div>
|
||||
|
||||
</ul>
|
||||
<!-- End of Sidebar -->
|
||||
|
||||
<!-- Content Wrapper -->
|
||||
<div id="content-wrapper" class="d-flex flex-column">
|
||||
|
||||
<!-- Main Content -->
|
||||
<div id="content">
|
||||
|
||||
<!-- Topbar -->
|
||||
<nav class="navbar navbar-expand navbar-light bg-white topbar mb-4 static-top shadow">
|
||||
|
||||
<!-- Sidebar Toggle (Topbar) -->
|
||||
<button id="sidebarToggleTop" class="btn btn-link d-md-none rounded-circle mr-3">
|
||||
<i class="fa fa-bars"></i>
|
||||
</button>
|
||||
|
||||
<!-- Topbar Search -->
|
||||
<form
|
||||
class="d-none d-sm-inline-block form-inline mr-auto ml-md-3 my-2 my-md-0 mw-100 navbar-search">
|
||||
<div class="input-group">
|
||||
<input type="text" class="form-control bg-light border-0 small" placeholder="Search for..."
|
||||
aria-label="Search" aria-describedby="basic-addon2">
|
||||
<div class="input-group-append">
|
||||
<button class="btn btn-primary" type="button">
|
||||
<i class="fas fa-search fa-sm"></i>
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
|
||||
<!-- Topbar Navbar -->
|
||||
<ul class="navbar-nav ml-auto">
|
||||
|
||||
<!-- Nav Item - Search Dropdown (Visible Only XS) -->
|
||||
<li class="nav-item dropdown no-arrow d-sm-none">
|
||||
<a class="nav-link dropdown-toggle" href="#" id="searchDropdown" role="button"
|
||||
data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
|
||||
<i class="fas fa-search fa-fw"></i>
|
||||
</a>
|
||||
<!-- Dropdown - Messages -->
|
||||
<div class="dropdown-menu dropdown-menu-right p-3 shadow animated--grow-in"
|
||||
aria-labelledby="searchDropdown">
|
||||
<form class="form-inline mr-auto w-100 navbar-search">
|
||||
<div class="input-group">
|
||||
<input type="text" class="form-control bg-light border-0 small"
|
||||
placeholder="Search for..." aria-label="Search"
|
||||
aria-describedby="basic-addon2">
|
||||
<div class="input-group-append">
|
||||
<button class="btn btn-primary" type="button">
|
||||
<i class="fas fa-search fa-sm"></i>
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</li>
|
||||
|
||||
<!-- Nav Item - Alerts -->
|
||||
<li class="nav-item dropdown no-arrow mx-1">
|
||||
<a class="nav-link dropdown-toggle" href="#" id="alertsDropdown" role="button" data-bs-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
|
||||
<i class="fas fa-bell fa-fw"></i>
|
||||
<!-- Counter - Alerts -->
|
||||
<span class="badge badge-danger badge-counter">3+</span>
|
||||
</a>
|
||||
<!-- Dropdown - Alerts -->
|
||||
<div class="dropdown-list dropdown-menu dropdown-menu-right dropdown-menu-lg-end"
|
||||
>
|
||||
<h6 class="dropdown-header">
|
||||
Alerts Center
|
||||
</h6>
|
||||
<a class="dropdown-item d-flex align-items-center" href="#">
|
||||
<div class="mr-3">
|
||||
<div class="icon-circle bg-primary">
|
||||
<i class="fas fa-file-alt text-white"></i>
|
||||
</div>
|
||||
</div>
|
||||
<div>
|
||||
<div class="small text-gray-500">December 12, 2019</div>
|
||||
<span class="font-weight-bold">A new monthly report is ready to download!</span>
|
||||
</div>
|
||||
</a>
|
||||
<a class="dropdown-item d-flex align-items-center" href="#">
|
||||
<div class="mr-3">
|
||||
<div class="icon-circle bg-success">
|
||||
<i class="fas fa-donate text-white"></i>
|
||||
</div>
|
||||
</div>
|
||||
<div>
|
||||
<div class="small text-gray-500">December 7, 2019</div>
|
||||
$290.29 has been deposited into your account!
|
||||
</div>
|
||||
</a>
|
||||
<a class="dropdown-item d-flex align-items-center" href="#">
|
||||
<div class="mr-3">
|
||||
<div class="icon-circle bg-warning">
|
||||
<i class="fas fa-exclamation-triangle text-white"></i>
|
||||
</div>
|
||||
</div>
|
||||
<div>
|
||||
<div class="small text-gray-500">December 2, 2019</div>
|
||||
Spending Alert: We've noticed unusually high spending for your account.
|
||||
</div>
|
||||
</a>
|
||||
<a class="dropdown-item text-center small text-gray-500" href="#">Show All Alerts</a>
|
||||
</div>
|
||||
</li>
|
||||
|
||||
<!-- Nav Item - Messages -->
|
||||
<li class="nav-item dropdown no-arrow mx-1">
|
||||
<a class="nav-link dropdown-toggle" href="#" id="messagesDropdown" role="button"
|
||||
data-bs-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
|
||||
<i class="fas fa-envelope fa-fw"></i>
|
||||
<!-- Counter - Messages -->
|
||||
<span class="badge badge-danger badge-counter">7</span>
|
||||
</a>
|
||||
<!-- Dropdown - Messages -->
|
||||
<div class="dropdown-list dropdown-menu dropdown-menu-right dropdown-menu-lg-end"
|
||||
aria-labelledby="messagesDropdown">
|
||||
<h6 class="dropdown-header">
|
||||
Message Center
|
||||
</h6>
|
||||
<a class="dropdown-item d-flex align-items-center" href="#">
|
||||
<div class="dropdown-list-image mr-3">
|
||||
<img class="rounded-circle" src="{{ asset('images/backend/img/undraw_profile_1.svg') }}"
|
||||
alt="...">
|
||||
<div class="status-indicator bg-success"></div>
|
||||
</div>
|
||||
<div class="font-weight-bold">
|
||||
<div class="text-truncate">Hi there! I am wondering if you can help me with a
|
||||
problem I've been having.</div>
|
||||
<div class="small text-gray-500">Emily Fowler · 58m</div>
|
||||
</div>
|
||||
</a>
|
||||
<a class="dropdown-item d-flex align-items-center" href="#">
|
||||
<div class="dropdown-list-image mr-3">
|
||||
<img class="rounded-circle" src="{{ asset('images/backend/img/undraw_profile_2.svg') }}"
|
||||
alt="...">
|
||||
<div class="status-indicator"></div>
|
||||
</div>
|
||||
<div>
|
||||
<div class="text-truncate">I have the photos that you ordered last month, how
|
||||
would you like them sent to you?</div>
|
||||
<div class="small text-gray-500">Jae Chun · 1d</div>
|
||||
</div>
|
||||
</a>
|
||||
<a class="dropdown-item d-flex align-items-center" href="#">
|
||||
<div class="dropdown-list-image mr-3">
|
||||
<img class="rounded-circle" src="{{ asset('images/backend/img/undraw_profile_3.svg') }}"
|
||||
alt="...">
|
||||
<div class="status-indicator bg-warning"></div>
|
||||
</div>
|
||||
<div>
|
||||
<div class="text-truncate">Last month's report looks great, I am very happy with
|
||||
the progress so far, keep up the good work!</div>
|
||||
<div class="small text-gray-500">Morgan Alvarez · 2d</div>
|
||||
</div>
|
||||
</a>
|
||||
<a class="dropdown-item d-flex align-items-center" href="#">
|
||||
<div class="dropdown-list-image mr-3">
|
||||
<img class="rounded-circle" src="https://source.unsplash.com/Mv9hjnEUHR4/60x60"
|
||||
alt="...">
|
||||
<div class="status-indicator bg-success"></div>
|
||||
</div>
|
||||
<div>
|
||||
<div class="text-truncate">Am I a good boy? The reason I ask is because someone
|
||||
told me that people say this to all dogs, even if they aren't good...</div>
|
||||
<div class="small text-gray-500">Chicken the Dog · 2w</div>
|
||||
</div>
|
||||
</a>
|
||||
<a class="dropdown-item text-center small text-gray-500" href="#">Read More Messages</a>
|
||||
</div>
|
||||
</li>
|
||||
|
||||
<div class="topbar-divider d-none d-sm-block"></div>
|
||||
|
||||
<!-- Nav Item - User Information -->
|
||||
<li class="nav-item dropdown no-arrow">
|
||||
<a class="nav-link dropdown-toggle" href="#" id="userDropdown" role="button" data-bs-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
|
||||
<span class="mr-2 d-none d-lg-inline text-gray-600 small">Douglas McGee</span>
|
||||
<img class="img-profile rounded-circle" src="{{ asset('images/backend/img/undraw_profile.svg') }}">
|
||||
</a>
|
||||
<!-- Dropdown - User Information -->
|
||||
<div class="dropdown-menu dropdown-menu-right shadow animated--grow-in"
|
||||
aria-labelledby="userDropdown">
|
||||
<a class="dropdown-item" href="#">
|
||||
<i class="fas fa-user fa-sm fa-fw mr-2 text-gray-400"></i>
|
||||
Profile
|
||||
</a>
|
||||
<a class="dropdown-item" href="#">
|
||||
<i class="fas fa-cogs fa-sm fa-fw mr-2 text-gray-400"></i>
|
||||
Settings
|
||||
</a>
|
||||
<a class="dropdown-item" href="#">
|
||||
<i class="fas fa-list fa-sm fa-fw mr-2 text-gray-400"></i>
|
||||
Activity Log
|
||||
</a>
|
||||
<div class="dropdown-divider"></div>
|
||||
<a class="dropdown-item" href="#" data-toggle="modal" data-target="#logoutModal">
|
||||
<i class="fas fa-sign-out-alt fa-sm fa-fw mr-2 text-gray-400"></i>
|
||||
Logout
|
||||
</a>
|
||||
</div>
|
||||
</li>
|
||||
|
||||
</ul>
|
||||
|
||||
</nav>
|
||||
|
||||
<!-- Begin Page Content -->
|
||||
<div class="container-fluid">
|
||||
|
||||
<!-- Page Heading -->
|
||||
<div class="d-sm-flex align-items-center justify-content-between mb-4">
|
||||
<h1 class="h3 mb-0 text-gray-800">Cards</h1>
|
||||
</div>
|
||||
|
||||
<div class="row">
|
||||
|
||||
<!-- Earnings (Monthly) Card Example -->
|
||||
<div class="col-xl-3 col-md-6 mb-4">
|
||||
<div class="card border-left-primary shadow h-100 py-2">
|
||||
<div class="card-body">
|
||||
<div class="row no-gutters align-items-center">
|
||||
<div class="col mr-2">
|
||||
<div class="text-xs font-weight-bold text-primary text-uppercase mb-1">
|
||||
Earnings (Monthly)</div>
|
||||
<div class="h5 mb-0 font-weight-bold text-gray-800">$40,000</div>
|
||||
</div>
|
||||
<div class="col-auto">
|
||||
<i class="fas fa-calendar fa-2x text-gray-300"></i>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- Earnings (Annual) Card Example -->
|
||||
<div class="col-xl-3 col-md-6 mb-4">
|
||||
<div class="card border-left-success shadow h-100 py-2">
|
||||
<div class="card-body">
|
||||
<div class="row no-gutters align-items-center">
|
||||
<div class="col mr-2">
|
||||
<div class="text-xs font-weight-bold text-success text-uppercase mb-1">
|
||||
Earnings (Annual)</div>
|
||||
<div class="h5 mb-0 font-weight-bold text-gray-800">$215,000</div>
|
||||
</div>
|
||||
<div class="col-auto">
|
||||
<i class="fas fa-dollar-sign fa-2x text-gray-300"></i>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- Tasks Card Example -->
|
||||
<div class="col-xl-3 col-md-6 mb-4">
|
||||
<div class="card border-left-info shadow h-100 py-2">
|
||||
<div class="card-body">
|
||||
<div class="row no-gutters align-items-center">
|
||||
<div class="col mr-2">
|
||||
<div class="text-xs font-weight-bold text-info text-uppercase mb-1">Tasks
|
||||
</div>
|
||||
<div class="row no-gutters align-items-center">
|
||||
<div class="col-auto">
|
||||
<div class="h5 mb-0 mr-3 font-weight-bold text-gray-800">50%</div>
|
||||
</div>
|
||||
<div class="col">
|
||||
<div class="progress progress-sm mr-2">
|
||||
<div class="progress-bar bg-info" role="progressbar"
|
||||
style="width: 50%" aria-valuenow="50" aria-valuemin="0"
|
||||
aria-valuemax="100"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-auto">
|
||||
<i class="fas fa-clipboard-list fa-2x text-gray-300"></i>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- Pending Requests Card Example -->
|
||||
<div class="col-xl-3 col-md-6 mb-4">
|
||||
<div class="card border-left-warning shadow h-100 py-2">
|
||||
<div class="card-body">
|
||||
<div class="row no-gutters align-items-center">
|
||||
<div class="col mr-2">
|
||||
<div class="text-xs font-weight-bold text-warning text-uppercase mb-1">
|
||||
Pending Requests</div>
|
||||
<div class="h5 mb-0 font-weight-bold text-gray-800">18</div>
|
||||
</div>
|
||||
<div class="col-auto">
|
||||
<i class="fas fa-comments fa-2x text-gray-300"></i>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row">
|
||||
|
||||
<div class="col-lg-6">
|
||||
|
||||
<!-- Default Card Example -->
|
||||
<div class="card mb-4">
|
||||
<div class="card-header">
|
||||
Default Card Example
|
||||
</div>
|
||||
<div class="card-body">
|
||||
This card uses Bootstrap's default styling with no utility classes added. Global
|
||||
styles are the only things modifying the look and feel of this default card example.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- Basic Card Example -->
|
||||
<div class="card shadow mb-4">
|
||||
<div class="card-header py-3">
|
||||
<h6 class="m-0 font-weight-bold text-primary">Basic Card Example</h6>
|
||||
</div>
|
||||
<div class="card-body">
|
||||
The styling for this basic card example is created by using default Bootstrap
|
||||
utility classes. By using utility classes, the style of the card component can be
|
||||
easily modified with no need for any custom CSS!
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="col-lg-6">
|
||||
|
||||
<!-- Dropdown Card Example -->
|
||||
<div class="card shadow mb-4">
|
||||
<!-- Card Header - Dropdown -->
|
||||
<div
|
||||
class="card-header py-3 d-flex flex-row align-items-center justify-content-between">
|
||||
<h6 class="m-0 font-weight-bold text-primary">Dropdown Card Example</h6>
|
||||
<div class="dropdown no-arrow">
|
||||
<a class="dropdown-toggle" href="#" role="button" id="dropdownMenuLink"
|
||||
data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
|
||||
<i class="fas fa-ellipsis-v fa-sm fa-fw text-gray-400"></i>
|
||||
</a>
|
||||
<div class="dropdown-menu dropdown-menu-right shadow animated--fade-in"
|
||||
aria-labelledby="dropdownMenuLink">
|
||||
<div class="dropdown-header">Dropdown Header:</div>
|
||||
<a class="dropdown-item" href="#">Action</a>
|
||||
<a class="dropdown-item" href="#">Another action</a>
|
||||
<div class="dropdown-divider"></div>
|
||||
<a class="dropdown-item" href="#">Something else here</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- Card Body -->
|
||||
<div class="card-body">
|
||||
Dropdown menus can be placed in the card header in order to extend the functionality
|
||||
of a basic card. In this dropdown card example, the Font Awesome vertical ellipsis
|
||||
icon in the card header can be clicked on in order to toggle a dropdown menu.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- Collapsable Card Example -->
|
||||
<div class="card shadow mb-4">
|
||||
<!-- Card Header - Accordion -->
|
||||
<a href="#collapseCardExample" class="d-block card-header py-3" data-toggle="collapse"
|
||||
role="button" aria-expanded="true" aria-controls="collapseCardExample">
|
||||
<h6 class="m-0 font-weight-bold text-primary">Collapsable Card Example</h6>
|
||||
</a>
|
||||
<!-- Card Content - Collapse -->
|
||||
<div class="collapse show" id="collapseCardExample">
|
||||
<div class="card-body">
|
||||
This is a collapsable card example using Bootstrap's built in collapse
|
||||
functionality. <strong>Click on the card header</strong> to see the card body
|
||||
collapse and expand!
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
<!-- /.container-fluid -->
|
||||
|
||||
</div>
|
||||
<!-- End of Main Content -->
|
||||
|
||||
<!-- Footer -->
|
||||
<footer class="sticky-footer bg-white">
|
||||
<div class="container my-auto">
|
||||
<div class="copyright text-center my-auto">
|
||||
<span>Copyright © Your Website 2020</span>
|
||||
</div>
|
||||
</div>
|
||||
</footer>
|
||||
<!-- End of Footer -->
|
||||
|
||||
</div>
|
||||
<!-- End of Content Wrapper -->
|
||||
|
||||
</div>
|
||||
<!-- End of Page Wrapper -->
|
||||
|
||||
</div>
|
||||
<!-- End of Page Wrapper -->
|
||||
|
||||
<!-- Scroll to Top Button-->
|
||||
<a class="scroll-to-top rounded" href="#page-top">
|
||||
<i class="fas fa-angle-up"></i>
|
||||
</a>
|
||||
|
||||
<!-- Logout Modal-->
|
||||
<div class="modal fade" id="logoutModal" tabindex="-1" role="dialog" aria-labelledby="exampleModalLabel"
|
||||
aria-hidden="true">
|
||||
<div class="modal-dialog" role="document">
|
||||
<div class="modal-content">
|
||||
<div class="modal-header">
|
||||
<h5 class="modal-title" id="exampleModalLabel">Ready to Leave?</h5>
|
||||
<button class="close" type="button" data-dismiss="modal" aria-label="Close">
|
||||
<span aria-hidden="true">×</span>
|
||||
</button>
|
||||
</div>
|
||||
<div class="modal-body">Select "Logout" below if you are ready to end your current session.</div>
|
||||
<div class="modal-footer">
|
||||
<button class="btn btn-secondary" type="button" data-dismiss="modal">Cancel</button>
|
||||
<a class="btn btn-primary" href="login.html">Logout</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
|
||||
|
||||
|
||||
{% endblock %}
|
||||
<script src="{{ asset('assets/js/bootstrap.bundle.min.js.js') }}" integrity="sha384-MrcW6ZMFYlzcLA8Nl+NtUVF0sA7MsXsP1UyJoMp4YLEuNSfAP+JcXn/tWtIaxVXM" crossorigin="anonymous"></script>
|
||||
</html>
|
||||
471
templates/backend_admin/demo/charts.html.twig
Normal file
471
templates/backend_admin/demo/charts.html.twig
Normal file
@@ -0,0 +1,471 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<title>{% block title %}Welcome!{% endblock %}</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
{% block stylesheets %}
|
||||
{{ encore_entry_link_tags('app_backend') }}
|
||||
{% endblock %}
|
||||
|
||||
{% block javascripts %}
|
||||
{{ encore_entry_script_tags('app_backend') }}
|
||||
{% endblock %}
|
||||
|
||||
</head>
|
||||
|
||||
{% block body %}
|
||||
|
||||
<body id="page-top">
|
||||
|
||||
<!-- Page Wrapper -->
|
||||
<div id="wrapper">
|
||||
|
||||
<!-- Sidebar -->
|
||||
<ul class="navbar-nav bg-gradient-primary sidebar sidebar-dark accordion" id="accordionSidebar">
|
||||
|
||||
<!-- Sidebar - Brand -->
|
||||
<a class="sidebar-brand d-flex align-items-center justify-content-center" href="index.html">
|
||||
<div class="sidebar-brand-icon rotate-n-15">
|
||||
<i class="fas fa-laugh-wink"></i>
|
||||
</div>
|
||||
<div class="sidebar-brand-text mx-3">SB Admin <sup>2</sup></div>
|
||||
</a>
|
||||
|
||||
<!-- Divider -->
|
||||
<hr class="sidebar-divider my-0">
|
||||
|
||||
<!-- Nav Item - Dashboard -->
|
||||
<li class="nav-item">
|
||||
<a class="nav-link" href="index.html">
|
||||
<i class="fas fa-fw fa-tachometer-alt"></i>
|
||||
<span>Dashboard</span></a>
|
||||
</li>
|
||||
|
||||
<!-- Divider -->
|
||||
<hr class="sidebar-divider">
|
||||
|
||||
<!-- Heading -->
|
||||
<div class="sidebar-heading">
|
||||
Interface
|
||||
</div>
|
||||
|
||||
<!-- Nav Item - Pages Collapse Menu -->
|
||||
<li class="nav-item">
|
||||
<a class="nav-link collapsed" href="#" data-toggle="collapse" data-target="#collapseTwo"
|
||||
aria-expanded="true" aria-controls="collapseTwo">
|
||||
<i class="fas fa-fw fa-cog"></i>
|
||||
<span>Components</span>
|
||||
</a>
|
||||
<div id="collapseTwo" class="collapse" aria-labelledby="headingTwo" data-parent="#accordionSidebar">
|
||||
<div class="bg-white py-2 collapse-inner rounded">
|
||||
<h6 class="collapse-header">Custom Components:</h6>
|
||||
<a class="collapse-item" href="buttons.html">Buttons</a>
|
||||
<a class="collapse-item" href="cards.html">Cards</a>
|
||||
</div>
|
||||
</div>
|
||||
</li>
|
||||
|
||||
<!-- Nav Item - Utilities Collapse Menu -->
|
||||
<li class="nav-item">
|
||||
<a class="nav-link collapsed" href="#" data-toggle="collapse" data-target="#collapseUtilities"
|
||||
aria-expanded="true" aria-controls="collapseUtilities">
|
||||
<i class="fas fa-fw fa-wrench"></i>
|
||||
<span>Utilities</span>
|
||||
</a>
|
||||
<div id="collapseUtilities" class="collapse" aria-labelledby="headingUtilities"
|
||||
data-parent="#accordionSidebar">
|
||||
<div class="bg-white py-2 collapse-inner rounded">
|
||||
<h6 class="collapse-header">Custom Utilities:</h6>
|
||||
<a class="collapse-item" href="utilities-color.html">Colors</a>
|
||||
<a class="collapse-item" href="utilities-border.html">Borders</a>
|
||||
<a class="collapse-item" href="utilities-animation.html">Animations</a>
|
||||
<a class="collapse-item" href="utilities-other.html">Other</a>
|
||||
</div>
|
||||
</div>
|
||||
</li>
|
||||
|
||||
<!-- Divider -->
|
||||
<hr class="sidebar-divider">
|
||||
|
||||
<!-- Heading -->
|
||||
<div class="sidebar-heading">
|
||||
Addons
|
||||
</div>
|
||||
|
||||
<!-- Nav Item - Pages Collapse Menu -->
|
||||
<li class="nav-item">
|
||||
<a class="nav-link collapsed" href="#" data-toggle="collapse" data-target="#collapsePages"
|
||||
aria-expanded="true" aria-controls="collapsePages">
|
||||
<i class="fas fa-fw fa-folder"></i>
|
||||
<span>Pages</span>
|
||||
</a>
|
||||
<div id="collapsePages" class="collapse" aria-labelledby="headingPages" data-parent="#accordionSidebar">
|
||||
<div class="bg-white py-2 collapse-inner rounded">
|
||||
<h6 class="collapse-header">Login Screens:</h6>
|
||||
<a class="collapse-item" href="login.html">Login</a>
|
||||
<a class="collapse-item" href="register.html">Register</a>
|
||||
<a class="collapse-item" href="forgot-password.html">Forgot Password</a>
|
||||
<div class="collapse-divider"></div>
|
||||
<h6 class="collapse-header">Other Pages:</h6>
|
||||
<a class="collapse-item" href="404.html">404 Page</a>
|
||||
<a class="collapse-item" href="blank.html">Blank Page</a>
|
||||
</div>
|
||||
</div>
|
||||
</li>
|
||||
|
||||
<!-- Nav Item - Charts -->
|
||||
<li class="nav-item active">
|
||||
<a class="nav-link" href="charts.html">
|
||||
<i class="fas fa-fw fa-chart-area"></i>
|
||||
<span>Charts</span></a>
|
||||
</li>
|
||||
|
||||
<!-- Nav Item - Tables -->
|
||||
<li class="nav-item">
|
||||
<a class="nav-link" href="tables.html">
|
||||
<i class="fas fa-fw fa-table"></i>
|
||||
<span>Tables</span></a>
|
||||
</li>
|
||||
|
||||
<!-- Divider -->
|
||||
<hr class="sidebar-divider d-none d-md-block">
|
||||
|
||||
<!-- Sidebar Toggler (Sidebar) -->
|
||||
<div class="text-center d-none d-md-inline">
|
||||
<button class="rounded-circle border-0" id="sidebarToggle"></button>
|
||||
</div>
|
||||
|
||||
</ul>
|
||||
<!-- End of Sidebar -->
|
||||
|
||||
<!-- Content Wrapper -->
|
||||
<div id="content-wrapper" class="d-flex flex-column">
|
||||
|
||||
<!-- Main Content -->
|
||||
<div id="content">
|
||||
|
||||
<!-- Topbar -->
|
||||
<nav class="navbar navbar-expand navbar-light bg-white topbar mb-4 static-top shadow">
|
||||
|
||||
<!-- Sidebar Toggle (Topbar) -->
|
||||
<button id="sidebarToggleTop" class="btn btn-link d-md-none rounded-circle mr-3">
|
||||
<i class="fa fa-bars"></i>
|
||||
</button>
|
||||
|
||||
<!-- Topbar Search -->
|
||||
<form
|
||||
class="d-none d-sm-inline-block form-inline mr-auto ml-md-3 my-2 my-md-0 mw-100 navbar-search">
|
||||
<div class="input-group">
|
||||
<input type="text" class="form-control bg-light border-0 small" placeholder="Search for..."
|
||||
aria-label="Search" aria-describedby="basic-addon2">
|
||||
<div class="input-group-append">
|
||||
<button class="btn btn-primary" type="button">
|
||||
<i class="fas fa-search fa-sm"></i>
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
|
||||
<!-- Topbar Navbar -->
|
||||
<ul class="navbar-nav ml-auto">
|
||||
|
||||
<!-- Nav Item - Search Dropdown (Visible Only XS) -->
|
||||
<li class="nav-item dropdown no-arrow d-sm-none">
|
||||
<a class="nav-link dropdown-toggle" href="#" id="searchDropdown" role="button"
|
||||
data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
|
||||
<i class="fas fa-search fa-fw"></i>
|
||||
</a>
|
||||
<!-- Dropdown - Messages -->
|
||||
<div class="dropdown-menu dropdown-menu-right p-3 shadow animated--grow-in"
|
||||
aria-labelledby="searchDropdown">
|
||||
<form class="form-inline mr-auto w-100 navbar-search">
|
||||
<div class="input-group">
|
||||
<input type="text" class="form-control bg-light border-0 small"
|
||||
placeholder="Search for..." aria-label="Search"
|
||||
aria-describedby="basic-addon2">
|
||||
<div class="input-group-append">
|
||||
<button class="btn btn-primary" type="button">
|
||||
<i class="fas fa-search fa-sm"></i>
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</li>
|
||||
|
||||
<!-- Nav Item - Alerts -->
|
||||
<li class="nav-item dropdown no-arrow mx-1">
|
||||
<a class="nav-link dropdown-toggle" href="#" id="alertsDropdown" role="button"
|
||||
data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
|
||||
<i class="fas fa-bell fa-fw"></i>
|
||||
<!-- Counter - Alerts -->
|
||||
<span class="badge badge-danger badge-counter">3+</span>
|
||||
</a>
|
||||
<!-- Dropdown - Alerts -->
|
||||
<div class="dropdown-list dropdown-menu dropdown-menu-right shadow animated--grow-in"
|
||||
aria-labelledby="alertsDropdown">
|
||||
<h6 class="dropdown-header">
|
||||
Alerts Center
|
||||
</h6>
|
||||
<a class="dropdown-item d-flex align-items-center" href="#">
|
||||
<div class="mr-3">
|
||||
<div class="icon-circle bg-primary">
|
||||
<i class="fas fa-file-alt text-white"></i>
|
||||
</div>
|
||||
</div>
|
||||
<div>
|
||||
<div class="small text-gray-500">December 12, 2019</div>
|
||||
<span class="font-weight-bold">A new monthly report is ready to download!</span>
|
||||
</div>
|
||||
</a>
|
||||
<a class="dropdown-item d-flex align-items-center" href="#">
|
||||
<div class="mr-3">
|
||||
<div class="icon-circle bg-success">
|
||||
<i class="fas fa-donate text-white"></i>
|
||||
</div>
|
||||
</div>
|
||||
<div>
|
||||
<div class="small text-gray-500">December 7, 2019</div>
|
||||
$290.29 has been deposited into your account!
|
||||
</div>
|
||||
</a>
|
||||
<a class="dropdown-item d-flex align-items-center" href="#">
|
||||
<div class="mr-3">
|
||||
<div class="icon-circle bg-warning">
|
||||
<i class="fas fa-exclamation-triangle text-white"></i>
|
||||
</div>
|
||||
</div>
|
||||
<div>
|
||||
<div class="small text-gray-500">December 2, 2019</div>
|
||||
Spending Alert: We've noticed unusually high spending for your account.
|
||||
</div>
|
||||
</a>
|
||||
<a class="dropdown-item text-center small text-gray-500" href="#">Show All Alerts</a>
|
||||
</div>
|
||||
</li>
|
||||
|
||||
<!-- Nav Item - Messages -->
|
||||
<li class="nav-item dropdown no-arrow mx-1">
|
||||
<a class="nav-link dropdown-toggle" href="#" id="messagesDropdown" role="button"
|
||||
data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
|
||||
<i class="fas fa-envelope fa-fw"></i>
|
||||
<!-- Counter - Messages -->
|
||||
<span class="badge badge-danger badge-counter">7</span>
|
||||
</a>
|
||||
<!-- Dropdown - Messages -->
|
||||
<div class="dropdown-list dropdown-menu dropdown-menu-right shadow animated--grow-in"
|
||||
aria-labelledby="messagesDropdown">
|
||||
<h6 class="dropdown-header">
|
||||
Message Center
|
||||
</h6>
|
||||
<a class="dropdown-item d-flex align-items-center" href="#">
|
||||
<div class="dropdown-list-image mr-3">
|
||||
<img class="rounded-circle" src="img/undraw_profile_1.svg"
|
||||
alt="...">
|
||||
<div class="status-indicator bg-success"></div>
|
||||
</div>
|
||||
<div class="font-weight-bold">
|
||||
<div class="text-truncate">Hi there! I am wondering if you can help me with a
|
||||
problem I've been having.</div>
|
||||
<div class="small text-gray-500">Emily Fowler · 58m</div>
|
||||
</div>
|
||||
</a>
|
||||
<a class="dropdown-item d-flex align-items-center" href="#">
|
||||
<div class="dropdown-list-image mr-3">
|
||||
<img class="rounded-circle" src="img/undraw_profile_2.svg"
|
||||
alt="...">
|
||||
<div class="status-indicator"></div>
|
||||
</div>
|
||||
<div>
|
||||
<div class="text-truncate">I have the photos that you ordered last month, how
|
||||
would you like them sent to you?</div>
|
||||
<div class="small text-gray-500">Jae Chun · 1d</div>
|
||||
</div>
|
||||
</a>
|
||||
<a class="dropdown-item d-flex align-items-center" href="#">
|
||||
<div class="dropdown-list-image mr-3">
|
||||
<img class="rounded-circle" src="img/undraw_profile_3.svg"
|
||||
alt="...">
|
||||
<div class="status-indicator bg-warning"></div>
|
||||
</div>
|
||||
<div>
|
||||
<div class="text-truncate">Last month's report looks great, I am very happy with
|
||||
the progress so far, keep up the good work!</div>
|
||||
<div class="small text-gray-500">Morgan Alvarez · 2d</div>
|
||||
</div>
|
||||
</a>
|
||||
<a class="dropdown-item d-flex align-items-center" href="#">
|
||||
<div class="dropdown-list-image mr-3">
|
||||
<img class="rounded-circle" src="https://source.unsplash.com/Mv9hjnEUHR4/60x60"
|
||||
alt="...">
|
||||
<div class="status-indicator bg-success"></div>
|
||||
</div>
|
||||
<div>
|
||||
<div class="text-truncate">Am I a good boy? The reason I ask is because someone
|
||||
told me that people say this to all dogs, even if they aren't good...</div>
|
||||
<div class="small text-gray-500">Chicken the Dog · 2w</div>
|
||||
</div>
|
||||
</a>
|
||||
<a class="dropdown-item text-center small text-gray-500" href="#">Read More Messages</a>
|
||||
</div>
|
||||
</li>
|
||||
|
||||
<div class="topbar-divider d-none d-sm-block"></div>
|
||||
|
||||
<!-- Nav Item - User Information -->
|
||||
<li class="nav-item dropdown no-arrow">
|
||||
<a class="nav-link dropdown-toggle" href="#" id="userDropdown" role="button"
|
||||
data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
|
||||
<span class="mr-2 d-none d-lg-inline text-gray-600 small">Douglas McGee</span>
|
||||
<img class="img-profile rounded-circle"
|
||||
src="img/undraw_profile.svg">
|
||||
</a>
|
||||
<!-- Dropdown - User Information -->
|
||||
<div class="dropdown-menu dropdown-menu-right shadow animated--grow-in"
|
||||
aria-labelledby="userDropdown">
|
||||
<a class="dropdown-item" href="#">
|
||||
<i class="fas fa-user fa-sm fa-fw mr-2 text-gray-400"></i>
|
||||
Profile
|
||||
</a>
|
||||
<a class="dropdown-item" href="#">
|
||||
<i class="fas fa-cogs fa-sm fa-fw mr-2 text-gray-400"></i>
|
||||
Settings
|
||||
</a>
|
||||
<a class="dropdown-item" href="#">
|
||||
<i class="fas fa-list fa-sm fa-fw mr-2 text-gray-400"></i>
|
||||
Activity Log
|
||||
</a>
|
||||
<div class="dropdown-divider"></div>
|
||||
<a class="dropdown-item" href="#" data-toggle="modal" data-target="#logoutModal">
|
||||
<i class="fas fa-sign-out-alt fa-sm fa-fw mr-2 text-gray-400"></i>
|
||||
Logout
|
||||
</a>
|
||||
</div>
|
||||
</li>
|
||||
|
||||
</ul>
|
||||
|
||||
</nav>
|
||||
<!-- End of Topbar -->
|
||||
|
||||
<!-- Begin Page Content -->
|
||||
<div class="container-fluid">
|
||||
|
||||
<!-- Page Heading -->
|
||||
<h1 class="h3 mb-2 text-gray-800">Charts</h1>
|
||||
<p class="mb-4">Chart.js is a third party plugin that is used to generate the charts in this theme.
|
||||
The charts below have been customized - for further customization options, please visit the <a
|
||||
target="_blank" href="https://www.chartjs.org/docs/latest/">official Chart.js
|
||||
documentation</a>.</p>
|
||||
|
||||
<!-- Content Row -->
|
||||
<div class="row">
|
||||
|
||||
<div class="col-xl-8 col-lg-7">
|
||||
|
||||
<!-- Area Chart -->
|
||||
<div class="card shadow mb-4">
|
||||
<div class="card-header py-3">
|
||||
<h6 class="m-0 font-weight-bold text-primary">Area Chart</h6>
|
||||
</div>
|
||||
<div class="card-body">
|
||||
<div class="chart-area">
|
||||
<canvas id="myAreaChart"></canvas>
|
||||
</div>
|
||||
<hr>
|
||||
Styling for the area chart can be found in the
|
||||
<code>/js/demo/chart-area-demo.js</code> file.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- Bar Chart -->
|
||||
<div class="card shadow mb-4">
|
||||
<div class="card-header py-3">
|
||||
<h6 class="m-0 font-weight-bold text-primary">Bar Chart</h6>
|
||||
</div>
|
||||
<div class="card-body">
|
||||
<div class="chart-bar">
|
||||
<canvas id="myBarChart"></canvas>
|
||||
</div>
|
||||
<hr>
|
||||
Styling for the bar chart can be found in the
|
||||
<code>/js/demo/chart-bar-demo.js</code> file.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<!-- Donut Chart -->
|
||||
<div class="col-xl-4 col-lg-5">
|
||||
<div class="card shadow mb-4">
|
||||
<!-- Card Header - Dropdown -->
|
||||
<div class="card-header py-3">
|
||||
<h6 class="m-0 font-weight-bold text-primary">Donut Chart</h6>
|
||||
</div>
|
||||
<!-- Card Body -->
|
||||
<div class="card-body">
|
||||
<div class="chart-pie pt-4">
|
||||
<canvas id="myPieChart"></canvas>
|
||||
</div>
|
||||
<hr>
|
||||
Styling for the donut chart can be found in the
|
||||
<code>/js/demo/chart-pie-demo.js</code> file.
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
<!-- /.container-fluid -->
|
||||
|
||||
</div>
|
||||
<!-- End of Main Content -->
|
||||
|
||||
<!-- Footer -->
|
||||
<footer class="sticky-footer bg-white">
|
||||
<div class="container my-auto">
|
||||
<div class="copyright text-center my-auto">
|
||||
<span>Copyright © Your Website 2020</span>
|
||||
</div>
|
||||
</div>
|
||||
</footer>
|
||||
<!-- End of Footer -->
|
||||
|
||||
</div>
|
||||
<!-- End of Content Wrapper -->
|
||||
|
||||
</div>
|
||||
<!-- End of Page Wrapper -->
|
||||
|
||||
<!-- Scroll to Top Button-->
|
||||
<a class="scroll-to-top rounded" href="#page-top">
|
||||
<i class="fas fa-angle-up"></i>
|
||||
</a>
|
||||
|
||||
<!-- Logout Modal-->
|
||||
<div class="modal fade" id="logoutModal" tabindex="-1" role="dialog" aria-labelledby="exampleModalLabel"
|
||||
aria-hidden="true">
|
||||
<div class="modal-dialog" role="document">
|
||||
<div class="modal-content">
|
||||
<div class="modal-header">
|
||||
<h5 class="modal-title" id="exampleModalLabel">Ready to Leave?</h5>
|
||||
<button class="close" type="button" data-dismiss="modal" aria-label="Close">
|
||||
<span aria-hidden="true">×</span>
|
||||
</button>
|
||||
</div>
|
||||
<div class="modal-body">Select "Logout" below if you are ready to end your current session.</div>
|
||||
<div class="modal-footer">
|
||||
<button class="btn btn-secondary" type="button" data-dismiss="modal">Cancel</button>
|
||||
<a class="btn btn-primary" href="login.html">Logout</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
</body>
|
||||
{% endblock %}
|
||||
<script src="{{ asset('assets/js/bootstrap.bundle.min.js.js') }}" integrity="sha384-MrcW6ZMFYlzcLA8Nl+NtUVF0sA7MsXsP1UyJoMp4YLEuNSfAP+JcXn/tWtIaxVXM" crossorigin="anonymous"></script>
|
||||
</html>
|
||||
500
templates/backend_admin/demo/color.html.twig
Normal file
500
templates/backend_admin/demo/color.html.twig
Normal file
@@ -0,0 +1,500 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<title>{% block title %}utilities-color !{% endblock %}</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
{% block stylesheets %}
|
||||
{{ encore_entry_link_tags('app_backend') }}
|
||||
{% endblock %}
|
||||
|
||||
{% block javascripts %}
|
||||
{{ encore_entry_script_tags('app_backend') }}
|
||||
{% endblock %}
|
||||
|
||||
</head>
|
||||
|
||||
{% block body %}
|
||||
|
||||
<body id="page-top">
|
||||
|
||||
<!-- Page Wrapper -->
|
||||
<div id="wrapper">
|
||||
|
||||
<!-- Sidebar -->
|
||||
<ul class="navbar-nav bg-gradient-primary sidebar sidebar-dark accordion" id="accordionSidebar">
|
||||
|
||||
<!-- Sidebar - Brand -->
|
||||
<a class="sidebar-brand d-flex align-items-center justify-content-center" href="index.html">
|
||||
<div class="sidebar-brand-icon rotate-n-15">
|
||||
<i class="fas fa-laugh-wink"></i>
|
||||
</div>
|
||||
<div class="sidebar-brand-text mx-3">SB Admin <sup>2</sup></div>
|
||||
</a>
|
||||
|
||||
<!-- Divider -->
|
||||
<hr class="sidebar-divider my-0">
|
||||
|
||||
<!-- Nav Item - Dashboard -->
|
||||
<li class="nav-item">
|
||||
<a class="nav-link" href="index.html">
|
||||
<i class="fas fa-fw fa-tachometer-alt"></i>
|
||||
<span>Dashboard</span></a>
|
||||
</li>
|
||||
|
||||
<!-- Divider -->
|
||||
<hr class="sidebar-divider">
|
||||
|
||||
<!-- Heading -->
|
||||
<div class="sidebar-heading">
|
||||
Interface
|
||||
</div>
|
||||
|
||||
<!-- Nav Item - Pages Collapse Menu -->
|
||||
<li class="nav-item">
|
||||
<a class="nav-link collapsed" href="#" data-toggle="collapse" data-target="#collapseTwo"
|
||||
aria-expanded="true" aria-controls="collapseTwo">
|
||||
<i class="fas fa-fw fa-cog"></i>
|
||||
<span>Components</span>
|
||||
</a>
|
||||
<div id="collapseTwo" class="collapse" aria-labelledby="headingTwo" data-parent="#accordionSidebar">
|
||||
<div class="bg-white py-2 collapse-inner rounded">
|
||||
<h6 class="collapse-header">Custom Components:</h6>
|
||||
<a class="collapse-item" href="buttons.html">Buttons</a>
|
||||
<a class="collapse-item" href="cards.html">Cards</a>
|
||||
</div>
|
||||
</div>
|
||||
</li>
|
||||
|
||||
<!-- Nav Item - Utilities Collapse Menu -->
|
||||
<li class="nav-item active">
|
||||
<a class="nav-link" href="#" data-toggle="collapse" data-target="#collapseUtilities"
|
||||
aria-expanded="true" aria-controls="collapseUtilities">
|
||||
<i class="fas fa-fw fa-wrench"></i>
|
||||
<span>Utilities</span>
|
||||
</a>
|
||||
<div id="collapseUtilities" class="collapse show" aria-labelledby="headingUtilities"
|
||||
data-parent="#accordionSidebar">
|
||||
<div class="bg-white py-2 collapse-inner rounded">
|
||||
<h6 class="collapse-header">Custom Utilities:</h6>
|
||||
<a class="collapse-item active" href="utilities-color.html">Colors</a>
|
||||
<a class="collapse-item" href="utilities-border.html">Borders</a>
|
||||
<a class="collapse-item" href="utilities-animation.html">Animations</a>
|
||||
<a class="collapse-item" href="utilities-other.html">Other</a>
|
||||
</div>
|
||||
</div>
|
||||
</li>
|
||||
|
||||
<!-- Divider -->
|
||||
<hr class="sidebar-divider">
|
||||
|
||||
<!-- Heading -->
|
||||
<div class="sidebar-heading">
|
||||
Addons
|
||||
</div>
|
||||
|
||||
<!-- Nav Item - Pages Collapse Menu -->
|
||||
<li class="nav-item">
|
||||
<a class="nav-link collapsed" href="#" data-toggle="collapse" data-target="#collapsePages"
|
||||
aria-expanded="true" aria-controls="collapsePages">
|
||||
<i class="fas fa-fw fa-folder"></i>
|
||||
<span>Pages</span>
|
||||
</a>
|
||||
<div id="collapsePages" class="collapse" aria-labelledby="headingPages" data-parent="#accordionSidebar">
|
||||
<div class="bg-white py-2 collapse-inner rounded">
|
||||
<h6 class="collapse-header">Login Screens:</h6>
|
||||
<a class="collapse-item" href="login.html">Login</a>
|
||||
<a class="collapse-item" href="register.html">Register</a>
|
||||
<a class="collapse-item" href="forgot-password.html">Forgot Password</a>
|
||||
<div class="collapse-divider"></div>
|
||||
<h6 class="collapse-header">Other Pages:</h6>
|
||||
<a class="collapse-item" href="404.html">404 Page</a>
|
||||
<a class="collapse-item" href="blank.html">Blank Page</a>
|
||||
</div>
|
||||
</div>
|
||||
</li>
|
||||
|
||||
<!-- Nav Item - Charts -->
|
||||
<li class="nav-item">
|
||||
<a class="nav-link" href="charts.html">
|
||||
<i class="fas fa-fw fa-chart-area"></i>
|
||||
<span>Charts</span></a>
|
||||
</li>
|
||||
|
||||
<!-- Nav Item - Tables -->
|
||||
<li class="nav-item">
|
||||
<a class="nav-link" href="tables.html">
|
||||
<i class="fas fa-fw fa-table"></i>
|
||||
<span>Tables</span></a>
|
||||
</li>
|
||||
|
||||
<!-- Divider -->
|
||||
<hr class="sidebar-divider d-none d-md-block">
|
||||
|
||||
<!-- Sidebar Toggler (Sidebar) -->
|
||||
<div class="text-center d-none d-md-inline">
|
||||
<button class="rounded-circle border-0" id="sidebarToggle"></button>
|
||||
</div>
|
||||
|
||||
</ul>
|
||||
<!-- End of Sidebar -->
|
||||
|
||||
<!-- Content Wrapper -->
|
||||
<div id="content-wrapper" class="d-flex flex-column">
|
||||
|
||||
<!-- Main Content -->
|
||||
<div id="content">
|
||||
|
||||
<!-- Topbar -->
|
||||
<nav class="navbar navbar-expand navbar-light bg-white topbar mb-4 static-top shadow">
|
||||
|
||||
<!-- Sidebar Toggle (Topbar) -->
|
||||
<button id="sidebarToggleTop" class="btn btn-link d-md-none rounded-circle mr-3">
|
||||
<i class="fa fa-bars"></i>
|
||||
</button>
|
||||
|
||||
<!-- Topbar Search -->
|
||||
<form
|
||||
class="d-none d-sm-inline-block form-inline mr-auto ml-md-3 my-2 my-md-0 mw-100 navbar-search">
|
||||
<div class="input-group">
|
||||
<input type="text" class="form-control bg-light border-0 small" placeholder="Search for..."
|
||||
aria-label="Search" aria-describedby="basic-addon2">
|
||||
<div class="input-group-append">
|
||||
<button class="btn btn-primary" type="button">
|
||||
<i class="fas fa-search fa-sm"></i>
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
|
||||
<!-- Topbar Navbar -->
|
||||
<ul class="navbar-nav ml-auto">
|
||||
|
||||
<!-- Nav Item - Search Dropdown (Visible Only XS) -->
|
||||
<li class="nav-item dropdown no-arrow d-sm-none">
|
||||
<a class="nav-link dropdown-toggle" href="#" id="searchDropdown" role="button"
|
||||
data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
|
||||
<i class="fas fa-search fa-fw"></i>
|
||||
</a>
|
||||
<!-- Dropdown - Messages -->
|
||||
<div class="dropdown-menu dropdown-menu-right p-3 shadow animated--grow-in"
|
||||
aria-labelledby="searchDropdown">
|
||||
<form class="form-inline mr-auto w-100 navbar-search">
|
||||
<div class="input-group">
|
||||
<input type="text" class="form-control bg-light border-0 small"
|
||||
placeholder="Search for..." aria-label="Search"
|
||||
aria-describedby="basic-addon2">
|
||||
<div class="input-group-append">
|
||||
<button class="btn btn-primary" type="button">
|
||||
<i class="fas fa-search fa-sm"></i>
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</li>
|
||||
|
||||
<!-- Nav Item - Alerts -->
|
||||
<li class="nav-item dropdown no-arrow mx-1">
|
||||
<a class="nav-link dropdown-toggle" href="#" id="alertsDropdown" role="button"
|
||||
data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
|
||||
<i class="fas fa-bell fa-fw"></i>
|
||||
<!-- Counter - Alerts -->
|
||||
<span class="badge badge-danger badge-counter">3+</span>
|
||||
</a>
|
||||
<!-- Dropdown - Alerts -->
|
||||
<div class="dropdown-list dropdown-menu dropdown-menu-right shadow animated--grow-in"
|
||||
aria-labelledby="alertsDropdown">
|
||||
<h6 class="dropdown-header">
|
||||
Alerts Center
|
||||
</h6>
|
||||
<a class="dropdown-item d-flex align-items-center" href="#">
|
||||
<div class="mr-3">
|
||||
<div class="icon-circle bg-primary">
|
||||
<i class="fas fa-file-alt text-white"></i>
|
||||
</div>
|
||||
</div>
|
||||
<div>
|
||||
<div class="small text-gray-500">December 12, 2019</div>
|
||||
<span class="font-weight-bold">A new monthly report is ready to download!</span>
|
||||
</div>
|
||||
</a>
|
||||
<a class="dropdown-item d-flex align-items-center" href="#">
|
||||
<div class="mr-3">
|
||||
<div class="icon-circle bg-success">
|
||||
<i class="fas fa-donate text-white"></i>
|
||||
</div>
|
||||
</div>
|
||||
<div>
|
||||
<div class="small text-gray-500">December 7, 2019</div>
|
||||
$290.29 has been deposited into your account!
|
||||
</div>
|
||||
</a>
|
||||
<a class="dropdown-item d-flex align-items-center" href="#">
|
||||
<div class="mr-3">
|
||||
<div class="icon-circle bg-warning">
|
||||
<i class="fas fa-exclamation-triangle text-white"></i>
|
||||
</div>
|
||||
</div>
|
||||
<div>
|
||||
<div class="small text-gray-500">December 2, 2019</div>
|
||||
Spending Alert: We've noticed unusually high spending for your account.
|
||||
</div>
|
||||
</a>
|
||||
<a class="dropdown-item text-center small text-gray-500" href="#">Show All Alerts</a>
|
||||
</div>
|
||||
</li>
|
||||
|
||||
<!-- Nav Item - Messages -->
|
||||
<li class="nav-item dropdown no-arrow mx-1">
|
||||
<a class="nav-link dropdown-toggle" href="#" id="messagesDropdown" role="button"
|
||||
data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
|
||||
<i class="fas fa-envelope fa-fw"></i>
|
||||
<!-- Counter - Messages -->
|
||||
<span class="badge badge-danger badge-counter">7</span>
|
||||
</a>
|
||||
<!-- Dropdown - Messages -->
|
||||
<div class="dropdown-list dropdown-menu dropdown-menu-right shadow animated--grow-in"
|
||||
aria-labelledby="messagesDropdown">
|
||||
<h6 class="dropdown-header">
|
||||
Message Center
|
||||
</h6>
|
||||
<a class="dropdown-item d-flex align-items-center" href="#">
|
||||
<div class="dropdown-list-image mr-3">
|
||||
<img class="rounded-circle" src="img/undraw_profile_1.svg"
|
||||
alt="...">
|
||||
<div class="status-indicator bg-success"></div>
|
||||
</div>
|
||||
<div class="font-weight-bold">
|
||||
<div class="text-truncate">Hi there! I am wondering if you can help me with a
|
||||
problem I've been having.</div>
|
||||
<div class="small text-gray-500">Emily Fowler · 58m</div>
|
||||
</div>
|
||||
</a>
|
||||
<a class="dropdown-item d-flex align-items-center" href="#">
|
||||
<div class="dropdown-list-image mr-3">
|
||||
<img class="rounded-circle" src="img/undraw_profile_2.svg"
|
||||
alt="...">
|
||||
<div class="status-indicator"></div>
|
||||
</div>
|
||||
<div>
|
||||
<div class="text-truncate">I have the photos that you ordered last month, how
|
||||
would you like them sent to you?</div>
|
||||
<div class="small text-gray-500">Jae Chun · 1d</div>
|
||||
</div>
|
||||
</a>
|
||||
<a class="dropdown-item d-flex align-items-center" href="#">
|
||||
<div class="dropdown-list-image mr-3">
|
||||
<img class="rounded-circle" src="img/undraw_profile_3.svg"
|
||||
alt="...">
|
||||
<div class="status-indicator bg-warning"></div>
|
||||
</div>
|
||||
<div>
|
||||
<div class="text-truncate">Last month's report looks great, I am very happy with
|
||||
the progress so far, keep up the good work!</div>
|
||||
<div class="small text-gray-500">Morgan Alvarez · 2d</div>
|
||||
</div>
|
||||
</a>
|
||||
<a class="dropdown-item d-flex align-items-center" href="#">
|
||||
<div class="dropdown-list-image mr-3">
|
||||
<img class="rounded-circle" src="https://source.unsplash.com/Mv9hjnEUHR4/60x60"
|
||||
alt="...">
|
||||
<div class="status-indicator bg-success"></div>
|
||||
</div>
|
||||
<div>
|
||||
<div class="text-truncate">Am I a good boy? The reason I ask is because someone
|
||||
told me that people say this to all dogs, even if they aren't good...</div>
|
||||
<div class="small text-gray-500">Chicken the Dog · 2w</div>
|
||||
</div>
|
||||
</a>
|
||||
<a class="dropdown-item text-center small text-gray-500" href="#">Read More Messages</a>
|
||||
</div>
|
||||
</li>
|
||||
|
||||
<div class="topbar-divider d-none d-sm-block"></div>
|
||||
|
||||
<!-- Nav Item - User Information -->
|
||||
<li class="nav-item dropdown no-arrow">
|
||||
<a class="nav-link dropdown-toggle" href="#" id="userDropdown" role="button"
|
||||
data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
|
||||
<span class="mr-2 d-none d-lg-inline text-gray-600 small">Douglas McGee</span>
|
||||
<img class="img-profile rounded-circle"
|
||||
src="img/undraw_profile.svg">
|
||||
</a>
|
||||
<!-- Dropdown - User Information -->
|
||||
<div class="dropdown-menu dropdown-menu-right shadow animated--grow-in"
|
||||
aria-labelledby="userDropdown">
|
||||
<a class="dropdown-item" href="#">
|
||||
<i class="fas fa-user fa-sm fa-fw mr-2 text-gray-400"></i>
|
||||
Profile
|
||||
</a>
|
||||
<a class="dropdown-item" href="#">
|
||||
<i class="fas fa-cogs fa-sm fa-fw mr-2 text-gray-400"></i>
|
||||
Settings
|
||||
</a>
|
||||
<a class="dropdown-item" href="#">
|
||||
<i class="fas fa-list fa-sm fa-fw mr-2 text-gray-400"></i>
|
||||
Activity Log
|
||||
</a>
|
||||
<div class="dropdown-divider"></div>
|
||||
<a class="dropdown-item" href="#" data-toggle="modal" data-target="#logoutModal">
|
||||
<i class="fas fa-sign-out-alt fa-sm fa-fw mr-2 text-gray-400"></i>
|
||||
Logout
|
||||
</a>
|
||||
</div>
|
||||
</li>
|
||||
|
||||
</ul>
|
||||
|
||||
</nav>
|
||||
<!-- End of Topbar -->
|
||||
|
||||
<!-- Begin Page Content -->
|
||||
<div class="container-fluid">
|
||||
|
||||
<!-- Page Heading -->
|
||||
<h1 class="h3 mb-1 text-gray-800">Color Utilities</h1>
|
||||
<p class="mb-4">Bootstrap's default utility classes can be found on the official <a
|
||||
href="https://getbootstrap.com/docs">Bootstrap Documentation</a> page. The custom utilities
|
||||
below were created to extend this theme past the default utility classes built into Bootstrap's
|
||||
framework.</p>
|
||||
|
||||
<!-- Content Row -->
|
||||
<div class="row">
|
||||
|
||||
<!-- First Column -->
|
||||
<div class="col-lg-4">
|
||||
|
||||
<!-- Custom Text Color Utilities -->
|
||||
<div class="card shadow mb-4">
|
||||
<div class="card-header py-3">
|
||||
<h6 class="m-0 font-weight-bold text-primary">Custom Text Color Utilities</h6>
|
||||
</div>
|
||||
<div class="card-body">
|
||||
<p class="text-gray-100 p-3 bg-dark m-0">.text-gray-100</p>
|
||||
<p class="text-gray-200 p-3 bg-dark m-0">.text-gray-200</p>
|
||||
<p class="text-gray-300 p-3 bg-dark m-0">.text-gray-300</p>
|
||||
<p class="text-gray-400 p-3 bg-dark m-0">.text-gray-400</p>
|
||||
<p class="text-gray-500 p-3 m-0">.text-gray-500</p>
|
||||
<p class="text-gray-600 p-3 m-0">.text-gray-600</p>
|
||||
<p class="text-gray-700 p-3 m-0">.text-gray-700</p>
|
||||
<p class="text-gray-800 p-3 m-0">.text-gray-800</p>
|
||||
<p class="text-gray-900 p-3 m-0">.text-gray-900</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- Custom Font Size Utilities -->
|
||||
<div class="card shadow mb-4">
|
||||
<div class="card-header py-3">
|
||||
<h6 class="m-0 font-weight-bold text-primary">Custom Font Size Utilities</h6>
|
||||
</div>
|
||||
<div class="card-body">
|
||||
<p class="text-xs">.text-xs</p>
|
||||
<p class="text-lg mb-0">.text-lg</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<!-- Second Column -->
|
||||
<div class="col-lg-4">
|
||||
|
||||
<!-- Background Gradient Utilities -->
|
||||
<div class="card shadow mb-4">
|
||||
<div class="card-header py-3">
|
||||
<h6 class="m-0 font-weight-bold text-primary">Custom Background Gradient Utilities
|
||||
</h6>
|
||||
</div>
|
||||
<div class="card-body">
|
||||
<div class="px-3 py-5 bg-gradient-primary text-white">.bg-gradient-primary</div>
|
||||
<div class="px-3 py-5 bg-gradient-secondary text-white">.bg-gradient-secondary</div>
|
||||
<div class="px-3 py-5 bg-gradient-success text-white">.bg-gradient-success</div>
|
||||
<div class="px-3 py-5 bg-gradient-info text-white">.bg-gradient-info</div>
|
||||
<div class="px-3 py-5 bg-gradient-warning text-white">.bg-gradient-warning</div>
|
||||
<div class="px-3 py-5 bg-gradient-danger text-white">.bg-gradient-danger</div>
|
||||
<div class="px-3 py-5 bg-gradient-light text-white">.bg-gradient-light</div>
|
||||
<div class="px-3 py-5 bg-gradient-dark text-white">.bg-gradient-dark</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<!-- Third Column -->
|
||||
<div class="col-lg-4">
|
||||
|
||||
<!-- Grayscale Utilities -->
|
||||
<div class="card shadow mb-4">
|
||||
<div class="card-header py-3">
|
||||
<h6 class="m-0 font-weight-bold text-primary">Custom Grayscale Background Utilities
|
||||
</h6>
|
||||
</div>
|
||||
<div class="card-body">
|
||||
<div class="p-3 bg-gray-100">.bg-gray-100</div>
|
||||
<div class="p-3 bg-gray-200">.bg-gray-200</div>
|
||||
<div class="p-3 bg-gray-300">.bg-gray-300</div>
|
||||
<div class="p-3 bg-gray-400">.bg-gray-400</div>
|
||||
<div class="p-3 bg-gray-500 text-white">.bg-gray-500</div>
|
||||
<div class="p-3 bg-gray-600 text-white">.bg-gray-600</div>
|
||||
<div class="p-3 bg-gray-700 text-white">.bg-gray-700</div>
|
||||
<div class="p-3 bg-gray-800 text-white">.bg-gray-800</div>
|
||||
<div class="p-3 bg-gray-900 text-white">.bg-gray-900</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
<!-- /.container-fluid -->
|
||||
|
||||
</div>
|
||||
<!-- End of Main Content -->
|
||||
|
||||
<!-- Footer -->
|
||||
<footer class="sticky-footer bg-white">
|
||||
<div class="container my-auto">
|
||||
<div class="copyright text-center my-auto">
|
||||
<span>Copyright © Your Website 2020</span>
|
||||
</div>
|
||||
</div>
|
||||
</footer>
|
||||
<!-- End of Footer -->
|
||||
|
||||
</div>
|
||||
<!-- End of Content Wrapper -->
|
||||
|
||||
</div>
|
||||
<!-- End of Page Wrapper -->
|
||||
|
||||
<!-- Scroll to Top Button-->
|
||||
<a class="scroll-to-top rounded" href="#page-top">
|
||||
<i class="fas fa-angle-up"></i>
|
||||
</a>
|
||||
|
||||
<!-- Logout Modal-->
|
||||
<div class="modal fade" id="logoutModal" tabindex="-1" role="dialog" aria-labelledby="exampleModalLabel"
|
||||
aria-hidden="true">
|
||||
<div class="modal-dialog" role="document">
|
||||
<div class="modal-content">
|
||||
<div class="modal-header">
|
||||
<h5 class="modal-title" id="exampleModalLabel">Ready to Leave?</h5>
|
||||
<button class="close" type="button" data-dismiss="modal" aria-label="Close">
|
||||
<span aria-hidden="true">×</span>
|
||||
</button>
|
||||
</div>
|
||||
<div class="modal-body">Select "Logout" below if you are ready to end your current session.</div>
|
||||
<div class="modal-footer">
|
||||
<button class="btn btn-secondary" type="button" data-dismiss="modal">Cancel</button>
|
||||
<a class="btn btn-primary" href="login.html">Logout</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</body>
|
||||
|
||||
{% endblock %}
|
||||
|
||||
<!-- Bootstrap core JavaScript-->
|
||||
<script src="{{ asset('assets/js/bootstrap.bundle.min.js.js') }}" integrity="sha384-MrcW6ZMFYlzcLA8Nl+NtUVF0sA7MsXsP1UyJoMp4YLEuNSfAP+JcXn/tWtIaxVXM" crossorigin="anonymous"></script>
|
||||
</html>
|
||||
902
templates/backend_admin/demo/datatable.html.twig
Normal file
902
templates/backend_admin/demo/datatable.html.twig
Normal file
@@ -0,0 +1,902 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<title>{% block title %}Data Table{% endblock %}</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
{% block stylesheets %}
|
||||
{{ encore_entry_link_tags('app_backend') }}
|
||||
{% endblock %}
|
||||
|
||||
{% block javascripts %}
|
||||
{{ encore_entry_script_tags('app_backend') }}
|
||||
{% endblock %}
|
||||
</head>
|
||||
|
||||
{% block body %}
|
||||
<body id="page-top">
|
||||
|
||||
<!-- Page Wrapper -->
|
||||
<div id="wrapper">
|
||||
|
||||
<!-- Sidebar -->
|
||||
<ul class="navbar-nav bg-gradient-primary sidebar sidebar-dark accordion" id="accordionSidebar">
|
||||
|
||||
<!-- Sidebar - Brand -->
|
||||
<a class="sidebar-brand d-flex align-items-center justify-content-center" href="index.html">
|
||||
<div class="sidebar-brand-icon rotate-n-15">
|
||||
<i class="fas fa-laugh-wink"></i>
|
||||
</div>
|
||||
<div class="sidebar-brand-text mx-3">SB Admin <sup>2</sup></div>
|
||||
</a>
|
||||
|
||||
<!-- Divider -->
|
||||
<hr class="sidebar-divider my-0">
|
||||
|
||||
<!-- Nav Item - Dashboard -->
|
||||
<li class="nav-item">
|
||||
<a class="nav-link" href="index.html">
|
||||
<i class="fas fa-fw fa-tachometer-alt"></i>
|
||||
<span>Dashboard</span></a>
|
||||
</li>
|
||||
|
||||
<!-- Divider -->
|
||||
<hr class="sidebar-divider">
|
||||
|
||||
<!-- Heading -->
|
||||
<div class="sidebar-heading">
|
||||
Interface
|
||||
</div>
|
||||
|
||||
<!-- Nav Item - Pages Collapse Menu -->
|
||||
<li class="nav-item">
|
||||
<a class="nav-link collapsed" href="#" data-toggle="collapse" data-target="#collapseTwo"
|
||||
aria-expanded="true" aria-controls="collapseTwo">
|
||||
<i class="fas fa-fw fa-cog"></i>
|
||||
<span>Components</span>
|
||||
</a>
|
||||
<div id="collapseTwo" class="collapse" aria-labelledby="headingTwo" data-parent="#accordionSidebar">
|
||||
<div class="bg-white py-2 collapse-inner rounded">
|
||||
<h6 class="collapse-header">Custom Components:</h6>
|
||||
<a class="collapse-item" href="buttons.html">Buttons</a>
|
||||
<a class="collapse-item" href="cards.html">Cards</a>
|
||||
</div>
|
||||
</div>
|
||||
</li>
|
||||
|
||||
<!-- Nav Item - Utilities Collapse Menu -->
|
||||
<li class="nav-item">
|
||||
<a class="nav-link collapsed" href="#" data-toggle="collapse" data-target="#collapseUtilities"
|
||||
aria-expanded="true" aria-controls="collapseUtilities">
|
||||
<i class="fas fa-fw fa-wrench"></i>
|
||||
<span>Utilities</span>
|
||||
</a>
|
||||
<div id="collapseUtilities" class="collapse" aria-labelledby="headingUtilities"
|
||||
data-parent="#accordionSidebar">
|
||||
<div class="bg-white py-2 collapse-inner rounded">
|
||||
<h6 class="collapse-header">Custom Utilities:</h6>
|
||||
<a class="collapse-item" href="utilities-color.html">Colors</a>
|
||||
<a class="collapse-item" href="utilities-border.html">Borders</a>
|
||||
<a class="collapse-item" href="utilities-animation.html">Animations</a>
|
||||
<a class="collapse-item" href="utilities-other.html">Other</a>
|
||||
</div>
|
||||
</div>
|
||||
</li>
|
||||
|
||||
<!-- Divider -->
|
||||
<hr class="sidebar-divider">
|
||||
|
||||
<!-- Heading -->
|
||||
<div class="sidebar-heading">
|
||||
Addons
|
||||
</div>
|
||||
|
||||
<!-- Nav Item - Pages Collapse Menu -->
|
||||
<li class="nav-item">
|
||||
<a class="nav-link collapsed" href="#" data-toggle="collapse" data-target="#collapsePages"
|
||||
aria-expanded="true" aria-controls="collapsePages">
|
||||
<i class="fas fa-fw fa-folder"></i>
|
||||
<span>Pages</span>
|
||||
</a>
|
||||
<div id="collapsePages" class="collapse" aria-labelledby="headingPages" data-parent="#accordionSidebar">
|
||||
<div class="bg-white py-2 collapse-inner rounded">
|
||||
<h6 class="collapse-header">Login Screens:</h6>
|
||||
<a class="collapse-item" href="login.html">Login</a>
|
||||
<a class="collapse-item" href="register.html">Register</a>
|
||||
<a class="collapse-item" href="forgot-password.html">Forgot Password</a>
|
||||
<div class="collapse-divider"></div>
|
||||
<h6 class="collapse-header">Other Pages:</h6>
|
||||
<a class="collapse-item" href="404.html">404 Page</a>
|
||||
<a class="collapse-item" href="blank.html">Blank Page</a>
|
||||
</div>
|
||||
</div>
|
||||
</li>
|
||||
|
||||
<!-- Nav Item - Charts -->
|
||||
<li class="nav-item">
|
||||
<a class="nav-link" href="charts.html">
|
||||
<i class="fas fa-fw fa-chart-area"></i>
|
||||
<span>Charts</span></a>
|
||||
</li>
|
||||
|
||||
<!-- Nav Item - Tables -->
|
||||
<li class="nav-item active">
|
||||
<a class="nav-link" href="tables.html">
|
||||
<i class="fas fa-fw fa-table"></i>
|
||||
<span>Tables</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<!-- Divider -->
|
||||
<hr class="sidebar-divider d-none d-md-block">
|
||||
|
||||
<!-- Sidebar Toggler (Sidebar) -->
|
||||
<div class="text-center d-none d-md-inline">
|
||||
<button class="rounded-circle border-0" id="sidebarToggle"></button>
|
||||
</div>
|
||||
|
||||
</ul>
|
||||
<!-- End of Sidebar -->
|
||||
|
||||
<!-- Content Wrapper -->
|
||||
<div id="content-wrapper" class="d-flex flex-column">
|
||||
|
||||
<!-- Main Content -->
|
||||
<div id="content">
|
||||
|
||||
<!-- Topbar -->
|
||||
<nav class="navbar navbar-expand navbar-light bg-white topbar mb-4 static-top shadow">
|
||||
|
||||
<!-- Sidebar Toggle (Topbar) -->
|
||||
<form class="form-inline">
|
||||
<button id="sidebarToggleTop" class="btn btn-link d-md-none rounded-circle mr-3">
|
||||
<i class="fa fa-bars"></i>
|
||||
</button>
|
||||
</form>
|
||||
|
||||
<!-- Topbar Search -->
|
||||
<form
|
||||
class="d-none d-sm-inline-block form-inline mr-auto ml-md-3 my-2 my-md-0 mw-100 navbar-search">
|
||||
<div class="input-group">
|
||||
<input type="text" class="form-control bg-light border-0 small" placeholder="Search for..."
|
||||
aria-label="Search" aria-describedby="basic-addon2">
|
||||
<div class="input-group-append">
|
||||
<button class="btn btn-primary" type="button">
|
||||
<i class="fas fa-search fa-sm"></i>
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
|
||||
<!-- Topbar Navbar -->
|
||||
<ul class="navbar-nav ml-auto">
|
||||
|
||||
<!-- Nav Item - Search Dropdown (Visible Only XS) -->
|
||||
<li class="nav-item dropdown no-arrow d-sm-none">
|
||||
<a class="nav-link dropdown-toggle" href="#" id="searchDropdown" role="button"
|
||||
data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
|
||||
<i class="fas fa-search fa-fw"></i>
|
||||
</a>
|
||||
<!-- Dropdown - Messages -->
|
||||
<div class="dropdown-menu dropdown-menu-right p-3 shadow animated--grow-in"
|
||||
aria-labelledby="searchDropdown">
|
||||
<form class="form-inline mr-auto w-100 navbar-search">
|
||||
<div class="input-group">
|
||||
<input type="text" class="form-control bg-light border-0 small"
|
||||
placeholder="Search for..." aria-label="Search"
|
||||
aria-describedby="basic-addon2">
|
||||
<div class="input-group-append">
|
||||
<button class="btn btn-primary" type="button">
|
||||
<i class="fas fa-search fa-sm"></i>
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</li>
|
||||
|
||||
<!-- Nav Item - Alerts -->
|
||||
<li class="nav-item dropdown no-arrow mx-1">
|
||||
<a class="nav-link dropdown-toggle" href="#" id="alertsDropdown" role="button"
|
||||
data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
|
||||
<i class="fas fa-bell fa-fw"></i>
|
||||
<!-- Counter - Alerts -->
|
||||
<span class="badge badge-danger badge-counter">3+</span>
|
||||
</a>
|
||||
<!-- Dropdown - Alerts -->
|
||||
<div class="dropdown-list dropdown-menu dropdown-menu-right shadow animated--grow-in"
|
||||
aria-labelledby="alertsDropdown">
|
||||
<h6 class="dropdown-header">
|
||||
Alerts Center
|
||||
</h6>
|
||||
<a class="dropdown-item d-flex align-items-center" href="#">
|
||||
<div class="mr-3">
|
||||
<div class="icon-circle bg-primary">
|
||||
<i class="fas fa-file-alt text-white"></i>
|
||||
</div>
|
||||
</div>
|
||||
<div>
|
||||
<div class="small text-gray-500">December 12, 2019</div>
|
||||
<span class="font-weight-bold">A new monthly report is ready to download!</span>
|
||||
</div>
|
||||
</a>
|
||||
<a class="dropdown-item d-flex align-items-center" href="#">
|
||||
<div class="mr-3">
|
||||
<div class="icon-circle bg-success">
|
||||
<i class="fas fa-donate text-white"></i>
|
||||
</div>
|
||||
</div>
|
||||
<div>
|
||||
<div class="small text-gray-500">December 7, 2019</div>
|
||||
$290.29 has been deposited into your account!
|
||||
</div>
|
||||
</a>
|
||||
<a class="dropdown-item d-flex align-items-center" href="#">
|
||||
<div class="mr-3">
|
||||
<div class="icon-circle bg-warning">
|
||||
<i class="fas fa-exclamation-triangle text-white"></i>
|
||||
</div>
|
||||
</div>
|
||||
<div>
|
||||
<div class="small text-gray-500">December 2, 2019</div>
|
||||
Spending Alert: We've noticed unusually high spending for your account.
|
||||
</div>
|
||||
</a>
|
||||
<a class="dropdown-item text-center small text-gray-500" href="#">Show All Alerts</a>
|
||||
</div>
|
||||
</li>
|
||||
|
||||
<!-- Nav Item - Messages -->
|
||||
<li class="nav-item dropdown no-arrow mx-1">
|
||||
<a class="nav-link dropdown-toggle" href="#" id="messagesDropdown" role="button"
|
||||
data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
|
||||
<i class="fas fa-envelope fa-fw"></i>
|
||||
<!-- Counter - Messages -->
|
||||
<span class="badge badge-danger badge-counter">7</span>
|
||||
</a>
|
||||
<!-- Dropdown - Messages -->
|
||||
<div class="dropdown-list dropdown-menu dropdown-menu-right shadow animated--grow-in"
|
||||
aria-labelledby="messagesDropdown">
|
||||
<h6 class="dropdown-header">
|
||||
Message Center
|
||||
</h6>
|
||||
<a class="dropdown-item d-flex align-items-center" href="#">
|
||||
<div class="dropdown-list-image mr-3">
|
||||
<img class="rounded-circle" src="{{ asset('images/backend/img/undraw_profile_1.svg') }}"
|
||||
alt="...">
|
||||
<div class="status-indicator bg-success"></div>
|
||||
</div>
|
||||
<div class="font-weight-bold">
|
||||
<div class="text-truncate">Hi there! I am wondering if you can help me with a
|
||||
problem I've been having.</div>
|
||||
<div class="small text-gray-500">Emily Fowler · 58m</div>
|
||||
</div>
|
||||
</a>
|
||||
<a class="dropdown-item d-flex align-items-center" href="#">
|
||||
<div class="dropdown-list-image mr-3">
|
||||
<img class="rounded-circle" src="{{ asset('images/backend/img/undraw_profile_2.svg') }}"
|
||||
alt="...">
|
||||
<div class="status-indicator"></div>
|
||||
</div>
|
||||
<div>
|
||||
<div class="text-truncate">I have the photos that you ordered last month, how
|
||||
would you like them sent to you?</div>
|
||||
<div class="small text-gray-500">Jae Chun · 1d</div>
|
||||
</div>
|
||||
</a>
|
||||
<a class="dropdown-item d-flex align-items-center" href="#">
|
||||
<div class="dropdown-list-image mr-3">
|
||||
<img class="rounded-circle" src="{{ asset('images/backend/img/undraw_profile_3.svg') }}"
|
||||
alt="...">
|
||||
<div class="status-indicator bg-warning"></div>
|
||||
</div>
|
||||
<div>
|
||||
<div class="text-truncate">Last month's report looks great, I am very happy with
|
||||
the progress so far, keep up the good work!</div>
|
||||
<div class="small text-gray-500">Morgan Alvarez · 2d</div>
|
||||
</div>
|
||||
</a>
|
||||
<a class="dropdown-item d-flex align-items-center" href="#">
|
||||
<div class="dropdown-list-image mr-3">
|
||||
<img class="rounded-circle" src="https://source.unsplash.com/Mv9hjnEUHR4/60x60"
|
||||
alt="...">
|
||||
<div class="status-indicator bg-success"></div>
|
||||
</div>
|
||||
<div>
|
||||
<div class="text-truncate">Am I a good boy? The reason I ask is because someone
|
||||
told me that people say this to all dogs, even if they aren't good...</div>
|
||||
<div class="small text-gray-500">Chicken the Dog · 2w</div>
|
||||
</div>
|
||||
</a>
|
||||
<a class="dropdown-item text-center small text-gray-500" href="#">Read More Messages</a>
|
||||
</div>
|
||||
</li>
|
||||
|
||||
<div class="topbar-divider d-none d-sm-block"></div>
|
||||
|
||||
<!-- Nav Item - User Information -->
|
||||
<li class="nav-item dropdown no-arrow">
|
||||
<a class="nav-link dropdown-toggle" href="#" id="userDropdown" role="button"
|
||||
data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
|
||||
<span class="mr-2 d-none d-lg-inline text-gray-600 small">Douglas McGee</span>
|
||||
<img class="img-profile rounded-circle"
|
||||
src="{{ asset('images/backend/img/undraw_profile.svg') }}">
|
||||
</a>
|
||||
<!-- Dropdown - User Information -->
|
||||
<div class="dropdown-menu dropdown-menu-right shadow animated--grow-in"
|
||||
aria-labelledby="userDropdown">
|
||||
<a class="dropdown-item" href="#">
|
||||
<i class="fas fa-user fa-sm fa-fw mr-2 text-gray-400"></i>
|
||||
Profile
|
||||
</a>
|
||||
<a class="dropdown-item" href="#">
|
||||
<i class="fas fa-cogs fa-sm fa-fw mr-2 text-gray-400"></i>
|
||||
Settings
|
||||
</a>
|
||||
<a class="dropdown-item" href="#">
|
||||
<i class="fas fa-list fa-sm fa-fw mr-2 text-gray-400"></i>
|
||||
Activity Log
|
||||
</a>
|
||||
<div class="dropdown-divider"></div>
|
||||
<a class="dropdown-item" href="#" data-toggle="modal" data-target="#logoutModal">
|
||||
<i class="fas fa-sign-out-alt fa-sm fa-fw mr-2 text-gray-400"></i>
|
||||
Logout
|
||||
</a>
|
||||
</div>
|
||||
</li>
|
||||
|
||||
</ul>
|
||||
|
||||
</nav>
|
||||
<!-- End of Topbar -->
|
||||
|
||||
<!-- Begin Page Content -->
|
||||
<div class="container-fluid">
|
||||
|
||||
<!-- Page Heading -->
|
||||
<h1 class="h3 mb-2 text-gray-800">Tables</h1>
|
||||
<p class="mb-4">DataTables is a third party plugin that is used to generate the demo table below.
|
||||
For more information about DataTables, please visit the <a target="_blank"
|
||||
href="https://datatables.net">official DataTables documentation</a>.</p>
|
||||
|
||||
<!-- DataTales Example -->
|
||||
<div class="card shadow mb-4">
|
||||
<div class="card-header py-3">
|
||||
<h6 class="m-0 font-weight-bold text-primary">DataTables Example</h6>
|
||||
</div>
|
||||
<div class="card-body">
|
||||
<div class="table-responsive">
|
||||
<table class="table table-bordered" id="dataTable" width="100%" cellspacing="0">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>Name</th>
|
||||
<th>Position</th>
|
||||
<th>Office</th>
|
||||
<th>Age</th>
|
||||
<th>Start date</th>
|
||||
<th>Salary</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tfoot>
|
||||
<tr>
|
||||
<th>Name</th>
|
||||
<th>Position</th>
|
||||
<th>Office</th>
|
||||
<th>Age</th>
|
||||
<th>Start date</th>
|
||||
<th>Salary</th>
|
||||
</tr>
|
||||
</tfoot>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td>Tiger Nixon</td>
|
||||
<td>System Architect</td>
|
||||
<td>Edinburgh</td>
|
||||
<td>61</td>
|
||||
<td>2011/04/25</td>
|
||||
<td>$320,800</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Garrett Winters</td>
|
||||
<td>Accountant</td>
|
||||
<td>Tokyo</td>
|
||||
<td>63</td>
|
||||
<td>2011/07/25</td>
|
||||
<td>$170,750</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Ashton Cox</td>
|
||||
<td>Junior Technical Author</td>
|
||||
<td>San Francisco</td>
|
||||
<td>66</td>
|
||||
<td>2009/01/12</td>
|
||||
<td>$86,000</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Cedric Kelly</td>
|
||||
<td>Senior Javascript Developer</td>
|
||||
<td>Edinburgh</td>
|
||||
<td>22</td>
|
||||
<td>2012/03/29</td>
|
||||
<td>$433,060</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Airi Satou</td>
|
||||
<td>Accountant</td>
|
||||
<td>Tokyo</td>
|
||||
<td>33</td>
|
||||
<td>2008/11/28</td>
|
||||
<td>$162,700</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Brielle Williamson</td>
|
||||
<td>Integration Specialist</td>
|
||||
<td>New York</td>
|
||||
<td>61</td>
|
||||
<td>2012/12/02</td>
|
||||
<td>$372,000</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Herrod Chandler</td>
|
||||
<td>Sales Assistant</td>
|
||||
<td>San Francisco</td>
|
||||
<td>59</td>
|
||||
<td>2012/08/06</td>
|
||||
<td>$137,500</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Rhona Davidson</td>
|
||||
<td>Integration Specialist</td>
|
||||
<td>Tokyo</td>
|
||||
<td>55</td>
|
||||
<td>2010/10/14</td>
|
||||
<td>$327,900</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Colleen Hurst</td>
|
||||
<td>Javascript Developer</td>
|
||||
<td>San Francisco</td>
|
||||
<td>39</td>
|
||||
<td>2009/09/15</td>
|
||||
<td>$205,500</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Sonya Frost</td>
|
||||
<td>Software Engineer</td>
|
||||
<td>Edinburgh</td>
|
||||
<td>23</td>
|
||||
<td>2008/12/13</td>
|
||||
<td>$103,600</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Jena Gaines</td>
|
||||
<td>Office Manager</td>
|
||||
<td>London</td>
|
||||
<td>30</td>
|
||||
<td>2008/12/19</td>
|
||||
<td>$90,560</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Quinn Flynn</td>
|
||||
<td>Support Lead</td>
|
||||
<td>Edinburgh</td>
|
||||
<td>22</td>
|
||||
<td>2013/03/03</td>
|
||||
<td>$342,000</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Charde Marshall</td>
|
||||
<td>Regional Director</td>
|
||||
<td>San Francisco</td>
|
||||
<td>36</td>
|
||||
<td>2008/10/16</td>
|
||||
<td>$470,600</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Haley Kennedy</td>
|
||||
<td>Senior Marketing Designer</td>
|
||||
<td>London</td>
|
||||
<td>43</td>
|
||||
<td>2012/12/18</td>
|
||||
<td>$313,500</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Tatyana Fitzpatrick</td>
|
||||
<td>Regional Director</td>
|
||||
<td>London</td>
|
||||
<td>19</td>
|
||||
<td>2010/03/17</td>
|
||||
<td>$385,750</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Michael Silva</td>
|
||||
<td>Marketing Designer</td>
|
||||
<td>London</td>
|
||||
<td>66</td>
|
||||
<td>2012/11/27</td>
|
||||
<td>$198,500</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Paul Byrd</td>
|
||||
<td>Chief Financial Officer (CFO)</td>
|
||||
<td>New York</td>
|
||||
<td>64</td>
|
||||
<td>2010/06/09</td>
|
||||
<td>$725,000</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Gloria Little</td>
|
||||
<td>Systems Administrator</td>
|
||||
<td>New York</td>
|
||||
<td>59</td>
|
||||
<td>2009/04/10</td>
|
||||
<td>$237,500</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Bradley Greer</td>
|
||||
<td>Software Engineer</td>
|
||||
<td>London</td>
|
||||
<td>41</td>
|
||||
<td>2012/10/13</td>
|
||||
<td>$132,000</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Dai Rios</td>
|
||||
<td>Personnel Lead</td>
|
||||
<td>Edinburgh</td>
|
||||
<td>35</td>
|
||||
<td>2012/09/26</td>
|
||||
<td>$217,500</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Jenette Caldwell</td>
|
||||
<td>Development Lead</td>
|
||||
<td>New York</td>
|
||||
<td>30</td>
|
||||
<td>2011/09/03</td>
|
||||
<td>$345,000</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Yuri Berry</td>
|
||||
<td>Chief Marketing Officer (CMO)</td>
|
||||
<td>New York</td>
|
||||
<td>40</td>
|
||||
<td>2009/06/25</td>
|
||||
<td>$675,000</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Caesar Vance</td>
|
||||
<td>Pre-Sales Support</td>
|
||||
<td>New York</td>
|
||||
<td>21</td>
|
||||
<td>2011/12/12</td>
|
||||
<td>$106,450</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Doris Wilder</td>
|
||||
<td>Sales Assistant</td>
|
||||
<td>Sidney</td>
|
||||
<td>23</td>
|
||||
<td>2010/09/20</td>
|
||||
<td>$85,600</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Angelica Ramos</td>
|
||||
<td>Chief Executive Officer (CEO)</td>
|
||||
<td>London</td>
|
||||
<td>47</td>
|
||||
<td>2009/10/09</td>
|
||||
<td>$1,200,000</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Gavin Joyce</td>
|
||||
<td>Developer</td>
|
||||
<td>Edinburgh</td>
|
||||
<td>42</td>
|
||||
<td>2010/12/22</td>
|
||||
<td>$92,575</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Jennifer Chang</td>
|
||||
<td>Regional Director</td>
|
||||
<td>Singapore</td>
|
||||
<td>28</td>
|
||||
<td>2010/11/14</td>
|
||||
<td>$357,650</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Brenden Wagner</td>
|
||||
<td>Software Engineer</td>
|
||||
<td>San Francisco</td>
|
||||
<td>28</td>
|
||||
<td>2011/06/07</td>
|
||||
<td>$206,850</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Fiona Green</td>
|
||||
<td>Chief Operating Officer (COO)</td>
|
||||
<td>San Francisco</td>
|
||||
<td>48</td>
|
||||
<td>2010/03/11</td>
|
||||
<td>$850,000</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Shou Itou</td>
|
||||
<td>Regional Marketing</td>
|
||||
<td>Tokyo</td>
|
||||
<td>20</td>
|
||||
<td>2011/08/14</td>
|
||||
<td>$163,000</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Michelle House</td>
|
||||
<td>Integration Specialist</td>
|
||||
<td>Sidney</td>
|
||||
<td>37</td>
|
||||
<td>2011/06/02</td>
|
||||
<td>$95,400</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Suki Burks</td>
|
||||
<td>Developer</td>
|
||||
<td>London</td>
|
||||
<td>53</td>
|
||||
<td>2009/10/22</td>
|
||||
<td>$114,500</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Prescott Bartlett</td>
|
||||
<td>Technical Author</td>
|
||||
<td>London</td>
|
||||
<td>27</td>
|
||||
<td>2011/05/07</td>
|
||||
<td>$145,000</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Gavin Cortez</td>
|
||||
<td>Team Leader</td>
|
||||
<td>San Francisco</td>
|
||||
<td>22</td>
|
||||
<td>2008/10/26</td>
|
||||
<td>$235,500</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Martena Mccray</td>
|
||||
<td>Post-Sales support</td>
|
||||
<td>Edinburgh</td>
|
||||
<td>46</td>
|
||||
<td>2011/03/09</td>
|
||||
<td>$324,050</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Unity Butler</td>
|
||||
<td>Marketing Designer</td>
|
||||
<td>San Francisco</td>
|
||||
<td>47</td>
|
||||
<td>2009/12/09</td>
|
||||
<td>$85,675</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Howard Hatfield</td>
|
||||
<td>Office Manager</td>
|
||||
<td>San Francisco</td>
|
||||
<td>51</td>
|
||||
<td>2008/12/16</td>
|
||||
<td>$164,500</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Hope Fuentes</td>
|
||||
<td>Secretary</td>
|
||||
<td>San Francisco</td>
|
||||
<td>41</td>
|
||||
<td>2010/02/12</td>
|
||||
<td>$109,850</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Vivian Harrell</td>
|
||||
<td>Financial Controller</td>
|
||||
<td>San Francisco</td>
|
||||
<td>62</td>
|
||||
<td>2009/02/14</td>
|
||||
<td>$452,500</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Timothy Mooney</td>
|
||||
<td>Office Manager</td>
|
||||
<td>London</td>
|
||||
<td>37</td>
|
||||
<td>2008/12/11</td>
|
||||
<td>$136,200</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Jackson Bradshaw</td>
|
||||
<td>Director</td>
|
||||
<td>New York</td>
|
||||
<td>65</td>
|
||||
<td>2008/09/26</td>
|
||||
<td>$645,750</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Olivia Liang</td>
|
||||
<td>Support Engineer</td>
|
||||
<td>Singapore</td>
|
||||
<td>64</td>
|
||||
<td>2011/02/03</td>
|
||||
<td>$234,500</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Bruno Nash</td>
|
||||
<td>Software Engineer</td>
|
||||
<td>London</td>
|
||||
<td>38</td>
|
||||
<td>2011/05/03</td>
|
||||
<td>$163,500</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Sakura Yamamoto</td>
|
||||
<td>Support Engineer</td>
|
||||
<td>Tokyo</td>
|
||||
<td>37</td>
|
||||
<td>2009/08/19</td>
|
||||
<td>$139,575</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Thor Walton</td>
|
||||
<td>Developer</td>
|
||||
<td>New York</td>
|
||||
<td>61</td>
|
||||
<td>2013/08/11</td>
|
||||
<td>$98,540</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Finn Camacho</td>
|
||||
<td>Support Engineer</td>
|
||||
<td>San Francisco</td>
|
||||
<td>47</td>
|
||||
<td>2009/07/07</td>
|
||||
<td>$87,500</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Serge Baldwin</td>
|
||||
<td>Data Coordinator</td>
|
||||
<td>Singapore</td>
|
||||
<td>64</td>
|
||||
<td>2012/04/09</td>
|
||||
<td>$138,575</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Zenaida Frank</td>
|
||||
<td>Software Engineer</td>
|
||||
<td>New York</td>
|
||||
<td>63</td>
|
||||
<td>2010/01/04</td>
|
||||
<td>$125,250</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Zorita Serrano</td>
|
||||
<td>Software Engineer</td>
|
||||
<td>San Francisco</td>
|
||||
<td>56</td>
|
||||
<td>2012/06/01</td>
|
||||
<td>$115,000</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Jennifer Acosta</td>
|
||||
<td>Junior Javascript Developer</td>
|
||||
<td>Edinburgh</td>
|
||||
<td>43</td>
|
||||
<td>2013/02/01</td>
|
||||
<td>$75,650</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Cara Stevens</td>
|
||||
<td>Sales Assistant</td>
|
||||
<td>New York</td>
|
||||
<td>46</td>
|
||||
<td>2011/12/06</td>
|
||||
<td>$145,600</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Hermione Butler</td>
|
||||
<td>Regional Director</td>
|
||||
<td>London</td>
|
||||
<td>47</td>
|
||||
<td>2011/03/21</td>
|
||||
<td>$356,250</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Lael Greer</td>
|
||||
<td>Systems Administrator</td>
|
||||
<td>London</td>
|
||||
<td>21</td>
|
||||
<td>2009/02/27</td>
|
||||
<td>$103,500</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Jonas Alexander</td>
|
||||
<td>Developer</td>
|
||||
<td>San Francisco</td>
|
||||
<td>30</td>
|
||||
<td>2010/07/14</td>
|
||||
<td>$86,500</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Shad Decker</td>
|
||||
<td>Regional Director</td>
|
||||
<td>Edinburgh</td>
|
||||
<td>51</td>
|
||||
<td>2008/11/13</td>
|
||||
<td>$183,000</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Michael Bruce</td>
|
||||
<td>Javascript Developer</td>
|
||||
<td>Singapore</td>
|
||||
<td>29</td>
|
||||
<td>2011/06/27</td>
|
||||
<td>$183,000</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Donna Snider</td>
|
||||
<td>Customer Support</td>
|
||||
<td>New York</td>
|
||||
<td>27</td>
|
||||
<td>2011/01/25</td>
|
||||
<td>$112,000</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
<!-- /.container-fluid -->
|
||||
|
||||
</div>
|
||||
<!-- End of Main Content -->
|
||||
|
||||
<!-- Footer -->
|
||||
<footer class="sticky-footer bg-white">
|
||||
<div class="container my-auto">
|
||||
<div class="copyright text-center my-auto">
|
||||
<span>Copyright © Your Website 2020</span>
|
||||
</div>
|
||||
</div>
|
||||
</footer>
|
||||
<!-- End of Footer -->
|
||||
|
||||
</div>
|
||||
<!-- End of Content Wrapper -->
|
||||
|
||||
</div>
|
||||
<!-- End of Page Wrapper -->
|
||||
|
||||
<!-- Scroll to Top Button-->
|
||||
<a class="scroll-to-top rounded" href="#page-top">
|
||||
<i class="fas fa-angle-up"></i>
|
||||
</a>
|
||||
|
||||
<!-- Logout Modal-->
|
||||
<div class="modal fade" id="logoutModal" tabindex="-1" role="dialog" aria-labelledby="exampleModalLabel"
|
||||
aria-hidden="true">
|
||||
<div class="modal-dialog" role="document">
|
||||
<div class="modal-content">
|
||||
<div class="modal-header">
|
||||
<h5 class="modal-title" id="exampleModalLabel">Ready to Leave?</h5>
|
||||
<button class="close" type="button" data-dismiss="modal" aria-label="Close">
|
||||
<span aria-hidden="true">×</span>
|
||||
</button>
|
||||
</div>
|
||||
<div class="modal-body">Select "Logout" below if you are ready to end your current session.</div>
|
||||
<div class="modal-footer">
|
||||
<button class="btn btn-secondary" type="button" data-dismiss="modal">Cancel</button>
|
||||
<a class="btn btn-primary" href="login.html">Logout</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
{% endblock %}
|
||||
<script src="{{ asset('assets/js/bootstrap.bundle.min.js.js') }}" integrity="sha384-MrcW6ZMFYlzcLA8Nl+NtUVF0sA7MsXsP1UyJoMp4YLEuNSfAP+JcXn/tWtIaxVXM" crossorigin="anonymous"></script>
|
||||
</html>
|
||||
742
templates/backend_admin/demo/index.html.twig
Normal file
742
templates/backend_admin/demo/index.html.twig
Normal file
@@ -0,0 +1,742 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<title>{% block title %}Welcome!{% endblock %}</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
{% block stylesheets %}
|
||||
{{ encore_entry_link_tags('app_backend') }}
|
||||
{% endblock %}
|
||||
|
||||
{% block javascripts %}
|
||||
{{ encore_entry_script_tags('app_backend') }}
|
||||
{% endblock %}
|
||||
|
||||
</head>
|
||||
{% block body %}
|
||||
<body id="page-top">
|
||||
|
||||
<!-- Page Wrapper -->
|
||||
<div id="wrapper">
|
||||
|
||||
<!-- Sidebar -->
|
||||
<ul class="navbar-nav bg-gradient-primary sidebar sidebar-dark accordion" id="accordionSidebar">
|
||||
|
||||
|
||||
<!-- Sidebar - Brand -->
|
||||
<a class="sidebar-brand d-flex align-items-center justify-content-center" href="index.html">
|
||||
<div class="sidebar-brand-icon rotate-n-15">
|
||||
<i class="fas fa-laugh-wink"></i>
|
||||
</div>
|
||||
<div class="sidebar-brand-text mx-3">SB Admin <sup>2</sup></div>
|
||||
</a>
|
||||
|
||||
<!-- Divider -->
|
||||
<hr class="sidebar-divider my-0">
|
||||
|
||||
<!-- Nav Item - Dashboard -->
|
||||
<li class="nav-item active">
|
||||
<a class="nav-link" href="index.html">
|
||||
<i class="fas fa-fw fa-tachometer-alt"></i>
|
||||
<span>Dashboard</span></a>
|
||||
</li>
|
||||
|
||||
<!-- Divider -->
|
||||
<hr class="sidebar-divider">
|
||||
|
||||
<!-- Heading -->
|
||||
<div class="sidebar-heading">Interface</div>
|
||||
|
||||
<!-- Nav Item - Components Collapse Menu -->
|
||||
<li class="nav-item">
|
||||
<a class="nav-link collapsed" href="#project-management" data-toggle="collapse" data-bs-toggle="collapse" aria-expanded="false" aria-controls="project-management">
|
||||
<i class="fas fa-fw fa-wrench"></i>
|
||||
<span>Components</span>
|
||||
</a>
|
||||
<div id="project-management" class="collapse" data-parent="#accordionSidebar"aria-labelledby="navbarVerticalCollapse" >
|
||||
|
||||
<div class="bg-white py-2 collapse-inner rounded">
|
||||
<h6 class="collapse-header">Custom Components:</h6>
|
||||
<a class="collapse-item" href="utilities-color.html">Buttons</a>
|
||||
<a class="collapse-item" href="utilities-border.html">Cards</a>
|
||||
<a class="collapse-item" href="utilities-animation.html">Animations</a>
|
||||
<a class="collapse-item" href="utilities-other.html">Other</a>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</li>
|
||||
|
||||
|
||||
<!-- Nav Item - Utilities Collapse Menu -->
|
||||
<li class="nav-item">
|
||||
<a class="nav-link collapsed" href="#collapseUtilities" data-toggle="collapse" data-bs-toggle="collapse" aria-expanded="true" aria-controls="collapseUtilities">
|
||||
<i class="fas fa-fw fa-cog"></i>
|
||||
<span>Utilities</span>
|
||||
</a>
|
||||
<div id="collapseUtilities" class="collapse" data-parent="#accordionSidebar"aria-labelledby="headingUtilities" >
|
||||
|
||||
<div class="bg-white py-2 collapse-inner rounded">
|
||||
<h6 class="collapse-header">Custom Utilities:</h6>
|
||||
<a class="collapse-item" href="utilities-color.html">Colors</a>
|
||||
<a class="collapse-item" href="utilities-border.html">Borders</a>
|
||||
<a class="collapse-item" href="utilities-animation.html">Animations</a>
|
||||
<a class="collapse-item" href="utilities-other.html">Other</a>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</li>
|
||||
|
||||
<!-- Divider -->
|
||||
<hr class="sidebar-divider">
|
||||
|
||||
<!-- Heading -->
|
||||
<div class="sidebar-heading">
|
||||
Addons
|
||||
</div>
|
||||
|
||||
<!-- Nav Item - Pages Collapse Menu -->
|
||||
<li class="nav-item">
|
||||
<a class="nav-link collapsed" href="#project-demo" data-toggle="collapse" data-bs-toggle="collapse" aria-expanded="false" aria-controls="project-demo">
|
||||
<i class="fas fa-fw fa-wrench"></i>
|
||||
<span>Démo</span>
|
||||
</a>
|
||||
<div id="project-demo" class="collapse" data-parent="#accordionSidebar"aria-labelledby="navbarVerticalCollapse" >
|
||||
|
||||
<div class="bg-white py-2 collapse-inner rounded">
|
||||
<h6 class="collapse-header">Pages:</h6>
|
||||
<a class="collapse-item" href="{{ path('backend_admin_demo_index') }}">Buttons</a>
|
||||
<a class="collapse-item" href="{{ path('backend_admin_demo_test') }}">Cards</a>
|
||||
<a class="collapse-item" href="{{ path('backend_admin_demo_button') }}">Animations</a>
|
||||
<a class="collapse-item" href="{{ path('demo_backend_datatable') }}">Datatable</a>
|
||||
<a class="collapse-item" href="{{ path('backend_admin_demo_page404') }}">Page 404</a>
|
||||
<a class="collapse-item" href="{{ path('demo_backend_bootstrap') }}">Bootstrap</a>
|
||||
<a class="collapse-item" href="{{ path('demo_backend_cards') }}">Cards</a>
|
||||
<a class="collapse-item" href="{{ path('demo_backend_charts') }}">Charts</a>
|
||||
<a class="collapse-item" href="{{ path('demo_backend_animation') }}">Animation</a>
|
||||
<a class="collapse-item" href="{{ path('demo_backend_border') }}">Border</a>
|
||||
<a class="collapse-item" href="{{ path('demo_backend_color') }}">Color</a>
|
||||
<a class="collapse-item" href="{{ path('demo_backend_other') }}">Other</a>
|
||||
<a class="collapse-item" href="{{ path('demo_backend_authentication') }}">Authentication</a>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</li>
|
||||
|
||||
<!-- Nav Item - Charts -->
|
||||
<li class="nav-item">
|
||||
<a class="nav-link" href="charts.html">
|
||||
<i class="fas fa-fw fa-chart-area"></i>
|
||||
<span>Charts</span></a>
|
||||
</li>
|
||||
|
||||
<!-- Nav Item - Tables -->
|
||||
<li class="nav-item">
|
||||
<a class="nav-link" href="tables.html">
|
||||
<i class="fas fa-fw fa-table"></i>
|
||||
<span>Tables</span></a>
|
||||
</li>
|
||||
|
||||
<!-- Divider -->
|
||||
<hr class="sidebar-divider d-none d-md-block">
|
||||
|
||||
<!-- Sidebar Toggler (Sidebar) -->
|
||||
<div class="text-center d-none d-md-inline">
|
||||
<button class="rounded-circle border-0" id="sidebarToggle"></button>
|
||||
</div>
|
||||
|
||||
<!-- Sidebar Message -->
|
||||
<div class="sidebar-card d-none d-lg-flex">
|
||||
<img class="sidebar-card-illustration mb-2" src="{{ asset('images/backend/img/undraw_rocket.svg') }}" alt="...">
|
||||
<p class="text-center mb-2"><strong>SB Admin Pro</strong> is packed with premium features, components, and more!</p>
|
||||
<a class="btn btn-success btn-sm" href="https://startbootstrap.com/theme/sb-admin-pro">Upgrade to Pro!</a>
|
||||
</div>
|
||||
|
||||
</ul>
|
||||
<!-- End of Sidebar -->
|
||||
|
||||
<!-- Content Wrapper -->
|
||||
<div id="content-wrapper" class="d-flex flex-column">
|
||||
|
||||
<!-- Main Content -->
|
||||
<div id="content">
|
||||
|
||||
<!-- Topbar -->
|
||||
<nav class="navbar navbar-expand navbar-light bg-white topbar mb-4 static-top shadow">
|
||||
|
||||
<!-- Sidebar Toggle (Topbar) -->
|
||||
<button id="sidebarToggleTop" class="btn btn-link d-md-none rounded-circle mr-3">
|
||||
<i class="fa fa-bars"></i>
|
||||
</button>
|
||||
|
||||
<!-- Topbar Search -->
|
||||
<form
|
||||
class="d-none d-sm-inline-block form-inline mr-auto ml-md-3 my-2 my-md-0 mw-100 navbar-search">
|
||||
<div class="input-group">
|
||||
<input type="text" class="form-control bg-light border-0 small" placeholder="Search for..."
|
||||
aria-label="Search" aria-describedby="basic-addon2">
|
||||
<div class="input-group-append">
|
||||
<button class="btn btn-primary" type="button">
|
||||
<i class="fas fa-search fa-sm"></i>
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
|
||||
<!-- Topbar Navbar -->
|
||||
<ul class="navbar-nav ml-auto">
|
||||
|
||||
<!-- Nav Item - Search Dropdown (Visible Only XS) -->
|
||||
<li class="nav-item dropdown no-arrow d-sm-none">
|
||||
<a class="nav-link dropdown-toggle" href="#" id="searchDropdown" role="button"
|
||||
data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
|
||||
<i class="fas fa-search fa-fw"></i>
|
||||
</a>
|
||||
<!-- Dropdown - Messages -->
|
||||
<div class="dropdown-menu dropdown-menu-right p-3 shadow animated--grow-in"
|
||||
aria-labelledby="searchDropdown">
|
||||
<form class="form-inline mr-auto w-100 navbar-search">
|
||||
<div class="input-group">
|
||||
<input type="text" class="form-control bg-light border-0 small"
|
||||
placeholder="Search for..." aria-label="Search"
|
||||
aria-describedby="basic-addon2">
|
||||
<div class="input-group-append">
|
||||
<button class="btn btn-primary" type="button">
|
||||
<i class="fas fa-search fa-sm"></i>
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</li>
|
||||
|
||||
<!-- Nav Item - Alerts -->
|
||||
<li class="nav-item dropdown no-arrow mx-1">
|
||||
<a class="nav-link dropdown-toggle" href="#" id="alertsDropdown" role="button" data-bs-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
|
||||
<i class="fas fa-bell fa-fw"></i>
|
||||
<!-- Counter - Alerts -->
|
||||
<span class="badge badge-danger badge-counter">3+</span>
|
||||
</a>
|
||||
<!-- Dropdown - Alerts -->
|
||||
<div class="dropdown-list dropdown-menu dropdown-menu-right dropdown-menu-lg-end"
|
||||
>
|
||||
<h6 class="dropdown-header">
|
||||
Alerts Center
|
||||
</h6>
|
||||
<a class="dropdown-item d-flex align-items-center" href="#">
|
||||
<div class="mr-3">
|
||||
<div class="icon-circle bg-primary">
|
||||
<i class="fas fa-file-alt text-white"></i>
|
||||
</div>
|
||||
</div>
|
||||
<div>
|
||||
<div class="small text-gray-500">December 12, 2019</div>
|
||||
<span class="font-weight-bold">A new monthly report is ready to download!</span>
|
||||
</div>
|
||||
</a>
|
||||
<a class="dropdown-item d-flex align-items-center" href="#">
|
||||
<div class="mr-3">
|
||||
<div class="icon-circle bg-success">
|
||||
<i class="fas fa-donate text-white"></i>
|
||||
</div>
|
||||
</div>
|
||||
<div>
|
||||
<div class="small text-gray-500">December 7, 2019</div>
|
||||
$290.29 has been deposited into your account!
|
||||
</div>
|
||||
</a>
|
||||
<a class="dropdown-item d-flex align-items-center" href="#">
|
||||
<div class="mr-3">
|
||||
<div class="icon-circle bg-warning">
|
||||
<i class="fas fa-exclamation-triangle text-white"></i>
|
||||
</div>
|
||||
</div>
|
||||
<div>
|
||||
<div class="small text-gray-500">December 2, 2019</div>
|
||||
Spending Alert: We've noticed unusually high spending for your account.
|
||||
</div>
|
||||
</a>
|
||||
<a class="dropdown-item text-center small text-gray-500" href="#">Show All Alerts</a>
|
||||
</div>
|
||||
</li>
|
||||
|
||||
<!-- Nav Item - Messages -->
|
||||
<li class="nav-item dropdown no-arrow mx-1">
|
||||
<a class="nav-link dropdown-toggle" href="#" id="messagesDropdown" role="button"
|
||||
data-bs-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
|
||||
<i class="fas fa-envelope fa-fw"></i>
|
||||
<!-- Counter - Messages -->
|
||||
<span class="badge badge-danger badge-counter">7</span>
|
||||
</a>
|
||||
<!-- Dropdown - Messages -->
|
||||
<div class="dropdown-list dropdown-menu dropdown-menu-right dropdown-menu-lg-end"
|
||||
aria-labelledby="messagesDropdown">
|
||||
<h6 class="dropdown-header">
|
||||
Message Center
|
||||
</h6>
|
||||
<a class="dropdown-item d-flex align-items-center" href="#">
|
||||
<div class="dropdown-list-image mr-3">
|
||||
<img class="rounded-circle" src="{{ asset('images/backend/img/undraw_profile_1.svg') }}"
|
||||
alt="...">
|
||||
<div class="status-indicator bg-success"></div>
|
||||
</div>
|
||||
<div class="font-weight-bold">
|
||||
<div class="text-truncate">Hi there! I am wondering if you can help me with a
|
||||
problem I've been having.</div>
|
||||
<div class="small text-gray-500">Emily Fowler · 58m</div>
|
||||
</div>
|
||||
</a>
|
||||
<a class="dropdown-item d-flex align-items-center" href="#">
|
||||
<div class="dropdown-list-image mr-3">
|
||||
<img class="rounded-circle" src="{{ asset('images/backend/img/undraw_profile_2.svg') }}"
|
||||
alt="...">
|
||||
<div class="status-indicator"></div>
|
||||
</div>
|
||||
<div>
|
||||
<div class="text-truncate">I have the photos that you ordered last month, how
|
||||
would you like them sent to you?</div>
|
||||
<div class="small text-gray-500">Jae Chun · 1d</div>
|
||||
</div>
|
||||
</a>
|
||||
<a class="dropdown-item d-flex align-items-center" href="#">
|
||||
<div class="dropdown-list-image mr-3">
|
||||
<img class="rounded-circle" src="{{ asset('images/backend/img/undraw_profile_3.svg') }}"
|
||||
alt="...">
|
||||
<div class="status-indicator bg-warning"></div>
|
||||
</div>
|
||||
<div>
|
||||
<div class="text-truncate">Last month's report looks great, I am very happy with
|
||||
the progress so far, keep up the good work!</div>
|
||||
<div class="small text-gray-500">Morgan Alvarez · 2d</div>
|
||||
</div>
|
||||
</a>
|
||||
<a class="dropdown-item d-flex align-items-center" href="#">
|
||||
<div class="dropdown-list-image mr-3">
|
||||
<img class="rounded-circle" src="https://source.unsplash.com/Mv9hjnEUHR4/60x60"
|
||||
alt="...">
|
||||
<div class="status-indicator bg-success"></div>
|
||||
</div>
|
||||
<div>
|
||||
<div class="text-truncate">Am I a good boy? The reason I ask is because someone
|
||||
told me that people say this to all dogs, even if they aren't good...</div>
|
||||
<div class="small text-gray-500">Chicken the Dog · 2w</div>
|
||||
</div>
|
||||
</a>
|
||||
<a class="dropdown-item text-center small text-gray-500" href="#">Read More Messages</a>
|
||||
</div>
|
||||
</li>
|
||||
|
||||
<div class="topbar-divider d-none d-sm-block"></div>
|
||||
|
||||
<!-- Nav Item - User Information -->
|
||||
<li class="nav-item dropdown no-arrow">
|
||||
<a class="nav-link dropdown-toggle" href="#" id="userDropdown" role="button" data-bs-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
|
||||
<span class="mr-2 d-none d-lg-inline text-gray-600 small">Douglas McGee</span>
|
||||
<img class="img-profile rounded-circle" src="{{ asset('images/backend/img/undraw_profile.svg') }}">
|
||||
</a>
|
||||
<!-- Dropdown - User Information -->
|
||||
<div class="dropdown-menu dropdown-menu-right shadow animated--grow-in"
|
||||
aria-labelledby="userDropdown">
|
||||
<a class="dropdown-item" href="#">
|
||||
<i class="fas fa-user fa-sm fa-fw mr-2 text-gray-400"></i>
|
||||
Profile
|
||||
</a>
|
||||
<a class="dropdown-item" href="#">
|
||||
<i class="fas fa-cogs fa-sm fa-fw mr-2 text-gray-400"></i>
|
||||
Settings
|
||||
</a>
|
||||
<a class="dropdown-item" href="#">
|
||||
<i class="fas fa-list fa-sm fa-fw mr-2 text-gray-400"></i>
|
||||
Activity Log
|
||||
</a>
|
||||
<div class="dropdown-divider"></div>
|
||||
<a class="dropdown-item" href="#" data-toggle="modal" data-target="#logoutModal">
|
||||
<i class="fas fa-sign-out-alt fa-sm fa-fw mr-2 text-gray-400"></i>
|
||||
Logout
|
||||
</a>
|
||||
</div>
|
||||
</li>
|
||||
|
||||
</ul>
|
||||
|
||||
</nav>
|
||||
<!-- End of Topbar -->
|
||||
|
||||
<!-- Begin Page Content -->
|
||||
<div class="container-fluid">
|
||||
|
||||
<!-- Page Heading -->
|
||||
<div class="d-sm-flex align-items-center justify-content-between mb-4">
|
||||
<h1 class="h3 mb-0 text-gray-800">Dashboard</h1>
|
||||
<a href="#" class="d-none d-sm-inline-block btn btn-sm btn-primary shadow-sm"><i
|
||||
class="fas fa-download fa-sm text-white-50"></i> Generate Report</a>
|
||||
</div>
|
||||
|
||||
<!-- Content Row -->
|
||||
<div class="row">
|
||||
|
||||
<!-- Earnings (Monthly) Card Example -->
|
||||
<div class="col-xl-3 col-md-6 mb-4">
|
||||
<div class="card border-left-primary shadow h-100 py-2">
|
||||
<div class="card-body">
|
||||
<div class="row no-gutters align-items-center">
|
||||
<div class="col mr-2">
|
||||
<div class="text-xs font-weight-bold text-primary text-uppercase mb-1">
|
||||
Earnings (Monthly)</div>
|
||||
<div class="h5 mb-0 font-weight-bold text-gray-800">$40,000</div>
|
||||
</div>
|
||||
<div class="col-auto">
|
||||
<i class="fas fa-calendar fa-2x text-gray-300"></i>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- Earnings (Monthly) Card Example -->
|
||||
<div class="col-xl-3 col-md-6 mb-4">
|
||||
<div class="card border-left-success shadow h-100 py-2">
|
||||
<div class="card-body">
|
||||
<div class="row no-gutters align-items-center">
|
||||
<div class="col mr-2">
|
||||
<div class="text-xs font-weight-bold text-success text-uppercase mb-1">
|
||||
Earnings (Annual)</div>
|
||||
<div class="h5 mb-0 font-weight-bold text-gray-800">$215,000</div>
|
||||
</div>
|
||||
<div class="col-auto">
|
||||
<i class="fas fa-dollar-sign fa-2x text-gray-300"></i>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- Earnings (Monthly) Card Example -->
|
||||
<div class="col-xl-3 col-md-6 mb-4">
|
||||
<div class="card border-left-info shadow h-100 py-2">
|
||||
<div class="card-body">
|
||||
<div class="row no-gutters align-items-center">
|
||||
<div class="col mr-2">
|
||||
<div class="text-xs font-weight-bold text-info text-uppercase mb-1">Tasks
|
||||
</div>
|
||||
<div class="row no-gutters align-items-center">
|
||||
<div class="col-auto">
|
||||
<div class="h5 mb-0 mr-3 font-weight-bold text-gray-800">50%</div>
|
||||
</div>
|
||||
<div class="col">
|
||||
<div class="progress progress-sm mr-2">
|
||||
<div class="progress-bar bg-info" role="progressbar"
|
||||
style="width: 50%" aria-valuenow="50" aria-valuemin="0"
|
||||
aria-valuemax="100"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-auto">
|
||||
<i class="fas fa-clipboard-list fa-2x text-gray-300"></i>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- Pending Requests Card Example -->
|
||||
<div class="col-xl-3 col-md-6 mb-4">
|
||||
<div class="card border-left-warning shadow h-100 py-2">
|
||||
<div class="card-body">
|
||||
<div class="row no-gutters align-items-center">
|
||||
<div class="col mr-2">
|
||||
<div class="text-xs font-weight-bold text-warning text-uppercase mb-1">
|
||||
Pending Requests</div>
|
||||
<div class="h5 mb-0 font-weight-bold text-gray-800">18</div>
|
||||
</div>
|
||||
<div class="col-auto">
|
||||
<i class="fas fa-comments fa-2x text-gray-300"></i>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- Content Row -->
|
||||
|
||||
<div class="row">
|
||||
|
||||
<!-- Area Chart -->
|
||||
<div class="col-xl-8 col-lg-7">
|
||||
<div class="card shadow mb-4">
|
||||
<!-- Card Header - Dropdown -->
|
||||
<div
|
||||
class="card-header py-3 d-flex flex-row align-items-center justify-content-between">
|
||||
<h6 class="m-0 font-weight-bold text-primary">Earnings Overview</h6>
|
||||
<div class="dropdown no-arrow">
|
||||
<a class="dropdown-toggle" href="#" role="button" id="dropdownMenuLink"
|
||||
data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
|
||||
<i class="fas fa-ellipsis-v fa-sm fa-fw text-gray-400"></i>
|
||||
</a>
|
||||
<div class="dropdown-menu dropdown-menu-right shadow animated--fade-in"
|
||||
aria-labelledby="dropdownMenuLink">
|
||||
<div class="dropdown-header">Dropdown Header:</div>
|
||||
<a class="dropdown-item" href="#">Action</a>
|
||||
<a class="dropdown-item" href="#">Another action</a>
|
||||
<div class="dropdown-divider"></div>
|
||||
<a class="dropdown-item" href="#">Something else here</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- Card Body -->
|
||||
<div class="card-body">
|
||||
<div class="chart-area">
|
||||
<canvas id="myAreaChart"></canvas>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- Pie Chart -->
|
||||
<div class="col-xl-4 col-lg-5">
|
||||
<div class="card shadow mb-4">
|
||||
<!-- Card Header - Dropdown -->
|
||||
<div
|
||||
class="card-header py-3 d-flex flex-row align-items-center justify-content-between">
|
||||
<h6 class="m-0 font-weight-bold text-primary">Revenue Sources</h6>
|
||||
<div class="dropdown no-arrow">
|
||||
<a class="dropdown-toggle" href="#" role="button" id="dropdownMenuLink"
|
||||
data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
|
||||
<i class="fas fa-ellipsis-v fa-sm fa-fw text-gray-400"></i>
|
||||
</a>
|
||||
<div class="dropdown-menu dropdown-menu-right shadow animated--fade-in"
|
||||
aria-labelledby="dropdownMenuLink">
|
||||
<div class="dropdown-header">Dropdown Header:</div>
|
||||
<a class="dropdown-item" href="#">Action</a>
|
||||
<a class="dropdown-item" href="#">Another action</a>
|
||||
<div class="dropdown-divider"></div>
|
||||
<a class="dropdown-item" href="#">Something else here</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- Card Body -->
|
||||
<div class="card-body">
|
||||
<div class="chart-pie pt-4 pb-2">
|
||||
<canvas id="myPieChart"></canvas>
|
||||
</div>
|
||||
<div class="mt-4 text-center small">
|
||||
<span class="mr-2">
|
||||
<i class="fas fa-circle text-primary"></i> Direct
|
||||
</span>
|
||||
<span class="mr-2">
|
||||
<i class="fas fa-circle text-success"></i> Social
|
||||
</span>
|
||||
<span class="mr-2">
|
||||
<i class="fas fa-circle text-info"></i> Referral
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- Content Row -->
|
||||
<div class="row">
|
||||
|
||||
<!-- Content Column -->
|
||||
<div class="col-lg-6 mb-4">
|
||||
|
||||
<!-- Project Card Example -->
|
||||
<div class="card shadow mb-4">
|
||||
<div class="card-header py-3">
|
||||
<h6 class="m-0 font-weight-bold text-primary">Projects</h6>
|
||||
</div>
|
||||
<div class="card-body">
|
||||
<h4 class="small font-weight-bold">Server Migration <span
|
||||
class="float-right">20%</span></h4>
|
||||
<div class="progress mb-4">
|
||||
<div class="progress-bar bg-danger" role="progressbar" style="width: 20%"
|
||||
aria-valuenow="20" aria-valuemin="0" aria-valuemax="100"></div>
|
||||
</div>
|
||||
<h4 class="small font-weight-bold">Sales Tracking <span
|
||||
class="float-right">40%</span></h4>
|
||||
<div class="progress mb-4">
|
||||
<div class="progress-bar bg-warning" role="progressbar" style="width: 40%"
|
||||
aria-valuenow="40" aria-valuemin="0" aria-valuemax="100"></div>
|
||||
</div>
|
||||
<h4 class="small font-weight-bold">Customer Database <span
|
||||
class="float-right">60%</span></h4>
|
||||
<div class="progress mb-4">
|
||||
<div class="progress-bar" role="progressbar" style="width: 60%"
|
||||
aria-valuenow="60" aria-valuemin="0" aria-valuemax="100"></div>
|
||||
</div>
|
||||
<h4 class="small font-weight-bold">Payout Details <span
|
||||
class="float-right">80%</span></h4>
|
||||
<div class="progress mb-4">
|
||||
<div class="progress-bar bg-info" role="progressbar" style="width: 80%"
|
||||
aria-valuenow="80" aria-valuemin="0" aria-valuemax="100"></div>
|
||||
</div>
|
||||
<h4 class="small font-weight-bold">Account Setup <span
|
||||
class="float-right">Complete!</span></h4>
|
||||
<div class="progress">
|
||||
<div class="progress-bar bg-success" role="progressbar" style="width: 100%"
|
||||
aria-valuenow="100" aria-valuemin="0" aria-valuemax="100"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- Color System -->
|
||||
<div class="row">
|
||||
<div class="col-lg-6 mb-4">
|
||||
<div class="card bg-primary text-white shadow">
|
||||
<div class="card-body">
|
||||
Primary
|
||||
<div class="text-white-50 small">#4e73df</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-lg-6 mb-4">
|
||||
<div class="card bg-success text-white shadow">
|
||||
<div class="card-body">
|
||||
Success
|
||||
<div class="text-white-50 small">#1cc88a</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-lg-6 mb-4">
|
||||
<div class="card bg-info text-white shadow">
|
||||
<div class="card-body">
|
||||
Info
|
||||
<div class="text-white-50 small">#36b9cc</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-lg-6 mb-4">
|
||||
<div class="card bg-warning text-white shadow">
|
||||
<div class="card-body">
|
||||
Warning
|
||||
<div class="text-white-50 small">#f6c23e</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-lg-6 mb-4">
|
||||
<div class="card bg-danger text-white shadow">
|
||||
<div class="card-body">
|
||||
Danger
|
||||
<div class="text-white-50 small">#e74a3b</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-lg-6 mb-4">
|
||||
<div class="card bg-secondary text-white shadow">
|
||||
<div class="card-body">
|
||||
Secondary
|
||||
<div class="text-white-50 small">#858796</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-lg-6 mb-4">
|
||||
<div class="card bg-light text-black shadow">
|
||||
<div class="card-body">
|
||||
Light
|
||||
<div class="text-black-50 small">#f8f9fc</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-lg-6 mb-4">
|
||||
<div class="card bg-dark text-white shadow">
|
||||
<div class="card-body">
|
||||
Dark
|
||||
<div class="text-white-50 small">#5a5c69</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="col-lg-6 mb-4">
|
||||
|
||||
<!-- Illustrations -->
|
||||
<div class="card shadow mb-4">
|
||||
<div class="card-header py-3">
|
||||
<h6 class="m-0 font-weight-bold text-primary">Illustrations</h6>
|
||||
</div>
|
||||
<div class="card-body">
|
||||
<div class="text-center">
|
||||
<img class="img-fluid px-3 px-sm-4 mt-3 mb-4" style="width: 25rem;"
|
||||
src="{{ asset('images/backend/img/undraw_posting_photo.svg') }}" alt="...">
|
||||
</div>
|
||||
<p>Add some quality, svg illustrations to your project courtesy of <a
|
||||
target="_blank" rel="nofollow" href="https://undraw.co/">unDraw</a>, a
|
||||
constantly updated collection of beautiful svg images that you can use
|
||||
completely free and without attribution!</p>
|
||||
<a target="_blank" rel="nofollow" href="https://undraw.co/">Browse Illustrations on
|
||||
unDraw →</a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- Approach -->
|
||||
<div class="card shadow mb-4">
|
||||
<div class="card-header py-3">
|
||||
<h6 class="m-0 font-weight-bold text-primary">Development Approach</h6>
|
||||
</div>
|
||||
<div class="card-body">
|
||||
<p>SB Admin 2 makes extensive use of Bootstrap 4 utility classes in order to reduce
|
||||
CSS bloat and poor page performance. Custom CSS classes are used to create
|
||||
custom components and custom utility classes.</p>
|
||||
<p class="mb-0">Before working with this theme, you should become familiar with the
|
||||
Bootstrap framework, especially the utility classes.</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
<!-- /.container-fluid -->
|
||||
|
||||
</div>
|
||||
<!-- End of Main Content -->
|
||||
|
||||
<!-- Footer -->
|
||||
<footer class="sticky-footer bg-white">
|
||||
<div class="container my-auto">
|
||||
<div class="copyright text-center my-auto">
|
||||
<span>Copyright © Your Website 2021</span>
|
||||
</div>
|
||||
</div>
|
||||
</footer>
|
||||
<!-- End of Footer -->
|
||||
|
||||
</div>
|
||||
<!-- End of Content Wrapper -->
|
||||
|
||||
</div>
|
||||
<!-- End of Page Wrapper -->
|
||||
|
||||
<!-- Scroll to Top Button-->
|
||||
<a class="scroll-to-top rounded" href="#page-top">
|
||||
<i class="fas fa-angle-up"></i>
|
||||
</a>
|
||||
|
||||
<!-- Logout Modal-->
|
||||
<div class="modal fade" id="logoutModal" tabindex="-1" role="dialog" aria-labelledby="exampleModalLabel"
|
||||
aria-hidden="true">
|
||||
<div class="modal-dialog" role="document">
|
||||
<div class="modal-content">
|
||||
<div class="modal-header">
|
||||
<h5 class="modal-title" id="exampleModalLabel">Ready to Leave?</h5>
|
||||
<button class="close" type="button" data-dismiss="modal" aria-label="Close">
|
||||
<span aria-hidden="true">×</span>
|
||||
</button>
|
||||
</div>
|
||||
<div class="modal-body">Select "Logout" below if you are ready to end your current session.</div>
|
||||
<div class="modal-footer">
|
||||
<button class="btn btn-secondary" type="button" data-dismiss="modal">Cancel</button>
|
||||
<a class="btn btn-primary" href="login.html">Logout</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
{% endblock %}
|
||||
|
||||
<script src="{{ asset('assets/js/bootstrap.bundle.min.js.js') }}" integrity="sha384-MrcW6ZMFYlzcLA8Nl+NtUVF0sA7MsXsP1UyJoMp4YLEuNSfAP+JcXn/tWtIaxVXM" crossorigin="anonymous"></script>
|
||||
</html>
|
||||
3772
templates/backend_admin/demo/index1.html.twig
Normal file
3772
templates/backend_admin/demo/index1.html.twig
Normal file
File diff suppressed because it is too large
Load Diff
492
templates/backend_admin/demo/other.html.twig
Normal file
492
templates/backend_admin/demo/other.html.twig
Normal file
@@ -0,0 +1,492 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<title>{% block title %}other!{% endblock %}</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
{% block stylesheets %}
|
||||
{{ encore_entry_link_tags('app_backend') }}
|
||||
{% endblock %}
|
||||
|
||||
{% block javascripts %}
|
||||
{{ encore_entry_script_tags('app_backend') }}
|
||||
{% endblock %}
|
||||
|
||||
</head>
|
||||
|
||||
{% block body %}
|
||||
|
||||
<body id="page-top">
|
||||
|
||||
<!-- Page Wrapper -->
|
||||
<div id="wrapper">
|
||||
|
||||
<!-- Sidebar -->
|
||||
<ul class="navbar-nav bg-gradient-primary sidebar sidebar-dark accordion" id="accordionSidebar">
|
||||
|
||||
<!-- Sidebar - Brand -->
|
||||
<a class="sidebar-brand d-flex align-items-center justify-content-center" href="index.html">
|
||||
<div class="sidebar-brand-icon rotate-n-15">
|
||||
<i class="fas fa-laugh-wink"></i>
|
||||
</div>
|
||||
<div class="sidebar-brand-text mx-3">SB Admin <sup>2</sup></div>
|
||||
</a>
|
||||
|
||||
<!-- Divider -->
|
||||
<hr class="sidebar-divider my-0">
|
||||
|
||||
<!-- Nav Item - Dashboard -->
|
||||
<li class="nav-item">
|
||||
<a class="nav-link" href="index.html">
|
||||
<i class="fas fa-fw fa-tachometer-alt"></i>
|
||||
<span>Dashboard</span></a>
|
||||
</li>
|
||||
|
||||
<!-- Divider -->
|
||||
<hr class="sidebar-divider">
|
||||
|
||||
<!-- Heading -->
|
||||
<div class="sidebar-heading">
|
||||
Interface
|
||||
</div>
|
||||
|
||||
<!-- Nav Item - Pages Collapse Menu -->
|
||||
<li class="nav-item">
|
||||
<a class="nav-link collapsed" href="#" data-toggle="collapse" data-target="#collapseTwo"
|
||||
aria-expanded="true" aria-controls="collapseTwo">
|
||||
<i class="fas fa-fw fa-cog"></i>
|
||||
<span>Components</span>
|
||||
</a>
|
||||
<div id="collapseTwo" class="collapse" aria-labelledby="headingTwo" data-parent="#accordionSidebar">
|
||||
<div class="bg-white py-2 collapse-inner rounded">
|
||||
<h6 class="collapse-header">Custom Components:</h6>
|
||||
<a class="collapse-item" href="buttons.html">Buttons</a>
|
||||
<a class="collapse-item" href="cards.html">Cards</a>
|
||||
</div>
|
||||
</div>
|
||||
</li>
|
||||
|
||||
<!-- Nav Item - Utilities Collapse Menu -->
|
||||
<li class="nav-item active">
|
||||
<a class="nav-link" href="#" data-toggle="collapse" data-target="#collapseUtilities"
|
||||
aria-expanded="true" aria-controls="collapseUtilities">
|
||||
<i class="fas fa-fw fa-wrench"></i>
|
||||
<span>Utilities</span>
|
||||
</a>
|
||||
<div id="collapseUtilities" class="collapse show" aria-labelledby="headingUtilities"
|
||||
data-parent="#accordionSidebar">
|
||||
<div class="bg-white py-2 collapse-inner rounded">
|
||||
<h6 class="collapse-header">Custom Utilities:</h6>
|
||||
<a class="collapse-item" href="utilities-color.html">Colors</a>
|
||||
<a class="collapse-item" href="utilities-border.html">Borders</a>
|
||||
<a class="collapse-item" href="utilities-animation.html">Animations</a>
|
||||
<a class="collapse-item active" href="utilities-other.html">Other</a>
|
||||
</div>
|
||||
</div>
|
||||
</li>
|
||||
|
||||
<!-- Divider -->
|
||||
<hr class="sidebar-divider">
|
||||
|
||||
<!-- Heading -->
|
||||
<div class="sidebar-heading">
|
||||
Addons
|
||||
</div>
|
||||
|
||||
<!-- Nav Item - Pages Collapse Menu -->
|
||||
<li class="nav-item">
|
||||
<a class="nav-link collapsed" href="#" data-toggle="collapse" data-target="#collapsePages"
|
||||
aria-expanded="true" aria-controls="collapsePages">
|
||||
<i class="fas fa-fw fa-folder"></i>
|
||||
<span>Pages</span>
|
||||
</a>
|
||||
<div id="collapsePages" class="collapse" aria-labelledby="headingPages" data-parent="#accordionSidebar">
|
||||
<div class="bg-white py-2 collapse-inner rounded">
|
||||
<h6 class="collapse-header">Login Screens:</h6>
|
||||
<a class="collapse-item" href="login.html">Login</a>
|
||||
<a class="collapse-item" href="register.html">Register</a>
|
||||
<a class="collapse-item" href="forgot-password.html">Forgot Password</a>
|
||||
<div class="collapse-divider"></div>
|
||||
<h6 class="collapse-header">Other Pages:</h6>
|
||||
<a class="collapse-item" href="404.html">404 Page</a>
|
||||
<a class="collapse-item" href="blank.html">Blank Page</a>
|
||||
</div>
|
||||
</div>
|
||||
</li>
|
||||
|
||||
<!-- Nav Item - Charts -->
|
||||
<li class="nav-item">
|
||||
<a class="nav-link" href="charts.html">
|
||||
<i class="fas fa-fw fa-chart-area"></i>
|
||||
<span>Charts</span></a>
|
||||
</li>
|
||||
|
||||
<!-- Nav Item - Tables -->
|
||||
<li class="nav-item">
|
||||
<a class="nav-link" href="tables.html">
|
||||
<i class="fas fa-fw fa-table"></i>
|
||||
<span>Tables</span></a>
|
||||
</li>
|
||||
|
||||
<!-- Divider -->
|
||||
<hr class="sidebar-divider d-none d-md-block">
|
||||
|
||||
<!-- Sidebar Toggler (Sidebar) -->
|
||||
<div class="text-center d-none d-md-inline">
|
||||
<button class="rounded-circle border-0" id="sidebarToggle"></button>
|
||||
</div>
|
||||
|
||||
</ul>
|
||||
<!-- End of Sidebar -->
|
||||
|
||||
<!-- Content Wrapper -->
|
||||
<div id="content-wrapper" class="d-flex flex-column">
|
||||
|
||||
<!-- Main Content -->
|
||||
<div id="content">
|
||||
|
||||
<!-- Topbar -->
|
||||
<nav class="navbar navbar-expand navbar-light bg-white topbar mb-4 static-top shadow">
|
||||
|
||||
<!-- Sidebar Toggle (Topbar) -->
|
||||
<button id="sidebarToggleTop" class="btn btn-link d-md-none rounded-circle mr-3">
|
||||
<i class="fa fa-bars"></i>
|
||||
</button>
|
||||
|
||||
<!-- Topbar Search -->
|
||||
<form
|
||||
class="d-none d-sm-inline-block form-inline mr-auto ml-md-3 my-2 my-md-0 mw-100 navbar-search">
|
||||
<div class="input-group">
|
||||
<input type="text" class="form-control bg-light border-0 small" placeholder="Search for..."
|
||||
aria-label="Search" aria-describedby="basic-addon2">
|
||||
<div class="input-group-append">
|
||||
<button class="btn btn-primary" type="button">
|
||||
<i class="fas fa-search fa-sm"></i>
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
|
||||
<!-- Topbar Navbar -->
|
||||
<ul class="navbar-nav ml-auto">
|
||||
|
||||
<!-- Nav Item - Search Dropdown (Visible Only XS) -->
|
||||
<li class="nav-item dropdown no-arrow d-sm-none">
|
||||
<a class="nav-link dropdown-toggle" href="#" id="searchDropdown" role="button"
|
||||
data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
|
||||
<i class="fas fa-search fa-fw"></i>
|
||||
</a>
|
||||
<!-- Dropdown - Messages -->
|
||||
<div class="dropdown-menu dropdown-menu-right p-3 shadow animated--grow-in"
|
||||
aria-labelledby="searchDropdown">
|
||||
<form class="form-inline mr-auto w-100 navbar-search">
|
||||
<div class="input-group">
|
||||
<input type="text" class="form-control bg-light border-0 small"
|
||||
placeholder="Search for..." aria-label="Search"
|
||||
aria-describedby="basic-addon2">
|
||||
<div class="input-group-append">
|
||||
<button class="btn btn-primary" type="button">
|
||||
<i class="fas fa-search fa-sm"></i>
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</li>
|
||||
|
||||
<!-- Nav Item - Alerts -->
|
||||
<li class="nav-item dropdown no-arrow mx-1">
|
||||
<a class="nav-link dropdown-toggle" href="#" id="alertsDropdown" role="button"
|
||||
data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
|
||||
<i class="fas fa-bell fa-fw"></i>
|
||||
<!-- Counter - Alerts -->
|
||||
<span class="badge badge-danger badge-counter">3+</span>
|
||||
</a>
|
||||
<!-- Dropdown - Alerts -->
|
||||
<div class="dropdown-list dropdown-menu dropdown-menu-right shadow animated--grow-in"
|
||||
aria-labelledby="alertsDropdown">
|
||||
<h6 class="dropdown-header">
|
||||
Alerts Center
|
||||
</h6>
|
||||
<a class="dropdown-item d-flex align-items-center" href="#">
|
||||
<div class="mr-3">
|
||||
<div class="icon-circle bg-primary">
|
||||
<i class="fas fa-file-alt text-white"></i>
|
||||
</div>
|
||||
</div>
|
||||
<div>
|
||||
<div class="small text-gray-500">December 12, 2019</div>
|
||||
<span class="font-weight-bold">A new monthly report is ready to download!</span>
|
||||
</div>
|
||||
</a>
|
||||
<a class="dropdown-item d-flex align-items-center" href="#">
|
||||
<div class="mr-3">
|
||||
<div class="icon-circle bg-success">
|
||||
<i class="fas fa-donate text-white"></i>
|
||||
</div>
|
||||
</div>
|
||||
<div>
|
||||
<div class="small text-gray-500">December 7, 2019</div>
|
||||
$290.29 has been deposited into your account!
|
||||
</div>
|
||||
</a>
|
||||
<a class="dropdown-item d-flex align-items-center" href="#">
|
||||
<div class="mr-3">
|
||||
<div class="icon-circle bg-warning">
|
||||
<i class="fas fa-exclamation-triangle text-white"></i>
|
||||
</div>
|
||||
</div>
|
||||
<div>
|
||||
<div class="small text-gray-500">December 2, 2019</div>
|
||||
Spending Alert: We've noticed unusually high spending for your account.
|
||||
</div>
|
||||
</a>
|
||||
<a class="dropdown-item text-center small text-gray-500" href="#">Show All Alerts</a>
|
||||
</div>
|
||||
</li>
|
||||
|
||||
<!-- Nav Item - Messages -->
|
||||
<li class="nav-item dropdown no-arrow mx-1">
|
||||
<a class="nav-link dropdown-toggle" href="#" id="messagesDropdown" role="button"
|
||||
data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
|
||||
<i class="fas fa-envelope fa-fw"></i>
|
||||
<!-- Counter - Messages -->
|
||||
<span class="badge badge-danger badge-counter">7</span>
|
||||
</a>
|
||||
<!-- Dropdown - Messages -->
|
||||
<div class="dropdown-list dropdown-menu dropdown-menu-right shadow animated--grow-in"
|
||||
aria-labelledby="messagesDropdown">
|
||||
<h6 class="dropdown-header">
|
||||
Message Center
|
||||
</h6>
|
||||
<a class="dropdown-item d-flex align-items-center" href="#">
|
||||
<div class="dropdown-list-image mr-3">
|
||||
<img class="rounded-circle" src="img/undraw_profile_1.svg"
|
||||
alt="...">
|
||||
<div class="status-indicator bg-success"></div>
|
||||
</div>
|
||||
<div class="font-weight-bold">
|
||||
<div class="text-truncate">Hi there! I am wondering if you can help me with a
|
||||
problem I've been having.</div>
|
||||
<div class="small text-gray-500">Emily Fowler · 58m</div>
|
||||
</div>
|
||||
</a>
|
||||
<a class="dropdown-item d-flex align-items-center" href="#">
|
||||
<div class="dropdown-list-image mr-3">
|
||||
<img class="rounded-circle" src="img/undraw_profile_2.svg"
|
||||
alt="...">
|
||||
<div class="status-indicator"></div>
|
||||
</div>
|
||||
<div>
|
||||
<div class="text-truncate">I have the photos that you ordered last month, how
|
||||
would you like them sent to you?</div>
|
||||
<div class="small text-gray-500">Jae Chun · 1d</div>
|
||||
</div>
|
||||
</a>
|
||||
<a class="dropdown-item d-flex align-items-center" href="#">
|
||||
<div class="dropdown-list-image mr-3">
|
||||
<img class="rounded-circle" src="img/undraw_profile_3.svg"
|
||||
alt="...">
|
||||
<div class="status-indicator bg-warning"></div>
|
||||
</div>
|
||||
<div>
|
||||
<div class="text-truncate">Last month's report looks great, I am very happy with
|
||||
the progress so far, keep up the good work!</div>
|
||||
<div class="small text-gray-500">Morgan Alvarez · 2d</div>
|
||||
</div>
|
||||
</a>
|
||||
<a class="dropdown-item d-flex align-items-center" href="#">
|
||||
<div class="dropdown-list-image mr-3">
|
||||
<img class="rounded-circle" src="https://source.unsplash.com/Mv9hjnEUHR4/60x60"
|
||||
alt="...">
|
||||
<div class="status-indicator bg-success"></div>
|
||||
</div>
|
||||
<div>
|
||||
<div class="text-truncate">Am I a good boy? The reason I ask is because someone
|
||||
told me that people say this to all dogs, even if they aren't good...</div>
|
||||
<div class="small text-gray-500">Chicken the Dog · 2w</div>
|
||||
</div>
|
||||
</a>
|
||||
<a class="dropdown-item text-center small text-gray-500" href="#">Read More Messages</a>
|
||||
</div>
|
||||
</li>
|
||||
|
||||
<div class="topbar-divider d-none d-sm-block"></div>
|
||||
|
||||
<!-- Nav Item - User Information -->
|
||||
<li class="nav-item dropdown no-arrow">
|
||||
<a class="nav-link dropdown-toggle" href="#" id="userDropdown" role="button"
|
||||
data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
|
||||
<span class="mr-2 d-none d-lg-inline text-gray-600 small">Douglas McGee</span>
|
||||
<img class="img-profile rounded-circle"
|
||||
src="img/undraw_profile.svg">
|
||||
</a>
|
||||
<!-- Dropdown - User Information -->
|
||||
<div class="dropdown-menu dropdown-menu-right shadow animated--grow-in"
|
||||
aria-labelledby="userDropdown">
|
||||
<a class="dropdown-item" href="#">
|
||||
<i class="fas fa-user fa-sm fa-fw mr-2 text-gray-400"></i>
|
||||
Profile
|
||||
</a>
|
||||
<a class="dropdown-item" href="#">
|
||||
<i class="fas fa-cogs fa-sm fa-fw mr-2 text-gray-400"></i>
|
||||
Settings
|
||||
</a>
|
||||
<a class="dropdown-item" href="#">
|
||||
<i class="fas fa-list fa-sm fa-fw mr-2 text-gray-400"></i>
|
||||
Activity Log
|
||||
</a>
|
||||
<div class="dropdown-divider"></div>
|
||||
<a class="dropdown-item" href="#" data-toggle="modal" data-target="#logoutModal">
|
||||
<i class="fas fa-sign-out-alt fa-sm fa-fw mr-2 text-gray-400"></i>
|
||||
Logout
|
||||
</a>
|
||||
</div>
|
||||
</li>
|
||||
|
||||
</ul>
|
||||
|
||||
</nav>
|
||||
<!-- End of Topbar -->
|
||||
|
||||
<!-- Begin Page Content -->
|
||||
<div class="container-fluid">
|
||||
|
||||
<!-- Page Heading -->
|
||||
<h1 class="h3 mb-1 text-gray-800">Other Utilities</h1>
|
||||
<p class="mb-4">Bootstrap's default utility classes can be found on the official <a
|
||||
href="https://getbootstrap.com/docs">Bootstrap Documentation</a> page. The custom utilities
|
||||
below were created to extend this theme past the default utility classes built into Bootstrap's
|
||||
framework.</p>
|
||||
|
||||
<!-- Content Row -->
|
||||
<div class="row">
|
||||
|
||||
<div class="col-lg-6">
|
||||
|
||||
<!-- Overflow Hidden -->
|
||||
<div class="card mb-4">
|
||||
<div class="card-header py-3">
|
||||
<h6 class="m-0 font-weight-bold text-primary">Overflow Hidden Utilty</h6>
|
||||
</div>
|
||||
<div class="card-body">
|
||||
Use <code>.o-hidden</code> to set the overflow property of any element to hidden.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- Progress Small -->
|
||||
<div class="card mb-4">
|
||||
<div class="card-header py-3">
|
||||
<h6 class="m-0 font-weight-bold text-primary">Progress Small Utility</h6>
|
||||
</div>
|
||||
<div class="card-body">
|
||||
<div class="mb-1 small">Normal Progress Bar</div>
|
||||
<div class="progress mb-4">
|
||||
<div class="progress-bar" role="progressbar" style="width: 75%"
|
||||
aria-valuenow="75" aria-valuemin="0" aria-valuemax="100"></div>
|
||||
</div>
|
||||
<div class="mb-1 small">Small Progress Bar</div>
|
||||
<div class="progress progress-sm mb-2">
|
||||
<div class="progress-bar" role="progressbar" style="width: 75%"
|
||||
aria-valuenow="75" aria-valuemin="0" aria-valuemax="100"></div>
|
||||
</div>
|
||||
Use the <code>.progress-sm</code> class along with <code>.progress</code>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- Dropdown No Arrow -->
|
||||
<div class="card mb-4">
|
||||
<div class="card-header py-3">
|
||||
<h6 class="m-0 font-weight-bold text-primary">Dropdown - No Arrow</h6>
|
||||
</div>
|
||||
<div class="card-body">
|
||||
<div class="dropdown no-arrow mb-4">
|
||||
<button class="btn btn-secondary dropdown-toggle" type="button"
|
||||
id="dropdownMenuButton" data-toggle="dropdown" aria-haspopup="true"
|
||||
aria-expanded="false">
|
||||
Dropdown (no arrow)
|
||||
</button>
|
||||
<div class="dropdown-menu" aria-labelledby="dropdownMenuButton">
|
||||
<a class="dropdown-item" href="#">Action</a>
|
||||
<a class="dropdown-item" href="#">Another action</a>
|
||||
<a class="dropdown-item" href="#">Something else here</a>
|
||||
</div>
|
||||
</div>
|
||||
Add the <code>.no-arrow</code> class alongside the <code>.dropdown</code>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="col-lg-6">
|
||||
|
||||
<!-- Roitation Utilities -->
|
||||
<div class="card">
|
||||
<div class="card-header py-3">
|
||||
<h6 class="m-0 font-weight-bold text-primary">Rotation Utilities</h6>
|
||||
</div>
|
||||
<div class="card-body text-center">
|
||||
<div class="bg-primary text-white p-3 rotate-15 d-inline-block my-4">.rotate-15
|
||||
</div>
|
||||
<hr>
|
||||
<div class="bg-primary text-white p-3 rotate-n-15 d-inline-block my-4">.rotate-n-15
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
<!-- /.container-fluid -->
|
||||
|
||||
</div>
|
||||
<!-- End of Main Content -->
|
||||
|
||||
<!-- Footer -->
|
||||
<footer class="sticky-footer bg-white">
|
||||
<div class="container my-auto">
|
||||
<div class="copyright text-center my-auto">
|
||||
<span>Copyright © Your Website 2020</span>
|
||||
</div>
|
||||
</div>
|
||||
</footer>
|
||||
<!-- End of Footer -->
|
||||
|
||||
</div>
|
||||
<!-- End of Content Wrapper -->
|
||||
|
||||
</div>
|
||||
<!-- End of Page Wrapper -->
|
||||
|
||||
<!-- Scroll to Top Button-->
|
||||
<a class="scroll-to-top rounded" href="#page-top">
|
||||
<i class="fas fa-angle-up"></i>
|
||||
</a>
|
||||
|
||||
<!-- Logout Modal-->
|
||||
<div class="modal fade" id="logoutModal" tabindex="-1" role="dialog" aria-labelledby="exampleModalLabel"
|
||||
aria-hidden="true">
|
||||
<div class="modal-dialog" role="document">
|
||||
<div class="modal-content">
|
||||
<div class="modal-header">
|
||||
<h5 class="modal-title" id="exampleModalLabel">Ready to Leave?</h5>
|
||||
<button class="close" type="button" data-dismiss="modal" aria-label="Close">
|
||||
<span aria-hidden="true">×</span>
|
||||
</button>
|
||||
</div>
|
||||
<div class="modal-body">Select "Logout" below if you are ready to end your current session.</div>
|
||||
<div class="modal-footer">
|
||||
<button class="btn btn-secondary" type="button" data-dismiss="modal">Cancel</button>
|
||||
<a class="btn btn-primary" href="login.html">Logout</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</body
|
||||
|
||||
{% endblock %}
|
||||
<script src="{{ asset('assets/js/bootstrap.bundle.min.js.js') }}" integrity="sha384-MrcW6ZMFYlzcLA8Nl+NtUVF0sA7MsXsP1UyJoMp4YLEuNSfAP+JcXn/tWtIaxVXM" crossorigin="anonymous"></script>
|
||||
</html>
|
||||
413
templates/backend_admin/demo/page404.html.twig
Normal file
413
templates/backend_admin/demo/page404.html.twig
Normal file
@@ -0,0 +1,413 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<title>{% block title %}Page 404{% endblock %}</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
{% block stylesheets %}
|
||||
{{ encore_entry_link_tags('app_backend') }}
|
||||
{% endblock %}
|
||||
|
||||
{% block javascripts %}
|
||||
{{ encore_entry_script_tags('app_backend') }}
|
||||
{% endblock %}
|
||||
|
||||
</head>
|
||||
|
||||
{% block body %}
|
||||
<body id="page-top">
|
||||
|
||||
<!-- Page Wrapper -->
|
||||
<div id="wrapper">
|
||||
|
||||
<!-- Sidebar -->
|
||||
<ul class="navbar-nav bg-gradient-primary sidebar sidebar-dark accordion" id="accordionSidebar">
|
||||
|
||||
<!-- Sidebar - Brand -->
|
||||
<a class="sidebar-brand d-flex align-items-center justify-content-center" href="index.html">
|
||||
<div class="sidebar-brand-icon rotate-n-15">
|
||||
<i class="fas fa-laugh-wink"></i>
|
||||
</div>
|
||||
<div class="sidebar-brand-text mx-3">SB Admin <sup>2</sup></div>
|
||||
</a>
|
||||
|
||||
<!-- Divider -->
|
||||
<hr class="sidebar-divider my-0">
|
||||
|
||||
<!-- Nav Item - Dashboard -->
|
||||
<li class="nav-item">
|
||||
<a class="nav-link" href="index.html">
|
||||
<i class="fas fa-fw fa-tachometer-alt"></i>
|
||||
<span>Dashboard</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<!-- Divider -->
|
||||
<hr class="sidebar-divider">
|
||||
|
||||
<!-- Heading -->
|
||||
<div class="sidebar-heading">
|
||||
Interface
|
||||
</div>
|
||||
|
||||
<!-- Nav Item - Pages Collapse Menu -->
|
||||
<li class="nav-item">
|
||||
<a class="nav-link collapsed" href="#" data-toggle="collapse" data-target="#collapseTwo"
|
||||
aria-expanded="true" aria-controls="collapseTwo">
|
||||
<i class="fas fa-fw fa-cog"></i>
|
||||
<span>Components</span>
|
||||
</a>
|
||||
<div id="collapseTwo" class="collapse" aria-labelledby="headingTwo" data-parent="#accordionSidebar">
|
||||
<div class="bg-white py-2 collapse-inner rounded">
|
||||
<h6 class="collapse-header">Custom Components:</h6>
|
||||
<a class="collapse-item" href="buttons.html">Buttons</a>
|
||||
<a class="collapse-item" href="cards.html">Cards</a>
|
||||
</div>
|
||||
</div>
|
||||
</li>
|
||||
|
||||
<!-- Nav Item - Utilities Collapse Menu -->
|
||||
<li class="nav-item">
|
||||
<a class="nav-link collapsed" href="#" data-toggle="collapse" data-target="#collapseUtilities"
|
||||
aria-expanded="true" aria-controls="collapseUtilities">
|
||||
<i class="fas fa-fw fa-wrench"></i>
|
||||
<span>Utilities</span>
|
||||
</a>
|
||||
<div id="collapseUtilities" class="collapse" aria-labelledby="headingUtilities"
|
||||
data-parent="#accordionSidebar">
|
||||
<div class="bg-white py-2 collapse-inner rounded">
|
||||
<h6 class="collapse-header">Custom Utilities:</h6>
|
||||
<a class="collapse-item" href="utilities-color.html">Colors</a>
|
||||
<a class="collapse-item" href="utilities-border.html">Borders</a>
|
||||
<a class="collapse-item" href="utilities-animation.html">Animations</a>
|
||||
<a class="collapse-item" href="utilities-other.html">Other</a>
|
||||
</div>
|
||||
</div>
|
||||
</li>
|
||||
|
||||
<!-- Divider -->
|
||||
<hr class="sidebar-divider">
|
||||
|
||||
<!-- Heading -->
|
||||
<div class="sidebar-heading">
|
||||
Addons
|
||||
</div>
|
||||
|
||||
<!-- Nav Item - Pages Collapse Menu -->
|
||||
<li class="nav-item active">
|
||||
<a class="nav-link" href="#" data-toggle="collapse" data-target="#collapsePages" aria-expanded="true"
|
||||
aria-controls="collapsePages">
|
||||
<i class="fas fa-fw fa-folder"></i>
|
||||
<span>Pages</span>
|
||||
</a>
|
||||
<div id="collapsePages" class="collapse show" aria-labelledby="headingPages"
|
||||
data-parent="#accordionSidebar">
|
||||
<div class="bg-white py-2 collapse-inner rounded">
|
||||
<h6 class="collapse-header">Login Screens:</h6>
|
||||
<a class="collapse-item" href="login.html">Login</a>
|
||||
<a class="collapse-item" href="register.html">Register</a>
|
||||
<a class="collapse-item" href="forgot-password.html">Forgot Password</a>
|
||||
<div class="collapse-divider"></div>
|
||||
<h6 class="collapse-header">Other Pages:</h6>
|
||||
<a class="collapse-item active" href="404.html">404 Page</a>
|
||||
<a class="collapse-item" href="blank.html">Blank Page</a>
|
||||
</div>
|
||||
</div>
|
||||
</li>
|
||||
|
||||
<!-- Nav Item - Charts -->
|
||||
<li class="nav-item">
|
||||
<a class="nav-link" href="charts.html">
|
||||
<i class="fas fa-fw fa-chart-area"></i>
|
||||
<span>Charts</span></a>
|
||||
</li>
|
||||
|
||||
<!-- Nav Item - Tables -->
|
||||
<li class="nav-item">
|
||||
<a class="nav-link" href="tables.html">
|
||||
<i class="fas fa-fw fa-table"></i>
|
||||
<span>Tables</span></a>
|
||||
</li>
|
||||
|
||||
<!-- Divider -->
|
||||
<hr class="sidebar-divider d-none d-md-block">
|
||||
|
||||
<!-- Sidebar Toggler (Sidebar) -->
|
||||
<div class="text-center d-none d-md-inline">
|
||||
<button class="rounded-circle border-0" id="sidebarToggle"></button>
|
||||
</div>
|
||||
|
||||
</ul>
|
||||
<!-- End of Sidebar -->
|
||||
|
||||
<!-- Content Wrapper -->
|
||||
<div id="content-wrapper" class="d-flex flex-column">
|
||||
|
||||
<!-- Main Content -->
|
||||
<div id="content">
|
||||
|
||||
<!-- Topbar -->
|
||||
<nav class="navbar navbar-expand navbar-light bg-white topbar mb-4 static-top shadow">
|
||||
|
||||
<!-- Sidebar Toggle (Topbar) -->
|
||||
<button id="sidebarToggleTop" class="btn btn-link d-md-none rounded-circle mr-3">
|
||||
<i class="fa fa-bars"></i>
|
||||
</button>
|
||||
|
||||
<!-- Topbar Search -->
|
||||
<form
|
||||
class="d-none d-sm-inline-block form-inline mr-auto ml-md-3 my-2 my-md-0 mw-100 navbar-search">
|
||||
<div class="input-group">
|
||||
<input type="text" class="form-control bg-light border-0 small" placeholder="Search for..."
|
||||
aria-label="Search" aria-describedby="basic-addon2">
|
||||
<div class="input-group-append">
|
||||
<button class="btn btn-primary" type="button">
|
||||
<i class="fas fa-search fa-sm"></i>
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
|
||||
<!-- Topbar Navbar -->
|
||||
<ul class="navbar-nav ml-auto">
|
||||
|
||||
<!-- Nav Item - Search Dropdown (Visible Only XS) -->
|
||||
<li class="nav-item dropdown no-arrow d-sm-none">
|
||||
<a class="nav-link dropdown-toggle" href="#" id="searchDropdown" role="button"
|
||||
data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
|
||||
<i class="fas fa-search fa-fw"></i>
|
||||
</a>
|
||||
<!-- Dropdown - Messages -->
|
||||
<div class="dropdown-menu dropdown-menu-right p-3 shadow animated--grow-in"
|
||||
aria-labelledby="searchDropdown">
|
||||
<form class="form-inline mr-auto w-100 navbar-search">
|
||||
<div class="input-group">
|
||||
<input type="text" class="form-control bg-light border-0 small"
|
||||
placeholder="Search for..." aria-label="Search"
|
||||
aria-describedby="basic-addon2">
|
||||
<div class="input-group-append">
|
||||
<button class="btn btn-primary" type="button">
|
||||
<i class="fas fa-search fa-sm"></i>
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</li>
|
||||
|
||||
<!-- Nav Item - Alerts -->
|
||||
<li class="nav-item dropdown no-arrow mx-1">
|
||||
<a class="nav-link dropdown-toggle" href="#" id="alertsDropdown" role="button"
|
||||
data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
|
||||
<i class="fas fa-bell fa-fw"></i>
|
||||
<!-- Counter - Alerts -->
|
||||
<span class="badge badge-danger badge-counter">3+</span>
|
||||
</a>
|
||||
<!-- Dropdown - Alerts -->
|
||||
<div class="dropdown-list dropdown-menu dropdown-menu-right shadow animated--grow-in"
|
||||
aria-labelledby="alertsDropdown">
|
||||
<h6 class="dropdown-header">
|
||||
Alerts Center
|
||||
</h6>
|
||||
<a class="dropdown-item d-flex align-items-center" href="#">
|
||||
<div class="mr-3">
|
||||
<div class="icon-circle bg-primary">
|
||||
<i class="fas fa-file-alt text-white"></i>
|
||||
</div>
|
||||
</div>
|
||||
<div>
|
||||
<div class="small text-gray-500">December 12, 2019</div>
|
||||
<span class="font-weight-bold">A new monthly report is ready to download!</span>
|
||||
</div>
|
||||
</a>
|
||||
<a class="dropdown-item d-flex align-items-center" href="#">
|
||||
<div class="mr-3">
|
||||
<div class="icon-circle bg-success">
|
||||
<i class="fas fa-donate text-white"></i>
|
||||
</div>
|
||||
</div>
|
||||
<div>
|
||||
<div class="small text-gray-500">December 7, 2019</div>
|
||||
$290.29 has been deposited into your account!
|
||||
</div>
|
||||
</a>
|
||||
<a class="dropdown-item d-flex align-items-center" href="#">
|
||||
<div class="mr-3">
|
||||
<div class="icon-circle bg-warning">
|
||||
<i class="fas fa-exclamation-triangle text-white"></i>
|
||||
</div>
|
||||
</div>
|
||||
<div>
|
||||
<div class="small text-gray-500">December 2, 2019</div>
|
||||
Spending Alert: We've noticed unusually high spending for your account.
|
||||
</div>
|
||||
</a>
|
||||
<a class="dropdown-item text-center small text-gray-500" href="#">Show All Alerts</a>
|
||||
</div>
|
||||
</li>
|
||||
|
||||
<!-- Nav Item - Messages -->
|
||||
<li class="nav-item dropdown no-arrow mx-1">
|
||||
<a class="nav-link dropdown-toggle" href="#" id="messagesDropdown" role="button"
|
||||
data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
|
||||
<i class="fas fa-envelope fa-fw"></i>
|
||||
<!-- Counter - Messages -->
|
||||
<span class="badge badge-danger badge-counter">7</span>
|
||||
</a>
|
||||
<!-- Dropdown - Messages -->
|
||||
<div class="dropdown-list dropdown-menu dropdown-menu-right shadow animated--grow-in"
|
||||
aria-labelledby="messagesDropdown">
|
||||
<h6 class="dropdown-header">
|
||||
Message Center
|
||||
</h6>
|
||||
<a class="dropdown-item d-flex align-items-center" href="#">
|
||||
<div class="dropdown-list-image mr-3">
|
||||
<img class="rounded-circle" src="{{ asset('images/backend/img/undraw_profile_1.svg') }}"
|
||||
alt="...">
|
||||
<div class="status-indicator bg-success"></div>
|
||||
</div>
|
||||
<div class="font-weight-bold">
|
||||
<div class="text-truncate">Hi there! I am wondering if you can help me with a
|
||||
problem I've been having.</div>
|
||||
<div class="small text-gray-500">Emily Fowler · 58m</div>
|
||||
</div>
|
||||
</a>
|
||||
<a class="dropdown-item d-flex align-items-center" href="#">
|
||||
<div class="dropdown-list-image mr-3">
|
||||
<img class="rounded-circle" src="{{ asset('images/backend/img/undraw_profile_2.svg') }}"
|
||||
alt="...">
|
||||
<div class="status-indicator"></div>
|
||||
</div>
|
||||
<div>
|
||||
<div class="text-truncate">I have the photos that you ordered last month, how
|
||||
would you like them sent to you?</div>
|
||||
<div class="small text-gray-500">Jae Chun · 1d</div>
|
||||
</div>
|
||||
</a>
|
||||
<a class="dropdown-item d-flex align-items-center" href="#">
|
||||
<div class="dropdown-list-image mr-3">
|
||||
<img class="rounded-circle" src="{{ asset('images/backend/img/undraw_profile_3.svg') }}"
|
||||
alt="...">
|
||||
<div class="status-indicator bg-warning"></div>
|
||||
</div>
|
||||
<div>
|
||||
<div class="text-truncate">Last month's report looks great, I am very happy with
|
||||
the progress so far, keep up the good work!</div>
|
||||
<div class="small text-gray-500">Morgan Alvarez · 2d</div>
|
||||
</div>
|
||||
</a>
|
||||
<a class="dropdown-item d-flex align-items-center" href="#">
|
||||
<div class="dropdown-list-image mr-3">
|
||||
<img class="rounded-circle" src="https://source.unsplash.com/Mv9hjnEUHR4/60x60"
|
||||
alt="...">
|
||||
<div class="status-indicator bg-success"></div>
|
||||
</div>
|
||||
<div>
|
||||
<div class="text-truncate">Am I a good boy? The reason I ask is because someone
|
||||
told me that people say this to all dogs, even if they aren't good...</div>
|
||||
<div class="small text-gray-500">Chicken the Dog · 2w</div>
|
||||
</div>
|
||||
</a>
|
||||
<a class="dropdown-item text-center small text-gray-500" href="#">Read More Messages</a>
|
||||
</div>
|
||||
</li>
|
||||
|
||||
<div class="topbar-divider d-none d-sm-block"></div>
|
||||
|
||||
<!-- Nav Item - User Information -->
|
||||
<li class="nav-item dropdown no-arrow">
|
||||
<a class="nav-link dropdown-toggle" href="#" id="userDropdown" role="button"
|
||||
data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
|
||||
<span class="mr-2 d-none d-lg-inline text-gray-600 small">Douglas McGee</span>
|
||||
<img class="img-profile rounded-circle"
|
||||
src="{{ asset('images/backend/img/undraw_profile.svg') }}">
|
||||
</a>
|
||||
<!-- Dropdown - User Information -->
|
||||
<div class="dropdown-menu dropdown-menu-right shadow animated--grow-in"
|
||||
aria-labelledby="userDropdown">
|
||||
<a class="dropdown-item" href="#">
|
||||
<i class="fas fa-user fa-sm fa-fw mr-2 text-gray-400"></i>
|
||||
Profile
|
||||
</a>
|
||||
<a class="dropdown-item" href="#">
|
||||
<i class="fas fa-cogs fa-sm fa-fw mr-2 text-gray-400"></i>
|
||||
Settings
|
||||
</a>
|
||||
<a class="dropdown-item" href="#">
|
||||
<i class="fas fa-list fa-sm fa-fw mr-2 text-gray-400"></i>
|
||||
Activity Log
|
||||
</a>
|
||||
<div class="dropdown-divider"></div>
|
||||
<a class="dropdown-item" href="#" data-toggle="modal" data-target="#logoutModal">
|
||||
<i class="fas fa-sign-out-alt fa-sm fa-fw mr-2 text-gray-400"></i>
|
||||
Logout
|
||||
</a>
|
||||
</div>
|
||||
</li>
|
||||
|
||||
</ul>
|
||||
|
||||
</nav>
|
||||
<!-- End of Topbar -->
|
||||
|
||||
<!-- Begin Page Content -->
|
||||
<div class="container-fluid">
|
||||
|
||||
<!-- 404 Error Text -->
|
||||
<div class="text-center">
|
||||
<div class="error mx-auto" data-text="404">404</div>
|
||||
<p class="lead text-gray-800 mb-5">Page Not Found</p>
|
||||
<p class="text-gray-500 mb-0">It looks like you found a glitch in the matrix...</p>
|
||||
<a href="index.html">← Back to Dashboard</a>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
<!-- /.container-fluid -->
|
||||
|
||||
</div>
|
||||
<!-- End of Main Content -->
|
||||
|
||||
<!-- Footer -->
|
||||
<footer class="sticky-footer bg-white">
|
||||
<div class="container my-auto">
|
||||
<div class="copyright text-center my-auto">
|
||||
<span>Copyright © Your Website 2020</span>
|
||||
</div>
|
||||
</div>
|
||||
</footer>
|
||||
<!-- End of Footer -->
|
||||
|
||||
</div>
|
||||
<!-- End of Content Wrapper -->
|
||||
|
||||
</div>
|
||||
<!-- End of Page Wrapper -->
|
||||
|
||||
<!-- Scroll to Top Button-->
|
||||
<a class="scroll-to-top rounded" href="#page-top">
|
||||
<i class="fas fa-angle-up"></i>
|
||||
</a>
|
||||
|
||||
<!-- Logout Modal-->
|
||||
<div class="modal fade" id="logoutModal" tabindex="-1" role="dialog" aria-labelledby="exampleModalLabel"
|
||||
aria-hidden="true">
|
||||
<div class="modal-dialog" role="document">
|
||||
<div class="modal-content">
|
||||
<div class="modal-header">
|
||||
<h5 class="modal-title" id="exampleModalLabel">Ready to Leave?</h5>
|
||||
<button class="close" type="button" data-dismiss="modal" aria-label="Close">
|
||||
<span aria-hidden="true">×</span>
|
||||
</button>
|
||||
</div>
|
||||
<div class="modal-body">Select "Logout" below if you are ready to end your current session.</div>
|
||||
<div class="modal-footer">
|
||||
<button class="btn btn-secondary" type="button" data-dismiss="modal">Cancel</button>
|
||||
<a class="btn btn-primary" href="login.html">Logout</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
{% endblock %}
|
||||
<script src="{{ asset('assets/js/bootstrap.bundle.min.js.js') }}" integrity="sha384-MrcW6ZMFYlzcLA8Nl+NtUVF0sA7MsXsP1UyJoMp4YLEuNSfAP+JcXn/tWtIaxVXM" crossorigin="anonymous"></script>
|
||||
</html>
|
||||
128
templates/backend_admin/demo/test.html.twig
Normal file
128
templates/backend_admin/demo/test.html.twig
Normal file
@@ -0,0 +1,128 @@
|
||||
{% extends 'base_backend_admin.html.twig' %}
|
||||
|
||||
{% block title %}Hello Backend!{% endblock %}
|
||||
|
||||
{% block body %}
|
||||
<body>
|
||||
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.0.2/dist/js/bootstrap.bundle.min.js" integrity="sha384-MrcW6ZMFYlzcLA8Nl+NtUVF0sA7MsXsP1UyJoMp4YLEuNSfAP+JcXn/tWtIaxVXM" crossorigin="anonymous"></script>
|
||||
|
||||
<div class="container-fluid">
|
||||
<div class="row flex-nowrap">
|
||||
<div class="col-auto col-md-3 col-xl-2 px-sm-2 px-0 bg-dark">
|
||||
<div class="d-flex flex-column align-items-center align-items-sm-start px-3 pt-2 text-white min-vh-100">
|
||||
<a href="/" class="d-flex align-items-center pb-3 mb-md-0 me-md-auto text-white text-decoration-none">
|
||||
<span class="fs-5 d-none d-sm-inline">Menu</span>
|
||||
</a>
|
||||
<ul class="nav nav-pills flex-column mb-sm-auto mb-0 align-items-center align-items-sm-start" id="menu">
|
||||
<li class="nav-item">
|
||||
<a href="#" class="nav-link align-middle px-0">
|
||||
<i class="fs-4 bi-house"></i> <span class="ms-1 d-none d-sm-inline">Home</span>
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#submenu1" data-bs-toggle="collapse" class="nav-link px-0 align-middle">
|
||||
<i class="fs-4 bi-speedometer2"></i> <span class="ms-1 d-none d-sm-inline">Dashboard</span> </a>
|
||||
<ul class="collapse show nav flex-column ms-1" id="submenu1" data-bs-parent="#menu">
|
||||
<li class="w-100">
|
||||
<a href="#" class="nav-link px-0"> <span class="d-none d-sm-inline">Item</span> 1 </a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#" class="nav-link px-0"> <span class="d-none d-sm-inline">Item</span> 2 </a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#" class="nav-link px-0 align-middle">
|
||||
<i class="fs-4 bi-table"></i> <span class="ms-1 d-none d-sm-inline">Orders</span></a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#submenu2" data-bs-toggle="collapse" class="nav-link px-0 align-middle ">
|
||||
<i class="fs-4 bi-bootstrap"></i> <span class="ms-1 d-none d-sm-inline">Bootstrap</span></a>
|
||||
<ul class="collapse nav flex-column ms-1" id="submenu2" data-bs-parent="#menu">
|
||||
<li class="w-100">
|
||||
<a href="#" class="nav-link px-0"> <span class="d-none d-sm-inline">Item</span> 1</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#" class="nav-link px-0"> <span class="d-none d-sm-inline">Item</span> 2</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#submenu3" data-bs-toggle="collapse" class="nav-link px-0 align-middle">
|
||||
<i class="fs-4 bi-grid"></i> <span class="ms-1 d-none d-sm-inline">Products</span> </a>
|
||||
<ul class="collapse nav flex-column ms-1" id="submenu3" data-bs-parent="#menu">
|
||||
<li class="w-100">
|
||||
<a href="#" class="nav-link px-0"> <span class="d-none d-sm-inline">Product</span> 1</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#" class="nav-link px-0"> <span class="d-none d-sm-inline">Product</span> 2</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#" class="nav-link px-0"> <span class="d-none d-sm-inline">Product</span> 3</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#" class="nav-link px-0"> <span class="d-none d-sm-inline">Product</span> 4</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#" class="nav-link px-0 align-middle">
|
||||
<i class="fs-4 bi-people"></i> <span class="ms-1 d-none d-sm-inline">Customers</span> </a>
|
||||
</li>
|
||||
</ul>
|
||||
<hr>
|
||||
<div class="dropdown pb-4">
|
||||
<a href="#" class="d-flex align-items-center text-white text-decoration-none dropdown-toggle" id="dropdownUser1" data-bs-toggle="dropdown" aria-expanded="false">
|
||||
<img src="https://github.com/mdo.png" alt="hugenerd" width="30" height="30" class="rounded-circle">
|
||||
<span class="d-none d-sm-inline mx-1">loser</span>
|
||||
</a>
|
||||
<ul class="dropdown-menu dropdown-menu-dark text-small shadow" aria-labelledby="dropdownUser1">
|
||||
<li><a class="dropdown-item" href="#">New project...</a></li>
|
||||
<li><a class="dropdown-item" href="#">Settings</a></li>
|
||||
<li><a class="dropdown-item" href="#">Profile</a></li>
|
||||
<li>
|
||||
<hr class="dropdown-divider">
|
||||
</li>
|
||||
<li><a class="dropdown-item" href="#">Sign out</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col py-3">
|
||||
<h3>Left Sidebar with Submenus</h3>
|
||||
<p class="lead">
|
||||
An example 2-level sidebar with collasible menu items. The menu functions like an "accordion" where only a single
|
||||
menu is be open at a time. While the sidebar itself is not toggle-able, it does responsively shrink in width on smaller screens.</p>
|
||||
<ul class="list-unstyled">
|
||||
<li><h5>Responsive</h5> shrinks in width, hides text labels and collapses to icons only on mobile</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<br>
|
||||
<br>
|
||||
<br>
|
||||
<br>
|
||||
|
||||
|
||||
<br>
|
||||
<br>
|
||||
<br><br>
|
||||
<br>
|
||||
<br>
|
||||
<div class="dropdown">
|
||||
<button class="btn btn-primary dropdown-toggle" type="button" data-bs-toggle="dropdown" aria-expanded="false">
|
||||
Dropdown
|
||||
</button>
|
||||
<ul class="dropdown-menu">
|
||||
<li><button class="dropdown-item" type="button">Dropdown item</button></li>
|
||||
<li><button class="dropdown-item" type="button">Dropdown item</button></li>
|
||||
<li><button class="dropdown-item" type="button">Dropdown item</button></li>
|
||||
</ul>
|
||||
</div>
|
||||
</body>
|
||||
<script>
|
||||
|
||||
</script>
|
||||
|
||||
{% endblock %}
|
||||
62
templates/backend_admin/partenaire/add.html.twig
Normal file
62
templates/backend_admin/partenaire/add.html.twig
Normal file
@@ -0,0 +1,62 @@
|
||||
{% extends 'base_backend_admin.html.twig' %}
|
||||
|
||||
{% block title %} Partenaire {% endblock %}
|
||||
|
||||
{% block content %}
|
||||
<!-- Page Heading -->
|
||||
<div class="d-sm-flex align-items-center justify-content-between mb-4">
|
||||
<h1 class="h3 mb-0 text-gray-800">Partenaire</h1>
|
||||
<ol class="breadcrumb float-sm-right">
|
||||
<li class="breadcrumb-item">Partenaire</li>
|
||||
</ol>
|
||||
</div>
|
||||
|
||||
|
||||
<!-- Begin Page Content -->
|
||||
<div class="container-fluid">
|
||||
|
||||
{% include 'backend_admin/basic/notice.html.twig' %}
|
||||
|
||||
<!-- DataTales Example -->
|
||||
<div class="card shadow mb-4">
|
||||
|
||||
<div class="card-header py-3">
|
||||
<h6 class="m-0 font-weight-bold text-primary">Ajouter un nouveau partenaire</h6>
|
||||
</div>
|
||||
<div class="card-body">
|
||||
<div class="row">
|
||||
{{ form_start(form) }}
|
||||
{{ form_errors(form) }}
|
||||
|
||||
<div class="col-7 my-3">
|
||||
{{ form_label(form.societe, 'Société', {'attr': {'class': 'form-label'}}) }}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text"><i class="fa-solid fa-building"></i></span>
|
||||
{{ form_widget(form.societe, {'attr': {'class': 'form-control select-filter select2bs4 select-filter-speaker'}}) }}
|
||||
<div class="invalid-feedback">
|
||||
{{ form_errors(form.societe) }}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-7 my-5">
|
||||
{{ form_label(form.partenaire, 'Partenaire', {'attr': {'class': 'form-label'}}) }}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text"><i class="fa-solid fa-building"></i></span>
|
||||
{{ form_widget(form.partenaire, {'attr': {'class': 'form-control select-filter select2bs4 select-filter-speaker'}}) }}
|
||||
<div class="invalid-feedback">
|
||||
{{ form_errors(form.partenaire) }}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-4">
|
||||
{{ form_widget(form.save, {'label': "Ajouter", 'attr': {'class': 'w-90 btn btn-primary '}}) }}
|
||||
</div>
|
||||
|
||||
{{ form_end(form) }}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
{% endblock %}
|
||||
110
templates/backend_admin/partenaire/index.html.twig
Normal file
110
templates/backend_admin/partenaire/index.html.twig
Normal file
@@ -0,0 +1,110 @@
|
||||
{% extends 'base_backend_admin.html.twig' %}
|
||||
|
||||
{% block title %} Partenaire {% endblock %}
|
||||
|
||||
{% block content %}
|
||||
<!-- Page Heading -->
|
||||
<div class="d-sm-flex align-items-center justify-content-between mb-4">
|
||||
<h1 class="h3 mb-0 text-gray-800">Partenaire</h1>
|
||||
<ol class="breadcrumb float-sm-right">
|
||||
<li class="breadcrumb-item">Partenaire</li>
|
||||
</ol>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
<!-- Begin Page Content -->
|
||||
<div class="container-fluid">
|
||||
|
||||
{% include 'backend_admin/basic/notice.html.twig' %}
|
||||
|
||||
<a href="{{ path('backend_admin_partenaire_add') }}" class="btn btn-info btn-icon-split mb-4">
|
||||
<span class="icon text-white"><i class="fa-regular fa-square-plus"></i></span>
|
||||
<span class="text text-white">Ajouter un nouveau partenaire</span>
|
||||
</a>
|
||||
|
||||
<!-- DataTales Example -->
|
||||
<div class="card shadow mb-4">
|
||||
|
||||
<div class="card-header py-3">
|
||||
<h6 class="m-0 font-weight-bold text-primary">Liste des partenaires</h6>
|
||||
</div>
|
||||
<div class="card-body">
|
||||
<div class="table-responsive">
|
||||
<table class="table table-bordered" id="dataTablesSociete" width="100%" cellspacing="0">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>#</th>
|
||||
<th>Nom</th>
|
||||
<th>Prénom</th>
|
||||
<th>Email</th>
|
||||
<th>Télé</th>
|
||||
<th>Role</th>
|
||||
<th>Sociéte</th>
|
||||
<th>Date Ajoute</th>
|
||||
<th>Activer Par</th>
|
||||
<th>Etat</th>
|
||||
<th>Gestion</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tfoot>
|
||||
<tr>
|
||||
<th>#</th>
|
||||
<th>Nom</th>
|
||||
<th>Prénom</th>
|
||||
<th>Email</th>
|
||||
<th>Télé</th>
|
||||
<th>Role</th>
|
||||
<th>Sociéte</th>
|
||||
<th>Date Ajoute</th>
|
||||
<th>Activer Par</th>
|
||||
<th>Etat</th>
|
||||
<th>Gestion</th>
|
||||
</tr>
|
||||
</tfoot>
|
||||
<tbody>
|
||||
{% for partenaire in partenaires %}
|
||||
{% set user = partenaire.getPartenaire() %}
|
||||
{% set societe = partenaire.getSociete() %}
|
||||
{% set admin = partenaire.getAdmin() %}
|
||||
<tr>
|
||||
<td>{{ partenaire.id }}</td>
|
||||
<td>{{ user.getFirstname() }}</td>
|
||||
<td>{{ user.getLastname() }}</td>
|
||||
<td>{{ user.getEmail() }}</td>
|
||||
<td>{{ user.getPhoneNumber() }}</td>
|
||||
<td>{{ partenaire.role }}</td>
|
||||
<td>{{ societe.getNom() }}</td>
|
||||
<td>{{ partenaire.getDateAdd()|date("d/m/Y H:i") }}</td>
|
||||
<td>{% if admin is not null %} {{ admin.getFullName() }}{% endif %}</td>
|
||||
<td>
|
||||
{% if partenaire.isActive() %}
|
||||
<center><font color="#26a269"><i class="fa-solid fa-circle-check fa-xl"></i></font></center>
|
||||
{% else %}
|
||||
<center><font color="red"><i class="fa-solid fa-circle-xmark fa-xl"></i></font></center>
|
||||
{% endif %}
|
||||
</td>
|
||||
<td>
|
||||
<a href="" title="modifier" class="btn btn-info btn-action"><i class="fa fa-edit"></i></a>
|
||||
{% if partenaire.isActive() %}
|
||||
<a href="{{ path('backend_admin_partenaire_activated', {id:partenaire.id, 'active':0}) }}" title="déactiver ce partenaire" class="btn btn-danger"><i class="fa-solid fa-circle-xmark"></i></a>
|
||||
{% else %}
|
||||
<a href="{{ path('backend_admin_partenaire_activated', {id:partenaire.id, 'active':1}) }}" title="activer ce partenaire" class="btn btn-success"><i class="fa-solid fa-circle-check"></i></a>
|
||||
{% endif %}
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
{% endfor %}
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
{% endblock %}
|
||||
|
||||
{% block javascripts %}
|
||||
{{ parent() }}
|
||||
{{ encore_entry_script_tags('app_backend_other') }}
|
||||
{% endblock %}
|
||||
150
templates/backend_admin/position_affichage/creer.html.twig
Normal file
150
templates/backend_admin/position_affichage/creer.html.twig
Normal file
@@ -0,0 +1,150 @@
|
||||
{% extends 'base_backend_admin.html.twig' %}
|
||||
|
||||
{% block title %} Position {% endblock %}
|
||||
|
||||
{% block content %}
|
||||
|
||||
<!-- Page Heading -->
|
||||
<div class="d-sm-flex align-items-center justify-content-between mb-4">
|
||||
<h1 class="h3 mb-0 text-gray-800">Position et affichage</h1>
|
||||
<ol class="breadcrumb float-sm-right">
|
||||
<li class="breadcrumb-item active">Position et affichage</li>
|
||||
</ol>
|
||||
</div>
|
||||
|
||||
|
||||
<!-- Content Row -->
|
||||
<div class="row">
|
||||
<div class="card shadow mb-4" >
|
||||
<!-- Card Header - Dropdown -->
|
||||
<div class="card-header py-3 d-flex flex-row align-items-center justify-content-between">
|
||||
<h6 class="m-0 font-weight-bold text-primary">Afficher l'annonce sur la page d'acceuil</h6>
|
||||
</div>
|
||||
<!-- Card Body -->
|
||||
<div class="card-body" style="min-height: 700px">
|
||||
|
||||
|
||||
|
||||
<div class="row">
|
||||
<div class="col-md-5">
|
||||
|
||||
<div class="col-md-12 mb-4 mt-2">
|
||||
<label for="societe" class="form-label">Société</label>
|
||||
<div class="input-group">
|
||||
<span class="input-group-text"><i class="fa-regular fa-building"></i></span>
|
||||
<select class="form-select" id="societe" required="">
|
||||
<option value=""></option>
|
||||
{% for societe in societes %}
|
||||
<option value="{{ societe.getId() }}">{{ societe.getNom() }}</option>
|
||||
{% endfor %}
|
||||
</select>
|
||||
<div class="invalid-feedback">
|
||||
Please select a valid country.
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="col-md-12 mb-5 annonce" style="display:none">
|
||||
<label for="annonce" class="form-label">Annonce</label>
|
||||
<div class="input-group">
|
||||
<span class="input-group-text"><i class="fa-solid fa-scroll"></i></span>
|
||||
<select class="form-select" id="annonce" required="">
|
||||
</select>
|
||||
<div class="invalid-feedback">
|
||||
Please select a valid Annonce.
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="row mb-5 largeur" style="display:none">
|
||||
<div class="col-md-8">
|
||||
Dimension: <b><span id="largeur"></span></b>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<div class="col-md-8 mb-5 ligne" style="display:none">
|
||||
<label for="ligne" class="form-label">Ligne d'affichage sur la Page d'accueil</label>
|
||||
<select class="form-select" id="ligne" required=""></select>
|
||||
<div class="invalid-feedback">
|
||||
Please select a valid country.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="intervalle-date mb-5" style="display:none">
|
||||
<div class="row mb-3">
|
||||
<div class="col-md-5">
|
||||
<label for="dateDebut" class="form-label">Date Début</label>
|
||||
<input type="date" class="form-control" id="dateDebut" placeholder="" value="" required="">
|
||||
<div class="invalid-feedback">
|
||||
Valid first name is required.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="offset-1 col-md-5 dateFin">
|
||||
<label for="dateFin" class="form-label">Date Fin</label>
|
||||
<input type="date" class="form-control" id="dateFin" placeholder="" value="" required="">
|
||||
<div class="invalid-feedback">
|
||||
Valid last name is required.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<br>
|
||||
|
||||
<div class="row mb-5 valOperation" style="display:none">
|
||||
<div class="col-md-5 offset-4">
|
||||
<button type="button" class="btn btn-outline-secondary" id="valOperation">valider</button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="col-md-6 offset-1" >
|
||||
|
||||
<div id="loading-data"></div>
|
||||
|
||||
<div id="annonce-ligne"></div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="save-operation" style="display:none">
|
||||
<div class="col-md-6 offset-3 " >
|
||||
<hr class="my-4 mb-4">
|
||||
<center>
|
||||
<button class="w-5 btn btn-primary btn-lg" id="save-operation">
|
||||
<i class="fa-regular fa-floppy-disk"></i>
|
||||
enregister
|
||||
</button>
|
||||
</center>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
{% endblock %}
|
||||
|
||||
{% block javascripts %}
|
||||
<script>
|
||||
var pathReservation = "{{ path('backend_admin_position_creer') }}";
|
||||
var pathTestReservation = "{{ path('backend_admin_position_disponibilite') }}";
|
||||
var pathLigneDetail = "{{ path('backend_admin_position_ligne_detail') }}";
|
||||
var pathSave = "{{ path('backend_admin_position_save') }}";
|
||||
var pathPositionDetail = "{{ path('backend_admin_position_detail') }}";
|
||||
</script>
|
||||
|
||||
{{ parent() }}
|
||||
{{ encore_entry_script_tags('app_backend_annonce') }}
|
||||
{% endblock %}
|
||||
176
templates/backend_admin/position_affichage/detail.html.twig
Normal file
176
templates/backend_admin/position_affichage/detail.html.twig
Normal file
@@ -0,0 +1,176 @@
|
||||
{% extends 'base_backend_admin.html.twig' %}
|
||||
|
||||
{% block title %} Position {% endblock %}
|
||||
|
||||
{% block content %}
|
||||
<!-- Page Heading -->
|
||||
<div class="d-sm-flex align-items-center justify-content-between mb-4">
|
||||
<h1 class="h3 mb-0 text-gray-800">Position et affichage</h1>
|
||||
<ol class="breadcrumb float-sm-right">
|
||||
<li class="breadcrumb-item active">Position et affichage</li>
|
||||
</ol>
|
||||
</div>
|
||||
|
||||
{% include 'backend_admin/basic/notice.html.twig' %}
|
||||
|
||||
<!-- Content Row -->
|
||||
<div class="row">
|
||||
<div class="card shadow mb-4" >
|
||||
<!-- Card Header - Dropdown -->
|
||||
<div class="card-header py-3 d-flex flex-row align-items-center justify-content-between">
|
||||
<h6 class="m-0 font-weight-bold text-primary">Afficher l'annonce sur la page d'acceuil</h6>
|
||||
</div>
|
||||
<!-- Card Body -->
|
||||
<div class="card-body" style="min-height: 700px">
|
||||
|
||||
|
||||
|
||||
<div class="row">
|
||||
<div class="col-md-5">
|
||||
|
||||
<div class="mb-4">
|
||||
<div class="card border-left-primary shadow h-100 py-2">
|
||||
<div class="card-body">
|
||||
<div class="row no-gutters align-items-center">
|
||||
<div class="col-10">
|
||||
<div class="font-weight-bold text-primary text-uppercase mb-1">
|
||||
Annonce:
|
||||
</div>
|
||||
<div class="h5 mb-0 font-weight-bold text-gray-800">{{ position.getAnnonce().getTitre() }}</div>
|
||||
</div>
|
||||
<div class="col-1 offset-1">
|
||||
<i class="fa-solid fa-scroll fa-2x text-gray-300"></i>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="mb-4">
|
||||
<div class="card border-left-success shadow h-100 py-2">
|
||||
<div class="card-body">
|
||||
<div class="row no-gutters align-items-center">
|
||||
<div class="col-5">
|
||||
<div class="font-weight-bold text-success text-uppercase mb-1">
|
||||
Date Début
|
||||
</div>
|
||||
<div class="h5 mb-0 font-weight-bold text-gray-800">{{ position.getDateAdd()|date("d/m/Y") }}</div>
|
||||
</div>
|
||||
<div class="col-5">
|
||||
<div class="font-weight-bold text-success text-uppercase mb-1">
|
||||
Date Fin
|
||||
</div>
|
||||
<div class="h5 mb-0 font-weight-bold text-gray-800">{{ position.getDateFin()|date("d/m/Y") }}</div>
|
||||
</div>
|
||||
<div class="col-1 offset-1">
|
||||
<i class="fas fa-comments fa-2x text-gray-300"></i>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="mb-4">
|
||||
<div class="card border-left-success shadow h-100 py-2">
|
||||
<div class="card-body">
|
||||
<div class="row no-gutters align-items-center">
|
||||
<div class="col-5">
|
||||
<div class="font-weight-bold text-success text-uppercase mb-1">
|
||||
Ligne d'affichage
|
||||
</div>
|
||||
<div class="h5 mb-0 font-weight-bold text-gray-800">{{ ligne.getRang() }}</div>
|
||||
</div>
|
||||
<div class="col-5">
|
||||
<div class="font-weight-bold text-success text-uppercase mb-1">
|
||||
Dimension
|
||||
</div>
|
||||
<div class="h5 mb-0 font-weight-bold text-gray-800">{{ position.getAnnonce().getDimension() }}</div>
|
||||
</div>
|
||||
<div class="col-1 offset-1">
|
||||
<i class="fas fa-clipboard-list fa-2x text-gray-300"></i>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="mb-4">
|
||||
<div class="card border-left-danger shadow h-100 py-2">
|
||||
<div class="card-body">
|
||||
<div class="row no-gutters align-items-center">
|
||||
<div class="col mr-2">
|
||||
<div class="font-weight-bold text-danger text-uppercase mb-1">
|
||||
Prix Total d'annonce:
|
||||
</div>
|
||||
<div class="h5 mb-0 font-weight-bold text-gray-800">{{ position.getTotalPrix()}} DT</div>
|
||||
</div>
|
||||
<div class="col-auto">
|
||||
<i class="fas fa-comments fa-2x text-gray-300"></i>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="mb-4">
|
||||
<div class="card border-left-warning shadow h-100 py-2">
|
||||
<div class="card-body">
|
||||
<div class="row no-gutters align-items-center">
|
||||
<div class="col-7">
|
||||
<div class="font-weight-bold text-warning text-uppercase mb-1">
|
||||
Créer par:
|
||||
</div>
|
||||
<div class="h5 mb-0 font-weight-bold text-gray-800">{{ position.getCreateBy().getFirstname() }} {{ position.getCreateBy().getLastname() }}</div>
|
||||
</div>
|
||||
<div class="col-3">
|
||||
<div class="font-weight-bold text-warning text-uppercase mb-1">
|
||||
date:
|
||||
</div>
|
||||
<div class="h5 mb-0 font-weight-bold text-gray-800">{{ position.getDateAdd()|date("d/m/Y") }}</div>
|
||||
</div>
|
||||
<div class="col-1 offset-1">
|
||||
<i class="fa-solid fa-scroll fa-2x text-gray-300"></i>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="col-md-6 offset-1" >
|
||||
<div id="annonce-ligne"> <div class="col-md-12 col-lg-12 order-md-last">
|
||||
<h4 class="d-flex justify-content-between align-items-center mb-3">
|
||||
<span class="text-muted">Affichage d'annonce sur la Ligne <b>{{ position.getLigneRange() }}</b></span>
|
||||
<span class="badge bg-secondary rounded-pill"> {{ position.getAffichages()|length }} Jour</span>
|
||||
</h4>
|
||||
<div class="overflow-scroll p-3 bg-light" style="height: 550px;">
|
||||
<ul class="list-group mb-3">
|
||||
|
||||
{% for affichage in position.getAffichages() %}
|
||||
<li class="list-group-item d-flex justify-content-between lh-sm">
|
||||
<div>
|
||||
<h6 class="my-0"> {{ affichage.getDateShow()|date("d/m/Y") }}</h6>
|
||||
</div>
|
||||
<small class="text-muted">Ligne {{ affichage.getLigneRange() }}</small>
|
||||
<span class="text-muted">{{ affichage.getPrix() }} DT</span>
|
||||
</li>
|
||||
{% endfor %}
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
{% endblock %}
|
||||
70
templates/backend_admin/position_affichage/index.html.twig
Normal file
70
templates/backend_admin/position_affichage/index.html.twig
Normal file
@@ -0,0 +1,70 @@
|
||||
{% extends 'base_backend_admin.html.twig' %}
|
||||
|
||||
{% block title %} Position et Affichage {% endblock %}
|
||||
|
||||
{% block content %}
|
||||
<!-- Page Heading -->
|
||||
<div class="d-sm-flex align-items-center justify-content-between mb-4">
|
||||
<h1 class="h3 mb-0 text-gray-800">Position et Affichage</h1>
|
||||
<ol class="breadcrumb float-sm-right">
|
||||
<li class="breadcrumb-item">Position et Affichage</li>
|
||||
</ol>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
<!-- Begin Page Content -->
|
||||
<div class="container-fluid">
|
||||
|
||||
{% include 'backend_admin/basic/notice.html.twig' %}
|
||||
|
||||
<a href="{{ path('backend_admin_position_creer') }}" class="btn btn-info btn-icon-split mb-4">
|
||||
<span class="icon text-white"><i class="fa-regular fa-square-plus"></i></span>
|
||||
<span class="text text-white">Ajouter une nouvelle Position et Affichage</span>
|
||||
</a>
|
||||
|
||||
|
||||
<!-- DataTales Example -->
|
||||
<div class="card shadow mb-4">
|
||||
|
||||
<div class="card-header py-3">
|
||||
<h6 class="m-0 font-weight-bold text-info">Liste Positions et Affichages des annonces sur la page d'acceuil</h6>
|
||||
</div>
|
||||
<div class="card-body">
|
||||
<div class="table-responsive">
|
||||
<table class="table table-bordered" width="100%" cellspacing="0">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>#</th>
|
||||
<th>Titre</th>
|
||||
<th>Ligne</th>
|
||||
<th>Date début</th>
|
||||
<th>Date fin</th>
|
||||
<th>Détail</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
{% for position in positions %}
|
||||
<tr>
|
||||
<td>{{ position.getId() }}</td>
|
||||
<td>{{ position.getAnnonce().getTitre() }}</td>
|
||||
<td>{{ position.getLigneRange() }}</td>
|
||||
<td>{{ position.getDateAdd()|date("d/m/Y")}}</td>
|
||||
<td>{{ position.getDateFin()|date("d/m/Y") }}</td>
|
||||
<td>
|
||||
<a href="{{ path('backend_admin_position_detail', {'idPosition': position.getId() }) }}" title="Détail" class="btn btn-info btn-action">
|
||||
<i class="fa-solid fa-magnifying-glass"></i>
|
||||
</a>
|
||||
</td>
|
||||
</tr>
|
||||
{% endfor %}
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
{% endblock %}
|
||||
183
templates/backend_admin/service/add.html.twig
Normal file
183
templates/backend_admin/service/add.html.twig
Normal file
@@ -0,0 +1,183 @@
|
||||
{% extends 'base_backend_admin.html.twig' %}
|
||||
|
||||
{% block title %} Service {% endblock %}
|
||||
|
||||
{% block content %}
|
||||
<!-- Page Heading -->
|
||||
<div class="d-sm-flex align-items-center justify-content-between mb-4">
|
||||
<h1 class="h3 mb-0 text-gray-800">Service</h1>
|
||||
<ol class="breadcrumb float-sm-right">
|
||||
<li class="breadcrumb-item">Service</li>
|
||||
<li class="breadcrumb-item">Ajouter</li>
|
||||
</ol>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
<!-- Begin Page Content -->
|
||||
<div class="container-fluid">
|
||||
|
||||
{% include 'backend_admin/basic/notice.html.twig' %}
|
||||
|
||||
<!-- DataTales Example -->
|
||||
<div class="card shadow mb-4">
|
||||
|
||||
<div class="card-header py-3">
|
||||
<h6 class="m-0 font-weight-bold text-info">Ajouter un service</h6>
|
||||
</div>
|
||||
<div class="card-body">
|
||||
|
||||
{{ form_start(form) }}
|
||||
<div class="row g-3">
|
||||
|
||||
{{ form_errors(form) }}
|
||||
{{ form_row(form._token) }}
|
||||
|
||||
<div class="col-8 my-3">
|
||||
{{ form_label(form.titre, 'Titre *', {'attr': {'class': 'form-label'}}) }}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text"><i class="fa-solid fa-book"></i></span>
|
||||
{{ form_widget(form.titre, {'attr': {'class': 'form-control'}}) }}
|
||||
<div class="invalid-feedback">
|
||||
{{ form_errors(form.titre) }}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-4 my-3">
|
||||
{{ form_label(form.categorie, 'Catégorie', {'attr': {'class': 'form-label'}}) }}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text"><i class="fa-solid fa-bars"></i></span>
|
||||
{{ form_widget(form.categorie, {'attr': {'class': 'form-control'}}) }}
|
||||
<div class="invalid-feedback">
|
||||
{{ form_errors(form.categorie) }}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="col-6 my-3">
|
||||
{{ form_label(form.adress, 'Adresse', {'attr': {'class': 'form-label'}}) }}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text"><i class="fa-solid fa-percent"></i></span>
|
||||
{{ form_widget(form.adress, {'attr': {'class': 'form-control'}}) }}
|
||||
<div class="invalid-feedback">
|
||||
{{ form_errors(form.adress) }}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-5 offset-1">
|
||||
{{ form_label(form.marque, 'Marque', {'attr': {'class': 'form-label'}}) }}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text"><i class="fa-solid fa-money-bill-wave"></i></span>
|
||||
{{ form_widget(form.marque, {'attr': {'class': 'form-control'}}) }}
|
||||
<div class="invalid-feedback">
|
||||
{{ form_errors(form.marque) }}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-5 my-3">
|
||||
{{ form_label(form.prix_promo, 'Prix promo *', {'attr': {'class': 'form-label'}}) }}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text"><i class="fa-solid fa-money-bill-wave"></i></span>
|
||||
{{ form_widget(form.prix_promo, {'attr': {'class': 'form-control'}}) }}
|
||||
<div class="invalid-feedback">
|
||||
{{ form_errors(form.prix_promo) }}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-5 offset-1">
|
||||
{{ form_label(form.prix_marche, 'Prix du marché', {'attr': {'class': 'form-label'}}) }}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text"><i class="fa-solid fa-money-bill-1"></i></span>
|
||||
{{ form_widget(form.prix_marche, {'attr': {'class': 'form-control'}}) }}
|
||||
<div class="invalid-feedback">
|
||||
{{ form_errors(form.prix_marche) }}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row my-3">
|
||||
|
||||
<div class="col-8">
|
||||
{{ form_label(form.societe, 'Société *', {'attr': {'class': 'form-label'}}) }}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text"><i class="fa-solid fa-building"></i></span>
|
||||
{{ form_widget(form.societe, {'attr': {'class': 'form-control select-filter select2bs4 select-filter-speaker'}}) }}
|
||||
<div class="invalid-feedback">
|
||||
{{ form_errors(form.societe) }}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-3">
|
||||
{{ form_label(form.duree, 'Durée du service (en minute)', {'attr': {'class': 'form-label'}}) }}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text"><i class="fa-solid fa-percent"></i></span>
|
||||
{{ form_widget(form.duree, {'attr': {'class': 'form-control'}}) }}
|
||||
<div class="invalid-feedback">
|
||||
{{ form_errors(form.duree) }}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="row my-3">
|
||||
|
||||
<div class="col-3">
|
||||
{{ form_label(form.limit_type, 'Limitation par', {'attr': {'class': 'form-check-input'}}) }}
|
||||
{% for key,child in form.limit_type %}
|
||||
<div class="form-check">
|
||||
{% if key == 0 %}
|
||||
{{ form_widget(child, {'attr': {'class': 'form-check-input', 'checked':''}} ) }}
|
||||
{% else %}
|
||||
{{ form_widget(child, {'attr': {'class': 'form-check-input'}} ) }}
|
||||
{% endif %}
|
||||
{{ form_label(child) }}
|
||||
</div>
|
||||
{% endfor %}
|
||||
</div>
|
||||
|
||||
<div class="col-3" id="service-limita-date">
|
||||
{{ form_label(form.limit_date, 'Limitation Par Date', {'attr': {'class': 'form-label'}}) }}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text"><i class="fa-solid fa-percent"></i></span>
|
||||
{{ form_widget(form.limit_date, {'attr': {'class': 'form-control'}}) }}
|
||||
<div class="invalid-feedback">
|
||||
{{ form_errors(form.limit_date) }}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="col-12 my-3">
|
||||
{{ form_label(form.description, 'Déscription *', {'attr': {'class': 'form-label'}}) }}
|
||||
{{ form_widget(form.description, {'attr': {'class': 'form-control'}}) }}
|
||||
<div class="invalid-feedback">{{ form_errors(form.description) }}</div>
|
||||
</div>
|
||||
|
||||
<hr class="my-4">
|
||||
{{ form_widget(form.save, {'label': "Enregister", 'attr': {'class': 'w-90 btn btn-primary btn-lg'}}) }}
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
{{ form_end(form) }}
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
{% endblock %}
|
||||
|
||||
{% block javascripts %}
|
||||
{{ parent() }}
|
||||
{{ encore_entry_script_tags('app_backend_article_service') }}
|
||||
{% endblock %}
|
||||
177
templates/backend_admin/service/detail.html.twig
Normal file
177
templates/backend_admin/service/detail.html.twig
Normal file
@@ -0,0 +1,177 @@
|
||||
{% extends 'base_backend_admin.html.twig' %}
|
||||
|
||||
{% block title %} Service {% endblock %}
|
||||
|
||||
{% block content %}
|
||||
<!-- Page Heading -->
|
||||
<div class="d-sm-flex align-items-center justify-content-between mb-4">
|
||||
<h1 class="h3 mb-0 text-gray-800">Service</h1>
|
||||
<ol class="breadcrumb float-sm-right">
|
||||
<li class="breadcrumb-item">Service</li>
|
||||
<li class="breadcrumb-item">Détail</li>
|
||||
</ol>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<!-- Begin Page Content -->
|
||||
<div class="container-fluid">
|
||||
|
||||
{% include 'backend_admin/basic/notice.html.twig' %}
|
||||
|
||||
<!-- DataTales Example -->
|
||||
<div class="card shadow mb-4">
|
||||
|
||||
<div class="card-header py-3">
|
||||
<h6 class="m-0 font-weight-bold text-info">Détail service</h6>
|
||||
</div>
|
||||
<div class="card-body">
|
||||
|
||||
{{ form_start(form) }}
|
||||
<div class="row g-3">
|
||||
|
||||
{{ form_errors(form) }}
|
||||
{{ form_row(form._token) }}
|
||||
|
||||
<div class="col-8 my-3">
|
||||
{{ form_label(form.titre, 'Titre *', {'attr': {'class': 'form-label'}}) }}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text"><i class="fa-solid fa-book"></i></span>
|
||||
{{ form_widget(form.titre, {'attr': {'class': 'form-control'}}) }}
|
||||
<div class="invalid-feedback">
|
||||
{{ form_errors(form.titre) }}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-4 my-3">
|
||||
{{ form_label(form.categorie, 'Catégorie', {'attr': {'class': 'form-label'}}) }}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text"><i class="fa-solid fa-bars"></i></span>
|
||||
{{ form_widget(form.categorie, {'attr': {'class': 'form-control'}}) }}
|
||||
<div class="invalid-feedback">
|
||||
{{ form_errors(form.categorie) }}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="col-6 my-3">
|
||||
{{ form_label(form.adress, 'Adresse', {'attr': {'class': 'form-label'}}) }}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text"><i class="fa-solid fa-percent"></i></span>
|
||||
{{ form_widget(form.adress, {'attr': {'class': 'form-control'}}) }}
|
||||
<div class="invalid-feedback">
|
||||
{{ form_errors(form.adress) }}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-5 offset-1">
|
||||
{{ form_label(form.marque, 'Marque', {'attr': {'class': 'form-label'}}) }}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text"><i class="fa-solid fa-money-bill-wave"></i></span>
|
||||
{{ form_widget(form.marque, {'attr': {'class': 'form-control'}}) }}
|
||||
<div class="invalid-feedback">
|
||||
{{ form_errors(form.marque) }}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-5 my-3">
|
||||
{{ form_label(form.prix_promo, 'Prix promo *', {'attr': {'class': 'form-label'}}) }}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text"><i class="fa-solid fa-money-bill-wave"></i></span>
|
||||
{{ form_widget(form.prix_promo, {'attr': {'class': 'form-control'}}) }}
|
||||
<div class="invalid-feedback">
|
||||
{{ form_errors(form.prix_promo) }}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-5 offset-1">
|
||||
{{ form_label(form.prix_marche, 'Prix du marché', {'attr': {'class': 'form-label'}}) }}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text"><i class="fa-solid fa-money-bill-1"></i></span>
|
||||
{{ form_widget(form.prix_marche, {'attr': {'class': 'form-control'}}) }}
|
||||
<div class="invalid-feedback">
|
||||
{{ form_errors(form.prix_marche) }}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row my-3">
|
||||
|
||||
<div class="col-8">
|
||||
{{ form_label(form.societe, 'Société *', {'attr': {'class': 'form-label'}}) }}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text"><i class="fa-solid fa-building"></i></span>
|
||||
{{ form_widget(form.societe, {'attr': {'class': 'form-control select-filter select2bs4 select-filter-speaker'}}) }}
|
||||
<div class="invalid-feedback">
|
||||
{{ form_errors(form.societe) }}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-3">
|
||||
{{ form_label(form.duree, 'Durée du service (en minute)', {'attr': {'class': 'form-label'}}) }}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text"><i class="fa-solid fa-percent"></i></span>
|
||||
{{ form_widget(form.duree, {'attr': {'class': 'form-control'}}) }}
|
||||
<div class="invalid-feedback">
|
||||
{{ form_errors(form.duree) }}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="row my-3">
|
||||
|
||||
<div class="col-3">
|
||||
{{ form_label(form.limit_type, 'Limitation par', {'attr': {'class': 'form-check-input'}}) }}
|
||||
{% for key,child in form.limit_type %}
|
||||
<div class="form-check">
|
||||
{{ form_widget(child, {'attr': {'class': 'form-check-input'}} ) }}
|
||||
{{ form_label(child) }}
|
||||
</div>
|
||||
{% endfor %}
|
||||
</div>
|
||||
|
||||
<div class="col-3" id="service-limita-date" {% if service.getLimitType()== 1 %} style="display:none" {% endif %}>
|
||||
{{ form_label(form.limit_date, 'Limitation Par Date', {'attr': {'class': 'form-label'}}) }}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text"><i class="fa-solid fa-percent"></i></span>
|
||||
{{ form_widget(form.limit_date, {'attr': {'class': 'form-control'}}) }}
|
||||
<div class="invalid-feedback">
|
||||
{{ form_errors(form.limit_date) }}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="col-12 my-3">
|
||||
{{ form_label(form.description, 'Déscription *', {'attr': {'class': 'form-label'}}) }}
|
||||
{{ form_widget(form.description, {'attr': {'class': 'form-control'}}) }}
|
||||
<div class="invalid-feedback">{{ form_errors(form.description) }}</div>
|
||||
</div>
|
||||
|
||||
<hr class="my-4">
|
||||
{{ form_widget(form.save, {'label': "Enregister", 'attr': {'class': 'w-90 btn btn-primary btn-lg'}}) }}
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
{{ form_end(form) }}
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
{% endblock %}
|
||||
|
||||
{% block javascripts %}
|
||||
{{ parent() }}
|
||||
{{ encore_entry_script_tags('app_backend_article_service') }}
|
||||
{% endblock %}
|
||||
131
templates/backend_admin/service/index.html.twig
Normal file
131
templates/backend_admin/service/index.html.twig
Normal file
@@ -0,0 +1,131 @@
|
||||
{% extends 'base_backend_admin.html.twig' %}
|
||||
|
||||
{% block title %} Service {% endblock %}
|
||||
|
||||
{% block content %}
|
||||
<!-- Page Heading -->
|
||||
<div class="d-sm-flex align-items-center justify-content-between mb-4">
|
||||
<h1 class="h3 mb-0 text-gray-800">Service</h1>
|
||||
<ol class="breadcrumb float-sm-right">
|
||||
<li class="breadcrumb-item">Service</li>
|
||||
</ol>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
<!-- Begin Page Content -->
|
||||
<div class="container-fluid">
|
||||
|
||||
{% include 'backend_admin/basic/notice.html.twig' %}
|
||||
|
||||
<!-- DataTales Example -->
|
||||
<div class="card shadow mb-4">
|
||||
|
||||
<div class="card-header py-3">
|
||||
<h6 class="m-0 font-weight-bold text-info">Liste des services</h6>
|
||||
</div>
|
||||
<div class="card-body">
|
||||
<div class="table-responsive">
|
||||
<table class="table table-bordered" width="100%" cellspacing="0" id="tablesService">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>#</th>
|
||||
<th>Titre</th>
|
||||
<th>Société</th>
|
||||
<th>Date Ajoute</th>
|
||||
<th>Limitation</th>
|
||||
<th>Activer</th>
|
||||
<th>Détail</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
{% for service in services %}
|
||||
<tr>
|
||||
<td>{{ service.getId() }}</td>
|
||||
<td>{{ service.getTitre()}}</td>
|
||||
<td>{{ service.getSociete().getNom() }}</td>
|
||||
<td>{{ service.getDateAdd()|date("d/m/Y")}}</td>
|
||||
<td>
|
||||
{% if service.getLimitType() == 0 %}
|
||||
Par Date: <b>{{ service.getLimitDate()|date("d/m/Y") }}</b>
|
||||
{% elseif service.getLimitType() == 1 %}
|
||||
Par RDV:
|
||||
<button title="Gestion des Rendez-vous" class="btn btn-dark" onclick="ServiceRdvAjaxShow({{ service.id }});return false;">
|
||||
<i class="fa-solid fa-calendar-check fa-sm"></i>
|
||||
</button>
|
||||
{% endif %}
|
||||
</td>
|
||||
<td>
|
||||
{% if service.isActive() %}
|
||||
<i class="fa-solid fa-circle-check fa-xl" style="color: #26a269;"></i>
|
||||
{% else %}
|
||||
<i class="fa-solid fa-circle-xmark fa-xl" style="color: #e01b24;"></i>
|
||||
{% endif %}
|
||||
</td>
|
||||
<td>
|
||||
<a href="{{ path('backend_admin_service_update', {'id': service.getId() }) }}" title="Détail" class="btn btn-info btn-action">
|
||||
<i class="fa-solid fa-magnifying-glass"></i>
|
||||
</a>
|
||||
|
||||
<a href="{{ path('backend_admin_service_uploder',{id:service.id}) }}" title="gestion des images" class="btn btn-warning"><i class="fa-regular fa-image"></i></a>
|
||||
|
||||
{% if service.isActive() %}
|
||||
<a href="{{ path('backend_admin_service_activation',{id:service.id, 'activation': 'false'}) }}" title="déactiver" class="btn btn-danger"><i class="fa-solid fa-x"></i></a>
|
||||
{% elseif (service.isActive() == false) and (service.getImageDefault() != '') %}
|
||||
<a href="{{ path('backend_admin_service_activation',{id:service.id, 'activation': 'true'}) }}" title="activer" class="btn btn-success"><i class="fa-solid fa-check"></i></a>
|
||||
{% endif %}
|
||||
|
||||
{% if service.getLimitType() == 1 %}
|
||||
<a href="{{ path('backend_admin_service_rdv_add', {id:service.id} )}}" title="Ajouter RDV" class="btn btn-dark">
|
||||
<i class="fa-regular fa-square-plus"></i>
|
||||
</a>
|
||||
{% endif %}
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
{% endfor %}
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- Modal -->
|
||||
<div class="modal fade" id="exampleModal" tabindex="-1"aria-hidden="true">
|
||||
<div class="modal-dialog modal-lg">
|
||||
<div class="modal-content">
|
||||
<div class="modal-header">
|
||||
<h5 class="modal-title">Liste des Rendez-vous</h5>
|
||||
<button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button>
|
||||
</div>
|
||||
<div class="modal-body">
|
||||
<table class="table table-bordered" width="100%" cellspacing="0">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>#</th>
|
||||
<th>Date Début</th>
|
||||
<th>Date Fin</th>
|
||||
<th>Heur Début</th>
|
||||
<th>Heur Fin</th>
|
||||
<th>Durée Entre RDV</th>
|
||||
<th>Exclure</th>
|
||||
<th>Détail</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody id="data-rdv"></tbody>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
{% endblock %}
|
||||
|
||||
{% block javascripts %}
|
||||
<script>
|
||||
var pathServiceRdvAjaxShow = "{{ path('backend_admin_service_rdv_ajax_show') }}";
|
||||
</script>
|
||||
{{ parent() }}
|
||||
{{ encore_entry_script_tags('app_backend_article_service') }}
|
||||
{% endblock %}
|
||||
258
templates/backend_admin/service/uploder.htm.twig
Normal file
258
templates/backend_admin/service/uploder.htm.twig
Normal file
@@ -0,0 +1,258 @@
|
||||
{% extends 'base_backend_admin.html.twig' %}
|
||||
|
||||
{% block title %} Service {% endblock %}
|
||||
|
||||
|
||||
{% block stylesheets %}
|
||||
{{ parent() }}
|
||||
{{ encore_entry_link_tags('app_backend_article_service') }}
|
||||
{% endblock %}
|
||||
|
||||
|
||||
{% block content %}
|
||||
<!-- Page Heading -->
|
||||
<div class="d-sm-flex align-items-center justify-content-between mb-4">
|
||||
<h1 class="h3 mb-0 text-gray-800">Service Images</h1>
|
||||
<ol class="breadcrumb float-sm-right">
|
||||
<li class="breadcrumb-item active">Service</li>
|
||||
<li class="breadcrumb-item active">Images</li>
|
||||
</ol>
|
||||
</div>
|
||||
|
||||
<div class="row">
|
||||
|
||||
{% include 'backend_admin/basic/notice.html.twig' %}
|
||||
|
||||
<div class="card shadow mb-4" >
|
||||
<!-- Card Header - Dropdown -->
|
||||
<div class="card-header py-3 d-flex flex-row align-items-center justify-content-between">
|
||||
<h6 class="m-0 font-weight-bold text-primary">Chargement d'image par default</h6>
|
||||
</div>
|
||||
<!-- Card Body -->
|
||||
<div class="card-body">
|
||||
<table class="table" border="1" align="center">
|
||||
<tbody>
|
||||
<tr>
|
||||
<td width="15%">
|
||||
<div class="holder">
|
||||
{% if service.getImageDefault() %}
|
||||
<img id="img-preview-default" class="img-thumbnail" src="{{ asset('uploads/images/services/' ~ service.getImageDefault()) }}" alt="pic"/>
|
||||
{% else %}
|
||||
<img id="img-preview-default" class="img-thumbnail" src="{{ asset('images/backend/img/h.png') }}" alt="pic"/>
|
||||
{% endif %}
|
||||
</div>
|
||||
</td>
|
||||
<td width="75%">
|
||||
<div class="progress" >
|
||||
<div class="progress-bar" id="progress-bar-default" role="progressbar" style="width: 0%" aria-valuenow="60" aria-valuemin="0" aria-valuemax="100">0%</div>
|
||||
</div>
|
||||
<fieldset class="upload_dropZone text-center mb-3 p-4">
|
||||
<p>
|
||||
Image pour la page <b>par default</b>
|
||||
</p>
|
||||
<p class="small my-3">
|
||||
Largeur d'image doit d'être <b>438px</b> | Hauteur d'image doit d'être <b>240px</b><br>
|
||||
</p>
|
||||
<input id="upload_image_default" class="position-absolute invisible" type="file" accept="image/jpeg, image/png, image/gif, image/jpg" multiple="false"/>
|
||||
<label class="btn btn-upload mb-3" for="upload_image_default">
|
||||
<i class="fa-regular fa-image"></i> choisir l'image
|
||||
</label>
|
||||
</fieldset>
|
||||
</td>
|
||||
<td width="10%">
|
||||
<br>
|
||||
<button type="button" class="btn btn-primary" id="submit-image-default">
|
||||
<i class="fa-solid fa-cloud-arrow-up fa-lg"></i> Importer
|
||||
</button>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="card shadow mb-4" >
|
||||
<!-- Card Header - Dropdown -->
|
||||
<div class="card-header py-3 d-flex flex-row align-items-center justify-content-between">
|
||||
<h6 class="m-0 font-weight-bold text-primary">Chargement des images d'service pour la page détail</h6>
|
||||
</div>
|
||||
<!-- Card Body -->
|
||||
<div class="card-body">
|
||||
<table class="table" border="1" align="center">
|
||||
<tbody>
|
||||
<tr>
|
||||
<td width="15%">
|
||||
<div class="holder">
|
||||
{% if service.getImageDetail1() %}
|
||||
<img id="img-preview-detail1" class="img-thumbnail" src="{{ asset('uploads/images/services/' ~ service.getImageDetail1()) }}" alt="pic"/>
|
||||
{% else %}
|
||||
<img id="img-preview-detail1" class="img-thumbnail" src="{{ asset('images/backend/img/h.png') }}" alt="pic"/>
|
||||
{% endif %}
|
||||
</div>
|
||||
</td>
|
||||
<td width="75%">
|
||||
<div class="progress" >
|
||||
<div class="progress-bar" id="progress-bar-detail1" role="progressbar" style="width: 0%" aria-valuenow="60" aria-valuemin="0" aria-valuemax="100">0%</div>
|
||||
</div>
|
||||
<fieldset class="upload_dropZone text-center mb-3 p-4">
|
||||
<p>
|
||||
Image 1 pour la page <b>détail</b>
|
||||
</p>
|
||||
<p class="small my-3">
|
||||
Taille maximum de l'image 2Mo<br>
|
||||
</p>
|
||||
<input id="upload_image_detail1" class="position-absolute invisible" type="file" accept="image/jpeg, image/png, image/gif, image/jpg" />
|
||||
<label class="btn btn-upload mb-3" for="upload_image_detail1">
|
||||
<i class="fa-regular fa-image"></i> choisir l'image
|
||||
</label>
|
||||
</fieldset>
|
||||
</td>
|
||||
<td width="10%">
|
||||
<br>
|
||||
<button type="button" class="btn btn-primary" id="submit-image-detail1">
|
||||
<i class="fa-solid fa-cloud-arrow-up fa-lg"></i> Importer
|
||||
</button>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td width="15%">
|
||||
<div class="holder">
|
||||
{% if service.getImageDetail2() %}
|
||||
<img id="img-preview-detail2" class="img-thumbnail" src="{{ asset('uploads/images/services/' ~ service.getImageDetail2()) }}" alt="pic"/>
|
||||
{% else %}
|
||||
<img id="img-preview-detail2" class="img-thumbnail" src="{{ asset('images/backend/img/h.png') }}" alt="pic"/>
|
||||
{% endif %}
|
||||
</div>
|
||||
</td>
|
||||
<td width="75%">
|
||||
<div class="progress" >
|
||||
<div class="progress-bar" id="progress-bar-detail2" role="progressbar" style="width: 0%" aria-valuenow="60" aria-valuemin="0" aria-valuemax="100">0%</div>
|
||||
</div>
|
||||
<fieldset class="upload_dropZone text-center mb-3 p-4">
|
||||
<p>
|
||||
Image 2 pour la page <b>détail</b>
|
||||
</p>
|
||||
<p class="small my-3">
|
||||
Taille maximum de l'image 2Mo<br>
|
||||
</p>
|
||||
<input id="upload_image_detail2" class="position-absolute invisible" type="file" accept="image/jpeg, image/png, image/gif, image/jpg" />
|
||||
<label class="btn btn-upload mb-3" for="upload_image_detail2">
|
||||
<i class="fa-regular fa-image"></i> choisir l'image
|
||||
</label>
|
||||
</fieldset>
|
||||
</td>
|
||||
<td width="10%">
|
||||
<br>
|
||||
<button type="button" class="btn btn-primary" id="submit-image-detail2">
|
||||
<i class="fa-solid fa-cloud-arrow-up fa-lg"></i> Importer
|
||||
</button>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td width="15%">
|
||||
<div class="holder">
|
||||
{% if service.getImageDetail3() %}
|
||||
<img id="img-preview-detail3" class="img-thumbnail" src="{{ asset('uploads/images/services/' ~ service.getImageDetail3()) }}" alt="pic"/>
|
||||
{% else %}
|
||||
<img id="img-preview-detail3" class="img-thumbnail" src="{{ asset('images/backend/img/h.png') }}" alt="pic"/>
|
||||
{% endif %}
|
||||
</div>
|
||||
</td>
|
||||
<td width="75%">
|
||||
<div class="progress" >
|
||||
<div class="progress-bar" id="progress-bar-detail3" role="progressbar" style="width: 0%" aria-valuenow="60" aria-valuemin="0" aria-valuemax="100">0%</div>
|
||||
</div>
|
||||
<fieldset class="upload_dropZone text-center mb-3 p-4">
|
||||
<p>
|
||||
Image 3 pour la page <b>détail</b>
|
||||
</p>
|
||||
<p class="small my-3">
|
||||
Taille maximum de l'image 2Mo<br>
|
||||
</p>
|
||||
<input id="upload_image_detail3" class="position-absolute invisible" type="file" accept="image/jpeg, image/png, image/gif, image/jpg" />
|
||||
<label class="btn btn-upload mb-3" for="upload_image_detail3">
|
||||
<i class="fa-regular fa-image"></i> choisir l'image
|
||||
</label>
|
||||
</fieldset>
|
||||
</td>
|
||||
<td width="10%">
|
||||
<br>
|
||||
<button type="button" class="btn btn-primary" id="submit-image-detail3">
|
||||
<i class="fa-solid fa-cloud-arrow-up fa-lg"></i> Importer
|
||||
</button>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td width="15%">
|
||||
<div class="holder">
|
||||
{% if service.getImageDetail4() %}
|
||||
<img id="img-preview-detail4" class="img-thumbnail" src="{{ asset('uploads/images/services/' ~ service.getImageDetail4()) }}" alt="pic"/>
|
||||
{% else %}
|
||||
<img id="img-preview-detail4" class="img-thumbnail" src="{{ asset('images/backend/img/h.png') }}" alt="pic"/>
|
||||
{% endif %}
|
||||
</div>
|
||||
</td>
|
||||
<td width="75%">
|
||||
<div class="progress" >
|
||||
<div class="progress-bar" id="progress-bar-detail4" role="progressbar" style="width: 0%" aria-valuenow="60" aria-valuemin="0" aria-valuemax="100">0%</div>
|
||||
</div>
|
||||
<fieldset class="upload_dropZone text-center mb-3 p-4">
|
||||
<p>
|
||||
Image 4 pour la page <b>détail</b>
|
||||
</p>
|
||||
<p class="small my-3">
|
||||
Taille maximum de l'image 2Mo<br>
|
||||
</p>
|
||||
<input id="upload_image_detail4" class="position-absolute invisible" type="file" accept="image/jpeg, image/png, image/gif, image/jpg" />
|
||||
<label class="btn btn-upload mb-3" for="upload_image_detail4">
|
||||
<i class="fa-regular fa-image"></i> choisir l'image
|
||||
</label>
|
||||
</fieldset>
|
||||
</td>
|
||||
<td width="10%">
|
||||
<br>
|
||||
<button type="button" class="btn btn-primary" id="submit-image-detail4">
|
||||
<i class="fa-solid fa-cloud-arrow-up fa-lg"></i> Importer
|
||||
</button>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<!-- Modal -->
|
||||
<div class="modal fade" id="cropperModal" tabindex="-1" aria-labelledby="exampleModalLabel" aria-hidden="true">
|
||||
<div class="modal-dialog">
|
||||
<div class="modal-content">
|
||||
<div class="modal-header">
|
||||
<h5 class="modal-title" id="exampleModalLabel">Modal title</h5>
|
||||
<button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button>
|
||||
</div>
|
||||
<div class="modal-body">
|
||||
<img id="imgPreviewCropper" src="" data-type-img=""/>
|
||||
</div>
|
||||
<div class="modal-footer">
|
||||
<button id="resize-image" type="button" class="btn btn-primary">Redimensionner</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
{% endblock %}
|
||||
|
||||
{% block javascripts %}
|
||||
<script>
|
||||
|
||||
var pathServiceUplodImageAdd = "{{ path('backend_admin_service_uploder_add', {id: service.id }) }}";
|
||||
var pathServiceUplodImageDelete = "{{ path('backend_admin_service_uploder_delete') }}";
|
||||
|
||||
</script>
|
||||
|
||||
{{ parent() }}
|
||||
{{ encore_entry_script_tags('app_backend_article_service') }}
|
||||
{% endblock %}
|
||||
84
templates/backend_admin/service_rdv/add.html.twig
Normal file
84
templates/backend_admin/service_rdv/add.html.twig
Normal file
@@ -0,0 +1,84 @@
|
||||
{% extends 'base_backend_admin.html.twig' %}
|
||||
|
||||
{% block title %} Service Rendez-vous{% endblock %}
|
||||
|
||||
{% block content %}
|
||||
<!-- Page Heading -->
|
||||
<div class="d-sm-flex align-items-center justify-content-between mb-4">
|
||||
<h1 class="h3 mb-0 text-gray-800">Ajouter des Rendez-vous</h1>
|
||||
<ol class="breadcrumb float-sm-right">
|
||||
<li class="breadcrumb-item">Service</li>
|
||||
<li class="breadcrumb-item">Rendez-vous</li>
|
||||
<li class="breadcrumb-item">Ajouter</li>
|
||||
</ol>
|
||||
</div>
|
||||
|
||||
|
||||
<!-- Begin Page Content -->
|
||||
<div class="container-fluid">
|
||||
|
||||
{% include 'backend_admin/basic/notice.html.twig' %}
|
||||
|
||||
<!-- DataTales Example -->
|
||||
<div class="card shadow mb-4">
|
||||
|
||||
<div class="card-header py-3">
|
||||
<h6 class="m-0 font-weight-bold text-info">Ajouter des Rendez-vous</h6>
|
||||
</div>
|
||||
<div class="card-body">
|
||||
|
||||
<form action="{{ path('backend_admin_service_rdv_add', {id:service.id}) }}" method="POST">
|
||||
|
||||
<div class="row">
|
||||
<div class="col-3">Durée du service: <b>{{ service.getDuree() }}mm</b></div>
|
||||
<div class="col-2" align="center">Exclure les jours:</div>
|
||||
<div class="col-1"><input type="checkbox" name="Mon"> Lundi</div>
|
||||
<div class="col-1"><input type="checkbox" name="Tue"> Mardi</div>
|
||||
<div class="col-1"><input type="checkbox" name="Wed"> Mercredi</div>
|
||||
<div class="col-1"><input type="checkbox" name="Thu"> Jeudi</div>
|
||||
<div class="col-1"><input type="checkbox" name="Fri"> Vendredi</div>
|
||||
<div class="col-1"><input type="checkbox" name="Sat"> Samedi</div>
|
||||
<div class="col-1"><input type="checkbox" name="Sun"> Dimanche</div>
|
||||
</div>
|
||||
<div class="row my-5">
|
||||
<div class="col-3">Date début: <input type="date" class="form-control" name="date-debut"></div>
|
||||
<div class="col-3 offset-1">Date Fin: <input type="date" class="form-control" name="date-fin"></div>
|
||||
</div>
|
||||
|
||||
<div class="row my-5">
|
||||
<div class="col-3">Heur début: <input type="time" class="form-control" value="09:00" name="time-debut"></div>
|
||||
<div class="col-3 offset-1">Heur Fin: <input type="time" class="form-control" value="17:00" name="time-fin"></div>
|
||||
</div>
|
||||
|
||||
<div class="row my-5">
|
||||
<div class="col-3">
|
||||
Durée Entre les Rendez-Vous:
|
||||
<div class="input-group">
|
||||
<input type="text" class="form-control" name="duree-entre">
|
||||
<span class="input-group-text">minute</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row my-5">
|
||||
<div class="col-3 offset-5">
|
||||
<button type="submit" class="btn btn-primary btn-icon-split btn-lg">
|
||||
<span class="icon text-white-50">
|
||||
<i class="fa-solid fa-magnifying-glass"></i>
|
||||
</span>
|
||||
<span class="text">Afficher</span>
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</form>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
{% endblock %}
|
||||
|
||||
{% block javascripts %}
|
||||
{{ parent() }}
|
||||
{{ encore_entry_script_tags('app_backend_article_service') }}
|
||||
{% endblock %}
|
||||
102
templates/backend_admin/service_rdv/show_new_rdv.html.twig
Normal file
102
templates/backend_admin/service_rdv/show_new_rdv.html.twig
Normal file
@@ -0,0 +1,102 @@
|
||||
{% extends 'base_backend_admin.html.twig' %}
|
||||
|
||||
{% block title %} Paramètre Rendez-Vous{% endblock %}
|
||||
|
||||
{% block content %}
|
||||
<!-- Page Heading -->
|
||||
<div class="d-sm-flex align-items-center justify-content-between mb-4">
|
||||
<h1 class="h3 mb-0 text-gray-800">Paramètre Rendez-Vous</h1>
|
||||
<ol class="breadcrumb float-sm-right">
|
||||
<li class="breadcrumb-item">Service</li>
|
||||
<li class="breadcrumb-item">Rendez-Vous</li>
|
||||
<li class="breadcrumb-item">Paramètre</li>
|
||||
</ol>
|
||||
</div>
|
||||
|
||||
<!-- Begin Page Content -->
|
||||
<div class="container-fluid">
|
||||
|
||||
{% include 'backend_admin/basic/notice.html.twig' %}
|
||||
|
||||
<div class="card shadow mb-4">
|
||||
|
||||
<div class="card-header py-3">
|
||||
<h6 class="m-0 font-weight-bold text-info">Paramètre Rendez-vous</h6>
|
||||
</div>
|
||||
<div class="card-body">
|
||||
|
||||
<div class="row my-3">
|
||||
<div class="col-3">Date début: <b>{{ startDate }}</b></div>
|
||||
<div class="col-3">Date Fin: <b>{{ endDate }}</b></div>
|
||||
<div class="col-3">Durée du service: <b>{{ duree }}minute</b></div>
|
||||
</div>
|
||||
|
||||
<div class="row my-3">
|
||||
<div class="col-3">Heur début: <b>{{ startTime }}</b></div>
|
||||
<div class="col-3">Heur Fin: <b>{{ endTime }}</b></div>
|
||||
<div class="col-3">Durée Entre les Rendez-Vous: <b>{{ between }}minute</b></div>
|
||||
</div>
|
||||
|
||||
<div class="row">
|
||||
<div class="col-9">
|
||||
Exclure les jours:
|
||||
{% for exclude in excludeDay %}
|
||||
{% if exclude == 'Sun'%} <b>dimanche,</b> {% endif %}
|
||||
{% if exclude == 'Mon'%} <b>lundi,</b> {% endif %}
|
||||
{% if exclude == 'Tue'%} <b>mardi,</b> {% endif %}
|
||||
{% if exclude == 'Wed'%} <b>mercredi,</b> {% endif %}
|
||||
{% if exclude == 'Thu'%} <b>jeudi,</b> {% endif %}
|
||||
{% if exclude == 'Fri'%} <b>verdredi,</b> {% endif %}
|
||||
{% if exclude == 'Sat'%} <b>samedi,</b> {% endif %}
|
||||
{% endfor %}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="card shadow mb-4">
|
||||
<div class="card-header py-3">
|
||||
<h6 class="m-0 font-weight-bold text-info">Liste des Rendez-vous</h6>
|
||||
</div>
|
||||
<div class="card-body">
|
||||
|
||||
<table class="table">
|
||||
{% for key,rendezVous in arrRendezVous %}
|
||||
<tr>
|
||||
<td> <b>{{ key }}</b> </td>
|
||||
<td>
|
||||
<div class="row">
|
||||
{% for val in rendezVous %}
|
||||
<div class="col-2">{{ val['debut'] }} - {{ val['fin'] }}</div>
|
||||
{% endfor %}
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
{% endfor %}
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
{% if save == 'true' %}
|
||||
<div align="center">
|
||||
<a href="{{ path('backend_admin_service_rdv_save', {'id':id,
|
||||
'startDate':startDate,
|
||||
'endDate':endDate,
|
||||
'startTime':startTime,
|
||||
'endTime':endTime,
|
||||
'between':between,
|
||||
'excludeDay':excludeDay} ) }}" class="d-none d-sm-inline-block btn btn-primary btn-lg">
|
||||
<i class="fa-solid fa-floppy-disk"></i>
|
||||
Enregister
|
||||
</a>
|
||||
</div>
|
||||
{% endif %}
|
||||
</div>
|
||||
{% endblock %}
|
||||
|
||||
{% block javascripts %}
|
||||
{{ parent() }}
|
||||
{{ encore_entry_script_tags('app_backend_article_service') }}
|
||||
{% endblock %}
|
||||
137
templates/backend_admin/societe/add_update.html.twig
Normal file
137
templates/backend_admin/societe/add_update.html.twig
Normal file
@@ -0,0 +1,137 @@
|
||||
{% extends 'base_backend_admin.html.twig' %}
|
||||
|
||||
{% block title %} Société {% endblock %}
|
||||
|
||||
{% block content %}
|
||||
|
||||
{% set titlePage = 'Ajouter' %}
|
||||
{% if app.request.attributes.get('_route') == 'backend_societe_update' %}
|
||||
{% set titlePage = 'Modifier' %}
|
||||
{% endif %}
|
||||
|
||||
|
||||
<!-- Page Heading -->
|
||||
<div class="d-sm-flex align-items-center justify-content-between mb-4">
|
||||
<h1 class="h3 mb-0 text-gray-800">Sociétés</h1>
|
||||
<ol class="breadcrumb float-sm-right">
|
||||
<li class="breadcrumb-item">Société</li>
|
||||
<li class="breadcrumb-item">{{ titlePage }}</li>
|
||||
</ol>
|
||||
</div>
|
||||
|
||||
|
||||
<!-- Begin Page Content -->
|
||||
<div class="container-fluid">
|
||||
|
||||
{% include 'backend_admin/basic/notice.html.twig' %}
|
||||
|
||||
<!-- DataTales Example -->
|
||||
<div class="card shadow mb-4">
|
||||
|
||||
<div class="card-header py-3">
|
||||
<h6 class="m-0 font-weight-bold text-primary">{{ titlePage }} une nouvelle société</h6>
|
||||
</div>
|
||||
<div class="card-body">
|
||||
|
||||
|
||||
{{ form_start(form) }}
|
||||
<div class="row g-3">
|
||||
|
||||
{{ form_errors(form) }}
|
||||
{{ form_row(form._token) }}
|
||||
|
||||
<div class="col-6 my-3">
|
||||
{{ form_label(form.nom, 'Nom Société', {'attr': {'class': 'form-label'}}) }}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text"><i class="fa-solid fa-building"></i></span>
|
||||
{{ form_widget(form.nom, {'attr': {'class': 'form-control'}}) }}
|
||||
<div class="invalid-feedback">
|
||||
{{ form_errors(form.nom) }}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-6">
|
||||
{{ form_label(form.immatriculation, 'Immatriculation', {'attr': {'class': 'form-label'}}) }}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text"><i class="fa-solid fa-cash-register"></i></span>
|
||||
{{ form_widget(form.immatriculation, {'attr': {'class': 'form-control'}}) }}
|
||||
<div class="invalid-feedback">
|
||||
{{ form_errors(form.immatriculation) }}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-12 my-3">
|
||||
{{ form_label(form.email, 'Email', {'attr': {'class': 'form-label'}}) }}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text"><i class="fa-solid fa-at"></i></span>
|
||||
{{ form_widget(form.email, {'attr': {'class': 'form-control'}}) }}
|
||||
<div class="invalid-feedback">
|
||||
Your username is required.
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="col-12 my-3">
|
||||
{{ form_label(form.telephone, 'Téléphone', {'attr': {'class': 'form-label'}}) }}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text"><i class="fa-solid fa-phone-volume"></i></span>
|
||||
{{ form_widget(form.telephone, {'attr': {'class': 'form-control'}}) }}
|
||||
<div class="invalid-feedback">
|
||||
{{ form_errors(form.telephone) }}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-12 my-3">
|
||||
{{ form_label(form.fax, 'Fax', {'attr': {'class': 'form-label'}}) }}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text"><i class="fa-solid fa-fax"></i></span>
|
||||
{{ form_widget(form.fax, {'attr': {'class': 'form-control'}}) }}
|
||||
<div class="invalid-feedback">
|
||||
{{ form_errors(form.fax) }}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="col-12 my-3">
|
||||
{{ form_label(form.adresse, 'Adresse', {'attr': {'class': 'form-label'}}) }}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text"><i class="fa-solid fa-location-dot"></i></span>
|
||||
{{ form_widget(form.adresse, {'attr': {'class': 'form-control'}}) }}
|
||||
<div class="invalid-feedback">
|
||||
{{ form_errors(form.adresse) }}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-12 my-3">
|
||||
{{ form_label(form.photo, 'Logo', {'attr': {'class': 'form-label'}}) }}
|
||||
{{ form_widget(form.photo, {'attr': {'class': 'form-control'}}) }}
|
||||
<div class="invalid-feedback">{{ form_errors(form.photo) }}</div>
|
||||
</div>
|
||||
|
||||
<div class="col-12 my-3">
|
||||
{{ form_label(form.description, 'Déscription', {'attr': {'class': 'form-label'}}) }}
|
||||
{{ form_widget(form.description, {'attr': {'class': 'form-control'}}) }}
|
||||
<div class="invalid-feedback">{{ form_errors(form.description) }}</div>
|
||||
</div>
|
||||
|
||||
<hr class="my-4">
|
||||
{{ form_widget(form.save, {'label': "Enregister", 'attr': {'class': 'w-90 btn btn-primary btn-lg'}}) }}
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
{{ form_end(form) }}
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
{% endblock %}
|
||||
88
templates/backend_admin/societe/index.html.twig
Normal file
88
templates/backend_admin/societe/index.html.twig
Normal file
@@ -0,0 +1,88 @@
|
||||
{% extends 'base_backend_admin.html.twig' %}
|
||||
|
||||
{% block title %} Sociéte {% endblock %}
|
||||
|
||||
{% block content %}
|
||||
<!-- Page Heading -->
|
||||
<div class="d-sm-flex align-items-center justify-content-between mb-4">
|
||||
<h1 class="h3 mb-0 text-gray-800">Sociétés</h1>
|
||||
<ol class="breadcrumb float-sm-right">
|
||||
<li class="breadcrumb-item">Société</li>
|
||||
</ol>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
<!-- Begin Page Content -->
|
||||
<div class="container-fluid">
|
||||
|
||||
{% include 'backend_admin/basic/notice.html.twig' %}
|
||||
|
||||
<a href="{{ path('backend_admin_societe_add') }}" class="btn btn-info btn-icon-split mb-4">
|
||||
<span class="icon text-white"><i class="fa-regular fa-square-plus"></i></span>
|
||||
<span class="text text-white">Ajouter une nouvelle Société</span>
|
||||
</a>
|
||||
|
||||
<!-- DataTales Example -->
|
||||
<div class="card shadow mb-4">
|
||||
|
||||
<div class="card-header py-3">
|
||||
<h6 class="m-0 font-weight-bold text-primary">Liste des sociétés</h6>
|
||||
</div>
|
||||
<div class="card-body">
|
||||
<div class="table-responsive">
|
||||
<table class="table table-bordered" id="dataTablesSociete" width="100%" cellspacing="0">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>#</th>
|
||||
<th>Nom</th>
|
||||
<th>Adresse</th>
|
||||
<th>Email</th>
|
||||
<th>Téléphone</th>
|
||||
<th>Partenaires</th>
|
||||
<th>Modifier</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tfoot>
|
||||
<tr>
|
||||
<th>#</th>
|
||||
<th>Nom</th>
|
||||
<th>Adresse</th>
|
||||
<th>Email</th>
|
||||
<th>Téléphone</th>
|
||||
<th>Partenaires</th>
|
||||
<th>Modifier</th>
|
||||
</tr>
|
||||
</tfoot>
|
||||
<tbody>
|
||||
{% for societe in societes %}
|
||||
<tr>
|
||||
<td>{{ societe.id }}</td>
|
||||
<td>{{ societe.nom }}</td>
|
||||
<td>{{ societe.adresse }}</td>
|
||||
<td>{{ societe.email }}</td>
|
||||
<td>{{ societe.telephone }}</td>
|
||||
<td align="center">{{ societe.getPartenaires()|length }}</td>
|
||||
<td align="center">
|
||||
<a href="{{ path('backend_admin_societe_update',{id:societe.id}) }}" title="modifier" class="btn btn-info btn-action"><i class="fa fa-edit"></i></a>
|
||||
{% if societe.isActive() %}
|
||||
<a href="{{ path('backend_admin_societe_activated', {id:societe.id, 'active':0}) }}" title="déactiver cette sociéte" class="btn btn-danger"><i class="fa-solid fa-circle-xmark"></i></a>
|
||||
{% else %}
|
||||
<a href="{{ path('backend_admin_societe_activated', {id:societe.id, 'active':1}) }}" title="activer cette sociéte" class="btn btn-success"><i class="fa-solid fa-circle-check"></i></a>
|
||||
{% endif %}
|
||||
</td>
|
||||
</tr>
|
||||
{% endfor %}
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
{% endblock %}
|
||||
|
||||
{% block javascripts %}
|
||||
{{ parent() }}
|
||||
{{ encore_entry_script_tags('app_backend_other') }}
|
||||
{% endblock %}
|
||||
86
templates/backend_admin/user/deleted.html.twig
Normal file
86
templates/backend_admin/user/deleted.html.twig
Normal file
@@ -0,0 +1,86 @@
|
||||
{% extends 'base_backend_admin.html.twig' %}
|
||||
|
||||
{% block title %} Utilisateur {% endblock %}
|
||||
|
||||
{% block content %}
|
||||
<!-- Page Heading -->
|
||||
<div class="d-sm-flex align-items-center justify-content-between mb-4">
|
||||
<h1 class="h3 mb-0 text-gray-800">Utilisateurs</h1>
|
||||
<ol class="breadcrumb float-sm-right">
|
||||
<li class="breadcrumb-item">Utilisateurs</li>
|
||||
<li class="breadcrumb-item active"> Inactifs</li>
|
||||
</ol>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
<!-- Begin Page Content -->
|
||||
<div class="container-fluid">
|
||||
|
||||
<!-- DataTales Example -->
|
||||
<div class="card shadow mb-4">
|
||||
<div class="card-header py-3">
|
||||
<h6 class="m-0 font-weight-bold text-primary">Liste des utilisateurs inactifs</h6>
|
||||
</div>
|
||||
<div class="card-body">
|
||||
<div class="table-responsive">
|
||||
<table class="table table-bordered" id="dataTable" width="100%" cellspacing="0">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>#</th>
|
||||
<th>Prénom</th>
|
||||
<th>Nom</th>
|
||||
<th>Sexe</th>
|
||||
<th>Email</th>
|
||||
<th>Téléphone</th>
|
||||
<th>Naissance</th>
|
||||
<th>Inscription</th>
|
||||
<th>Action</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tfoot>
|
||||
<tr>
|
||||
<th>#</th>
|
||||
<th>Prénom</th>
|
||||
<th>Nom</th>
|
||||
<th>Gender</th>
|
||||
<th>Email</th>
|
||||
<th>Téléphone</th>
|
||||
<th>Naissance</th>
|
||||
<th>Inscription</th>
|
||||
<th>Action</th>
|
||||
</tr>
|
||||
</tfoot>
|
||||
<tbody>
|
||||
{% for user in users %}
|
||||
<tr>
|
||||
<td>{{ user.id }}</td>
|
||||
<td>{{ user.firstname }}</td>
|
||||
<td>{{ user.lastname }}</td>
|
||||
<td>
|
||||
{% if user.gender == 0 %}
|
||||
<i class="fa fa-venus" style="color: #e75fa6"></i>
|
||||
{% else %}
|
||||
<i class="fa fa-mars" style="color: #318CE7"></i>
|
||||
{% endif %}
|
||||
</td>
|
||||
<td>{{ user.email }}</td>
|
||||
<td>{{ user.phoneNumber }}</td>
|
||||
<td>{{ user.birthdate|date('d/m/Y') }}</td>
|
||||
<td>{{ user.dateAdd|date('d/m/Y H:i:s') }}</td>
|
||||
|
||||
<td>
|
||||
<a href="/admin/user/154714" title="Editer" class="btn btn-info btn-action"><i class="fa fa-edit"></i></a>
|
||||
</td>
|
||||
</tr>
|
||||
{% endfor %}
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
{% endblock %}
|
||||
91
templates/backend_admin/user/index.html.twig
Normal file
91
templates/backend_admin/user/index.html.twig
Normal file
@@ -0,0 +1,91 @@
|
||||
{% extends 'base_backend_admin.html.twig' %}
|
||||
|
||||
{% block title %} Utilisateur {% endblock %}
|
||||
|
||||
{% block content %}
|
||||
<!-- Page Heading -->
|
||||
<div class="d-sm-flex align-items-center justify-content-between mb-4">
|
||||
<h1 class="h3 mb-0 text-gray-800">Utilisateurs</h1>
|
||||
<ol class="breadcrumb float-sm-right">
|
||||
<li class="breadcrumb-item">Utilisateurs</li>
|
||||
<li class="breadcrumb-item active">Lister</li>
|
||||
</ol>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
<!-- Begin Page Content -->
|
||||
<div class="container-fluid">
|
||||
|
||||
{% include 'backend_admin/basic/notice.html.twig' %}
|
||||
|
||||
<!-- DataTales Example -->
|
||||
<div class="card shadow mb-4">
|
||||
<div class="card-header py-3">
|
||||
<h6 class="m-0 font-weight-bold text-primary">Liste des Utilisateurs</h6>
|
||||
</div>
|
||||
<div class="card-body">
|
||||
<div class="table-responsive">
|
||||
<table class="table table-bordered" id="dataTable" width="100%" cellspacing="0">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>#</th>
|
||||
<th>Prénom</th>
|
||||
<th>Nom</th>
|
||||
<th>Sexe</th>
|
||||
<th>Email</th>
|
||||
<th>Téléphone</th>
|
||||
<th>Naissance</th>
|
||||
<th>Inscription</th>
|
||||
<th>Action</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tfoot>
|
||||
<tr>
|
||||
<th>#</th>
|
||||
<th>Prénom</th>
|
||||
<th>Nom</th>
|
||||
<th>Gender</th>
|
||||
<th>Email</th>
|
||||
<th>Téléphone</th>
|
||||
<th>Naissance</th>
|
||||
<th>Inscription</th>
|
||||
<th>Action</th>
|
||||
</tr>
|
||||
</tfoot>
|
||||
<tbody>
|
||||
{% for user in users %}
|
||||
<tr>
|
||||
<td>{{ user.id }}</td>
|
||||
<td>{{ user.firstname }}</td>
|
||||
<td>{{ user.lastname }}</td>
|
||||
<td>
|
||||
{% if user.gender == 0 %}
|
||||
<i class="fa fa-venus" style="color: #e75fa6"></i>
|
||||
{% else %}
|
||||
<i class="fa fa-mars" style="color: #318CE7"></i>
|
||||
{% endif %}
|
||||
</td>
|
||||
<td>{{ user.email }}</td>
|
||||
<td>{{ user.phoneNumber }}</td>
|
||||
<td>{{ user.birthdate|date('d/m/Y') }}</td>
|
||||
<td>{{ user.dateAdd|date('d/m/Y H:i:s') }}</td>
|
||||
|
||||
<td>
|
||||
<a href="/admin/user/154714" title="Editer" class="btn btn-info btn-action"><i class="fa fa-edit"></i></a>
|
||||
<a href="/?_switch_user=mfrancoisechapeau@gmail.com" title="Se connecter en tant que" class="btn btn-warning"><i class="fa-solid fa-user-secret"></i></a>
|
||||
|
||||
<a href="{{ path('backend_admin_user_update_delete', {id:user.id, delete:true}) }}" title="déactiver ce utilisateur" class="btn btn-danger"><i class="fa fa-times"></i></a>
|
||||
</td>
|
||||
</tr>
|
||||
{% endfor %}
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
{% endblock %}
|
||||
Reference in New Issue
Block a user