Skip to content
Snippets Groups Projects
Commit ff5f0a03 authored by Eryk Mika's avatar Eryk Mika
Browse files

feature: toggle field

parent 600b9f9b
No related branches found
No related tags found
1 merge request!32feature: toggle field
Pipeline #494602 failed with stages
in 24 seconds
# Changelog
## [3.3.0] - 2025-04-XX
### Added
- ToggleField class, extends CheckboxField for toggle button functionality.
## [3.2.1] - 2024-10-30
### Changed
- Raised required PHP version to 7.4.
......
<?php
namespace WPDesk\Forms\Field;
class ToggleField extends CheckboxField {
public function __construct() {
$this->add_class( 'wpd-toggle-field' );
}
public function get_template_name(): string {
return 'input-toggle';
}
}
<?php
/**
* @var \WPDesk\Forms\Field $field
* @var \WPDesk\View\Renderer\Renderer $renderer
* @var string $name_prefix
* @var string $value
* @var string $template_name Real field template.
*/
?>
<style>
input[type="checkbox"].wpd-toggle-field {
all:unset;
background: #fff;
border:1px solid #949494;
width:32px;
height: 16px;
position: relative;
cursor: pointer;
border-radius: 200px;
}
input[type="checkbox"].wpd-toggle-field::before {
all:unset;
content: "";
display: block !important;
height: 14px;
width:14px;
background: #1c1c1c;
border-radius: 100%;
position: absolute;
left: 1px;
top:1px;
transition: 0.25s;
transition-timing-function: ease-out;
}
input[type="checkbox"].wpd-toggle-field:checked {
background: var(--wp-admin-theme-color, #1851e0);
border-color: var(--wp-admin-theme-color, #1851e0);
}
input[type="checkbox"].wpd-toggle-field:checked:before {
left: 17px;
background: #fff;
}
</style>
<?php
$renderer->output_render(
'input',
[
'field' => $field,
'renderer' => $renderer,
'name_prefix' => $name_prefix,
'value' => $value,
]
);
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment