. */ namespace SP\Modules\Web\Forms; use Psr\Container\ContainerInterface; use SP\Config\Config; use SP\Config\ConfigDataInterface; use SP\Core\Context\ContextInterface; use SP\Http\Request; /** * Class FormBase * * @package SP\Modules\Web\Forms */ abstract class FormBase { protected ?int $itemId; protected Config $config; protected ConfigDataInterface $configData; protected ContextInterface $context; protected Request $request; /** * FormBase constructor. * * @param ContainerInterface $container * @param int|null $itemId */ public function __construct( ContainerInterface $container, ?int $itemId = null ) { $this->config = $container->get(Config::class); $this->configData = $this->config->getConfigData(); $this->context = $container->get(ContextInterface::class); $this->request = $container->get(Request::class); $this->itemId = $itemId; if (method_exists($this, 'initialize')) { $this->initialize($container); } } /** * Analizar los datos de la petición HTTP */ abstract protected function analyzeRequestData(); }