HEX
Server: Apache/2.4.41 (Ubuntu)
System: Linux ip-172-31-42-149 5.15.0-1084-aws #91~20.04.1-Ubuntu SMP Fri May 2 07:00:04 UTC 2025 aarch64
User: ubuntu (1000)
PHP: 7.4.33
Disabled: pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare,
Upload Files
File: //proc/self/cwd/wp-content/plugins/elementor-pro/modules/popup/display-settings/base.php
<?php

namespace ElementorPro\Modules\Popup\DisplaySettings;

use Elementor\Controls_Manager;
use Elementor\Controls_Stack;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly
}

abstract class Base extends Controls_Stack {

	private $current_group;

	protected function start_settings_group( $group_name, $group_title ) {
		$this->current_group = $group_name;

		$args = [
			'type' => Controls_Manager::HEADING,
			'label' => $group_title,
		];

		$this->add_control( $group_name . '_heading', $args );
	}

	protected function end_settings_group() {
		$this->add_control(
			$this->current_group,
			[
				'type' => Controls_Manager::SWITCHER,
				'classes' => 'elementor-popup__display-settings__group-toggle',
				'frontend_available' => true,
			]
		);

		$this->current_group = null;
	}

	protected function add_settings_group_control( $id, array $args ) {
		$id = $this->current_group . '_' . $id;

		$args['frontend_available'] = true;

		if ( ! empty( $args['condition'] ) ) {
			$args['condition'] = array_combine(
				array_map( function( $key ) {
					return $this->current_group . '_' . $key;
				}, array_keys( $args['condition'] ) ),
				$args['condition']
			);
		}

		$args['condition'][ $this->current_group ] = 'yes';

		return $this->add_control( $id, $args );
	}
}