File: /var/www/vhosts/hvmbertogarza.com/httpdocs/wp-content/plugins/powerpack-elements/base/condition.php
<?php
namespace PowerpackElements\Base;
// Elementor Classes
use Elementor\Controls_Manager;
if ( ! defined( 'ABSPATH' ) ) {
exit; // Exit if accessed directly
}
/**
* \Base\Condition
*
* @since 1.4.13.1
*/
abstract class Condition {
/**
* @var Module_Base
*/
protected static $_instances = [];
protected $element_id;
/**
* Return the current module class name
*
* @access public
* @since 1.4.13.1
*
* @eturn string
*/
public static function class_name() {
return get_called_class();
}
/**
* @return static
*/
public static function instance() {
if ( empty( static::$_instances[ static::class_name() ] ) ) {
static::$_instances[ static::class_name() ] = new static();
}
return static::$_instances[ static::class_name() ];
}
/**
* Checks if current condition is supported
* Defaults to true
*
* @since 1.4.13.1
* @return string
*/
public static function is_supported() {
return true;
}
/**
* Get Group
*
* Get the group of the condition
*
* @since 1.4.13.1
* @return string
*/
public function get_group() {}
/**
* Get Name
*
* Get the name of the module
*
* @since 1.4.13.1
* @return string
*/
public function get_name() {}
/**
* Get Name
*
* Get the title of the module
*
* @since 1.4.13.1
* @return string
*/
public function get_title() {}
public function get_fields() {}
/**
* Get Default Value
*
* Get the default value of the value control
*
* @since 1.4.13.1
* @return string
*/
public function get_name_control() {
return false; }
/**
* Get Default Value
*
* Get the default value of the value control
*
* @since 1.4.13.1
* @return string
*/
public function get_value_control() {}
/**
* Check user login status
*
* @since 2.0.0
*
* @access protected
*
* @param mixed $name The control name to check
* @param mixed $value The control value to check
* @param string $operator Comparison operator.
*/
public function check( $name, $operator, $value ) {}
/**
* Compare conditions.
*
* Calls compare method
*
* @since 1.4.13.1
* @access public
* @static
*
* @param mixed $left_value First value to compare.
* @param mixed $right_value Second value to compare.
* @param string $operator Comparison operator.
*
* @return bool
*/
public function compare( $left_value, $right_value, $operator ) {
switch ( $operator ) {
case 'is':
case 'is_greater':
return $left_value == $right_value;
case 'not':
return $left_value != $right_value;
default:
return $left_value === $right_value;
}
}
/**
* Set Condition Element ID
*
* Set the element ID for this condition
*
* @since 2.2.2
* @return string
*/
public function set_element_id( $id ) {
$this->element_id = $id;
}
/**
* Get Condition Element ID
*
* Returns the previously set element id
*
* @since 2.2.2
* @return string
*/
protected function get_element_id() {
return $this->element_id;
}
}