PluginProbe ʕ •ᴥ•ʔ
JetFormBuilder — Dynamic Blocks Form Builder / 3.0.1
JetFormBuilder — Dynamic Blocks Form Builder v3.0.1
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 / compatibility / jet-engine / methods / post-modification / post-je-relation-property.php
jetformbuilder / includes / compatibility / jet-engine / methods / post-modification Last commit date
post-je-relation-property.php 3 years ago
post-je-relation-property.php
66 lines
1 <?php
2
3
4 namespace Jet_Form_Builder\Compatibility\Jet_Engine\Methods\Post_Modification;
5
6
7 use Jet_Form_Builder\Actions\Methods\Abstract_Modifier;
8 use Jet_Form_Builder\Actions\Methods\Object_Dynamic_Property;
9 use Jet_Form_Builder\Actions\Methods\Post_Modification\Base_Post_Action;
10 use Jet_Form_Builder\Actions\Methods\Post_Modification\Trash_Action;
11 use Jet_Form_Builder\Classes\Arrayable\Array_Continue_Exception;
12 use Jet_Form_Builder\Actions\Methods\Base_Object_Property;
13
14
15 class Post_Je_Relation_Property extends Base_Object_Property implements
16 Object_Dynamic_Property {
17
18 protected $relation = array();
19
20 public function get_id(): string {
21 return 'je_relation';
22 }
23
24 public function is_supported( string $key, $value ): bool {
25 return jet_engine()->relations->is_relation_key( $key );
26 }
27
28 public function do_before( string $key, $value, Abstract_Modifier $modifier ) {
29 $this->relation[ $key ] = $value;
30 }
31
32 /**
33 * @param Abstract_Modifier $modifier
34 */
35 public function do_after( Abstract_Modifier $modifier ) {
36 if ( Trash_Action::is_supported( $modifier ) ) {
37 return;
38 }
39
40 /** @var Base_Post_Action $action */
41 $action = $modifier->get_action();
42 $id = $action->get_inserted();
43
44 if ( ! $id ) {
45 return;
46 }
47
48
49 foreach ( $this->relation as $rel_key => $rel_posts ) {
50 jet_engine()->relations->process_meta(
51 false,
52 $id,
53 $rel_key,
54 $rel_posts
55 );
56 }
57 }
58
59 /**
60 * @return string
61 * @throws Array_Continue_Exception
62 */
63 public function get_label(): string {
64 throw new Array_Continue_Exception( 'Exclude this from properties list' );
65 }
66 }