Files
iTop/sources/Application/UI/Base/Component/Input/Input.php
2024-05-06 18:35:31 +02:00

131 lines
1.9 KiB
PHP

<?php
/**
* @copyright Copyright (C) 2010-2024 Combodo SAS
* @license http://opensource.org/licenses/AGPL-3.0
*/
namespace Combodo\iTop\Application\UI\Base\Component\Input;
/**
* Class Input
*
* @package Combodo\iTop\Application\UI\Base\Component\Input
*/
class Input extends AbstractInput
{
// Overloaded constants
public const BLOCK_CODE = 'ibo-input';
public const DEFAULT_HTML_TEMPLATE_REL_PATH = 'base/components/input/layout';
public const INPUT_HIDDEN = 'hidden';
protected $bIsChecked = false;
protected $bIsDisabled = false;
protected $bIsReadonly = false;
protected $sLabel = null;
/** @var string */
protected $sType;
public function GetType(): string
{
return $this->sType;
}
/**
* @param string $sType
*
* @return $this
*/
public function SetType(string $sType)
{
$this->sType = $sType;
return $this;
}
/**
* @param $bChecked
*
* @return $this
*/
public function SetIsChecked($bIsChecked)
{
$this->bIsChecked = $bIsChecked;
return $this;
}
/**
* @return bool
*/
public function IsChecked(): bool
{
return $this->bIsChecked;
}
/**
* @return bool
*/
public function IsDisabled(): bool
{
return $this->bIsDisabled;
}
/**
* @param bool $bIsDisabled
*
* @return $this
*/
public function SetIsDisabled(bool $bIsDisabled)
{
$this->bIsDisabled = $bIsDisabled;
return $this;
}
/**
* @return bool
*/
public function IsReadonly(): bool
{
return $this->bIsReadonly;
}
/**
* @param bool $bIsReadonly
*
* @return $this
*/
public function SetIsReadonly(bool $bIsReadonly)
{
$this->bIsReadonly = $bIsReadonly;
return $this;
}
/**
* @return string|null
*/
public function GetLabel(): ?string
{
return $this->sLabel;
}
/**
* @param null $sLabel
*
* @return $this
*/
public function SetLabel($sLabel)
{
$this->sLabel = $sLabel;
return $this;
}
public function HasLabel(): bool
{
return !is_null($this->sLabel);
}
}