PluginProbe
JetFormBuilder — Dynamic Blocks Form Builder / 3.6.6
JetFormBuilder — Dynamic Blocks Form Builder v3.6.6
3.6.6.1 3.6.6 3.6.5.4 3.6.5.3 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 All 134 releases
jetformbuilder / modules / user-journey / query-views / user-journey-view.php

user-journey-view.php in JetFormBuilder — Dynamic Blocks Form Builder 3.6.6, at modules/user-journey/query-views/user-journey-view.php

76 lines 1.6 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2
3
4 namespace JFB_Modules\User_Journey\Query_Views;
5
6 use JFB_Modules\User_Journey\Models\User_Journey_Model;
7 use Jet_Form_Builder\Db_Queries\Query_Builder;
8 use Jet_Form_Builder\Db_Queries\Views\View_Base;
9 use Jet_Form_Builder\Exceptions\Query_Builder_Exception;
10 use Jet_Form_Builder\Db_Queries\Query_Conditions_Builder;
11 // If this file is called directly, abort.
12 if ( ! defined( 'WPINC' ) ) {
13 die;
14 }
15
16 class User_Journey_View extends View_Base {
17
18 public function table(): string {
19 return User_Journey_Model::table();
20 }
21
22 public function select_columns(): array {
23 return User_Journey_Model::schema_columns();
24 }
25
26 public function get_dependencies(): array {
27 return array(
28 new User_Journey_Model(),
29 );
30 }
31
32 public static function get_request( $record_id ): array {
33 try {
34 return static::find(
35 array(
36 'record_id' => (int) $record_id,
37 )
38 )->query()->query_all();
39
40 } catch ( Query_Builder_Exception $exception ) {
41 return array();
42 }
43 }
44
45 public function set_filters( array $filters ) {
46 parent::set_filters( $filters );
47
48 $this->set_record_filter();
49
50 return $this;
51 }
52
53 protected function set_record_filter(): User_Journey_View {
54 $record_id = absint( $this->filters['record_id'] ?? 0 );
55
56 if ( empty( $record_id ) ) {
57 return $this;
58 }
59
60 return $this->add_conditions(
61 array(
62 array(
63 'type' => Query_Conditions_Builder::TYPE_EQUAL,
64 'values' => array( 'record_id', $record_id ),
65 ),
66 )
67 );
68 }
69
70 public function query(): Query_Builder {
71 $this->prepare_dependencies();
72
73 return ( new Query_Builder() )->set_view( $this );
74 }
75 }
76