get_token_factory();
$safe_classes = esc_html(
$this->get_item_class(
'true-false--state--:',
$markup_field_data->get_view_data(),
$markup_field_data->get_field_data()
)
);
ob_start();
$var = $token_factory->variable( $field_id )
->add_item_path( 'state' );
$token_factory->to_echo( $var )
->print();
$code = (string) ob_get_clean();
$safe_classes = str_replace( ':', $code, $safe_classes );
printf(
'
',
esc_html(
$this->get_field_class(
'true-false',
$markup_field_data
)
),
// @phpcs:ignore WordPress.Security.EscapeOutput
$safe_classes
);
}
/**
* @return array
*/
public function get_template_variables( Variable_Field_Data $variable_field_data ): array {
$is_checked = in_array( $variable_field_data->get_value(), array( 1, '1', true ), true );
$args = array(
'value' => $is_checked,
'state' => $is_checked ?
'checked' :
'unchecked',
);
return $args;
}
/**
* @return array
*/
public function get_validation_template_variables( Variable_Field_Data $variable_field_data ): array {
$is_checked = in_array( $variable_field_data->get_value(), array( 1, '1', true ), true );
$args = array(
'value' => $is_checked,
'state' => $is_checked ?
'checked' :
'unchecked',
);
return $args;
}
public function is_with_field_wrapper(
Layout_Settings $layout_settings,
Field_Settings $field_settings,
Field_Meta $field_meta
): bool {
return $layout_settings->is_with_unnecessary_wrappers;
}
// mark that false value still is supported in markup.
public function is_empty_value_supported_in_markup(): bool {
return true;
}
}