Files
roi-theme/wp-content/plugins/wp-marketing-automations-pro/rules/rules/languages.php
root a22573bf0b Commit inicial - WordPress Análisis de Precios Unitarios
- WordPress core y plugins
- Tema Twenty Twenty-Four configurado
- Plugin allow-unfiltered-html.php simplificado
- .gitignore configurado para excluir wp-config.php y uploads

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-03 21:04:30 -06:00

70 lines
1.8 KiB
PHP
Executable File

<?php
class BWFAN_Rule_Language extends BWFAN_Rule_Base {
public function __construct() {
$this->v2 = true;
$this->v1 = false;
parent::__construct( 'language' );
}
/** v2 Methods: START */
public function get_options( $term = '' ) {
return $this->get_possible_rule_values();
}
public function get_rule_type() {
return 'Select';
}
public function is_match_v2( $automation_data, $rule_data ) {
$result = false;
if ( ! isset( $automation_data['global'] ) || ! is_array( $automation_data['global'] ) || ! isset( $automation_data['global']['language'] ) ) {
return $this->return_is_match( $result, $rule_data );
}
$language = $automation_data['global']['language'];
if ( empty( $language ) ) {
$result = ( 'is_not' === $rule_data['rule'] ) ? true : $result;
return $this->return_is_match( $result, $rule_data );
}
$value = strval( $rule_data['data'] );
$language = strval( $language );
switch ( $rule_data['rule'] ) {
case 'is':
$result = $language === $value;
break;
case 'is_not':
$result = $language !== $value;
break;
default:
$result = false;
break;
}
return $this->return_is_match( $result, $rule_data );
}
/** v2 Methods: END */
public function get_possible_rule_operators() {
return array(
'is' => __( 'is', 'wp-marketing-automations-pro' ),
'is_not' => __( 'is not', 'wp-marketing-automations-pro' ),
);
}
public function get_possible_rule_values() {
$lang_options = [];
$language_data = BWFAN_PRO_Common::get_language_settings();
if ( is_array( $language_data ) && isset( $language_data['lang_options'] ) && ! empty( $language_data['lang_options'] ) ) {
$lang_options = array_replace( [ '' => 'Select' ], $language_data['lang_options'] );
}
return $lang_options;
}
}