Newer
Older

Eduarda Lentz Rodrigues da Silva
committed
<?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/
*/

Eduarda Lentz Rodrigues da Silva
committed
namespace Firegento\ContentProvisioning\Model\Repository;
use Firegento\ContentProvisioning\Api\CmsBlockRepositoryInterface;
use Magento\Framework\App\ResourceConnection;
class CmsBlockRepository implements CmsBlockRepositoryInterface
{
public const CMS_BLOCK_TABLE_NAME = 'cms_block';

Eduarda Lentz Rodrigues da Silva
committed
/**
* @var ResourceConnection
*/
private ResourceConnection $resource;

Eduarda Lentz Rodrigues da Silva
committed
/**
* @param ResourceConnection $resource
*/
public function __construct(
ResourceConnection $resource
) {
$this->resource = $resource;
}
/**
* Get CMS Block data by its title.

Eduarda Lentz Rodrigues da Silva
committed
*
* @param string $title

Eduarda Lentz Rodrigues da Silva
committed
* @return array
*/
public function getByTitle(string $title): array

Eduarda Lentz Rodrigues da Silva
committed
{
$connection = $this->resource->getConnection();
$select = $connection->select()
->from('cms_block')
->where('title = :title');

Eduarda Lentz Rodrigues da Silva
committed
$bind = ['title' => $title];
return $connection->fetchRow($select, $bind);

Eduarda Lentz Rodrigues da Silva
committed
}