mirror of
https://gitlab.com/Chill-Projet/chill-bundles.git
synced 2025-06-13 13:54:23 +00:00
SocialIssues became editable via admin
This commit is contained in:
parent
a948d9e2da
commit
d8ee42b0a5
@ -0,0 +1,33 @@
|
|||||||
|
<?php
|
||||||
|
/*
|
||||||
|
* Chill is a software for social workers
|
||||||
|
*
|
||||||
|
* Copyright (C) 2021, Champs Libres Cooperative SCRLFS, <http://www.champs-libres.coop>
|
||||||
|
*
|
||||||
|
* This program is free software: you can redistribute it and/or modify
|
||||||
|
* it under the terms of the GNU Affero General Public License as
|
||||||
|
* published by the Free Software Foundation, either version 3 of the
|
||||||
|
* License, or (at your option) any later version.
|
||||||
|
*
|
||||||
|
* This program is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
* GNU Affero General Public License for more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU Affero General Public License
|
||||||
|
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
*/
|
||||||
|
|
||||||
|
namespace Chill\PersonBundle\Controller\SocialWork;
|
||||||
|
|
||||||
|
use Chill\MainBundle\CRUD\Controller\CRUDController;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Class AdminSocialIssueController
|
||||||
|
* Controller for social issues
|
||||||
|
*
|
||||||
|
* @package Chill\PersonBundle\Controller
|
||||||
|
*/
|
||||||
|
class AdminSocialIssueController extends CRUDController
|
||||||
|
{
|
||||||
|
}
|
@ -345,6 +345,27 @@ class ChillPersonExtension extends Extension implements PrependExtensionInterfac
|
|||||||
]
|
]
|
||||||
]
|
]
|
||||||
],
|
],
|
||||||
|
[
|
||||||
|
'class' => \Chill\PersonBundle\Entity\SocialWork\SocialIssue::class,
|
||||||
|
'name' => 'social_issue',
|
||||||
|
'base_path' => '/admin/social-issue',
|
||||||
|
'form_class' => \Chill\PersonBundle\Form\SocialWork\SocialIssueType::class,
|
||||||
|
'controller' => \Chill\PersonBundle\Controller\SocialWork\AdminSocialIssueController::class,
|
||||||
|
'actions' => [
|
||||||
|
'index' => [
|
||||||
|
'role' => 'ROLE_ADMIN',
|
||||||
|
'template' => '@ChillPerson/SocialWork/SocialIssue/index.html.twig',
|
||||||
|
],
|
||||||
|
'new' => [
|
||||||
|
'role' => 'ROLE_ADMIN',
|
||||||
|
'template' => '@ChillPerson/SocialWork/SocialIssue/new.html.twig',
|
||||||
|
],
|
||||||
|
'edit' => [
|
||||||
|
'role' => 'ROLE_ADMIN',
|
||||||
|
'template' => '@ChillPerson/SocialWork/SocialIssue/edit.html.twig',
|
||||||
|
]
|
||||||
|
]
|
||||||
|
]
|
||||||
],
|
],
|
||||||
'apis' => [
|
'apis' => [
|
||||||
[
|
[
|
||||||
@ -355,7 +376,6 @@ class ChillPersonExtension extends Extension implements PrependExtensionInterfac
|
|||||||
'actions' => [
|
'actions' => [
|
||||||
'_entity' => [
|
'_entity' => [
|
||||||
'roles' => [
|
'roles' => [
|
||||||
<<<<<<< HEAD
|
|
||||||
Request::METHOD_GET => \Chill\PersonBundle\Security\Authorization\AccompanyingPeriodVoter::SEE,
|
Request::METHOD_GET => \Chill\PersonBundle\Security\Authorization\AccompanyingPeriodVoter::SEE,
|
||||||
Request::METHOD_PATCH => \Chill\PersonBundle\Security\Authorization\AccompanyingPeriodVoter::SEE,
|
Request::METHOD_PATCH => \Chill\PersonBundle\Security\Authorization\AccompanyingPeriodVoter::SEE,
|
||||||
Request::METHOD_PUT => \Chill\PersonBundle\Security\Authorization\AccompanyingPeriodVoter::SEE,
|
Request::METHOD_PUT => \Chill\PersonBundle\Security\Authorization\AccompanyingPeriodVoter::SEE,
|
||||||
@ -364,9 +384,6 @@ class ChillPersonExtension extends Extension implements PrependExtensionInterfac
|
|||||||
Request::METHOD_GET => true,
|
Request::METHOD_GET => true,
|
||||||
Request::METHOD_PUT => true,
|
Request::METHOD_PUT => true,
|
||||||
Request::METHOD_PATCH => true,
|
Request::METHOD_PATCH => true,
|
||||||
=======
|
|
||||||
Request::METHOD_GET => \Chill\PersonBundle\Security\Authorization\AccompanyingPeriodVoter::SEE
|
|
||||||
>>>>>>> Removing spaces at the end of line
|
|
||||||
]
|
]
|
||||||
],
|
],
|
||||||
'participation' => [
|
'participation' => [
|
||||||
@ -380,7 +397,6 @@ class ChillPersonExtension extends Extension implements PrependExtensionInterfac
|
|||||||
Request::METHOD_POST => \Chill\PersonBundle\Security\Authorization\AccompanyingPeriodVoter::SEE,
|
Request::METHOD_POST => \Chill\PersonBundle\Security\Authorization\AccompanyingPeriodVoter::SEE,
|
||||||
Request::METHOD_DELETE=> \Chill\PersonBundle\Security\Authorization\AccompanyingPeriodVoter::SEE
|
Request::METHOD_DELETE=> \Chill\PersonBundle\Security\Authorization\AccompanyingPeriodVoter::SEE
|
||||||
]
|
]
|
||||||
<<<<<<< HEAD
|
|
||||||
],
|
],
|
||||||
'resource' => [
|
'resource' => [
|
||||||
'methods' => [
|
'methods' => [
|
||||||
@ -467,10 +483,6 @@ class ChillPersonExtension extends Extension implements PrependExtensionInterfac
|
|||||||
Request::METHOD_POST => \Chill\PersonBundle\Security\Authorization\AccompanyingPeriodVoter::SEE,
|
Request::METHOD_POST => \Chill\PersonBundle\Security\Authorization\AccompanyingPeriodVoter::SEE,
|
||||||
]
|
]
|
||||||
],
|
],
|
||||||
=======
|
|
||||||
]
|
|
||||||
|
|
||||||
>>>>>>> Removing spaces at the end of line
|
|
||||||
]
|
]
|
||||||
],
|
],
|
||||||
[
|
[
|
||||||
|
@ -0,0 +1,83 @@
|
|||||||
|
<?php
|
||||||
|
/*
|
||||||
|
*
|
||||||
|
* Copyright (C) 2014-2021, Champs Libres Cooperative SCRLFS, <http://www.champs-libres.coop>
|
||||||
|
*
|
||||||
|
* This program is free software: you can redistribute it and/or modify
|
||||||
|
* it under the terms of the GNU Affero General Public License as
|
||||||
|
* published by the Free Software Foundation, either version 3 of the
|
||||||
|
* License, or (at your option) any later version.
|
||||||
|
*
|
||||||
|
* This program is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
* GNU Affero General Public License for more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU Affero General Public License
|
||||||
|
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
*/
|
||||||
|
namespace Chill\PersonBundle\Form\SocialWork;
|
||||||
|
|
||||||
|
use Symfony\Component\Form\AbstractType;
|
||||||
|
use Symfony\Component\Form\FormBuilderInterface;
|
||||||
|
use Symfony\Component\OptionsResolver\OptionsResolver;
|
||||||
|
use Chill\MainBundle\Form\Type\TranslatableStringFormType;
|
||||||
|
use Symfony\Component\Form\Extension\Core\Type\DateType;
|
||||||
|
use Chill\MainBundle\Templating\TranslatableStringHelper;
|
||||||
|
use Symfony\Bridge\Doctrine\Form\Type\EntityType;
|
||||||
|
use Chill\PersonBundle\Entity\SocialWork\SocialIssue;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Class SocialIssueType
|
||||||
|
*
|
||||||
|
* @package Chill\PersonBundle\Form
|
||||||
|
*/
|
||||||
|
class SocialIssueType extends AbstractType
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
* @var TranslatableStringHelper
|
||||||
|
*/
|
||||||
|
protected $translatableStringHelper;
|
||||||
|
|
||||||
|
public function __construct(TranslatableStringHelper $translatableStringHelper) {
|
||||||
|
$this->translatableStringHelper = $translatableStringHelper;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param FormBuilderInterface $builder
|
||||||
|
* @param array $options
|
||||||
|
*/
|
||||||
|
public function buildForm(FormBuilderInterface $builder, array $options)
|
||||||
|
{
|
||||||
|
$builder
|
||||||
|
->add('title', TranslatableStringFormType::class, [
|
||||||
|
'label' => 'Nom'
|
||||||
|
])
|
||||||
|
|
||||||
|
->add('parent', EntityType::class, [
|
||||||
|
'class' => SocialIssue::class,
|
||||||
|
'required' => false,
|
||||||
|
'choice_label' => function (SocialIssue $issue) {
|
||||||
|
return $this->translatableStringHelper->localize($issue->getTitle());
|
||||||
|
}
|
||||||
|
])
|
||||||
|
|
||||||
|
->add('desactivationDate', DateType::class, array(
|
||||||
|
'attr' => array('class' => 'datepicker'),
|
||||||
|
'widget'=> 'single_text',
|
||||||
|
'format' => 'dd-MM-yyyy',
|
||||||
|
'required' => false,
|
||||||
|
));
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param OptionsResolver $resolver
|
||||||
|
*/
|
||||||
|
public function configureOptions(OptionsResolver $resolver)
|
||||||
|
{
|
||||||
|
$resolver
|
||||||
|
->setDefault('class', SocialIssue::class)
|
||||||
|
;
|
||||||
|
}
|
||||||
|
}
|
@ -18,11 +18,13 @@
|
|||||||
|
|
||||||
namespace Chill\PersonBundle\Repository;
|
namespace Chill\PersonBundle\Repository;
|
||||||
|
|
||||||
|
|
||||||
use Chill\PersonBundle\Entity\Person;
|
use Chill\PersonBundle\Entity\Person;
|
||||||
use Doctrine\ORM\EntityManagerInterface;
|
use Doctrine\ORM\EntityManagerInterface;
|
||||||
use Doctrine\ORM\EntityRepository;
|
use Doctrine\ORM\EntityRepository;
|
||||||
use Doctrine\ORM\QueryBuilder;
|
use Doctrine\ORM\QueryBuilder;
|
||||||
|
|
||||||
|
|
||||||
final class PersonRepository
|
final class PersonRepository
|
||||||
{
|
{
|
||||||
private EntityRepository $repository;
|
private EntityRepository $repository;
|
||||||
@ -113,11 +115,20 @@ final class PersonRepository
|
|||||||
$qb->setParameter('phonenumber', '%'.$phonenumber.'%');
|
$qb->setParameter('phonenumber', '%'.$phonenumber.'%');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param $phonenumber
|
||||||
|
* @return string
|
||||||
|
*/
|
||||||
protected function parsePhoneNumber(string $phonenumber): string
|
protected function parsePhoneNumber(string $phonenumber): string
|
||||||
{
|
{
|
||||||
return \str_replace(' ', '', $phonenumber);
|
return \str_replace(' ', '', $phonenumber);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param QueryBuilder $qb
|
||||||
|
* @param array $centers
|
||||||
|
*/
|
||||||
protected function addByCenters(QueryBuilder $qb, array $centers): void
|
protected function addByCenters(QueryBuilder $qb, array $centers): void
|
||||||
{
|
{
|
||||||
if (count($centers) > 0) {
|
if (count($centers) > 0) {
|
||||||
|
@ -0,0 +1,12 @@
|
|||||||
|
{% extends '@ChillPerson/Admin/layout.html.twig' %}
|
||||||
|
|
||||||
|
{% block title %}
|
||||||
|
{% include('@ChillMain/CRUD/_edit_title.html.twig') %}
|
||||||
|
{% endblock %}
|
||||||
|
|
||||||
|
{% block layout_wvm_content %}
|
||||||
|
{% embed '@ChillMain/CRUD/_edit_content.html.twig' %}
|
||||||
|
{% block content_form_actions_view %}{% endblock %}
|
||||||
|
{% block content_form_actions_save_and_show %}{% endblock %}
|
||||||
|
{% endembed %}
|
||||||
|
{% endblock %}
|
@ -0,0 +1,27 @@
|
|||||||
|
{% extends '@ChillPerson/Admin/layout.html.twig' %}
|
||||||
|
|
||||||
|
{% block layout_wvm_content %}
|
||||||
|
{% embed '@ChillMain/CRUD/_index.html.twig' %}
|
||||||
|
{% block table_entities_thead_tr %}
|
||||||
|
<th>{{ 'Id'|trans }}</th>
|
||||||
|
<th>{{ 'Title'|trans }}</th>
|
||||||
|
<th> </th>
|
||||||
|
{% endblock %}
|
||||||
|
|
||||||
|
{% block table_entities_tbody %}
|
||||||
|
{% for entity in entities %}
|
||||||
|
<tr>
|
||||||
|
<td>{{ entity.id }}</td>
|
||||||
|
<td>{{ entity.title|localize_translatable_string }}</td>
|
||||||
|
<td>
|
||||||
|
<ul class="record_actions">
|
||||||
|
<li>
|
||||||
|
<a href="{{ chill_path_add_return_path('chill_crud_social_issue_edit', { 'id': entity.id }) }}" class="sc-button bt-edit"></a>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
{% endfor %}
|
||||||
|
{% endblock %}
|
||||||
|
{% endembed %}
|
||||||
|
{% endblock %}
|
@ -0,0 +1,11 @@
|
|||||||
|
{% extends '@ChillPerson/Admin/layout.html.twig' %}
|
||||||
|
|
||||||
|
{% block title %}
|
||||||
|
{% include('@ChillMain/CRUD/_new_title.html.twig') %}
|
||||||
|
{% endblock %}
|
||||||
|
|
||||||
|
{% block layout_wvm_content %}
|
||||||
|
{% embed '@ChillMain/CRUD/_new_content.html.twig' %}
|
||||||
|
{% block content_form_actions_save_and_show %}{% endblock %}
|
||||||
|
{% endembed %}
|
||||||
|
{% endblock %}
|
@ -136,6 +136,16 @@ chill_person_maritalstatus_admin:
|
|||||||
order: 120
|
order: 120
|
||||||
label: 'person_admin.marital status'
|
label: 'person_admin.marital status'
|
||||||
|
|
||||||
|
chill_person_socialissue_admin:
|
||||||
|
path: /{_locale}/admin/social-issue
|
||||||
|
controller: cscrud_social_issue_controller:index
|
||||||
|
options:
|
||||||
|
menus:
|
||||||
|
admin_person:
|
||||||
|
order: 150
|
||||||
|
label: 'person_admin.social_issue'
|
||||||
|
|
||||||
|
|
||||||
chill_person_controllers:
|
chill_person_controllers:
|
||||||
resource: "@ChillPersonBundle/Controller"
|
resource: "@ChillPersonBundle/Controller"
|
||||||
type: annotation
|
type: annotation
|
||||||
|
@ -2,12 +2,9 @@ parameters:
|
|||||||
# cl_chill_person.example.class: Chill\PersonBundle\Example
|
# cl_chill_person.example.class: Chill\PersonBundle\Example
|
||||||
|
|
||||||
services:
|
services:
|
||||||
<<<<<<< HEAD
|
|
||||||
_defaults:
|
_defaults:
|
||||||
autowire: true
|
autowire: true
|
||||||
autoconfigure: true
|
autoconfigure: true
|
||||||
=======
|
|
||||||
>>>>>>> Removing spaces at the end of line
|
|
||||||
|
|
||||||
Chill\PersonBundle\Service\:
|
Chill\PersonBundle\Service\:
|
||||||
resource: '../Service/'
|
resource: '../Service/'
|
||||||
|
@ -32,7 +32,7 @@ services:
|
|||||||
chill.person.form.type.pick_person:
|
chill.person.form.type.pick_person:
|
||||||
class: Chill\PersonBundle\Form\Type\PickPersonType
|
class: Chill\PersonBundle\Form\Type\PickPersonType
|
||||||
arguments:
|
arguments:
|
||||||
- "@chill.person.repository.person"
|
- '@Chill\PersonBundle\Repository\PersonRepository'
|
||||||
- "@security.token_storage"
|
- "@security.token_storage"
|
||||||
- "@chill.main.security.authorization.helper"
|
- "@chill.main.security.authorization.helper"
|
||||||
- '@Symfony\Component\Routing\Generator\UrlGeneratorInterface'
|
- '@Symfony\Component\Routing\Generator\UrlGeneratorInterface'
|
||||||
@ -53,3 +53,9 @@ services:
|
|||||||
$em: '@Doctrine\ORM\EntityManagerInterface'
|
$em: '@Doctrine\ORM\EntityManagerInterface'
|
||||||
tags:
|
tags:
|
||||||
- { name: form.type }
|
- { name: form.type }
|
||||||
|
|
||||||
|
Chill\PersonBundle\Form\SocialWork\SocialIssueType:
|
||||||
|
arguments:
|
||||||
|
$translatableStringHelper: '@chill.main.helper.translatable_string'
|
||||||
|
tags:
|
||||||
|
- { name: form.type }
|
||||||
|
@ -307,6 +307,12 @@ crud:
|
|||||||
add_new: Ajouter un nouveau
|
add_new: Ajouter un nouveau
|
||||||
title_new: Nouvel état civil
|
title_new: Nouvel état civil
|
||||||
title_edit: Modifier l'état civil
|
title_edit: Modifier l'état civil
|
||||||
|
social_issue:
|
||||||
|
index:
|
||||||
|
title: Liste des problématiques sociales
|
||||||
|
add_new: Ajouter une nouvelle problématique sociale
|
||||||
|
title_new: Nouvelle problématique sociale
|
||||||
|
title_edit: Modifier la problématique sociale
|
||||||
|
|
||||||
# specific to closing motive
|
# specific to closing motive
|
||||||
closing_motive:
|
closing_motive:
|
||||||
@ -325,6 +331,7 @@ person_admin:
|
|||||||
marital status list: Liste des états civils
|
marital status list: Liste des états civils
|
||||||
marital status explanation: >
|
marital status explanation: >
|
||||||
Configurer la liste des états civils.
|
Configurer la liste des états civils.
|
||||||
|
social_issue: Problématiques sociales
|
||||||
|
|
||||||
# specific to accompanying period
|
# specific to accompanying period
|
||||||
accompanying_period:
|
accompanying_period:
|
||||||
|
Loading…
x
Reference in New Issue
Block a user