HEX
Server: Apache/2
System: Linux server-80-13-140-150.da.direct 5.14.0-362.24.1.el9_3.0.1.x86_64 #1 SMP PREEMPT_DYNAMIC Thu Apr 4 22:31:43 UTC 2024 x86_64
User: cpt (1004)
PHP: 8.1.24
Disabled: exec,system,passthru,shell_exec,proc_close,proc_open,dl,popen,show_source,posix_kill,posix_mkfifo,posix_getpwuid,posix_setpgid,posix_setsid,posix_setuid,posix_setgid,posix_seteuid,posix_setegid,posix_uname
Upload Files
File: /home/cpt/public_html/wp-content/plugins/wpforms/src/Admin/Tools/Importers.php
<?php

namespace WPForms\Admin\Tools;

use WPForms\Admin\Tools\Importers\ContactForm7;
use WPForms\Admin\Tools\Importers\NinjaForms;
use WPForms\Admin\Tools\Importers\PirateForms;

/**
 * Load the different form importers.
 *
 * @since 1.6.6
 */
class Importers {

	/**
	 * Available importers.
	 *
	 * @since 1.6.6
	 *
	 * @var array
	 */
	private $importers = [];

	/**
	 * Load default form importers.
	 *
	 * @since 1.6.6
	 */
	public function load() {

		if ( empty( $this->importers ) ) {
			$this->importers = [
				'contact-form-7' => new ContactForm7(),
				'ninja-forms'    => new NinjaForms(),
				'pirate-forms'   => new PirateForms(),
			];
		}
	}

	/**
	 * Load default form importers.
	 *
	 * @since 1.6.6
	 *
	 * @return array
	 */
	public function get_importers() {

		$this->load();

		$importers = [];

		foreach ( $this->importers as $importer ) {
			$importers = $importer->register( $importers );
		}

		return apply_filters( 'wpforms_importers', $importers );
	}

	/**
	 * Get a importer forms.
	 *
	 * @since 1.6.6
	 *
	 * @param string $provider Provider.
	 *
	 * @return array
	 */
	public function get_importer_forms( $provider ) {

		if ( isset( $this->importers[ $provider ] ) ) {
			return apply_filters( "wpforms_importer_forms_{$provider}", $this->importers[ $provider ]->get_forms() );
		}

		return [];
	}

}