PluginProbe ʕ •ᴥ•ʔ
JetFormBuilder — Dynamic Blocks Form Builder / 3.6.5.2
JetFormBuilder — Dynamic Blocks Form Builder v3.6.5.2
3.6.5.2 3.6.5.1 3.6.5 3.6.4.2 3.6.4.1 3.6.4 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 / includes / form-messages / builder.php
jetformbuilder / includes / form-messages Last commit date
actions 2 years ago action-messages-manager.php 2 years ago builder.php 4 days ago manager.php 2 years ago message-content-processor.php 4 days ago msg-router.php 2 years ago status-info.php 2 years ago
builder.php
137 lines
1 <?php
2
3
4 namespace Jet_Form_Builder\Form_Messages;
5
6 // If this file is called directly, abort.
7 use Jet_Form_Builder\Classes\Get_Template_Trait;
8
9 if ( ! defined( 'WPINC' ) ) {
10 die;
11 }
12
13 /**
14 * Form messages class
15 */
16 class Builder {
17
18 use Get_Template_Trait;
19
20 private $status;
21
22 /**
23 * @var Message_Content_Processor
24 */
25 private $content_processor;
26
27 /**
28 * Set form submittion status
29 *
30 * @param [type] $status [description]
31 *
32 * @return Builder
33 */
34 public function set_form_status( $status ) {
35 $this->status = $status;
36
37 return $this;
38 }
39
40 public function get_manager( $data = array() ) {
41 return jet_form_builder()->msg_router->get_manager( $data );
42 }
43
44 /**
45 * Get form submitting status
46 */
47 public function get_form_status() {
48 if ( ! $this->status ) {
49 // phpcs:ignore WordPress.Security.NonceVerification.Recommended
50 $this->status = isset( $_GET['status'] ) ? sanitize_text_field( wp_unslash( $_GET['status'] ) ) : null;
51 }
52
53 return $this->status;
54 }
55
56 public function prepare_message_content( string $message ): string {
57 return $this->get_content_processor()->prepare_macros(
58 $message,
59 jet_fb_context()->get_request()
60 );
61 }
62
63 public function render_empty_field_message() {
64 $message_content = $this->get_content_processor()->prepare_trusted(
65 $this->get_manager()->get_message( 'empty_field' ),
66 jet_fb_context()->get_request()
67 );
68
69 include $this->get_global_template( 'common/field-message.php' );
70 }
71
72 /**
73 * Render form messages
74 *
75 * @return void
76 */
77 public function render_messages() {
78 $status = $this->get_form_status();
79
80 if ( ! $status ) {
81 return;
82 }
83
84 $info = new Status_Info( $status );
85 $manager = $this->get_manager();
86 $message = $manager->get_message_by_info( $info );
87
88 // Only a registered key resolves to a template stored in form/action settings.
89 if ( ! $info->is_dynamic() && $manager->isset_message_type( $info->get_message() ) ) {
90 $message_content = $this->get_content_processor()->prepare_trusted(
91 $message,
92 jet_fb_context()->get_request()
93 );
94 } else {
95 $message_content = $this->get_content_processor()->prepare_untrusted( $message );
96 }
97
98 $class = 'jet-form-builder-message';
99 $class .= ' jet-form-builder-message--' . $info->get_css_class();
100
101 include $this->get_global_template( 'common/messages.php' );
102 }
103
104 /**
105 * Render message samples for editor
106 */
107 public function render_messages_samples() {
108 // Render success sample
109 $this->set_form_status( 'success' );
110 $this->render_messages();
111
112 // Render error sample
113 $this->set_form_status( 'failed' );
114 $this->render_messages();
115
116 // Reset status
117 $this->set_form_status( null );
118 }
119
120 public function get_rendered_messages() {
121 ob_start();
122 $this->render_messages();
123
124 return ob_get_clean();
125 }
126
127 public function get_content_processor(): Message_Content_Processor {
128 if ( is_null( $this->content_processor ) ) {
129 $this->content_processor = new Message_Content_Processor();
130 }
131
132 return $this->content_processor;
133 }
134
135
136 }
137