Server IP : 192.158.238.246 / Your IP : 3.133.127.132 Web Server : LiteSpeed System : Linux uniform.iwebfusion.net 4.18.0-553.27.1.lve.1.el8.x86_64 #1 SMP Wed Nov 20 15:58:00 UTC 2024 x86_64 User : jenniferflocom ( 1321) PHP Version : 8.1.32 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : OFF | Pkexec : OFF Directory : /proc/7779/task/7779/cwd/plugins/give/src/Framework/FieldsAPI/ |
Upload File : |
<?php namespace Give\Framework\FieldsAPI; use Give\Framework\Exceptions\Primitives\RuntimeException; /** * @since 2.32.0 added description * @since 2.28.0 */ class Checkbox extends Field { use Concerns\HasHelpText; use Concerns\HasLabel; use Concerns\HasDescription; const TYPE = 'checkbox'; /** * @var bool whether the checkbox is checked by default */ protected $checked = false; /** * @var mixed the value of the checkbox when checked */ protected $value; /** * Sets the value the checkbox returns when checked. * * The default value is also set because the getDefaultMethod() method is not called during serialization. * * @since 2.28.0 */ public function value($value): self { $this->value = $value; $this->defaultValue = $this->checked ? $value : null; return $this; } /** * @since 2.28.0 */ public function getValue() { return $this->value; } /** * Since the default value needs to reflect the value of the checkbox, this method is not supported. * * @since 2.28.0 */ public function defaultValue($defaultValue) { throw new RuntimeException( 'Do not set the default value. Instead, set the value and use the checked() method.' ); } /** * Sets the checkbox as checked by default * * The default value is also set because the getDefaultMethod() method is not called during serialization. * * @since 2.28.0 */ public function checked(bool $checked = true): self { $this->checked = $checked; $this->defaultValue = $this->checked ? $this->value : null; return $this; } /** * @since 2.28.0 */ public function isChecked(): bool { return $this->checked; } }