# jetformbuilder/3.6.5.3/components/compatibility/compatibility-tools.php

JetFormBuilder — Dynamic Blocks Form Builder, version 3.6.5.3. 67 lines.

- Page: https://pluginprobe.com/plugins/jetformbuilder/3.6.5.3/code/components/compatibility/compatibility-tools.php
- Raw: https://pluginprobe.com/plugins/jetformbuilder/3.6.5.3/raw/components/compatibility/compatibility-tools.php
- Modified: 2023-11-20T11:46:54+00:00

Line numbers below start at 1. Link to a line or a range by appending a fragment to the
page URL, for example `https://pluginprobe.com/plugins/jetformbuilder/3.6.5.3/code/components/compatibility/compatibility-tools.php#L10-L20`.

```php
<?php


namespace JFB_Components\Compatibility;

use Jet_Form_Builder\Exceptions\Repository_Exception;
use JFB_Components\Module\Base_Module_Dir_It;
use JFB_Components\Module\Base_Module_Url_It;

// If this file is called directly, abort.
if ( ! defined( 'WPINC' ) ) {
	die;
}

/**
 * @since 3.1.0
 *
 * Class Compatibility_Tools
 * @package JFB_Components\Compatibility
 */
class Compatibility_Tools {

	public static function get_url( string $module_name, string $url ): string {
		try {
			$module = jet_form_builder()->compat( $module_name );
		} catch ( Repository_Exception $exception ) {
			return '';
		}

		if ( ! ( $module instanceof Base_Module_Url_It ) ) {
			// phpcs:disable WordPress.Security.EscapeOutput.OutputNotEscaped
			_doing_it_wrong(
				__METHOD__,
				get_class( $module ) . ' is not implemented ' . Base_Module_Url_It::class,
				'3.1.0'
			);
			// phpcs:enable WordPress.Security.EscapeOutput.OutputNotEscaped
			return '';
		}

		return $module->get_url( $url );
	}

	public static function get_dir( string $module_name, string $path ): string {
		try {
			$module = jet_form_builder()->compat( $module_name );
		} catch ( Repository_Exception $exception ) {
			return '';
		}

		if ( ! ( $module instanceof Base_Module_Dir_It ) ) {
			// phpcs:disable WordPress.Security.EscapeOutput.OutputNotEscaped
			_doing_it_wrong(
				__METHOD__,
				get_class( $module ) . ' is not implemented ' . Base_Module_Dir_It::class,
				'3.1.0'
			);
			// phpcs:enable WordPress.Security.EscapeOutput.OutputNotEscaped

			return '';
		}

		return $module->get_dir( $path );
	}

}

```
