. */ namespace SP\Modules\Web\Controllers\Account; use SP\Core\Application; use SP\Domain\Account\AccountPresetServiceInterface; use SP\Domain\Account\AccountServiceInterface; use SP\Domain\CustomField\CustomFieldServiceInterface; use SP\Modules\Web\Controllers\Traits\JsonTrait; use SP\Modules\Web\Forms\AccountForm; use SP\Mvc\Controller\ItemTrait; use SP\Mvc\Controller\WebControllerHelper; /** * Class AccountSaveBase */ abstract class AccountSaveBase extends AccountControllerBase { use JsonTrait, ItemTrait; protected AccountServiceInterface $accountService; protected AccountForm $accountForm; protected CustomFieldServiceInterface $customFieldService; public function __construct( Application $application, WebControllerHelper $webControllerHelper, AccountServiceInterface $accountService, AccountPresetServiceInterface $accountPresetService, CustomFieldServiceInterface $customFieldService ) { parent::__construct( $application, $webControllerHelper ); $this->accountService = $accountService; $this->customFieldService = $customFieldService; $this->accountForm = new AccountForm($application, $this->request, $accountPresetService); } }