Select Git revision
GetCmsBlockByTitle.php
GetCmsBlockByTitle.php 1.37 KiB
<?php
declare(strict_types=1);
/**
* Copyright (c) 2025 TechDivision GmbH
* All rights reserved
*
* This product includes proprietary software developed at TechDivision GmbH, Germany
* For more information see https://www.techdivision.com/
*
* To obtain a valid license for using this software please contact us at
* license@techdivision.com
*
* @copyright Copyright (c) 2025 TechDivision GmbH (https://www.techdivision.com)
* @author TechDivision Team Zero <zero@techdivision.com>
* @link https://www.techdivision.com/
*/
namespace Firegento\ContentProvisioning\Model\Query;
use Firegento\ContentProvisioning\Api\CmsBlockRepositoryInterface;
class GetCmsBlockByTitle
{
/**
* @var CmsBlockRepositoryInterface
*/
private CmsBlockRepositoryInterface $cmsBlockRepository;
/**
* @param CmsBlockRepositoryInterface $cmsBlockRepository
*/
public function __construct(
CmsBlockRepositoryInterface $cmsBlockRepository
) {
$this->cmsBlockRepository = $cmsBlockRepository;
}
/**
* @param string $title
* @return array
*/
public function execute(string $title)
{
$blockData = $this->cmsBlockRepository->getByTitle($title);
if (empty($blockData)) {
throw new NotFoundException(__('Block with key %1 not found.', $title));
}
return $blockData;
}
}