mirror of
https://gitlab.com/Chill-Projet/chill-bundles.git
synced 2025-06-07 18:44:08 +00:00
location admin: add admin crud for location type
This commit is contained in:
parent
e06a98e70a
commit
92843677f9
@ -0,0 +1,10 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
namespace Chill\MainBundle\Controller;
|
||||||
|
|
||||||
|
use Chill\MainBundle\CRUD\Controller\CRUDController;
|
||||||
|
|
||||||
|
|
||||||
|
class LocationTypeController extends CRUDController
|
||||||
|
{
|
||||||
|
}
|
@ -20,6 +20,7 @@
|
|||||||
namespace Chill\MainBundle\DependencyInjection;
|
namespace Chill\MainBundle\DependencyInjection;
|
||||||
|
|
||||||
use Chill\MainBundle\Controller\AddressApiController;
|
use Chill\MainBundle\Controller\AddressApiController;
|
||||||
|
use Chill\MainBundle\Controller\LocationTypeController;
|
||||||
use Chill\MainBundle\Controller\UserController;
|
use Chill\MainBundle\Controller\UserController;
|
||||||
use Chill\MainBundle\Doctrine\DQL\STContains;
|
use Chill\MainBundle\Doctrine\DQL\STContains;
|
||||||
use Chill\MainBundle\Doctrine\DQL\StrictWordSimilarityOPS;
|
use Chill\MainBundle\Doctrine\DQL\StrictWordSimilarityOPS;
|
||||||
@ -44,6 +45,8 @@ use Chill\MainBundle\Doctrine\DQL\Replace;
|
|||||||
use Chill\MainBundle\Doctrine\ORM\Hydration\FlatHierarchyEntityHydrator;
|
use Chill\MainBundle\Doctrine\ORM\Hydration\FlatHierarchyEntityHydrator;
|
||||||
use Chill\MainBundle\Doctrine\Type\NativeDateIntervalType;
|
use Chill\MainBundle\Doctrine\Type\NativeDateIntervalType;
|
||||||
use Chill\MainBundle\Doctrine\Type\PointType;
|
use Chill\MainBundle\Doctrine\Type\PointType;
|
||||||
|
use Chill\MainBundle\Entity\LocationType;
|
||||||
|
use Chill\MainBundle\Form\LocationTypeType;
|
||||||
use Symfony\Component\HttpFoundation\Request;
|
use Symfony\Component\HttpFoundation\Request;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -315,7 +318,29 @@ class ChillMainExtension extends Extension implements PrependExtensionInterface,
|
|||||||
'template' => '@ChillMain/User/edit.html.twig'
|
'template' => '@ChillMain/User/edit.html.twig'
|
||||||
]
|
]
|
||||||
]
|
]
|
||||||
]
|
],
|
||||||
|
[
|
||||||
|
'class' => LocationType::class,
|
||||||
|
'name' => 'main_location_type',
|
||||||
|
'base_path' => '/admin/main/location-type',
|
||||||
|
'base_role' => 'ROLE_ADMIN',
|
||||||
|
'form_class' => LocationTypeType::class,
|
||||||
|
'controller' => LocationTypeController::class,
|
||||||
|
'actions' => [
|
||||||
|
'index' => [
|
||||||
|
'role' => 'ROLE_ADMIN',
|
||||||
|
'template' => '@ChillMain/LocationType/index.html.twig',
|
||||||
|
],
|
||||||
|
'new' => [
|
||||||
|
'role' => 'ROLE_ADMIN',
|
||||||
|
'template' => '@ChillMain/LocationType/new.html.twig',
|
||||||
|
],
|
||||||
|
'edit' => [
|
||||||
|
'role' => 'ROLE_ADMIN',
|
||||||
|
'template' => '@ChillMain/LocationType/edit.html.twig',
|
||||||
|
]
|
||||||
|
]
|
||||||
|
],
|
||||||
],
|
],
|
||||||
'apis' => [
|
'apis' => [
|
||||||
[
|
[
|
||||||
|
46
src/Bundle/ChillMainBundle/Form/LocationTypeType.php
Normal file
46
src/Bundle/ChillMainBundle/Form/LocationTypeType.php
Normal file
@ -0,0 +1,46 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
namespace Chill\MainBundle\Form;
|
||||||
|
|
||||||
|
use Chill\MainBundle\Entity\LocationType;
|
||||||
|
use Chill\MainBundle\Form\Type\TranslatableStringFormType;
|
||||||
|
use Symfony\Component\Form\AbstractType;
|
||||||
|
use Symfony\Component\Form\Extension\Core\Type\ChoiceType;
|
||||||
|
use Symfony\Component\Form\FormBuilderInterface;
|
||||||
|
|
||||||
|
final class LocationTypeType extends AbstractType
|
||||||
|
{
|
||||||
|
public function buildForm(FormBuilderInterface $builder, array $options)
|
||||||
|
{
|
||||||
|
$builder->add('title', TranslatableStringFormType::class,
|
||||||
|
[
|
||||||
|
'label' => 'Name',
|
||||||
|
])
|
||||||
|
->add('availableForUsers', ChoiceType::class,
|
||||||
|
[
|
||||||
|
'choices' => [
|
||||||
|
'Yes' => true,
|
||||||
|
'No' => false
|
||||||
|
],
|
||||||
|
'expanded' => true
|
||||||
|
])
|
||||||
|
->add('addressRequired', ChoiceType::class,
|
||||||
|
[
|
||||||
|
'choices' => [
|
||||||
|
'optional' => LocationType::STATUS_OPTIONAL,
|
||||||
|
'required' => LocationType::STATUS_REQUIRED,
|
||||||
|
'never' => LocationType::STATUS_NEVER,
|
||||||
|
],
|
||||||
|
'expanded' => true
|
||||||
|
])
|
||||||
|
->add('contactData', ChoiceType::class,
|
||||||
|
[
|
||||||
|
'choices' => [
|
||||||
|
'optional' => LocationType::STATUS_OPTIONAL,
|
||||||
|
'required' => LocationType::STATUS_REQUIRED,
|
||||||
|
'never' => LocationType::STATUS_NEVER,
|
||||||
|
],
|
||||||
|
'expanded' => true
|
||||||
|
]);
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,14 @@
|
|||||||
|
{% extends '@ChillMain/Admin/layout.html.twig' %}
|
||||||
|
|
||||||
|
{% block title %}
|
||||||
|
{% include('@ChillMain/CRUD/_edit_title.html.twig') %}
|
||||||
|
{% endblock %}
|
||||||
|
|
||||||
|
{% block admin_content %}
|
||||||
|
{# {% as we are in the admin layout, we override the admin content with the CRUD content %} #}
|
||||||
|
{% embed '@ChillMain/CRUD/_edit_content.html.twig' %}
|
||||||
|
{# we do not have "view" page. We empty the corresponding block #}
|
||||||
|
{% block content_form_actions_view %}{% endblock %}
|
||||||
|
{% block content_form_actions_save_and_show %}{% endblock %}
|
||||||
|
{% endembed %}
|
||||||
|
{% endblock %}
|
@ -0,0 +1,47 @@
|
|||||||
|
{% extends "@ChillAsideActivity/Admin/layout_asideactivity.html.twig" %}
|
||||||
|
|
||||||
|
{% block admin_content %}
|
||||||
|
<h1>{{ 'Location type list'|trans }}</h1>
|
||||||
|
|
||||||
|
<table class="records_list table table-bordered border-dark">
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th>{{ 'Title'|trans }}</th>
|
||||||
|
<th>{{ 'Available for users'|trans }}</th>
|
||||||
|
<th>{{ 'Address required'|trans }}</th>
|
||||||
|
<th>{{ 'Contact data'|trans }}</th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody>
|
||||||
|
{% for entity in entities %}
|
||||||
|
<tr>
|
||||||
|
<td>{{ entity.title | localize_translatable_string }}</td>
|
||||||
|
<td style="text-align:center;">
|
||||||
|
{%- if entity.availableForUsers -%}
|
||||||
|
<i class="fa fa-check-square-o"></i>
|
||||||
|
{%- else -%}
|
||||||
|
<i class="fa fa-square-o"></i>
|
||||||
|
{%- endif -%}
|
||||||
|
</td>
|
||||||
|
<td>{{ entity.addressRequired|trans }}</td>
|
||||||
|
<td>{{ entity.contactData|trans }}</td>
|
||||||
|
<td>
|
||||||
|
<ul class="record_actions">
|
||||||
|
<li>
|
||||||
|
<a href="{{ path('chill_crud_main_location_type_edit', { 'id': entity.id }) }}" class="btn btn-edit" title="{{ 'edit'|trans }}"></a>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
{% endfor %}
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
|
||||||
|
<ul class="record_actions">
|
||||||
|
<li>
|
||||||
|
<a href="{{ path('chill_crud_main_location_type_new') }}" class="btn btn-create">
|
||||||
|
{{ 'Create a new location type'|trans }}
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
{% endblock %}
|
@ -0,0 +1,11 @@
|
|||||||
|
{% extends '@ChillMain/Admin/layout.html.twig' %}
|
||||||
|
|
||||||
|
{% block title %}
|
||||||
|
{% include('@ChillMain/CRUD/_new_title.html.twig') %}
|
||||||
|
{% endblock %}
|
||||||
|
|
||||||
|
{% block admin_content %}
|
||||||
|
{% embed '@ChillMain/CRUD/_new_content.html.twig' %}
|
||||||
|
{% block content_form_actions_save_and_show %}{% endblock %}
|
||||||
|
{% endembed %}
|
||||||
|
{% endblock %}
|
@ -180,6 +180,16 @@ Circle edit: Modification du cercle
|
|||||||
Circle creation: Création d'un cercle
|
Circle creation: Création d'un cercle
|
||||||
Create a new circle: Créer un nouveau cercle
|
Create a new circle: Créer un nouveau cercle
|
||||||
|
|
||||||
|
#admin section for location
|
||||||
|
Location type list: Liste des types de localisation
|
||||||
|
Create a new location type: Créer un nouveau type de lieu
|
||||||
|
Available for users: Disponible aux utilisateurs
|
||||||
|
Address required: Adresse requise?
|
||||||
|
Contact data: Données de contact?
|
||||||
|
optional: optionnel
|
||||||
|
required: requis
|
||||||
|
never: jamais
|
||||||
|
|
||||||
# circles / scopes
|
# circles / scopes
|
||||||
Choose the circle: Choisir le cercle
|
Choose the circle: Choisir le cercle
|
||||||
|
|
||||||
@ -294,6 +304,9 @@ crud:
|
|||||||
add_new: Créer
|
add_new: Créer
|
||||||
title_new: Nouveau métier
|
title_new: Nouveau métier
|
||||||
title_edit: Modifier un métier
|
title_edit: Modifier un métier
|
||||||
|
main_location_type:
|
||||||
|
title_new: Nouveau type de localisation
|
||||||
|
title_edit: Modifier un type de localisation
|
||||||
|
|
||||||
No entities: Aucun élément
|
No entities: Aucun élément
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user