File: /var/www/html/ielts-store/wp-content/plugins/automatewoo/includes/Fields/Price.php
<?php
// phpcs:ignoreFile
namespace AutomateWoo\Fields;
use AutomateWoo\Clean;
if ( ! defined( 'ABSPATH' ) ) exit;
/**
 * @class Price
 */
class Price extends Text {
	protected $name = 'price';
	protected $type = 'text';
	function __construct() {
		parent::__construct();
		$this->set_title( __( 'Price', 'automatewoo' ) );
		$this->classes[] = 'automatewoo-field--type-price';
	}
	/**
	 * Sanitizes the field value.
	 *
	 * Removes currency symbols, thousand separators and sets correct decimal places.
	 * Empty string values are deliberately allowed.
	 *
	 * @since 4.4.0
	 * @since 4.6.0 Adds support for workflow variables.
	 *
	 * @param string $value
	 *
	 * @return string
	 */
	public function sanitize_value( $value ) {
		$value = trim( $value );
		// preserve empty string values, don't convert to '0.00'
		if ( $value === '' ) {
			return '';
		}
		if ( false === strpos( $value, '{{' ) ) {
			// IMPORTANT - Must clean the price value to convert from a localized format
			return Clean::localized_price( $value );
		} else {
			return Clean::string( $value );
		}
	}
	/**
	 * Output the field HTML.
	 *
	 * @param string $value
	 */
	public function render( $value ) {
		// If not a variable localize the price value
		if ( false === strpos( $value, '{{' ) ) {
			$value = wc_format_localized_price( $value );
		}
		parent::render( $value );
	}
}