Spaces:
No application file
No application file
File size: 1,270 Bytes
d2897cd |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 |
<?php
declare(strict_types=1);
namespace Mautic\IntegrationsBundle\Controller;
use Mautic\CoreBundle\Controller\CommonController;
use Symfony\Component\HttpFoundation\JsonResponse;
use Symfony\Component\HttpFoundation\Request;
class UpdateFieldController extends CommonController
{
public function updateAction(Request $request, string $integration, string $object, string $field): JsonResponse
{
// Clear the session of previously stored fields in case it got stuck
$session = $request->getSession();
$updatedFields = $session->get(sprintf('%s-fields', $integration), []);
if (!isset($updatedFields[$object])) {
$updatedFields[$object] = [];
}
if (!isset($updatedFields[$object][$field])) {
$updatedFields[$object][$field] = [];
}
if ($mappedField = $request->request->get('mappedField')) {
$updatedFields[$object][$field]['mappedField'] = $mappedField;
}
if ($syncDirection = $request->request->get('syncDirection')) {
$updatedFields[$object][$field]['syncDirection'] = $syncDirection;
}
$session->set(sprintf('%s-fields', $integration), $updatedFields);
return new JsonResponse([]);
}
}
|