@@ -27,7 +27,7 @@ |
||
27 | 27 | /** |
28 | 28 | * Returns the name of the model(s) pointed to |
29 | 29 | * @deprecated since version 4.6.7 |
30 | - * @return mixed string or array of strings |
|
30 | + * @return string string or array of strings |
|
31 | 31 | */ |
32 | 32 | function get_model_name_pointed_to(){ |
33 | 33 | EE_Error::doing_it_wrong( 'get_model_name_pointed_to', __( 'This method has been deprecated in favour of instead using get_model_names_pointed_to, which consistently returns an array', 'event_espresso' ), '4.6.7' ); |
@@ -5,7 +5,7 @@ discard block |
||
5 | 5 | * with the EE_Foreign_Key_Field to create a relation between any two models) |
6 | 6 | * also required basically the exact same functionality, except NOT be a foreign key. |
7 | 7 | */ |
8 | -abstract class EE_Field_With_Model_Name extends EE_Model_Field_Base{ |
|
8 | +abstract class EE_Field_With_Model_Name extends EE_Model_Field_Base { |
|
9 | 9 | /** |
10 | 10 | * Usually the name of a single model. However, as in the case for custom post types, |
11 | 11 | * it can actually be an array of models |
@@ -20,7 +20,7 @@ discard block |
||
20 | 20 | * @param mixed $default_value if this is a integer field, it shoudl be an int. if it's a string field, it shoul dbe a string |
21 | 21 | * @param string $model_name eg 'Event','Answer','Term', etc. Basically its the model class's name without the "EEM_" |
22 | 22 | */ |
23 | - function __construct($table_column, $nicename, $nullable, $default_value,$model_name){ |
|
23 | + function __construct($table_column, $nicename, $nullable, $default_value, $model_name) { |
|
24 | 24 | $this->_model_name_pointed_to = $model_name; |
25 | 25 | parent::__construct($table_column, $nicename, $nullable, $default_value); |
26 | 26 | } |
@@ -29,8 +29,8 @@ discard block |
||
29 | 29 | * @deprecated since version 4.6.7 |
30 | 30 | * @return mixed string or array of strings |
31 | 31 | */ |
32 | - function get_model_name_pointed_to(){ |
|
33 | - EE_Error::doing_it_wrong( 'get_model_name_pointed_to', __( 'This method has been deprecated in favour of instead using get_model_names_pointed_to, which consistently returns an array', 'event_espresso' ), '4.6.7' ); |
|
32 | + function get_model_name_pointed_to() { |
|
33 | + EE_Error::doing_it_wrong('get_model_name_pointed_to', __('This method has been deprecated in favour of instead using get_model_names_pointed_to, which consistently returns an array', 'event_espresso'), '4.6.7'); |
|
34 | 34 | return $this->_model_name_pointed_to; |
35 | 35 | } |
36 | 36 | /** |
@@ -39,31 +39,31 @@ discard block |
||
39 | 39 | * @return array of model names pointed to by this field |
40 | 40 | */ |
41 | 41 | function get_model_names_pointed_to() { |
42 | - if( is_array( $this->_model_name_pointed_to ) ) { |
|
42 | + if (is_array($this->_model_name_pointed_to)) { |
|
43 | 43 | return $this->_model_name_pointed_to; |
44 | - }else{ |
|
45 | - return array( $this->_model_name_pointed_to ); |
|
44 | + } else { |
|
45 | + return array($this->_model_name_pointed_to); |
|
46 | 46 | } |
47 | 47 | } |
48 | 48 | /** |
49 | 49 | * Returns the model's classname (eg EE_Event instead of just Event) |
50 | 50 | * @return array |
51 | 51 | */ |
52 | - function get_model_class_names_pointed_to(){ |
|
52 | + function get_model_class_names_pointed_to() { |
|
53 | 53 | $model_names = array(); |
54 | - if(is_array($this->_model_name_pointed_to)){ |
|
55 | - foreach($this->_model_name_pointed_to as $model_name){ |
|
54 | + if (is_array($this->_model_name_pointed_to)) { |
|
55 | + foreach ($this->_model_name_pointed_to as $model_name) { |
|
56 | 56 | $model_names[] = "EE_".$model_name; |
57 | 57 | } |
58 | - }else{ |
|
58 | + } else { |
|
59 | 59 | $model_names = array("EE_".$this->_model_name_pointed_to); |
60 | 60 | } |
61 | 61 | return $model_names; |
62 | 62 | } |
63 | 63 | |
64 | - function is_model_obj_of_type_pointed_to($model_obj_or_ID){ |
|
65 | - foreach($this->get_model_class_names_pointed_to() as $model_obj_classname){ |
|
66 | - if($model_obj_or_ID instanceof $model_obj_classname){ |
|
64 | + function is_model_obj_of_type_pointed_to($model_obj_or_ID) { |
|
65 | + foreach ($this->get_model_class_names_pointed_to() as $model_obj_classname) { |
|
66 | + if ($model_obj_or_ID instanceof $model_obj_classname) { |
|
67 | 67 | return true; |
68 | 68 | } |
69 | 69 | } |
@@ -41,7 +41,7 @@ discard block |
||
41 | 41 | function get_model_names_pointed_to() { |
42 | 42 | if( is_array( $this->_model_name_pointed_to ) ) { |
43 | 43 | return $this->_model_name_pointed_to; |
44 | - }else{ |
|
44 | + } else{ |
|
45 | 45 | return array( $this->_model_name_pointed_to ); |
46 | 46 | } |
47 | 47 | } |
@@ -55,7 +55,7 @@ discard block |
||
55 | 55 | foreach($this->_model_name_pointed_to as $model_name){ |
56 | 56 | $model_names[] = "EE_".$model_name; |
57 | 57 | } |
58 | - }else{ |
|
58 | + } else{ |
|
59 | 59 | $model_names = array("EE_".$this->_model_name_pointed_to); |
60 | 60 | } |
61 | 61 | return $model_names; |
@@ -4,6 +4,7 @@ |
||
4 | 4 | * Overrides parent so it doesn't need to provide so many non-applicable fields |
5 | 5 | * @param string $table_column |
6 | 6 | * @param string $nicename |
7 | + * @param integer|null $default |
|
7 | 8 | */ |
8 | 9 | public function __construct($table_column, $nicename,$default) { |
9 | 10 | parent::__construct($table_column, $nicename, false, $default, null); |
@@ -1,18 +1,18 @@ |
||
1 | 1 | <?php |
2 | -abstract class EE_Primary_Key_Field_Base extends EE_Field_With_Model_Name{ |
|
2 | +abstract class EE_Primary_Key_Field_Base extends EE_Field_With_Model_Name { |
|
3 | 3 | /** |
4 | 4 | * Overrides parent so it doesn't need to provide so many non-applicable fields |
5 | 5 | * @param string $table_column |
6 | 6 | * @param string $nicename |
7 | 7 | */ |
8 | - public function __construct($table_column, $nicename,$default) { |
|
8 | + public function __construct($table_column, $nicename, $default) { |
|
9 | 9 | parent::__construct($table_column, $nicename, false, $default, null); |
10 | 10 | } |
11 | 11 | /** |
12 | 12 | * @param $table_alias |
13 | 13 | * @param $name |
14 | 14 | */ |
15 | - function _construct_finalize($table_alias, $name, $model_name){ |
|
15 | + function _construct_finalize($table_alias, $name, $model_name) { |
|
16 | 16 | $this->_model_name_pointed_to = $model_name; |
17 | 17 | parent::_construct_finalize($table_alias, $name, $model_name); |
18 | 18 | } |
@@ -4,6 +4,10 @@ |
||
4 | 4 | function get_wpdb_data_type(){ |
5 | 5 | return '%d'; |
6 | 6 | } |
7 | + |
|
8 | + /** |
|
9 | + * @param string $table_column |
|
10 | + */ |
|
7 | 11 | public function __construct($table_column, $nicename) { |
8 | 12 | parent::__construct($table_column, $nicename, 0); |
9 | 13 | } |
@@ -1,14 +1,14 @@ |
||
1 | 1 | <?php |
2 | -require_once( EE_MODELS . 'fields/EE_Primary_Key_Field_Base.php'); |
|
3 | -class EE_Primary_Key_Int_Field extends EE_Primary_Key_Field_Base{ |
|
4 | - function get_wpdb_data_type(){ |
|
2 | +require_once(EE_MODELS.'fields/EE_Primary_Key_Field_Base.php'); |
|
3 | +class EE_Primary_Key_Int_Field extends EE_Primary_Key_Field_Base { |
|
4 | + function get_wpdb_data_type() { |
|
5 | 5 | return '%d'; |
6 | 6 | } |
7 | 7 | public function __construct($table_column, $nicename) { |
8 | 8 | parent::__construct($table_column, $nicename, 0); |
9 | 9 | } |
10 | 10 | function prepare_for_set($value_inputted_for_field_on_model_object) { |
11 | - if($this->is_model_obj_of_type_pointed_to($value_inputted_for_field_on_model_object)){ |
|
11 | + if ($this->is_model_obj_of_type_pointed_to($value_inputted_for_field_on_model_object)) { |
|
12 | 12 | $value_inputted_for_field_on_model_object = $value_inputted_for_field_on_model_object->ID(); |
13 | 13 | } |
14 | 14 | return absint($value_inputted_for_field_on_model_object); |
@@ -4,6 +4,10 @@ |
||
4 | 4 | function get_wpdb_data_type(){ |
5 | 5 | return '%s'; |
6 | 6 | } |
7 | + |
|
8 | + /** |
|
9 | + * @param string $table_column |
|
10 | + */ |
|
7 | 11 | public function __construct($table_column, $nicename) { |
8 | 12 | parent::__construct($table_column, $nicename, NULL); |
9 | 13 | } |
@@ -1,7 +1,7 @@ discard block |
||
1 | 1 | <?php |
2 | 2 | require_once('EE_Primary_Key_Field_Base.php'); |
3 | -class EE_Primary_Key_String_Field extends EE_Primary_Key_Field_Base{ |
|
4 | - function get_wpdb_data_type(){ |
|
3 | +class EE_Primary_Key_String_Field extends EE_Primary_Key_Field_Base { |
|
4 | + function get_wpdb_data_type() { |
|
5 | 5 | return '%s'; |
6 | 6 | } |
7 | 7 | public function __construct($table_column, $nicename) { |
@@ -13,7 +13,7 @@ discard block |
||
13 | 13 | * @return string |
14 | 14 | */ |
15 | 15 | function prepare_for_set($value_inputted_for_field_on_model_object) { |
16 | - if($this->is_model_obj_of_type_pointed_to($value_inputted_for_field_on_model_object)){ |
|
16 | + if ($this->is_model_obj_of_type_pointed_to($value_inputted_for_field_on_model_object)) { |
|
17 | 17 | $value_inputted_for_field_on_model_object = $value_inputted_for_field_on_model_object->ID(); |
18 | 18 | } |
19 | 19 | return wp_strip_all_tags($value_inputted_for_field_on_model_object); |
@@ -26,7 +26,6 @@ |
||
26 | 26 | * ) |
27 | 27 | * ) |
28 | 28 | * @link http://codex.wordpress.org/Function_Reference/register_post_status for more info |
29 | - * @param boolean $store_in_db_as_int By default, enums are stored as STRINGS in the DB. However, if this var is set to true, it will be stored as an INT |
|
30 | 29 | */ |
31 | 30 | function __construct($table_column, $nicename, $nullable, $default_value, $new_stati = array()){ |
32 | 31 | $this->_register_new_stati( $new_stati ); |
@@ -1,6 +1,6 @@ discard block |
||
1 | 1 | <?php |
2 | -require_once( EE_MODELS . 'fields/EE_Enum_Text_Field.php' ); |
|
3 | -class EE_WP_Post_Status_Field extends EE_Enum_Text_Field{ |
|
2 | +require_once(EE_MODELS.'fields/EE_Enum_Text_Field.php'); |
|
3 | +class EE_WP_Post_Status_Field extends EE_Enum_Text_Field { |
|
4 | 4 | |
5 | 5 | protected $_wp_post_stati; |
6 | 6 | |
@@ -28,8 +28,8 @@ discard block |
||
28 | 28 | * @link http://codex.wordpress.org/Function_Reference/register_post_status for more info |
29 | 29 | * @param boolean $store_in_db_as_int By default, enums are stored as STRINGS in the DB. However, if this var is set to true, it will be stored as an INT |
30 | 30 | */ |
31 | - function __construct($table_column, $nicename, $nullable, $default_value, $new_stati = array()){ |
|
32 | - $this->_register_new_stati( $new_stati ); |
|
31 | + function __construct($table_column, $nicename, $nullable, $default_value, $new_stati = array()) { |
|
32 | + $this->_register_new_stati($new_stati); |
|
33 | 33 | $this->_set_allowed_enum_values(); |
34 | 34 | parent::__construct($table_column, $nicename, $nullable, $default_value, $this->_allowed_enum_values); |
35 | 35 | } |
@@ -46,18 +46,18 @@ discard block |
||
46 | 46 | * @param array $new_stati statuses |
47 | 47 | * @return void |
48 | 48 | */ |
49 | - protected function _register_new_stati( $new_stati ) { |
|
49 | + protected function _register_new_stati($new_stati) { |
|
50 | 50 | |
51 | - foreach ( (array) $new_stati as $status_key => $status_args ) { |
|
51 | + foreach ((array) $new_stati as $status_key => $status_args) { |
|
52 | 52 | $args = array( |
53 | - 'label' => isset( $status_args['label'] ) ? $status_args['label'] : $status_key, |
|
54 | - 'public' => isset( $status_args['public'] ) && is_bool( $status_args['public'] ) ? $status_args['public'] : TRUE, |
|
55 | - 'exclude_from_search' => isset( $status_args['exclude_from_search'] ) && is_bool($status_args['exclude_from_search'] ) ? $status_args['exclude_from_search'] : FALSE, |
|
56 | - 'show_in_admin_all_list' => isset( $status_args['show_in_admin_all_list'] ) && is_bool( $status_args['show_in_admin_all_list'] ) ? $status_args['show_in_admin_all_list'] : FALSE, |
|
57 | - 'show_in_admin_status_list' => isset( $status_args['show_in_admin_status_list'] ) && is_bool( $status_args['show_in_admin_status_list'] ) ? $status_args['show_in_admin_status_list'] : TRUE, |
|
58 | - 'label_count' => isset( $status_args['label_count'] ) ? $status_args['label_count'] : '' |
|
53 | + 'label' => isset($status_args['label']) ? $status_args['label'] : $status_key, |
|
54 | + 'public' => isset($status_args['public']) && is_bool($status_args['public']) ? $status_args['public'] : TRUE, |
|
55 | + 'exclude_from_search' => isset($status_args['exclude_from_search']) && is_bool($status_args['exclude_from_search']) ? $status_args['exclude_from_search'] : FALSE, |
|
56 | + 'show_in_admin_all_list' => isset($status_args['show_in_admin_all_list']) && is_bool($status_args['show_in_admin_all_list']) ? $status_args['show_in_admin_all_list'] : FALSE, |
|
57 | + 'show_in_admin_status_list' => isset($status_args['show_in_admin_status_list']) && is_bool($status_args['show_in_admin_status_list']) ? $status_args['show_in_admin_status_list'] : TRUE, |
|
58 | + 'label_count' => isset($status_args['label_count']) ? $status_args['label_count'] : '' |
|
59 | 59 | ); |
60 | - register_post_status( $status_key, $status_args ); |
|
60 | + register_post_status($status_key, $status_args); |
|
61 | 61 | } |
62 | 62 | |
63 | 63 | } |
@@ -78,7 +78,7 @@ discard block |
||
78 | 78 | global $wp_post_statuses; |
79 | 79 | $this->_wp_post_stati = $wp_post_statuses; |
80 | 80 | |
81 | - foreach( $this->_wp_post_stati as $post_status => $args_object ) { |
|
81 | + foreach ($this->_wp_post_stati as $post_status => $args_object) { |
|
82 | 82 | $this->_allowed_enum_values[$post_status] = $args_object->label; |
83 | 83 | } |
84 | 84 | |
@@ -108,7 +108,7 @@ discard block |
||
108 | 108 | * @param string $status What status object you want |
109 | 109 | * @return std_object the status object or FALSE if it doesn't exist. |
110 | 110 | */ |
111 | - public function get_status_object( $status ) { |
|
112 | - return isset( $this->_wp_post_stati[$status] ) ? $this->_wp_post_stati[$status] : FALSE; |
|
111 | + public function get_status_object($status) { |
|
112 | + return isset($this->_wp_post_stati[$status]) ? $this->_wp_post_stati[$status] : FALSE; |
|
113 | 113 | } |
114 | 114 | } |
115 | 115 | \ No newline at end of file |
@@ -43,16 +43,30 @@ discard block |
||
43 | 43 | |
44 | 44 | private $_group_by_sql; |
45 | 45 | |
46 | + /** |
|
47 | + * @param string $limit_sql |
|
48 | + */ |
|
46 | 49 | function set_limit_sql($limit_sql){ |
47 | 50 | $this->_limit_sql = $limit_sql; |
48 | 51 | } |
49 | 52 | |
53 | + /** |
|
54 | + * @param string $order_by_sql |
|
55 | + */ |
|
50 | 56 | function set_order_by_sql($order_by_sql){ |
51 | 57 | $this->_order_by_sql = $order_by_sql; |
52 | 58 | } |
59 | + |
|
60 | + /** |
|
61 | + * @param string $group_by_sql |
|
62 | + */ |
|
53 | 63 | function set_group_by_sql($group_by_sql){ |
54 | 64 | $this->_group_by_sql = $group_by_sql; |
55 | 65 | } |
66 | + |
|
67 | + /** |
|
68 | + * @param string $having_sql |
|
69 | + */ |
|
56 | 70 | function set_having_sql($having_sql){ |
57 | 71 | $this->_having_sql = $having_sql; |
58 | 72 | } |
@@ -72,7 +86,6 @@ discard block |
||
72 | 86 | * |
73 | 87 | * @param type $model_included_name |
74 | 88 | * @param type $join_sql |
75 | - * @param type $data_types |
|
76 | 89 | */ |
77 | 90 | public function __construct($model_included_name= array(), $join_sql = ''){ |
78 | 91 | $this->_models_included = $model_included_name; |
@@ -11,8 +11,8 @@ discard block |
||
11 | 11 | */ |
12 | 12 | class EE_Model_Query_Info_Carrier extends EE_Base{ |
13 | 13 | /** |
14 | - * @var string SQL for performing joins (Eg, "INNER JOIN blah ON blah=blah INNER JOIN FOO ON foo=foo...") |
|
15 | - */ |
|
14 | + * @var string SQL for performing joins (Eg, "INNER JOIN blah ON blah=blah INNER JOIN FOO ON foo=foo...") |
|
15 | + */ |
|
16 | 16 | private $_join_sql; |
17 | 17 | /** |
18 | 18 | * |
@@ -132,7 +132,7 @@ discard block |
||
132 | 132 | * @return string |
133 | 133 | */ |
134 | 134 | public function get_main_model_join_sql() { |
135 | - return $this->_main_join_sql; |
|
135 | + return $this->_main_join_sql; |
|
136 | 136 | } |
137 | 137 | |
138 | 138 |
@@ -9,7 +9,7 @@ discard block |
||
9 | 9 | * We could have returned an array |
10 | 10 | * with two keys 'join_sql' and 'data_types', but this better-defines the data being passed around |
11 | 11 | */ |
12 | -class EE_Model_Query_Info_Carrier extends EE_Base{ |
|
12 | +class EE_Model_Query_Info_Carrier extends EE_Base { |
|
13 | 13 | /** |
14 | 14 | * @var string SQL for performing joins (Eg, "INNER JOIN blah ON blah=blah INNER JOIN FOO ON foo=foo...") |
15 | 15 | */ |
@@ -43,29 +43,29 @@ discard block |
||
43 | 43 | |
44 | 44 | private $_group_by_sql; |
45 | 45 | |
46 | - function set_limit_sql($limit_sql){ |
|
46 | + function set_limit_sql($limit_sql) { |
|
47 | 47 | $this->_limit_sql = $limit_sql; |
48 | 48 | } |
49 | 49 | |
50 | - function set_order_by_sql($order_by_sql){ |
|
50 | + function set_order_by_sql($order_by_sql) { |
|
51 | 51 | $this->_order_by_sql = $order_by_sql; |
52 | 52 | } |
53 | - function set_group_by_sql($group_by_sql){ |
|
53 | + function set_group_by_sql($group_by_sql) { |
|
54 | 54 | $this->_group_by_sql = $group_by_sql; |
55 | 55 | } |
56 | - function set_having_sql($having_sql){ |
|
56 | + function set_having_sql($having_sql) { |
|
57 | 57 | $this->_having_sql = $having_sql; |
58 | 58 | } |
59 | - function get_limit_sql(){ |
|
59 | + function get_limit_sql() { |
|
60 | 60 | return $this->_limit_sql; |
61 | 61 | } |
62 | - function get_order_by_sql(){ |
|
62 | + function get_order_by_sql() { |
|
63 | 63 | return $this->_order_by_sql; |
64 | 64 | } |
65 | - function get_group_by_sql(){ |
|
65 | + function get_group_by_sql() { |
|
66 | 66 | return $this->_group_by_sql; |
67 | 67 | } |
68 | - function get_having_sql(){ |
|
68 | + function get_having_sql() { |
|
69 | 69 | return $this->_having_sql; |
70 | 70 | } |
71 | 71 | /** |
@@ -74,7 +74,7 @@ discard block |
||
74 | 74 | * @param type $join_sql |
75 | 75 | * @param type $data_types |
76 | 76 | */ |
77 | - public function __construct($model_included_name= array(), $join_sql = ''){ |
|
77 | + public function __construct($model_included_name = array(), $join_sql = '') { |
|
78 | 78 | $this->_models_included = $model_included_name; |
79 | 79 | $this->_join_sql = $join_sql; |
80 | 80 | } |
@@ -83,10 +83,10 @@ discard block |
||
83 | 83 | * Merges info from the other EEM_Related_Model_Info_Carrier into this one. |
84 | 84 | * @param EE_Model_Query_Info_Carrier $other_model_query_info_carrier |
85 | 85 | */ |
86 | - public function merge( $other_model_query_info_carrier ){ |
|
87 | - if( $other_model_query_info_carrier && ! $this->_have_already_included_one_of_these_models($other_model_query_info_carrier->get_model_names_included())){ |
|
88 | - $model_included_on_other_join_sql_and_data_types_carrier = $other_model_query_info_carrier->get_model_names_included(); |
|
89 | - $this->_models_included = array_merge( $this->_models_included, $model_included_on_other_join_sql_and_data_types_carrier ); |
|
86 | + public function merge($other_model_query_info_carrier) { |
|
87 | + if ($other_model_query_info_carrier && ! $this->_have_already_included_one_of_these_models($other_model_query_info_carrier->get_model_names_included())) { |
|
88 | + $model_included_on_other_join_sql_and_data_types_carrier = $other_model_query_info_carrier->get_model_names_included(); |
|
89 | + $this->_models_included = array_merge($this->_models_included, $model_included_on_other_join_sql_and_data_types_carrier); |
|
90 | 90 | $this->_join_sql .= $other_model_query_info_carrier->_join_sql; |
91 | 91 | } |
92 | 92 | //otherwise don't merge our data. |
@@ -100,9 +100,9 @@ discard block |
||
100 | 100 | * @param array $model_names just like EE_MOdel_QUery_Info_Carrier::_models_included: keys are model chain paths, values are the model names only |
101 | 101 | * @return boolean |
102 | 102 | */ |
103 | - protected function _have_already_included_one_of_these_models($model_names){ |
|
104 | - foreach($this->_models_included as $model_relation_path=>$model_included){ |
|
105 | - if(array_key_exists($model_relation_path, $model_names)){ |
|
103 | + protected function _have_already_included_one_of_these_models($model_names) { |
|
104 | + foreach ($this->_models_included as $model_relation_path=>$model_included) { |
|
105 | + if (array_key_exists($model_relation_path, $model_names)) { |
|
106 | 106 | return true; |
107 | 107 | } |
108 | 108 | } |
@@ -112,17 +112,17 @@ discard block |
||
112 | 112 | * Array keys are model names, values are "model relation paths". See EE_Model_Query_Info_Carrier::_models_included for details |
113 | 113 | * @return array like EE_Model_Query_Info_Carrier::_models_included |
114 | 114 | */ |
115 | - public function get_model_names_included(){ |
|
115 | + public function get_model_names_included() { |
|
116 | 116 | return $this->_models_included; |
117 | 117 | } |
118 | 118 | /** |
119 | 119 | * sets the $where_sql for later use from client code |
120 | 120 | * @param string $where_sql |
121 | 121 | */ |
122 | - public function set_where_sql($where_sql){ |
|
122 | + public function set_where_sql($where_sql) { |
|
123 | 123 | $this->_where_sql = $where_sql; |
124 | 124 | } |
125 | - public function get_where_sql(){ |
|
125 | + public function get_where_sql() { |
|
126 | 126 | return $this->_where_sql; |
127 | 127 | } |
128 | 128 | |
@@ -143,10 +143,10 @@ discard block |
||
143 | 143 | * after the FROM and before the WHERE.) |
144 | 144 | * @param string $join_sql |
145 | 145 | */ |
146 | - public function set_main_model_join_sql($join_sql){ |
|
146 | + public function set_main_model_join_sql($join_sql) { |
|
147 | 147 | $this->_main_join_sql = $join_sql; |
148 | 148 | } |
149 | - public function get_full_join_sql(){ |
|
150 | - return $this->_main_join_sql . $this->_join_sql; |
|
149 | + public function get_full_join_sql() { |
|
150 | + return $this->_main_join_sql.$this->_join_sql; |
|
151 | 151 | } |
152 | 152 | } |
153 | 153 | \ No newline at end of file |
@@ -49,7 +49,7 @@ discard block |
||
49 | 49 | * creates join statement FROM primary table |
50 | 50 | * gets SQL like "LEFT JOIN table_name AS table_alias ON other_table_alias.pk = table_alias.fk |
51 | 51 | * |
52 | - * @param string $table allows us to set special conditions on the $table_name portion of the join query (i.e. doing a subquery) |
|
52 | + * @param string $primary_table_alias_with_model_chain_prefix |
|
53 | 53 | * @return string of SQL |
54 | 54 | */ |
55 | 55 | function get_join_sql( $primary_table_alias_with_model_chain_prefix ){ |
@@ -72,6 +72,7 @@ discard block |
||
72 | 72 | * " LEFT JOIN secondary_table_table AS Secondary ON ..." like get_join_sql, this function returns |
73 | 73 | * " LEFT JOIN primary_table AS Primary ON ...". |
74 | 74 | * This is useful if the secondary table is already included in the SQL, but the primary table is not yet. |
75 | + * @param string $secondary_table_alias_with_model_chain_prefix |
|
75 | 76 | * @return string |
76 | 77 | */ |
77 | 78 | function get_inverse_join_sql($secondary_table_alias_with_model_chain_prefix){ |
@@ -5,8 +5,8 @@ discard block |
||
5 | 5 | * table's rows. Ie, it can't have many rows in the secondary table that point to |
6 | 6 | * a single row in the primary table |
7 | 7 | */ |
8 | -require_once( EE_MODELS . 'helpers/EE_Table_Base.php'); |
|
9 | -class EE_Secondary_Table extends EE_Table_Base{ |
|
8 | +require_once(EE_MODELS.'helpers/EE_Table_Base.php'); |
|
9 | +class EE_Secondary_Table extends EE_Table_Base { |
|
10 | 10 | protected $_extra_join_conditions; |
11 | 11 | |
12 | 12 | /** |
@@ -19,15 +19,15 @@ discard block |
||
19 | 19 | * @param boolean $global whether the table is "global" as in there is only 1 table on an entire multisite install, |
20 | 20 | * or whether each site on a multisite install has a copy of this table |
21 | 21 | */ |
22 | - function __construct($table_name, $pk_column, $fk_column = null, $extra_join_conditions = null, $global = false ){ |
|
22 | + function __construct($table_name, $pk_column, $fk_column = null, $extra_join_conditions = null, $global = false) { |
|
23 | 23 | $this->_fk_on_table = $fk_column; |
24 | 24 | $this->_extra_join_conditions = $extra_join_conditions; |
25 | - parent::__construct( $table_name, $pk_column, $global ); |
|
25 | + parent::__construct($table_name, $pk_column, $global); |
|
26 | 26 | } |
27 | - function get_fk_on_table(){ |
|
27 | + function get_fk_on_table() { |
|
28 | 28 | return $this->_fk_on_table; |
29 | 29 | } |
30 | - function _construct_finalize_set_table_to_join_with(EE_Table_Base $table){ |
|
30 | + function _construct_finalize_set_table_to_join_with(EE_Table_Base $table) { |
|
31 | 31 | $this->_table_to_join_with = $table; |
32 | 32 | } |
33 | 33 | /** |
@@ -35,14 +35,14 @@ discard block |
||
35 | 35 | * @return string of sql like "Event.post_type = 'event'", which gets added to |
36 | 36 | * the end of the join statement with the primary table |
37 | 37 | */ |
38 | - function get_extra_join_conditions(){ |
|
38 | + function get_extra_join_conditions() { |
|
39 | 39 | return $this->_extra_join_conditions; |
40 | 40 | } |
41 | 41 | /** |
42 | 42 | * |
43 | 43 | * @return EE_Primary_Table |
44 | 44 | */ |
45 | - function get_table_to_join_with(){ |
|
45 | + function get_table_to_join_with() { |
|
46 | 46 | return $this->_table_to_join_with; |
47 | 47 | } |
48 | 48 | /** |
@@ -52,15 +52,15 @@ discard block |
||
52 | 52 | * @param string $table allows us to set special conditions on the $table_name portion of the join query (i.e. doing a subquery) |
53 | 53 | * @return string of SQL |
54 | 54 | */ |
55 | - function get_join_sql( $primary_table_alias_with_model_chain_prefix ){ |
|
55 | + function get_join_sql($primary_table_alias_with_model_chain_prefix) { |
|
56 | 56 | |
57 | 57 | $table_name = $this->get_table_name(); |
58 | - $secondary_table_alias = EE_Model_Parser::get_prefix_from_table_alias_with_model_relation_chain_prefix($primary_table_alias_with_model_chain_prefix) . $this->get_table_alias(); |
|
58 | + $secondary_table_alias = EE_Model_Parser::get_prefix_from_table_alias_with_model_relation_chain_prefix($primary_table_alias_with_model_chain_prefix).$this->get_table_alias(); |
|
59 | 59 | $other_table_pk = $this->get_table_to_join_with()->get_pk_column(); |
60 | 60 | $fk = $this->get_fk_on_table(); |
61 | 61 | $join_sql = " LEFT JOIN $table_name AS $secondary_table_alias ON $primary_table_alias_with_model_chain_prefix.$other_table_pk = $secondary_table_alias.$fk "; |
62 | - if($this->get_extra_join_conditions()){ |
|
63 | - $join_sql.="AND ".$this->get_extra_join_conditions(); |
|
62 | + if ($this->get_extra_join_conditions()) { |
|
63 | + $join_sql .= "AND ".$this->get_extra_join_conditions(); |
|
64 | 64 | } |
65 | 65 | return $join_sql; |
66 | 66 | } |
@@ -74,14 +74,14 @@ discard block |
||
74 | 74 | * This is useful if the secondary table is already included in the SQL, but the primary table is not yet. |
75 | 75 | * @return string |
76 | 76 | */ |
77 | - function get_inverse_join_sql($secondary_table_alias_with_model_chain_prefix){ |
|
78 | - $primary_table_name =$this->get_table_to_join_with()->get_table_name(); |
|
79 | - $primary_table_alias = EE_Model_Parser::get_prefix_from_table_alias_with_model_relation_chain_prefix($secondary_table_alias_with_model_chain_prefix) . $this->get_table_to_join_with()->get_table_alias(); |
|
80 | - $primary_table_pk = $this->get_table_to_join_with()->get_pk_column();//$this->get_pk_column(); |
|
77 | + function get_inverse_join_sql($secondary_table_alias_with_model_chain_prefix) { |
|
78 | + $primary_table_name = $this->get_table_to_join_with()->get_table_name(); |
|
79 | + $primary_table_alias = EE_Model_Parser::get_prefix_from_table_alias_with_model_relation_chain_prefix($secondary_table_alias_with_model_chain_prefix).$this->get_table_to_join_with()->get_table_alias(); |
|
80 | + $primary_table_pk = $this->get_table_to_join_with()->get_pk_column(); //$this->get_pk_column(); |
|
81 | 81 | $fk = $this->get_fk_on_table(); |
82 | 82 | $join_sql = " LEFT JOIN $primary_table_name AS $primary_table_alias ON $primary_table_alias.$primary_table_pk = $secondary_table_alias_with_model_chain_prefix.$fk "; |
83 | - if($this->get_extra_join_conditions()){ |
|
84 | - $join_sql.="AND ".$this->get_extra_join_conditions(); |
|
83 | + if ($this->get_extra_join_conditions()) { |
|
84 | + $join_sql .= "AND ".$this->get_extra_join_conditions(); |
|
85 | 85 | } |
86 | 86 | return $join_sql; |
87 | 87 | } |
@@ -94,7 +94,7 @@ discard block |
||
94 | 94 | public function get_select_join_limit_join($limit) { |
95 | 95 | //first get the select |
96 | 96 | $select = $this->get_select_join_limit($limit); |
97 | - $join_sql = $this->get_join_sql( $select ); |
|
97 | + $join_sql = $this->get_join_sql($select); |
|
98 | 98 | return $join_sql; |
99 | 99 | } |
100 | 100 | |
@@ -103,12 +103,12 @@ discard block |
||
103 | 103 | function get_fully_qualified_fk_column() { |
104 | 104 | $table_alias = $this->get_table_alias(); |
105 | 105 | $fk = $this->get_fk_on_table(); |
106 | - return $table_alias . '.' . $fk; |
|
106 | + return $table_alias.'.'.$fk; |
|
107 | 107 | } |
108 | 108 | |
109 | 109 | function get_fully_qualified_pk_on_fk_table() { |
110 | 110 | $table_alias = $this->get_table_to_join_with()->get_table_alias(); |
111 | 111 | $pk = $this->get_table_to_join_with()->get_pk_column(); |
112 | - return $table_alias . '.' . $pk; |
|
112 | + return $table_alias.'.'.$pk; |
|
113 | 113 | } |
114 | 114 | } |
115 | 115 | \ No newline at end of file |
@@ -17,6 +17,7 @@ discard block |
||
17 | 17 | * get related models across the relation, and add-and-remove the relationships. |
18 | 18 | * @param boolean $block_deletes for this type of relation, we block by default for now. if there are related models across this relation, block (prevent and add an error) the deletion of this model |
19 | 19 | * @param type $blocking_delete_error_message a customized error message on blocking deletes instead of the default |
20 | + * @param string $joining_model_name |
|
20 | 21 | */ |
21 | 22 | function __construct($joining_model_name,$block_deletes = true, $blocking_delete_error_message =''){ |
22 | 23 | $this->_joining_model_name = $joining_model_name; |
@@ -24,7 +25,7 @@ discard block |
||
24 | 25 | } |
25 | 26 | /** |
26 | 27 | * Gets the joining model's object |
27 | - * @return EEM_Base |
|
28 | + * @return boolean |
|
28 | 29 | */ |
29 | 30 | function get_join_model(){ |
30 | 31 | return $this->_get_model($this->_joining_model_name); |
@@ -1,7 +1,7 @@ discard block |
||
1 | 1 | <?php |
2 | 2 | |
3 | -require_once( EE_MODELS . 'relations/EE_Model_Relation_Base.php'); |
|
4 | -class EE_HABTM_Relation extends EE_Model_Relation_Base{ |
|
3 | +require_once(EE_MODELS.'relations/EE_Model_Relation_Base.php'); |
|
4 | +class EE_HABTM_Relation extends EE_Model_Relation_Base { |
|
5 | 5 | /** |
6 | 6 | * Model whicih defines the relation between two other models. Eg, the EE_Event_Question_Group model, |
7 | 7 | * which joins EE_Event and EE_Question_Group |
@@ -18,7 +18,7 @@ discard block |
||
18 | 18 | * @param boolean $block_deletes for this type of relation, we block by default for now. if there are related models across this relation, block (prevent and add an error) the deletion of this model |
19 | 19 | * @param type $blocking_delete_error_message a customized error message on blocking deletes instead of the default |
20 | 20 | */ |
21 | - function __construct($joining_model_name,$block_deletes = true, $blocking_delete_error_message =''){ |
|
21 | + function __construct($joining_model_name, $block_deletes = true, $blocking_delete_error_message = '') { |
|
22 | 22 | $this->_joining_model_name = $joining_model_name; |
23 | 23 | parent::__construct($block_deletes, $blocking_delete_error_message); |
24 | 24 | } |
@@ -26,7 +26,7 @@ discard block |
||
26 | 26 | * Gets the joining model's object |
27 | 27 | * @return EEM_Base |
28 | 28 | */ |
29 | - function get_join_model(){ |
|
29 | + function get_join_model() { |
|
30 | 30 | return $this->_get_model($this->_joining_model_name); |
31 | 31 | } |
32 | 32 | /** |
@@ -34,21 +34,21 @@ discard block |
||
34 | 34 | * @param string $model_relation_chain like 'Event.Event_Venue.Venue' |
35 | 35 | * @return string of SQL |
36 | 36 | */ |
37 | - function get_join_to_intermediate_model_statement($model_relation_chain){ |
|
37 | + function get_join_to_intermediate_model_statement($model_relation_chain) { |
|
38 | 38 | //create sql like |
39 | 39 | //LEFT JOIN join_table AS join_table_alias ON this_table_alias.this_table_pk = join_table_alias.join_table_fk_to_this |
40 | 40 | //LEFT JOIN other_table AS other_table_alias ON join_table_alias.join_table_fk_to_other = other_table_alias.other_table_pk |
41 | 41 | //remember the model relation chain to the JOIN model, because we'll |
42 | 42 | //need it for get_join_statement() |
43 | 43 | $this->_model_relation_chain_to_join_model = $model_relation_chain; |
44 | - $this_table_pk_field = $this->get_this_model()->get_primary_key_field();//get_foreign_key_to($this->get_other_model()->get_this_model_name()); |
|
44 | + $this_table_pk_field = $this->get_this_model()->get_primary_key_field(); //get_foreign_key_to($this->get_other_model()->get_this_model_name()); |
|
45 | 45 | $join_table_fk_field_to_this_table = $this->get_join_model()->get_foreign_key_to($this->get_this_model()->get_this_model_name()); |
46 | - $this_table_alias = EE_Model_Parser::extract_table_alias_model_relation_chain_prefix($model_relation_chain, $this->get_this_model()->get_this_model_name()) . $this_table_pk_field->get_table_alias(); |
|
46 | + $this_table_alias = EE_Model_Parser::extract_table_alias_model_relation_chain_prefix($model_relation_chain, $this->get_this_model()->get_this_model_name()).$this_table_pk_field->get_table_alias(); |
|
47 | 47 | |
48 | - $join_table_alias = EE_Model_Parser::extract_table_alias_model_relation_chain_prefix($model_relation_chain, $this->get_join_model()->get_this_model_name()) . $join_table_fk_field_to_this_table->get_table_alias(); |
|
48 | + $join_table_alias = EE_Model_Parser::extract_table_alias_model_relation_chain_prefix($model_relation_chain, $this->get_join_model()->get_this_model_name()).$join_table_fk_field_to_this_table->get_table_alias(); |
|
49 | 49 | $join_table = $this->get_join_model()->get_table_for_alias($join_table_alias); |
50 | 50 | //phew! ok, we have all the info we need, now we can create the SQL join string |
51 | - $SQL = $this->_left_join($join_table, $join_table_alias, $join_table_fk_field_to_this_table->get_table_column(), $this_table_alias, $this_table_pk_field->get_table_column()) . $this->get_join_model()->_construct_internal_join_to_table_with_alias($join_table_alias); |
|
51 | + $SQL = $this->_left_join($join_table, $join_table_alias, $join_table_fk_field_to_this_table->get_table_column(), $this_table_alias, $this_table_pk_field->get_table_column()).$this->get_join_model()->_construct_internal_join_to_table_with_alias($join_table_alias); |
|
52 | 52 | |
53 | 53 | return $SQL; |
54 | 54 | } |
@@ -60,18 +60,18 @@ discard block |
||
60 | 60 | * @param string $model_relation_chain like 'Event.Event_Venue.Venue' |
61 | 61 | * @return string of SQL |
62 | 62 | */ |
63 | - function get_join_statement($model_relation_chain){ |
|
64 | - if( $this->_model_relation_chain_to_join_model === NULL ){ |
|
65 | - throw new EE_Error( sprintf( __( 'When using EE_HABTM_Relation to create a join, you must call get_join_to_intermediate_model_statement BEFORE get_join_statement', 'event_espresso' ))); |
|
63 | + function get_join_statement($model_relation_chain) { |
|
64 | + if ($this->_model_relation_chain_to_join_model === NULL) { |
|
65 | + throw new EE_Error(sprintf(__('When using EE_HABTM_Relation to create a join, you must call get_join_to_intermediate_model_statement BEFORE get_join_statement', 'event_espresso'))); |
|
66 | 66 | } |
67 | 67 | $join_table_fk_field_to_this_table = $this->get_join_model()->get_foreign_key_to($this->get_this_model()->get_this_model_name()); |
68 | - $join_table_alias = EE_Model_Parser::extract_table_alias_model_relation_chain_prefix($this->_model_relation_chain_to_join_model, $this->get_join_model()->get_this_model_name()) . $join_table_fk_field_to_this_table->get_table_alias(); |
|
68 | + $join_table_alias = EE_Model_Parser::extract_table_alias_model_relation_chain_prefix($this->_model_relation_chain_to_join_model, $this->get_join_model()->get_this_model_name()).$join_table_fk_field_to_this_table->get_table_alias(); |
|
69 | 69 | $other_table_pk_field = $this->get_other_model()->get_primary_key_field(); |
70 | 70 | $join_table_fk_field_to_other_table = $this->get_join_model()->get_foreign_key_to($this->get_other_model()->get_this_model_name()); |
71 | - $other_table_alias = EE_Model_Parser::extract_table_alias_model_relation_chain_prefix($model_relation_chain, $this->get_other_model()->get_this_model_name()) . $other_table_pk_field->get_table_alias(); |
|
71 | + $other_table_alias = EE_Model_Parser::extract_table_alias_model_relation_chain_prefix($model_relation_chain, $this->get_other_model()->get_this_model_name()).$other_table_pk_field->get_table_alias(); |
|
72 | 72 | $other_table = $this->get_other_model()->get_table_for_alias($other_table_alias); |
73 | 73 | |
74 | - $SQL = $this->_left_join($other_table, $other_table_alias, $other_table_pk_field->get_table_column(), $join_table_alias, $join_table_fk_field_to_other_table->get_table_column()) . $this->get_other_model()->_construct_internal_join_to_table_with_alias($other_table_alias); |
|
74 | + $SQL = $this->_left_join($other_table, $other_table_alias, $other_table_pk_field->get_table_column(), $join_table_alias, $join_table_fk_field_to_other_table->get_table_column()).$this->get_other_model()->_construct_internal_join_to_table_with_alias($other_table_alias); |
|
75 | 75 | return $SQL; |
76 | 76 | } |
77 | 77 | |
@@ -84,36 +84,36 @@ discard block |
||
84 | 84 | * @param array $where_query col=>val pairs that are used as extra conditions for checking existing values and for setting new rows if no exact matches. |
85 | 85 | * @return EE_Base_Class |
86 | 86 | */ |
87 | - function add_relation_to($this_obj_or_id, $other_obj_or_id, $where_query = array() ){ |
|
87 | + function add_relation_to($this_obj_or_id, $other_obj_or_id, $where_query = array()) { |
|
88 | 88 | $this_model_obj = $this->get_this_model()->ensure_is_obj($this_obj_or_id, true); |
89 | 89 | $other_model_obj = $this->get_other_model()->ensure_is_obj($other_obj_or_id, true); |
90 | 90 | //check if such a relationship already exists |
91 | 91 | $join_model_fk_to_this_model = $this->get_join_model()->get_foreign_key_to($this->get_this_model()->get_this_model_name()); |
92 | 92 | $join_model_fk_to_other_model = $this->get_join_model()->get_foreign_key_to($this->get_other_model()->get_this_model_name()); |
93 | 93 | |
94 | - $cols_n_values = array( |
|
94 | + $cols_n_values = array( |
|
95 | 95 | $join_model_fk_to_this_model->get_name() => $this_model_obj->ID(), |
96 | 96 | $join_model_fk_to_other_model->get_name() => $other_model_obj->ID()); |
97 | 97 | |
98 | 98 | //if $where_query exists lets add them to the query_params. |
99 | - if ( !empty( $where_query ) ) { |
|
99 | + if ( ! empty($where_query)) { |
|
100 | 100 | //make sure we strip any of the join model names from the $where_query cause we don't need that in here (why? because client code may have used the same conditionals for get_all_related which DOES need the join model name) |
101 | 101 | //make sure we strip THIS models name from the query param |
102 | - foreach ( $where_query as $query_param => $val ) { |
|
103 | - $query_param = str_replace($this->get_join_model()->get_this_model_name().".","", $query_param); |
|
102 | + foreach ($where_query as $query_param => $val) { |
|
103 | + $query_param = str_replace($this->get_join_model()->get_this_model_name().".", "", $query_param); |
|
104 | 104 | $parsed_query[$query_param] = $val; |
105 | 105 | } |
106 | - $cols_n_values = array_merge( $cols_n_values, $parsed_query ); |
|
106 | + $cols_n_values = array_merge($cols_n_values, $parsed_query); |
|
107 | 107 | } |
108 | 108 | |
109 | - $query_params = array( $cols_n_values ); |
|
109 | + $query_params = array($cols_n_values); |
|
110 | 110 | |
111 | 111 | |
112 | 112 | $existing_entry_in_join_table = $this->get_join_model()->get_one($query_params); |
113 | 113 | //if there is already an entry in the join table, indicating a relationship, we're done |
114 | 114 | //again, if you want more sophisticated logic or insertions (handling more columns than just 2 foreign keys to |
115 | 115 | //the other tables, use the joining model directly! |
116 | - if( ! $existing_entry_in_join_table ){ |
|
116 | + if ( ! $existing_entry_in_join_table) { |
|
117 | 117 | $this->get_join_model()->insert($cols_n_values); |
118 | 118 | } |
119 | 119 | return $other_model_obj; |
@@ -125,29 +125,29 @@ discard block |
||
125 | 125 | * * @param array $where_query col=>val pairs that are used as extra conditions for checking existing values and for removing existing rows if exact matches exist. |
126 | 126 | * @return EE_Base_Class |
127 | 127 | */ |
128 | - function remove_relation_to($this_obj_or_id, $other_obj_or_id, $where_query = array() ){ |
|
128 | + function remove_relation_to($this_obj_or_id, $other_obj_or_id, $where_query = array()) { |
|
129 | 129 | $this_model_obj = $this->get_this_model()->ensure_is_obj($this_obj_or_id, true); |
130 | 130 | $other_model_obj = $this->get_other_model()->ensure_is_obj($other_obj_or_id, true); |
131 | 131 | //check if such a relationship already exists |
132 | 132 | $join_model_fk_to_this_model = $this->get_join_model()->get_foreign_key_to($this->get_this_model()->get_this_model_name()); |
133 | 133 | $join_model_fk_to_other_model = $this->get_join_model()->get_foreign_key_to($this->get_other_model()->get_this_model_name()); |
134 | 134 | |
135 | - $cols_n_values = array( |
|
135 | + $cols_n_values = array( |
|
136 | 136 | $join_model_fk_to_this_model->get_name() => $this_model_obj->ID(), |
137 | 137 | $join_model_fk_to_other_model->get_name() => $other_model_obj->ID()); |
138 | 138 | |
139 | 139 | //if $where_query exists lets add them to the query_params. |
140 | - if ( !empty( $where_query ) ) { |
|
140 | + if ( ! empty($where_query)) { |
|
141 | 141 | //make sure we strip any of the join model names from the $where_query cause we don't need that in here (why? because client code may have used the same conditionals for get_all_related which DOES need the join model name) |
142 | 142 | //make sure we strip THIS models name from the query param |
143 | - foreach ( $where_query as $query_param => $val ) { |
|
144 | - $query_param = str_replace($this->get_join_model()->get_this_model_name().".","", $query_param); |
|
143 | + foreach ($where_query as $query_param => $val) { |
|
144 | + $query_param = str_replace($this->get_join_model()->get_this_model_name().".", "", $query_param); |
|
145 | 145 | $parsed_query[$query_param] = $val; |
146 | 146 | } |
147 | - $cols_n_values = array_merge( $cols_n_values, $parsed_query ); |
|
147 | + $cols_n_values = array_merge($cols_n_values, $parsed_query); |
|
148 | 148 | } |
149 | 149 | |
150 | - $existing_entry_in_join_table = $this->get_join_model()->delete( array($cols_n_values) ); |
|
150 | + $existing_entry_in_join_table = $this->get_join_model()->delete(array($cols_n_values)); |
|
151 | 151 | return $other_model_obj; |
152 | 152 | } |
153 | 153 | } |
@@ -50,7 +50,7 @@ discard block |
||
50 | 50 | |
51 | 51 | |
52 | 52 | /** |
53 | - * @param $this_model_name |
|
53 | + * @param string $this_model_name |
|
54 | 54 | * @param $other_model_name |
55 | 55 | * @throws EE_Error |
56 | 56 | */ |
@@ -67,7 +67,7 @@ discard block |
||
67 | 67 | |
68 | 68 | /** |
69 | 69 | * Gets the model where this relation is defined. |
70 | - * @return EEM_Base |
|
70 | + * @return boolean |
|
71 | 71 | */ |
72 | 72 | function get_this_model(){ |
73 | 73 | return $this->_get_model($this->_this_model_name); |
@@ -78,7 +78,7 @@ discard block |
||
78 | 78 | /** |
79 | 79 | * Gets the model which this relation establishes the relation TO (ie, |
80 | 80 | * this relation object was defined on get_this_model(), get_other_model() is the other one) |
81 | - * @return EEM_Base |
|
81 | + * @return boolean |
|
82 | 82 | */ |
83 | 83 | function get_other_model(){ |
84 | 84 | return $this->_get_model($this->_other_model_name); |
@@ -89,7 +89,7 @@ discard block |
||
89 | 89 | /** |
90 | 90 | * Internally used by get_this_model() and get_other_model() |
91 | 91 | * @param string $model_name like Event, Question_Group, etc. omit the EEM_ |
92 | - * @return EEM_Base |
|
92 | + * @return boolean |
|
93 | 93 | */ |
94 | 94 | protected function _get_model($model_name){ |
95 | 95 | $modelInstance = EE_Registry::instance()->load_model( $model_name ); |
@@ -112,9 +112,9 @@ discard block |
||
112 | 112 | |
113 | 113 | /** |
114 | 114 | * @param $other_table |
115 | - * @param $other_table_alias |
|
115 | + * @param string $other_table_alias |
|
116 | 116 | * @param $other_table_column |
117 | - * @param $this_table_alias |
|
117 | + * @param string $this_table_alias |
|
118 | 118 | * @param $this_table_join_column |
119 | 119 | * @param string $extra_join_sql |
120 | 120 | * @return string |
@@ -168,7 +168,7 @@ discard block |
||
168 | 168 | * parameters are specified, then all related model objects will be deleted. |
169 | 169 | * Note: If the related model is extends EEM_Soft_Delete_Base, then the related |
170 | 170 | * model objects will only be soft-deleted. |
171 | - * @param EE_Base_Class|int|string $model_object_or_id |
|
171 | + * @param EE_Base_Class $model_object_or_id |
|
172 | 172 | * @param array $query_params |
173 | 173 | * @return int of how many related models got deleted |
174 | 174 | */ |
@@ -196,7 +196,7 @@ discard block |
||
196 | 196 | * parameters are specified, then all related model objects will be deleted. |
197 | 197 | * Note: If the related model is extends EEM_Soft_Delete_Base, then the related |
198 | 198 | * model objects will only be soft-deleted. |
199 | - * @param EE_Base_Class|int|string $model_object_or_id |
|
199 | + * @param EE_Base_Class $model_object_or_id |
|
200 | 200 | * @param array $query_params |
201 | 201 | * @return int of how many related models got deleted |
202 | 202 | */ |
@@ -104,8 +104,9 @@ discard block |
||
104 | 104 | * @param string $timezone timezone to set. |
105 | 105 | */ |
106 | 106 | public function set_timezone( $timezone ) { |
107 | - if($timezone !== NULL) |
|
108 | - $this->_timezone = $timezone; |
|
107 | + if($timezone !== NULL) { |
|
108 | + $this->_timezone = $timezone; |
|
109 | + } |
|
109 | 110 | } |
110 | 111 | |
111 | 112 | |
@@ -213,12 +214,12 @@ discard block |
||
213 | 214 | $deleted_count++; |
214 | 215 | if( ! $delete_is_blocked ){ |
215 | 216 | $related_model_object->delete_permanently(); |
216 | - }else{ |
|
217 | + } else{ |
|
217 | 218 | //delete is blocked |
218 | 219 | //brent and darren, in this case, wanted to just soft delete it then |
219 | 220 | $related_model_object->delete(); |
220 | 221 | } |
221 | - }else{ |
|
222 | + } else{ |
|
222 | 223 | //its not a soft-deletable thing anyways. do the normal logic. |
223 | 224 | if( ! $delete_is_blocked ){ |
224 | 225 | $this->remove_relation_to($model_object_or_id, $related_model_object); |
@@ -241,7 +242,7 @@ discard block |
||
241 | 242 | protected function _get_model_object_id($model_object_or_id) { |
242 | 243 | if($model_object_or_id instanceof EE_Base_Class){ |
243 | 244 | $model_object_id = $model_object_or_id->ID(); |
244 | - }else{ |
|
245 | + } else{ |
|
245 | 246 | $model_object_id = $model_object_or_id; |
246 | 247 | } |
247 | 248 | if( ! $model_object_id){ |
@@ -316,7 +317,7 @@ discard block |
||
316 | 317 | public function get_deletion_error_message(){ |
317 | 318 | if($this->_blocking_delete_error_message){ |
318 | 319 | return $this->_blocking_delete_error_message; |
319 | - }else{ |
|
320 | + } else{ |
|
320 | 321 | // return sprintf(__('Cannot delete %1$s when there are related %2$s', "event_espresso"),$this->get_this_model()->item_name(2),$this->get_other_model()->item_name(2)); |
321 | 322 | return sprintf( |
322 | 323 | __( 'This %1$s is currently linked to one or more %2$s records. If this %1$s is incorrect, then please remove it from all %3$s before attempting to delete it.', "event_espresso"), |
@@ -7,7 +7,7 @@ discard block |
||
7 | 7 | * Once those two models are setup correctly, and the relation object has the names of each, it can |
8 | 8 | * magically figure out what tables must be joined on what fields during querying. |
9 | 9 | */ |
10 | -abstract class EE_Model_Relation_Base{ |
|
10 | +abstract class EE_Model_Relation_Base { |
|
11 | 11 | /** |
12 | 12 | * The model name of which this relation is a component (ie, the model that called new EE_Model_Relation_Base) |
13 | 13 | * @var string eg Event, Question_Group, Registration |
@@ -42,9 +42,9 @@ discard block |
||
42 | 42 | * @param boolean $block_deletes if there are related models across this relation, block (prevent and add an error) the deletion of this model |
43 | 43 | * @param string $blocking_delete_error_message a customized error message on blocking deletes instead of the default |
44 | 44 | */ |
45 | - function __construct($block_deletes, $blocking_delete_error_message){ |
|
45 | + function __construct($block_deletes, $blocking_delete_error_message) { |
|
46 | 46 | $this->_blocking_delete = $block_deletes; |
47 | - $this->_blocking_delete_error_message=$blocking_delete_error_message; |
|
47 | + $this->_blocking_delete_error_message = $blocking_delete_error_message; |
|
48 | 48 | } |
49 | 49 | |
50 | 50 | |
@@ -54,12 +54,12 @@ discard block |
||
54 | 54 | * @param $other_model_name |
55 | 55 | * @throws EE_Error |
56 | 56 | */ |
57 | - function _construct_finalize_set_models($this_model_name, $other_model_name){ |
|
57 | + function _construct_finalize_set_models($this_model_name, $other_model_name) { |
|
58 | 58 | $this->_this_model_name = $this_model_name; |
59 | 59 | $this->_other_model_name = $other_model_name; |
60 | - if(is_string($this->_blocking_delete)){ |
|
60 | + if (is_string($this->_blocking_delete)) { |
|
61 | 61 | throw new EE_Error(sprintf(__("When instantiating the relation of type %s from %s to %s, the \$block_deletes argument should be a boolean, not a string (%s)", "event_espresso"), |
62 | - get_class($this),$this_model_name,$other_model_name,$this->_blocking_delete)); |
|
62 | + get_class($this), $this_model_name, $other_model_name, $this->_blocking_delete)); |
|
63 | 63 | } |
64 | 64 | } |
65 | 65 | |
@@ -69,7 +69,7 @@ discard block |
||
69 | 69 | * Gets the model where this relation is defined. |
70 | 70 | * @return EEM_Base |
71 | 71 | */ |
72 | - function get_this_model(){ |
|
72 | + function get_this_model() { |
|
73 | 73 | return $this->_get_model($this->_this_model_name); |
74 | 74 | } |
75 | 75 | |
@@ -80,7 +80,7 @@ discard block |
||
80 | 80 | * this relation object was defined on get_this_model(), get_other_model() is the other one) |
81 | 81 | * @return EEM_Base |
82 | 82 | */ |
83 | - function get_other_model(){ |
|
83 | + function get_other_model() { |
|
84 | 84 | return $this->_get_model($this->_other_model_name); |
85 | 85 | } |
86 | 86 | |
@@ -91,9 +91,9 @@ discard block |
||
91 | 91 | * @param string $model_name like Event, Question_Group, etc. omit the EEM_ |
92 | 92 | * @return EEM_Base |
93 | 93 | */ |
94 | - protected function _get_model($model_name){ |
|
95 | - $modelInstance = EE_Registry::instance()->load_model( $model_name ); |
|
96 | - $modelInstance->set_timezone( $this->_timezone ); |
|
94 | + protected function _get_model($model_name) { |
|
95 | + $modelInstance = EE_Registry::instance()->load_model($model_name); |
|
96 | + $modelInstance->set_timezone($this->_timezone); |
|
97 | 97 | return $modelInstance; |
98 | 98 | } |
99 | 99 | |
@@ -103,8 +103,8 @@ discard block |
||
103 | 103 | * entirely possible that relations may be called from a model and we need to make sure those relations have their timezone set correctly. |
104 | 104 | * @param string $timezone timezone to set. |
105 | 105 | */ |
106 | - public function set_timezone( $timezone ) { |
|
107 | - if($timezone !== NULL) |
|
106 | + public function set_timezone($timezone) { |
|
107 | + if ($timezone !== NULL) |
|
108 | 108 | $this->_timezone = $timezone; |
109 | 109 | } |
110 | 110 | |
@@ -119,8 +119,8 @@ discard block |
||
119 | 119 | * @param string $extra_join_sql |
120 | 120 | * @return string |
121 | 121 | */ |
122 | - protected function _left_join($other_table,$other_table_alias,$other_table_column,$this_table_alias,$this_table_join_column, $extra_join_sql = ''){ |
|
123 | - return " LEFT JOIN ".$other_table." AS ".$other_table_alias. " ON ".$other_table_alias.".".$other_table_column."=".$this_table_alias.".".$this_table_join_column. ($extra_join_sql ? " AND $extra_join_sql" : ''); |
|
122 | + protected function _left_join($other_table, $other_table_alias, $other_table_column, $this_table_alias, $this_table_join_column, $extra_join_sql = '') { |
|
123 | + return " LEFT JOIN ".$other_table." AS ".$other_table_alias." ON ".$other_table_alias.".".$other_table_column."=".$this_table_alias.".".$this_table_join_column.($extra_join_sql ? " AND $extra_join_sql" : ''); |
|
124 | 124 | } |
125 | 125 | |
126 | 126 | |
@@ -136,10 +136,10 @@ discard block |
||
136 | 136 | * @param boolean $values_already_prepared_by_model_object |
137 | 137 | * @return EE_Base_Class[] |
138 | 138 | */ |
139 | - public function get_all_related($model_object_or_id, $query_params = array(), $values_already_prepared_by_model_object = false){ |
|
139 | + public function get_all_related($model_object_or_id, $query_params = array(), $values_already_prepared_by_model_object = false) { |
|
140 | 140 | $query_params = $this->_disable_default_where_conditions_on_query_param($query_params); |
141 | 141 | $query_param_where_this_model_pk = $this->get_this_model()->get_this_model_name().".".$this->get_this_model()->get_primary_key_field()->get_name(); |
142 | - $model_object_id = $this->_get_model_object_id( $model_object_or_id ); |
|
142 | + $model_object_id = $this->_get_model_object_id($model_object_or_id); |
|
143 | 143 | $query_params[0][$query_param_where_this_model_pk] = $model_object_id; |
144 | 144 | return $this->get_other_model()->get_all($query_params); |
145 | 145 | } |
@@ -151,9 +151,9 @@ discard block |
||
151 | 151 | * @param string $query_params |
152 | 152 | * @return string |
153 | 153 | */ |
154 | - protected function _disable_default_where_conditions_on_query_param($query_params){ |
|
155 | - if( ! isset($query_params['default_where_conditions'])){ |
|
156 | - $query_params['default_where_conditions']='none'; |
|
154 | + protected function _disable_default_where_conditions_on_query_param($query_params) { |
|
155 | + if ( ! isset($query_params['default_where_conditions'])) { |
|
156 | + $query_params['default_where_conditions'] = 'none'; |
|
157 | 157 | } |
158 | 158 | return $query_params; |
159 | 159 | } |
@@ -169,15 +169,15 @@ discard block |
||
169 | 169 | * @param array $query_params |
170 | 170 | * @return int of how many related models got deleted |
171 | 171 | */ |
172 | - public function delete_all_related($model_object_or_id,$query_params = array()){ |
|
172 | + public function delete_all_related($model_object_or_id, $query_params = array()) { |
|
173 | 173 | //for each thing we would delete, |
174 | - $related_model_objects = $this->get_all_related($model_object_or_id,$query_params); |
|
174 | + $related_model_objects = $this->get_all_related($model_object_or_id, $query_params); |
|
175 | 175 | //determine if it's blocked by anything else before it can be deletedx |
176 | 176 | $deleted_count = 0; |
177 | - foreach($related_model_objects as $related_model_object){ |
|
177 | + foreach ($related_model_objects as $related_model_object) { |
|
178 | 178 | $delete_is_blocked = $this->get_other_model()->delete_is_blocked_by_related_models($related_model_object, $model_object_or_id); |
179 | 179 | /* @var $model_object_or_id EE_Base_Class */ |
180 | - if( ! $delete_is_blocked ){ |
|
180 | + if ( ! $delete_is_blocked) { |
|
181 | 181 | $this->remove_relation_to($model_object_or_id, $related_model_object); |
182 | 182 | $related_model_object->delete(); |
183 | 183 | $deleted_count++; |
@@ -197,27 +197,27 @@ discard block |
||
197 | 197 | * @param array $query_params |
198 | 198 | * @return int of how many related models got deleted |
199 | 199 | */ |
200 | - public function delete_related_permanently($model_object_or_id,$query_params = array()){ |
|
200 | + public function delete_related_permanently($model_object_or_id, $query_params = array()) { |
|
201 | 201 | //for each thing we would delete, |
202 | - $related_model_objects = $this->get_all_related($model_object_or_id,$query_params); |
|
202 | + $related_model_objects = $this->get_all_related($model_object_or_id, $query_params); |
|
203 | 203 | //determine if it's blocked by anything else before it can be deletedx |
204 | 204 | $deleted_count = 0; |
205 | - foreach($related_model_objects as $related_model_object){ |
|
205 | + foreach ($related_model_objects as $related_model_object) { |
|
206 | 206 | $delete_is_blocked = $this->get_other_model()->delete_is_blocked_by_related_models($related_model_object, $model_object_or_id); |
207 | 207 | /* @var $model_object_or_id EE_Base_Class */ |
208 | - if( $related_model_object instanceof EE_Soft_Delete_Base_Class ){ |
|
208 | + if ($related_model_object instanceof EE_Soft_Delete_Base_Class) { |
|
209 | 209 | $this->remove_relation_to($model_object_or_id, $related_model_object); |
210 | 210 | $deleted_count++; |
211 | - if( ! $delete_is_blocked ){ |
|
211 | + if ( ! $delete_is_blocked) { |
|
212 | 212 | $related_model_object->delete_permanently(); |
213 | - }else{ |
|
213 | + } else { |
|
214 | 214 | //delete is blocked |
215 | 215 | //brent and darren, in this case, wanted to just soft delete it then |
216 | 216 | $related_model_object->delete(); |
217 | 217 | } |
218 | - }else{ |
|
218 | + } else { |
|
219 | 219 | //its not a soft-deletable thing anyways. do the normal logic. |
220 | - if( ! $delete_is_blocked ){ |
|
220 | + if ( ! $delete_is_blocked) { |
|
221 | 221 | $this->remove_relation_to($model_object_or_id, $related_model_object); |
222 | 222 | $related_model_object->delete(); |
223 | 223 | $deleted_count++; |
@@ -236,13 +236,13 @@ discard block |
||
236 | 236 | * @return int |
237 | 237 | */ |
238 | 238 | protected function _get_model_object_id($model_object_or_id) { |
239 | - if($model_object_or_id instanceof EE_Base_Class){ |
|
239 | + if ($model_object_or_id instanceof EE_Base_Class) { |
|
240 | 240 | $model_object_id = $model_object_or_id->ID(); |
241 | - }else{ |
|
241 | + } else { |
|
242 | 242 | $model_object_id = $model_object_or_id; |
243 | 243 | } |
244 | - if( ! $model_object_id){ |
|
245 | - throw new EE_Error(sprintf(__("Sorry, we cant get the related %s model objects to %s model object before it has an ID. You can solve that by just saving it before trying to get its related model objects", "event_espresso"),$this->get_other_model()->get_this_model_name(),$this->get_this_model()->get_this_model_name())); |
|
244 | + if ( ! $model_object_id) { |
|
245 | + throw new EE_Error(sprintf(__("Sorry, we cant get the related %s model objects to %s model object before it has an ID. You can solve that by just saving it before trying to get its related model objects", "event_espresso"), $this->get_other_model()->get_this_model_name(), $this->get_this_model()->get_this_model_name())); |
|
246 | 246 | } |
247 | 247 | return $model_object_id; |
248 | 248 | } |
@@ -285,10 +285,10 @@ discard block |
||
285 | 285 | * @param array $where_query_param like EEM_Base::get_all's $query_params[0] (where conditions) |
286 | 286 | * @return EE_Base_Class[] |
287 | 287 | */ |
288 | - public function remove_relations($this_obj_or_id,$where_query_param = array()){ |
|
289 | - $related_things = $this->get_all_related($this_obj_or_id,array($where_query_param)); |
|
288 | + public function remove_relations($this_obj_or_id, $where_query_param = array()) { |
|
289 | + $related_things = $this->get_all_related($this_obj_or_id, array($where_query_param)); |
|
290 | 290 | $objs_removed = array(); |
291 | - foreach($related_things as $related_thing){ |
|
291 | + foreach ($related_things as $related_thing) { |
|
292 | 292 | $objs_removed[] = $this->remove_relation_to($this_obj_or_id, $related_thing); |
293 | 293 | } |
294 | 294 | return $objs_removed; |
@@ -301,7 +301,7 @@ discard block |
||
301 | 301 | * related objects exist, returns false. |
302 | 302 | * @return boolean |
303 | 303 | */ |
304 | - public function block_delete_if_related_models_exist(){ |
|
304 | + public function block_delete_if_related_models_exist() { |
|
305 | 305 | return $this->_blocking_delete; |
306 | 306 | } |
307 | 307 | |
@@ -310,13 +310,13 @@ discard block |
||
310 | 310 | * Gets the error message to show |
311 | 311 | * @return string |
312 | 312 | */ |
313 | - public function get_deletion_error_message(){ |
|
314 | - if($this->_blocking_delete_error_message){ |
|
313 | + public function get_deletion_error_message() { |
|
314 | + if ($this->_blocking_delete_error_message) { |
|
315 | 315 | return $this->_blocking_delete_error_message; |
316 | - }else{ |
|
316 | + } else { |
|
317 | 317 | // return sprintf(__('Cannot delete %1$s when there are related %2$s', "event_espresso"),$this->get_this_model()->item_name(2),$this->get_other_model()->item_name(2)); |
318 | 318 | return sprintf( |
319 | - __( 'This %1$s is currently linked to one or more %2$s records. If this %1$s is incorrect, then please remove it from all %3$s before attempting to delete it.', "event_espresso"), |
|
319 | + __('This %1$s is currently linked to one or more %2$s records. If this %1$s is incorrect, then please remove it from all %3$s before attempting to delete it.', "event_espresso"), |
|
320 | 320 | $this->get_this_model()->item_name(1), |
321 | 321 | $this->get_other_model()->item_name(1), |
322 | 322 | $this->get_other_model()->item_name(2) |