diff --git a/CHANGELOG.md b/CHANGELOG.md index 222f1dffd..7e5c281a0 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -11,9 +11,19 @@ and this project adheres to ## Unreleased +* [person] add a returnPath when clicking on some Person or ThirdParty badge (https://gitlab.com/champs-libres/departement-de-la-vendee/chill/-/issues/427) +* [person] accompanying course work: fix on-the-fly update of thirdParty +* [on-the-fly] close modal only after validation +* [person] correct thirdparty PATCH url + add email and altnames in AddPerson and serializer (https://gitlab.com/champs-libres/departement-de-la-vendee/chill/-/issues/433) * change order for accompanying course work list * [parcours]: Mes parcours brouillon added to user menu (https://gitlab.com/champs-libres/departement-de-la-vendee/chill/-/issues/440) - +* [person]: style fix in parcours listing per person. (https://gitlab.com/champs-libres/departement-de-la-vendee/chill/-/issues/432) +* ajoute un ordre dans les localisation (api) +* [pick entity]: fix translations in modal (https://gitlab.com/champs-libres/departement-de-la-vendee/accent-suivi-developpement/-/issues/419) +* [homepage_widget]: fix translation on emergency badge (https://gitlab.com/champs-libres/departement-de-la-vendee/accent-suivi-developpement/-/issues/440) +* [person]: create person and household added to button dropdown (https://gitlab.com/champs-libres/departement-de-la-vendee/accent-suivi-developpement/-/issues/454) +* display full address in address.text in normalization. Adapt AddressRenderBox +* [address]: Correction residential address 'depuis le' (https://gitlab.com/champs-libres/departement-de-la-vendee/accent-suivi-developpement/-/issues/459) ## Test releases diff --git a/phpstan-deprecations.neon b/phpstan-deprecations.neon index bc372e96b..b41a746b9 100644 --- a/phpstan-deprecations.neon +++ b/phpstan-deprecations.neon @@ -927,15 +927,6 @@ parameters: count: 1 path: src/Bundle/ChillPersonBundle/Controller/AccompanyingCourseController.php - - - message: - """ - #^Parameter \\$trans of method Chill\\\\PersonBundle\\\\Controller\\\\AccompanyingCourseWorkController\\:\\:__construct\\(\\) has typehint with deprecated interface Symfony\\\\Component\\\\Translation\\\\TranslatorInterface\\: - since Symfony 4\\.2, use Symfony\\\\Contracts\\\\Translation\\\\TranslatorInterface instead$# - """ - count: 1 - path: src/Bundle/ChillPersonBundle/Controller/AccompanyingCourseWorkController.php - - message: """ diff --git a/src/Bundle/ChillMainBundle/Controller/LocationApiController.php b/src/Bundle/ChillMainBundle/Controller/LocationApiController.php index 250d92980..2cf5caaf9 100644 --- a/src/Bundle/ChillMainBundle/Controller/LocationApiController.php +++ b/src/Bundle/ChillMainBundle/Controller/LocationApiController.php @@ -12,6 +12,8 @@ declare(strict_types=1); namespace Chill\MainBundle\Controller; use Chill\MainBundle\CRUD\Controller\ApiController; +use Chill\MainBundle\Pagination\PaginatorInterface; +use Doctrine\ORM\QueryBuilder; use Symfony\Component\HttpFoundation\Request; /** @@ -19,7 +21,7 @@ use Symfony\Component\HttpFoundation\Request; */ class LocationApiController extends ApiController { - public function customizeQuery(string $action, Request $request, $query): void + protected function customizeQuery(string $action, Request $request, $query): void { $query ->leftJoin('e.locationType', 'lt') @@ -31,4 +33,14 @@ class LocationApiController extends ApiController ) ); } + + /** + * @param QueryBuilder $query + * @param mixed $_format + */ + protected function orderQuery(string $action, $query, Request $request, PaginatorInterface $paginator, $_format) + { + return $query + ->addOrderBy('e.name', 'ASC'); + } } diff --git a/src/Bundle/ChillMainBundle/Controller/WorkflowController.php b/src/Bundle/ChillMainBundle/Controller/WorkflowController.php index 247cdf552..876e095a8 100644 --- a/src/Bundle/ChillMainBundle/Controller/WorkflowController.php +++ b/src/Bundle/ChillMainBundle/Controller/WorkflowController.php @@ -167,6 +167,7 @@ class WorkflowController extends AbstractController $handler = $this->entityWorkflowManager->getHandler($entityWorkflow); $workflow = $this->registry->get($entityWorkflow, $entityWorkflow->getWorkflowName()); + $errors = []; if (count($workflow->getEnabledTransitions($entityWorkflow)) > 0) { // possible transition @@ -245,7 +246,7 @@ class WorkflowController extends AbstractController 'handler_template_data' => $handler->getTemplateData($entityWorkflow), 'transition_form' => isset($transitionForm) ? $transitionForm->createView() : null, 'entity_workflow' => $entityWorkflow, - 'transition_form_errors' => $errors ?? [], + 'transition_form_errors' => $errors, //'comment_form' => $commentForm->createView(), ] ); diff --git a/src/Bundle/ChillMainBundle/Entity/Workflow/EntityWorkflow.php b/src/Bundle/ChillMainBundle/Entity/Workflow/EntityWorkflow.php index a132706d7..b9773040a 100644 --- a/src/Bundle/ChillMainBundle/Entity/Workflow/EntityWorkflow.php +++ b/src/Bundle/ChillMainBundle/Entity/Workflow/EntityWorkflow.php @@ -135,6 +135,7 @@ class EntityWorkflow implements TrackCreationInterface, TrackUpdateInterface if (!$this->steps->contains($step)) { $this->steps[] = $step; $step->setEntityWorkflow($this); + $this->stepsChainedCache = null; } return $this; @@ -332,32 +333,26 @@ class EntityWorkflow implements TrackCreationInterface, TrackUpdateInterface public function isFinal(): bool { - $steps = $this->getStepsChained(); - - if (1 === count($steps)) { - // the initial step cannot be finalized - return false; + foreach ($this->getStepsChained() as $step) { + if ($step->isFinal()) { + return true; + } } - /** @var EntityWorkflowStep $last */ - $last = end($steps); - - return $last->isFinal(); + return false; } public function isFreeze(): bool { $steps = $this->getStepsChained(); - if (1 === count($steps)) { - // the initial step cannot be finalized - return false; + foreach ($this->getStepsChained() as $step) { + if ($step->isFreezeAfter()) { + return true; + } } - /** @var EntityWorkflowStep $last */ - $last = end($steps); - - return $last->getPrevious()->isFreezeAfter(); + return false; } public function isUserSubscribedToFinal(User $user): bool @@ -434,7 +429,7 @@ class EntityWorkflow implements TrackCreationInterface, TrackUpdateInterface $newStep->setCurrentStep($step); // copy the freeze - if ($this->getCurrentStep()->isFreezeAfter()) { + if ($this->isFreeze()) { $newStep->setFreezeAfter(true); } diff --git a/src/Bundle/ChillMainBundle/Repository/Workflow/EntityWorkflowStepRepository.php b/src/Bundle/ChillMainBundle/Repository/Workflow/EntityWorkflowStepRepository.php index ad1b21c79..e4f0aa45d 100644 --- a/src/Bundle/ChillMainBundle/Repository/Workflow/EntityWorkflowStepRepository.php +++ b/src/Bundle/ChillMainBundle/Repository/Workflow/EntityWorkflowStepRepository.php @@ -56,7 +56,7 @@ class EntityWorkflowStepRepository implements ObjectRepository public function getClassName() { - return EntityWorkflow::class; + return EntityWorkflowStep::class; } private function buildQueryByUser(User $user): QueryBuilder diff --git a/src/Bundle/ChillMainBundle/Resources/public/module/pick-entity/index.js b/src/Bundle/ChillMainBundle/Resources/public/module/pick-entity/index.js index 4cc917502..f184bf100 100644 --- a/src/Bundle/ChillMainBundle/Resources/public/module/pick-entity/index.js +++ b/src/Bundle/ChillMainBundle/Resources/public/module/pick-entity/index.js @@ -17,7 +17,12 @@ function loadDynamicPicker(element) { isMultiple = parseInt(el.dataset.multiple) === 1, uniqId = el.dataset.uniqid, input = element.querySelector('[data-input-uniqid="'+ el.dataset.uniqid +'"]'), - picked = (isMultiple) ? (JSON.parse(input.value)) : ((input.value === '[]') ? (null) : ([JSON.parse(input.value)])); + picked = isMultiple ? + JSON.parse(input.value) : ( + (input.value === '[]' || input.value === '') ? + null : [ JSON.parse(input.value) ] + ) + ; if (!isMultiple) { if (input.value === '[]'){ diff --git a/src/Bundle/ChillMainBundle/Resources/public/vuejs/HomepageWidget/MyAccompanyingCourses.vue b/src/Bundle/ChillMainBundle/Resources/public/vuejs/HomepageWidget/MyAccompanyingCourses.vue index 4292c3af5..1c3b5e152 100644 --- a/src/Bundle/ChillMainBundle/Resources/public/vuejs/HomepageWidget/MyAccompanyingCourses.vue +++ b/src/Bundle/ChillMainBundle/Resources/public/vuejs/HomepageWidget/MyAccompanyingCourses.vue @@ -32,7 +32,7 @@ - {{ $t('emergency') }} + {{ $t('emergency') }} {{ $t('confidential') }} @@ -80,5 +80,7 @@ export default { \ No newline at end of file diff --git a/src/Bundle/ChillMainBundle/Resources/public/vuejs/HomepageWidget/js/i18n.js b/src/Bundle/ChillMainBundle/Resources/public/vuejs/HomepageWidget/js/i18n.js index 0b3d6a428..29f9dac62 100644 --- a/src/Bundle/ChillMainBundle/Resources/public/vuejs/HomepageWidget/js/i18n.js +++ b/src/Bundle/ChillMainBundle/Resources/public/vuejs/HomepageWidget/js/i18n.js @@ -50,7 +50,9 @@ const appMessages = { assignated_evaluations: "{n} évaluation assignée | {n} évaluations assignées", alert_tasks: "{n} tâche en rappel | {n} tâches en rappel", warning_tasks: "{n} tâche à échéance | {n} tâches à échéance", - } + }, + emergency: "Urgent", + confidential: "Confidentiel", } }; diff --git a/src/Bundle/ChillMainBundle/Resources/public/vuejs/OnTheFly/components/OnTheFly.vue b/src/Bundle/ChillMainBundle/Resources/public/vuejs/OnTheFly/components/OnTheFly.vue index 116ed86c1..7b06776ba 100644 --- a/src/Bundle/ChillMainBundle/Resources/public/vuejs/OnTheFly/components/OnTheFly.vue +++ b/src/Bundle/ChillMainBundle/Resources/public/vuejs/OnTheFly/components/OnTheFly.vue @@ -90,7 +90,7 @@ export default { OnTheFlyThirdparty, OnTheFlyCreate }, - props: ['type', 'id', 'action', 'buttonText', 'displayBadge', 'isDead', 'parent', 'canCloseModal'], + props: ['type', 'id', 'action', 'buttonText', 'displayBadge', 'isDead', 'parent'], emits: ['saveFormOnTheFly'], data() { return { @@ -160,17 +160,10 @@ export default { }, badgeType() { return 'entity-' + this.type + ' badge-' + this.type; - } - }, - watch: { - canCloseModal: { - handler: function(val, oldVal) { - if (val) { - this.closeModal(); - } - }, - deep: true - } + }, + getReturnPath() { + return `?returnPath=${window.location.pathname}${window.location.search}${window.location.hash}`; + }, }, methods: { closeModal() { @@ -217,9 +210,9 @@ export default { buildLocation(id, type) { if (type === 'person') { // TODO i18n - return `/fr/person/${id}/general`; + return encodeURI(`/fr/person/${id}/general${this.getReturnPath}`); } else if (type === 'thirdparty') { - return `/fr/3party/3party/${id}/view`; + return encodeURI(`/fr/3party/3party/${id}/view${this.getReturnPath}`); } } } diff --git a/src/Bundle/ChillMainBundle/Resources/public/vuejs/PickEntity/i18n.js b/src/Bundle/ChillMainBundle/Resources/public/vuejs/PickEntity/i18n.js index 2c4432218..f3ae3a928 100644 --- a/src/Bundle/ChillMainBundle/Resources/public/vuejs/PickEntity/i18n.js +++ b/src/Bundle/ChillMainBundle/Resources/public/vuejs/PickEntity/i18n.js @@ -1,4 +1,7 @@ import { personMessages } from 'ChillPersonAssets/vuejs/_js/i18n'; +import { thirdpartyMessages } from 'ChillThirdPartyAssets/vuejs/_js/i18n'; +import { addressMessages } from 'ChillMainAssets/vuejs/Address/i18n'; +import { ontheflyMessages } from 'ChillMainAssets/vuejs/OnTheFly/i18n'; const appMessages = { fr: { @@ -12,6 +15,6 @@ const appMessages = { } } -Object.assign(appMessages.fr, personMessages.fr); +Object.assign(appMessages.fr, personMessages.fr, thirdpartyMessages.fr, addressMessages.fr, ontheflyMessages.fr ); export { appMessages }; diff --git a/src/Bundle/ChillMainBundle/Resources/public/vuejs/_components/Entity/AddressRenderBox.vue b/src/Bundle/ChillMainBundle/Resources/public/vuejs/_components/Entity/AddressRenderBox.vue index 385f7aa3d..9a5dc2644 100644 --- a/src/Bundle/ChillMainBundle/Resources/public/vuejs/_components/Entity/AddressRenderBox.vue +++ b/src/Bundle/ChillMainBundle/Resources/public/vuejs/_components/Entity/AddressRenderBox.vue @@ -42,57 +42,11 @@ class="street"> {{ address.text }}

-

- {{ address.postcode.code }} {{ address.postcode.name }} -

-

- {{ address.country.name.fr }} -

- -
diff --git a/src/Bundle/ChillMainBundle/Serializer/Normalizer/AddressNormalizer.php b/src/Bundle/ChillMainBundle/Serializer/Normalizer/AddressNormalizer.php index 10e889344..78e8729be 100644 --- a/src/Bundle/ChillMainBundle/Serializer/Normalizer/AddressNormalizer.php +++ b/src/Bundle/ChillMainBundle/Serializer/Normalizer/AddressNormalizer.php @@ -64,7 +64,7 @@ class AddressNormalizer implements ContextAwareNormalizerInterface, NormalizerAw if ($address instanceof Address) { $data = [ 'address_id' => $address->getId(), - 'text' => $address->isNoAddress() ? null : $this->addressRender->renderStreetLine($address, []), + 'text' => $this->addressRender->renderString($address, []), 'street' => $address->getStreet(), 'streetNumber' => $address->getStreetNumber(), 'postcode' => [ diff --git a/src/Bundle/ChillMainBundle/Templating/Entity/AddressRender.php b/src/Bundle/ChillMainBundle/Templating/Entity/AddressRender.php index 66d6e9e41..3a97d0ef6 100644 --- a/src/Bundle/ChillMainBundle/Templating/Entity/AddressRender.php +++ b/src/Bundle/ChillMainBundle/Templating/Entity/AddressRender.php @@ -124,7 +124,7 @@ class AddressRender implements ChillEntityRenderInterface */ public function renderString($addr, array $options): string { - return implode(' - ', $this->renderLines($addr)); + return implode(' — ', $this->renderLines($addr)); } public function supports($entity, array $options): bool diff --git a/src/Bundle/ChillMainBundle/Tests/Entity/Workflow/EntityWorkflowTest.php b/src/Bundle/ChillMainBundle/Tests/Entity/Workflow/EntityWorkflowTest.php index c89101c5b..91783a77b 100644 --- a/src/Bundle/ChillMainBundle/Tests/Entity/Workflow/EntityWorkflowTest.php +++ b/src/Bundle/ChillMainBundle/Tests/Entity/Workflow/EntityWorkflowTest.php @@ -24,30 +24,30 @@ final class EntityWorkflowTest extends TestCase { $entityWorkflow = new EntityWorkflow(); - $entityWorkflow->getCurrentStep()->setFinalizeAfter(true); $entityWorkflow->setStep('final'); + $entityWorkflow->getCurrentStep()->setIsFinal(true); - $this->assertTrue($entityWorkflow->isFinalize()); + $this->assertTrue($entityWorkflow->isFinal()); } public function testIsFinalizeWith4Steps() { $entityWorkflow = new EntityWorkflow(); - $this->assertFalse($entityWorkflow->isFinalize()); + $this->assertFalse($entityWorkflow->isFinal()); $entityWorkflow->setStep('two'); - $this->assertFalse($entityWorkflow->isFinalize()); + $this->assertFalse($entityWorkflow->isFinal()); $entityWorkflow->setStep('previous_final'); - $this->assertFalse($entityWorkflow->isFinalize()); + $this->assertFalse($entityWorkflow->isFinal()); - $entityWorkflow->getCurrentStep()->setFinalizeAfter(true); + $entityWorkflow->getCurrentStep()->setIsFinal(true); $entityWorkflow->setStep('final'); - $this->assertTrue($entityWorkflow->isFinalize()); + $this->assertTrue($entityWorkflow->isFinal()); } public function testIsFreeze() @@ -64,11 +64,8 @@ final class EntityWorkflowTest extends TestCase $this->assertFalse($entityWorkflow->isFreeze()); - $entityWorkflow->getCurrentStep()->setFreezeAfter(true); - - $this->assertFalse($entityWorkflow->isFreeze()); - $entityWorkflow->setStep('freezed'); + $entityWorkflow->getCurrentStep()->setFreezeAfter(true); $this->assertTrue($entityWorkflow->isFreeze()); diff --git a/src/Bundle/ChillMainBundle/Workflow/Counter/WorkflowByUserCounter.php b/src/Bundle/ChillMainBundle/Workflow/Counter/WorkflowByUserCounter.php index 41ffd63c2..aaac6b216 100644 --- a/src/Bundle/ChillMainBundle/Workflow/Counter/WorkflowByUserCounter.php +++ b/src/Bundle/ChillMainBundle/Workflow/Counter/WorkflowByUserCounter.php @@ -32,20 +32,20 @@ final class WorkflowByUserCounter implements NotificationCounterInterface, Event $this->cacheItemPool = $cacheItemPool; } - public function addNotification(UserInterface $user): int + public function addNotification(UserInterface $u): int { - if (!$user instanceof User) { + if (!$u instanceof User) { return 0; } - $key = self::generateCacheKeyWorkflowByUser($user); + $key = self::generateCacheKeyWorkflowByUser($u); $item = $this->cacheItemPool->getItem($key); if ($item->isHit()) { return $item->get(); } - $nb = $this->getCountUnreadByUser($user); + $nb = $this->getCountUnreadByUser($u); $item->set($nb) ->expiresAfter(60 * 15); diff --git a/src/Bundle/ChillMainBundle/Workflow/Helper/MetadataExtractor.php b/src/Bundle/ChillMainBundle/Workflow/Helper/MetadataExtractor.php index 60b65020e..32f78a548 100644 --- a/src/Bundle/ChillMainBundle/Workflow/Helper/MetadataExtractor.php +++ b/src/Bundle/ChillMainBundle/Workflow/Helper/MetadataExtractor.php @@ -72,17 +72,18 @@ class MetadataExtractor foreach ($transitions as $transition) { if ($transition->getName() === $transitionName) { - break; + $metadata = $workflow->getMetadataStore()->getTransitionMetadata($transition); + + return [ + 'name' => $transition->getName(), + 'text' => array_key_exists('label', $metadata) ? + $this->translatableStringHelper->localize($metadata['label']) : $transition->getName(), + 'isForward' => $metadata['isForward'] ?? null, + ]; } } - $metadata = $workflow->getMetadataStore()->getTransitionMetadata($transition); - return [ - 'name' => $transition->getName(), - 'text' => array_key_exists('label', $metadata) ? - $this->translatableStringHelper->localize($metadata['label']) : $transition->getName(), - 'isForward' => $metadata['isForward'] ?? null, - ]; + return []; } public function buildArrayPresentationForWorkflow(WorkflowInterface $workflow): array diff --git a/src/Bundle/ChillPersonBundle/Controller/HouseholdApiController.php b/src/Bundle/ChillPersonBundle/Controller/HouseholdApiController.php index da8655f3d..1ebde2b57 100644 --- a/src/Bundle/ChillPersonBundle/Controller/HouseholdApiController.php +++ b/src/Bundle/ChillPersonBundle/Controller/HouseholdApiController.php @@ -50,7 +50,6 @@ class HouseholdApiController extends ApiController */ public function getHouseholdByAddressReference(AddressReference $addressReference): Response { - // TODO ACL $this->denyAccessUnlessGranted('ROLE_USER'); $total = $this->householdACLAwareRepository->countByAddressReference($addressReference); diff --git a/src/Bundle/ChillPersonBundle/Controller/PersonController.php b/src/Bundle/ChillPersonBundle/Controller/PersonController.php index 02c77ebd3..ac371a2af 100644 --- a/src/Bundle/ChillPersonBundle/Controller/PersonController.php +++ b/src/Bundle/ChillPersonBundle/Controller/PersonController.php @@ -224,6 +224,8 @@ final class PersonController extends AbstractController 'label' => 'Add the person', ])->add('createPeriod', SubmitType::class, [ 'label' => 'Add the person and create an accompanying period', + ])->add('createHousehold', SubmitType::class, [ + 'label' => 'Add the person and create a household' ]); $form->handleRequest($request); @@ -252,6 +254,12 @@ final class PersonController extends AbstractController ]); } + if ($form->get('createHousehold')->isClicked()) { + return $this->redirectToRoute('chill_person_household_members_editor', [ + 'persons' => [$person->getId()], + ]); + } + return $this->redirectToRoute( 'chill_person_general_edit', ['person_id' => $person->getId()] diff --git a/src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod.php b/src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod.php index 593cdfc83..1e7444af6 100644 --- a/src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod.php +++ b/src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod.php @@ -1153,11 +1153,8 @@ class AccompanyingPeriod implements $this->removeComment($this->pinnedComment); } - if ($comment instanceof Comment) { - if (null !== $this->pinnedComment) { - $this->addComment($this->pinnedComment); - } - $this->addComment($comment); + if (null !== $this->pinnedComment) { + $this->addComment($this->pinnedComment); } $this->pinnedComment = $comment; diff --git a/src/Bundle/ChillPersonBundle/Repository/Household/HouseholdACLAwareRepository.php b/src/Bundle/ChillPersonBundle/Repository/Household/HouseholdACLAwareRepository.php index dc5e8f5d3..48dabd054 100644 --- a/src/Bundle/ChillPersonBundle/Repository/Household/HouseholdACLAwareRepository.php +++ b/src/Bundle/ChillPersonBundle/Repository/Household/HouseholdACLAwareRepository.php @@ -14,7 +14,7 @@ namespace Chill\PersonBundle\Repository\Household; use Chill\MainBundle\Entity\AddressReference; use Chill\MainBundle\Security\Authorization\AuthorizationHelper; use Chill\PersonBundle\Entity\Household\Household; -use Chill\PersonBundle\Security\Authorization\HouseholdVoter; +use Chill\PersonBundle\Security\Authorization\PersonVoter; use DateTime; use Doctrine\ORM\EntityManagerInterface; use Doctrine\ORM\QueryBuilder; @@ -39,7 +39,7 @@ final class HouseholdACLAwareRepository implements HouseholdACLAwareRepositoryIn { $centers = $this->authorizationHelper->getReachableCenters( $this->security->getUser(), - HouseholdVoter::SEE + PersonVoter::SEE // the authorization to see a household is the same as seeing a person ); if ([] === $centers) { diff --git a/src/Bundle/ChillPersonBundle/Resources/public/vuejs/AccompanyingCourse/components/PersonsAssociated/ParticipationItem.vue b/src/Bundle/ChillPersonBundle/Resources/public/vuejs/AccompanyingCourse/components/PersonsAssociated/ParticipationItem.vue index 2ed08ffc0..1a1a7e26e 100644 --- a/src/Bundle/ChillPersonBundle/Resources/public/vuejs/AccompanyingCourse/components/PersonsAssociated/ParticipationItem.vue +++ b/src/Bundle/ChillPersonBundle/Resources/public/vuejs/AccompanyingCourse/components/PersonsAssociated/ParticipationItem.vue @@ -10,6 +10,7 @@ addAge : true, hLevel : 3, isConfidential : false, + isMultiline: true, }" :person="participation.person" :returnPath="getAccompanyingCourseReturnPath"> @@ -28,7 +29,7 @@
  • -
  • +
  • @@ -82,7 +82,7 @@ :id="resource.resource.id" action="edit" @saveFormOnTheFly="saveFormOnTheFly" - :canCloseModal="canCloseOnTheFlyModal"> + ref="onTheFly">
  • @@ -116,11 +116,6 @@ export default { }, props: ['resource'], emits: ['remove'], - data() { - return { - canCloseOnTheFlyModal: false - } - }, computed: { parent() { return { @@ -152,12 +147,14 @@ export default { if (payload.data.birthdate !== null) { body.birthdate = payload.data.birthdate; } body.phonenumber = payload.data.phonenumber; body.mobilenumber = payload.data.mobilenumber; + body.email = payload.data.email; + body.altNames = payload.data.altNames; body.gender = payload.data.gender; makeFetch('PATCH', `/api/1.0/person/person/${payload.data.id}.json`, body) .then(response => { this.$store.dispatch('addPerson', { target: payload.target, body: response }) - this.canCloseOnTheFlyModal = true; + this.$refs.onTheFly.closeModal(); }) .catch((error) => { if (error.name === 'ValidationException') { @@ -175,10 +172,10 @@ export default { body.telephone = payload.data.phonenumber; body.address = { id: payload.data.address.address_id }; - makeFetch('PATCH', `/api/1.0/third-party/third-party/${payload.data.id}.json`, body) + makeFetch('PATCH', `/api/1.0/thirdparty/thirdparty/${payload.data.id}.json`, body) .then(response => { this.$store.dispatch('addThirdparty', { target: payload.target, body: response }) - this.canCloseOnTheFlyModal = true; + this.$refs.onTheFly.closeModal(); }) .catch((error) => { if (error.name === 'ValidationException') { diff --git a/src/Bundle/ChillPersonBundle/Resources/public/vuejs/AccompanyingCourseWorkEdit/App.vue b/src/Bundle/ChillPersonBundle/Resources/public/vuejs/AccompanyingCourseWorkEdit/App.vue index f9d1a747c..34c0794fb 100644 --- a/src/Bundle/ChillPersonBundle/Resources/public/vuejs/AccompanyingCourseWorkEdit/App.vue +++ b/src/Bundle/ChillPersonBundle/Resources/public/vuejs/AccompanyingCourseWorkEdit/App.vue @@ -211,7 +211,7 @@