You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
46 lines
1.0 KiB
PHP
46 lines
1.0 KiB
PHP
<?php
|
|
/**
|
|
* Background Pattern Config
|
|
*
|
|
* @package Divi
|
|
* @sub-package Builder
|
|
* @since 4.15.0
|
|
*/
|
|
|
|
if ( ! defined( 'ABSPATH' ) ) {
|
|
die( 'Direct access forbidden.' );
|
|
}
|
|
|
|
/**
|
|
* Class ET_Builder_Background_Pattern_Style_Factory.
|
|
*/
|
|
class ET_Builder_Background_Pattern_Style_Factory {
|
|
/**
|
|
* Class instance object
|
|
*
|
|
* @var array Holds all Pattern Style instance.
|
|
*/
|
|
private static $_instance = array();
|
|
|
|
/**
|
|
* Get instance of the Class
|
|
*
|
|
* @param string $name Pattern Style Name.
|
|
*
|
|
* @return ET_Builder_Background_Pattern_Style_Base
|
|
*/
|
|
public static function get( $name ) {
|
|
$name = sanitize_file_name( $name );
|
|
|
|
if ( ! isset( self::$_instance[ $name ] ) ) {
|
|
// Look at feature/background-masks/pattern directory.
|
|
$file = ET_BUILDER_DIR . "feature/background-masks/pattern/$name.php";
|
|
$instance = file_exists( $file ) ? require_once $file : null;
|
|
|
|
self::$_instance[ $name ] = $instance instanceof ET_Builder_Background_Pattern_Style_Base ? $instance : null;
|
|
}
|
|
|
|
return self::$_instance[ $name ];
|
|
}
|
|
}
|