PluginProbe ʕ •ᴥ•ʔ
JetFormBuilder — Dynamic Blocks Form Builder / trunk
JetFormBuilder — Dynamic Blocks Form Builder vtrunk
3.6.3.1 3.6.3 3.6.2.2 3.6.2.1 3.6.2 3.6.1.1 3.6.1 3.6.0.1 trunk 1.0.0 1.0.1 1.0.2 1.0.3 1.1.0 1.1.1 1.1.2 1.1.3 1.1.4 1.1.5 1.1.6 1.1.7 1.2.0 1.2.1 1.2.2 1.2.3 1.2.4 1.2.5 1.2.6 1.2.7 1.3.0 1.3.1 1.3.2 1.3.3 1.4.0 1.4.1 1.4.2 1.4.3 1.5.0 1.5.1 1.5.2 1.5.3 1.5.4 1.5.5 2.0.0 2.0.1 2.0.2 2.0.3 2.0.4 2.0.5 2.0.6 2.1.0 2.1.1 2.1.10 2.1.11 2.1.2 2.1.3 2.1.4 2.1.5 2.1.6 2.1.7 2.1.8 2.1.9 3.0.0 3.0.0.1 3.0.0.2 3.0.0.3 3.0.1 3.0.1.1 3.0.2 3.0.3 3.0.4 3.0.5 3.0.6 3.0.7 3.0.8 3.0.9 3.1.0 3.1.0.1 3.1.1 3.1.2 3.1.3 3.1.4 3.1.5 3.1.6 3.1.7 3.1.8 3.1.9 3.2.0 3.2.1 3.2.2 3.2.3 3.3.0 3.3.1 3.3.2 3.3.3 3.3.3.1 3.3.4 3.3.4.1 3.3.4.2 3.4.0 3.4.1 3.4.2 3.4.3 3.4.4 3.4.5 3.4.5.1 3.4.5.2 3.4.6 3.4.7 3.4.7.1 3.5.0 3.5.1 3.5.1.1 3.5.1.2 3.5.2 3.5.2.1 3.5.3 3.5.4 3.5.5 3.5.6 3.5.6.1 3.5.6.2 3.5.6.3 3.6.0
jetformbuilder / modules / rich-content / module.php
jetformbuilder / modules / rich-content Last commit date
macros-parser.php 2 years ago module.php 2 years ago
module.php
103 lines
1 <?php
2
3 namespace JFB_Modules\Rich_Content;
4
5 use Jet_Form_Builder\Classes\Tools;
6 use Jet_Form_Builder\Presets\Types\Dynamic_Preset;
7 use JFB_Components\Module\Base_Module_It;
8
9 // If this file is called directly, abort.
10 if ( ! defined( 'WPINC' ) ) {
11 die;
12 }
13
14 class Module implements Base_Module_It {
15
16 /**
17 * @var Macros_Parser
18 */
19 private $parser;
20
21 /**
22 * @var Dynamic_Preset
23 */
24 private $dynamic_preset;
25
26 public function rep_item_id() {
27 return 'rich-content';
28 }
29
30 public function condition(): bool {
31 return true;
32 }
33
34 public function init_hooks() {
35 add_filter(
36 'jet-form-builder/rich-content',
37 array( $this, 'apply_submit_macros' )
38 );
39 add_filter(
40 'jet-form-builder/rich-content',
41 array( $this, 'apply_dynamic_preset' )
42 );
43 add_filter(
44 'jet-form-builder/rich-content',
45 array( $this, 'apply_shortcodes' )
46 );
47 }
48
49 public function remove_hooks() {
50 remove_filter(
51 'jet-form-builder/rich-content',
52 array( $this, 'apply_submit_macros' )
53 );
54 remove_filter(
55 'jet-form-builder/rich-content',
56 array( $this, 'apply_dynamic_preset' )
57 );
58 remove_filter(
59 'jet-form-builder/rich-content',
60 array( $this, 'apply_shortcodes' )
61 );
62 }
63
64 public static function rich( string $value ): string {
65 return apply_filters( 'jet-form-builder/rich-content', $value );
66 }
67
68 public function apply_submit_macros( string $content ): string {
69 return $this->get_parser()->parse_macros( $content );
70 }
71
72 public function apply_dynamic_preset( string $content ): string {
73 return Tools::to_string( $this->get_dynamic_preset()->parse_json( $content ) );
74 }
75
76 public function apply_shortcodes( string $content ): string {
77 return do_shortcode( $content );
78 }
79
80
81 /**
82 * @return Macros_Parser
83 */
84 public function get_parser(): Macros_Parser {
85 if ( is_null( $this->parser ) ) {
86 $this->parser = new Macros_Parser();
87 }
88
89 return $this->parser;
90 }
91
92 /**
93 * @return Dynamic_Preset
94 */
95 public function get_dynamic_preset(): Dynamic_Preset {
96 if ( is_null( $this->dynamic_preset ) ) {
97 $this->dynamic_preset = new Dynamic_Preset();
98 }
99
100 return $this->dynamic_preset;
101 }
102 }
103