HEX
Server: Microsoft-IIS/8.5
System: Windows NT YDAWBH120 6.3 build 9600 (Windows Server 2012 R2 Standard Edition) AMD64
User: tentjecom_web (0)
PHP: 7.4.14
Disabled: NONE
Upload Files
File: D:/HostingSpaces/SBogers10/reiskick.komma.nl/app/Components/Types/CalloutBar.php
<?php


namespace App\Components\Types;


use App\Components\ComponentTypes;
use App\Components\HasSpacingTrait;
use Komma\KMS\Components\ComponentType\Types\AbstractComponentType;
use Komma\KMS\Core\Attributes\Documents;
use Komma\KMS\Core\Attributes\Models\ImageProperty;
use Komma\KMS\Core\Attributes\Numeric;
use Komma\KMS\Core\Attributes\Seperator;
use Komma\KMS\Core\Attributes\TextField;
use Komma\KMS\Core\Attributes\Title;

class CalloutBar extends AbstractComponentType
{

    use HasSpacingTrait;

    protected int $id = ComponentTypes::CALLOUT_BAR;
    protected string $name = 'callout-bar';

    public function defineAttributesAndTabs()
    {

        $this->addItems([

            (new Documents())
                ->setReference('image')
                ->setLabelText(__('KMS::attributes/components.image'))
                ->onlyAllowImages()
                ->setSmallDragAndDropArea()
                ->setSubFolder('component_uploads')
                ->setMaxDocuments(1)
                ->setImageProperties([
                    (new ImageProperty())->setName('large')->setCropMethod(ImageProperty::Resize)->setWidth(2200),
                ])
                ->setExplanation('Formaat: 2200 x 280'),


            (new TextField())
                ->setReference('title')
                ->setLabelText(__('KMS::attributes/components.title')),

            (new TextField())
                ->setReference('button')
                ->setLabelText('Button tekst')
                ->setExplanation('Overschrijft de standaard button tekst "Bekijk het verhaal"'),

            (new TextField())
                ->setReference('url')
                ->setLabelText('Button link'),
        ]);

        $this->addItems($this->getSpacingFields());

    }
}