| Server IP : 198.38.94.67 / Your IP : 216.73.217.142 Web Server : LiteSpeed System : Linux d6054.dxb1.stableserver.net 5.14.0-570.25.1.el9_6.x86_64 #1 SMP PREEMPT_DYNAMIC Wed Jul 9 04:57:09 EDT 2025 x86_64 User : azfilmst ( 1070) PHP Version : 7.4.33 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : /home/azfilmst/public_html/wp-content/plugins/elementor/modules/components/ |
Upload File : |
<?php
namespace Elementor\Modules\Components;
use Elementor\Core\Utils\Api\Parse_Result;
if ( ! defined( 'ABSPATH' ) ) {
exit; // Exit if accessed directly.
}
class Components_Parser {
const MIN_NAME_LENGTH = 2;
const MAX_NAME_LENGTH = 50;
public static function make() {
return new static();
}
public function parse_name( $name, $existing_components_names ): Parse_Result {
$result = Parse_Result::make();
$sanitized = trim( sanitize_text_field( $name ) );
if ( strlen( $sanitized ) < self::MIN_NAME_LENGTH ) {
$result->errors()->add( 'name', 'component_name_too_short_min_' . self::MIN_NAME_LENGTH );
}
if ( strlen( $sanitized ) > self::MAX_NAME_LENGTH ) {
$result->errors()->add( 'name', 'component_name_too_long_max_' . self::MAX_NAME_LENGTH );
}
if ( in_array( $sanitized, $existing_components_names, true ) ) {
$result->errors()->add( 'name', 'duplicated_component_name' );
}
return $result->wrap( $sanitized );
}
}