@@ -12,9 +12,9 @@ discard block |
||
12 | 12 | * @package WooCommerce/RestApi |
13 | 13 | */ |
14 | 14 | |
15 | -defined( 'ABSPATH' ) || exit; |
|
15 | +defined('ABSPATH') || exit; |
|
16 | 16 | |
17 | -if ( version_compare( PHP_VERSION, '5.6.0', '<' ) ) { |
|
17 | +if (version_compare(PHP_VERSION, '5.6.0', '<')) { |
|
18 | 18 | return; |
19 | 19 | } |
20 | 20 | |
@@ -27,11 +27,11 @@ discard block |
||
27 | 27 | /** |
28 | 28 | * This callback registers this version of the API with WooCommerce. |
29 | 29 | */ |
30 | -$register_callback = function() use ( $version, $init_callback ) { |
|
31 | - if ( ! is_callable( array( wc()->api, 'register' ) ) ) { |
|
30 | +$register_callback = function() use ($version, $init_callback) { |
|
31 | + if ( ! is_callable(array(wc()->api, 'register'))) { |
|
32 | 32 | return; |
33 | 33 | } |
34 | - wc()->api->register( $version, $init_callback ); |
|
34 | + wc()->api->register($version, $init_callback); |
|
35 | 35 | }; |
36 | 36 | |
37 | -add_action( 'woocommerce_loaded', $register_callback ); |
|
37 | +add_action('woocommerce_loaded', $register_callback); |
@@ -8,7 +8,7 @@ discard block |
||
8 | 8 | * @package WooCommerce/RestApi |
9 | 9 | */ |
10 | 10 | |
11 | -if ( ! defined( 'ABSPATH' ) ) { |
|
11 | +if ( ! defined('ABSPATH')) { |
|
12 | 12 | exit; |
13 | 13 | } |
14 | 14 | |
@@ -36,11 +36,11 @@ discard block |
||
36 | 36 | array( |
37 | 37 | array( |
38 | 38 | 'methods' => WP_REST_Server::READABLE, |
39 | - 'callback' => array( $this, 'get_items' ), |
|
40 | - 'permission_callback' => array( $this, 'get_items_permissions_check' ), |
|
39 | + 'callback' => array($this, 'get_items'), |
|
40 | + 'permission_callback' => array($this, 'get_items_permissions_check'), |
|
41 | 41 | 'args' => $this->get_collection_params(), |
42 | 42 | ), |
43 | - 'schema' => array( $this, 'get_public_item_schema' ), |
|
43 | + 'schema' => array($this, 'get_public_item_schema'), |
|
44 | 44 | ) |
45 | 45 | ); |
46 | 46 | |
@@ -50,14 +50,14 @@ discard block |
||
50 | 50 | array( |
51 | 51 | 'args' => array( |
52 | 52 | 'id' => array( |
53 | - 'description' => __( 'Unique identifier for the resource.', 'woocommerce' ), |
|
53 | + 'description' => __('Unique identifier for the resource.', 'woocommerce'), |
|
54 | 54 | 'type' => 'integer', |
55 | 55 | ), |
56 | 56 | ), |
57 | 57 | array( |
58 | 58 | 'methods' => WP_REST_Server::READABLE, |
59 | - 'callback' => array( $this, 'get_item' ), |
|
60 | - 'permission_callback' => array( $this, 'get_item_permissions_check' ), |
|
59 | + 'callback' => array($this, 'get_item'), |
|
60 | + 'permission_callback' => array($this, 'get_item_permissions_check'), |
|
61 | 61 | 'args' => array( |
62 | 62 | 'context' => $this->get_context_param( |
63 | 63 | array( |
@@ -66,7 +66,7 @@ discard block |
||
66 | 66 | ), |
67 | 67 | ), |
68 | 68 | ), |
69 | - 'schema' => array( $this, 'get_public_item_schema' ), |
|
69 | + 'schema' => array($this, 'get_public_item_schema'), |
|
70 | 70 | ) |
71 | 71 | ); |
72 | 72 | } |
@@ -78,24 +78,24 @@ discard block |
||
78 | 78 | * @param string $context Request context. |
79 | 79 | * @return bool|WP_Error |
80 | 80 | */ |
81 | - protected function check_permissions( $request, $context = 'read' ) { |
|
81 | + protected function check_permissions($request, $context = 'read') { |
|
82 | 82 | // Get taxonomy. |
83 | - $taxonomy = $this->get_taxonomy( $request ); |
|
84 | - if ( ! $taxonomy || ! taxonomy_exists( $taxonomy ) ) { |
|
85 | - return new WP_Error( 'woocommerce_rest_taxonomy_invalid', __( 'Taxonomy does not exist.', 'woocommerce' ), array( 'status' => 404 ) ); |
|
83 | + $taxonomy = $this->get_taxonomy($request); |
|
84 | + if ( ! $taxonomy || ! taxonomy_exists($taxonomy)) { |
|
85 | + return new WP_Error('woocommerce_rest_taxonomy_invalid', __('Taxonomy does not exist.', 'woocommerce'), array('status' => 404)); |
|
86 | 86 | } |
87 | 87 | |
88 | 88 | // Check permissions for a single term. |
89 | - $id = intval( $request['id'] ); |
|
90 | - if ( $id ) { |
|
91 | - $term = get_term( $id, $taxonomy ); |
|
89 | + $id = intval($request['id']); |
|
90 | + if ($id) { |
|
91 | + $term = get_term($id, $taxonomy); |
|
92 | 92 | |
93 | - if ( is_wp_error( $term ) || ! $term || $term->taxonomy !== $taxonomy ) { |
|
94 | - return new WP_Error( 'woocommerce_rest_term_invalid', __( 'Resource does not exist.', 'woocommerce' ), array( 'status' => 404 ) ); |
|
93 | + if (is_wp_error($term) || ! $term || $term->taxonomy !== $taxonomy) { |
|
94 | + return new WP_Error('woocommerce_rest_term_invalid', __('Resource does not exist.', 'woocommerce'), array('status' => 404)); |
|
95 | 95 | } |
96 | 96 | } |
97 | 97 | |
98 | - return current_user_can( 'edit_posts' ); |
|
98 | + return current_user_can('edit_posts'); |
|
99 | 99 | } |
100 | 100 | |
101 | 101 | /** |
@@ -105,7 +105,7 @@ discard block |
||
105 | 105 | * @param WP_REST_Request $request Request instance. |
106 | 106 | * @return WP_REST_Response |
107 | 107 | */ |
108 | - public function prepare_item_for_response( $item, $request ) { |
|
108 | + public function prepare_item_for_response($item, $request) { |
|
109 | 109 | $data = array( |
110 | 110 | 'id' => (int) $item->term_id, |
111 | 111 | 'name' => $item->name, |
@@ -114,14 +114,14 @@ discard block |
||
114 | 114 | 'count' => (int) $item->count, |
115 | 115 | ); |
116 | 116 | |
117 | - $context = ! empty( $request['context'] ) ? $request['context'] : 'view'; |
|
118 | - $data = $this->add_additional_fields_to_object( $data, $request ); |
|
119 | - $data = $this->filter_response_by_context( $data, $context ); |
|
117 | + $context = ! empty($request['context']) ? $request['context'] : 'view'; |
|
118 | + $data = $this->add_additional_fields_to_object($data, $request); |
|
119 | + $data = $this->filter_response_by_context($data, $context); |
|
120 | 120 | |
121 | - $response = rest_ensure_response( $data ); |
|
121 | + $response = rest_ensure_response($data); |
|
122 | 122 | |
123 | - $response->header( 'X-Woo-Notice', __( 'Private REST API for use by block editor only.', 'woocommerce' ) ); |
|
124 | - $response->add_links( $this->prepare_links( $item, $request ) ); |
|
123 | + $response->header('X-Woo-Notice', __('Private REST API for use by block editor only.', 'woocommerce')); |
|
124 | + $response->add_links($this->prepare_links($item, $request)); |
|
125 | 125 | |
126 | 126 | return $response; |
127 | 127 | } |
@@ -146,6 +146,6 @@ discard block |
||
146 | 146 | $schema['properties']['parent'] = $raw_schema['properties']['parent']; |
147 | 147 | $schema['properties']['count'] = $raw_schema['properties']['count']; |
148 | 148 | |
149 | - return $this->add_additional_fields_schema( $schema ); |
|
149 | + return $this->add_additional_fields_schema($schema); |
|
150 | 150 | } |
151 | 151 | } |
@@ -8,7 +8,7 @@ discard block |
||
8 | 8 | * @package WooCommerce/RestApi |
9 | 9 | */ |
10 | 10 | |
11 | -if ( ! defined( 'ABSPATH' ) ) { |
|
11 | +if ( ! defined('ABSPATH')) { |
|
12 | 12 | exit; |
13 | 13 | } |
14 | 14 | |
@@ -36,11 +36,11 @@ discard block |
||
36 | 36 | array( |
37 | 37 | array( |
38 | 38 | 'methods' => WP_REST_Server::READABLE, |
39 | - 'callback' => array( $this, 'get_items' ), |
|
40 | - 'permission_callback' => array( $this, 'get_items_permissions_check' ), |
|
39 | + 'callback' => array($this, 'get_items'), |
|
40 | + 'permission_callback' => array($this, 'get_items_permissions_check'), |
|
41 | 41 | 'args' => $this->get_collection_params(), |
42 | 42 | ), |
43 | - 'schema' => array( $this, 'get_public_item_schema' ), |
|
43 | + 'schema' => array($this, 'get_public_item_schema'), |
|
44 | 44 | ) |
45 | 45 | ); |
46 | 46 | |
@@ -50,14 +50,14 @@ discard block |
||
50 | 50 | array( |
51 | 51 | 'args' => array( |
52 | 52 | 'id' => array( |
53 | - 'description' => __( 'Unique identifier for the resource.', 'woocommerce' ), |
|
53 | + 'description' => __('Unique identifier for the resource.', 'woocommerce'), |
|
54 | 54 | 'type' => 'integer', |
55 | 55 | ), |
56 | 56 | ), |
57 | 57 | array( |
58 | 58 | 'methods' => WP_REST_Server::READABLE, |
59 | - 'callback' => array( $this, 'get_item' ), |
|
60 | - 'permission_callback' => array( $this, 'get_item_permissions_check' ), |
|
59 | + 'callback' => array($this, 'get_item'), |
|
60 | + 'permission_callback' => array($this, 'get_item_permissions_check'), |
|
61 | 61 | 'args' => array( |
62 | 62 | 'context' => $this->get_context_param( |
63 | 63 | array( |
@@ -66,7 +66,7 @@ discard block |
||
66 | 66 | ), |
67 | 67 | ), |
68 | 68 | ), |
69 | - 'schema' => array( $this, 'get_public_item_schema' ), |
|
69 | + 'schema' => array($this, 'get_public_item_schema'), |
|
70 | 70 | ) |
71 | 71 | ); |
72 | 72 | } |
@@ -77,9 +77,9 @@ discard block |
||
77 | 77 | * @param WP_REST_Request $request Full details about the request. |
78 | 78 | * @return WP_Error|boolean |
79 | 79 | */ |
80 | - public function get_items_permissions_check( $request ) { |
|
81 | - if ( ! current_user_can( 'edit_posts' ) ) { |
|
82 | - return new WP_Error( 'woocommerce_rest_cannot_view', __( 'Sorry, you cannot list resources.', 'woocommerce' ), array( 'status' => rest_authorization_required_code() ) ); |
|
80 | + public function get_items_permissions_check($request) { |
|
81 | + if ( ! current_user_can('edit_posts')) { |
|
82 | + return new WP_Error('woocommerce_rest_cannot_view', __('Sorry, you cannot list resources.', 'woocommerce'), array('status' => rest_authorization_required_code())); |
|
83 | 83 | } |
84 | 84 | |
85 | 85 | return true; |
@@ -90,15 +90,15 @@ discard block |
||
90 | 90 | * @param WP_REST_Request $request Full details about the request. |
91 | 91 | * @return WP_Error|boolean |
92 | 92 | */ |
93 | - public function get_item_permissions_check( $request ) { |
|
94 | - $taxonomy = $this->get_taxonomy( $request ); |
|
93 | + public function get_item_permissions_check($request) { |
|
94 | + $taxonomy = $this->get_taxonomy($request); |
|
95 | 95 | |
96 | - if ( ! $taxonomy || ! taxonomy_exists( $taxonomy ) ) { |
|
97 | - return new WP_Error( 'woocommerce_rest_taxonomy_invalid', __( 'Resource does not exist.', 'woocommerce' ), array( 'status' => 404 ) ); |
|
96 | + if ( ! $taxonomy || ! taxonomy_exists($taxonomy)) { |
|
97 | + return new WP_Error('woocommerce_rest_taxonomy_invalid', __('Resource does not exist.', 'woocommerce'), array('status' => 404)); |
|
98 | 98 | } |
99 | 99 | |
100 | - if ( ! current_user_can( 'edit_posts' ) ) { |
|
101 | - return new WP_Error( 'woocommerce_rest_cannot_view', __( 'Sorry, you cannot view this resource.', 'woocommerce' ), array( 'status' => rest_authorization_required_code() ) ); |
|
100 | + if ( ! current_user_can('edit_posts')) { |
|
101 | + return new WP_Error('woocommerce_rest_cannot_view', __('Sorry, you cannot view this resource.', 'woocommerce'), array('status' => rest_authorization_required_code())); |
|
102 | 102 | } |
103 | 103 | |
104 | 104 | return true; |
@@ -111,24 +111,24 @@ discard block |
||
111 | 111 | * @param string $context Request context. |
112 | 112 | * @return bool|WP_Error |
113 | 113 | */ |
114 | - protected function check_permissions( $request, $context = 'read' ) { |
|
114 | + protected function check_permissions($request, $context = 'read') { |
|
115 | 115 | // Get taxonomy. |
116 | - $taxonomy = $this->get_taxonomy( $request ); |
|
117 | - if ( ! $taxonomy || ! taxonomy_exists( $taxonomy ) ) { |
|
118 | - return new WP_Error( 'woocommerce_rest_taxonomy_invalid', __( 'Taxonomy does not exist.', 'woocommerce' ), array( 'status' => 404 ) ); |
|
116 | + $taxonomy = $this->get_taxonomy($request); |
|
117 | + if ( ! $taxonomy || ! taxonomy_exists($taxonomy)) { |
|
118 | + return new WP_Error('woocommerce_rest_taxonomy_invalid', __('Taxonomy does not exist.', 'woocommerce'), array('status' => 404)); |
|
119 | 119 | } |
120 | 120 | |
121 | 121 | // Check permissions for a single term. |
122 | - $id = intval( $request['id'] ); |
|
123 | - if ( $id ) { |
|
124 | - $term = get_term( $id, $taxonomy ); |
|
122 | + $id = intval($request['id']); |
|
123 | + if ($id) { |
|
124 | + $term = get_term($id, $taxonomy); |
|
125 | 125 | |
126 | - if ( is_wp_error( $term ) || ! $term || $term->taxonomy !== $taxonomy ) { |
|
127 | - return new WP_Error( 'woocommerce_rest_term_invalid', __( 'Resource does not exist.', 'woocommerce' ), array( 'status' => 404 ) ); |
|
126 | + if (is_wp_error($term) || ! $term || $term->taxonomy !== $taxonomy) { |
|
127 | + return new WP_Error('woocommerce_rest_term_invalid', __('Resource does not exist.', 'woocommerce'), array('status' => 404)); |
|
128 | 128 | } |
129 | 129 | } |
130 | 130 | |
131 | - return current_user_can( 'edit_posts' ); |
|
131 | + return current_user_can('edit_posts'); |
|
132 | 132 | } |
133 | 133 | |
134 | 134 | /** |
@@ -138,23 +138,23 @@ discard block |
||
138 | 138 | * @param WP_REST_Request $request Request instance. |
139 | 139 | * @return WP_REST_Response |
140 | 140 | */ |
141 | - public function prepare_item_for_response( $item, $request ) { |
|
142 | - $taxonomy = wc_attribute_taxonomy_name( $item->attribute_name ); |
|
141 | + public function prepare_item_for_response($item, $request) { |
|
142 | + $taxonomy = wc_attribute_taxonomy_name($item->attribute_name); |
|
143 | 143 | $data = array( |
144 | 144 | 'id' => (int) $item->attribute_id, |
145 | 145 | 'name' => $item->attribute_label, |
146 | 146 | 'slug' => $taxonomy, |
147 | - 'count' => wp_count_terms( $taxonomy ), |
|
147 | + 'count' => wp_count_terms($taxonomy), |
|
148 | 148 | ); |
149 | 149 | |
150 | - $context = ! empty( $request['context'] ) ? $request['context'] : 'view'; |
|
151 | - $data = $this->add_additional_fields_to_object( $data, $request ); |
|
152 | - $data = $this->filter_response_by_context( $data, $context ); |
|
150 | + $context = ! empty($request['context']) ? $request['context'] : 'view'; |
|
151 | + $data = $this->add_additional_fields_to_object($data, $request); |
|
152 | + $data = $this->filter_response_by_context($data, $context); |
|
153 | 153 | |
154 | - $response = rest_ensure_response( $data ); |
|
154 | + $response = rest_ensure_response($data); |
|
155 | 155 | |
156 | - $response->header( 'X-Woo-Notice', __( 'Private REST API for use by block editor only.', 'woocommerce' ) ); |
|
157 | - $response->add_links( $this->prepare_links( $item ) ); |
|
156 | + $response->header('X-Woo-Notice', __('Private REST API for use by block editor only.', 'woocommerce')); |
|
157 | + $response->add_links($this->prepare_links($item)); |
|
158 | 158 | |
159 | 159 | return $response; |
160 | 160 | } |
@@ -177,12 +177,12 @@ discard block |
||
177 | 177 | $schema['properties']['name'] = $raw_schema['properties']['name']; |
178 | 178 | $schema['properties']['slug'] = $raw_schema['properties']['slug']; |
179 | 179 | $schema['properties']['count'] = array( |
180 | - 'description' => __( 'Number of terms in the attribute taxonomy.', 'woocommerce' ), |
|
180 | + 'description' => __('Number of terms in the attribute taxonomy.', 'woocommerce'), |
|
181 | 181 | 'type' => 'integer', |
182 | - 'context' => array( 'view', 'edit' ), |
|
182 | + 'context' => array('view', 'edit'), |
|
183 | 183 | 'readonly' => true, |
184 | 184 | ); |
185 | 185 | |
186 | - return $this->add_additional_fields_schema( $schema ); |
|
186 | + return $this->add_additional_fields_schema($schema); |
|
187 | 187 | } |
188 | 188 | } |
@@ -8,7 +8,7 @@ discard block |
||
8 | 8 | * @package WooCommerce/RestApi |
9 | 9 | */ |
10 | 10 | |
11 | -if ( ! defined( 'ABSPATH' ) ) { |
|
11 | +if ( ! defined('ABSPATH')) { |
|
12 | 12 | exit; |
13 | 13 | } |
14 | 14 | |
@@ -36,11 +36,11 @@ discard block |
||
36 | 36 | array( |
37 | 37 | array( |
38 | 38 | 'methods' => WP_REST_Server::READABLE, |
39 | - 'callback' => array( $this, 'get_items' ), |
|
40 | - 'permission_callback' => array( $this, 'get_items_permissions_check' ), |
|
39 | + 'callback' => array($this, 'get_items'), |
|
40 | + 'permission_callback' => array($this, 'get_items_permissions_check'), |
|
41 | 41 | 'args' => $this->get_collection_params(), |
42 | 42 | ), |
43 | - 'schema' => array( $this, 'get_public_item_schema' ), |
|
43 | + 'schema' => array($this, 'get_public_item_schema'), |
|
44 | 44 | ) |
45 | 45 | ); |
46 | 46 | |
@@ -50,14 +50,14 @@ discard block |
||
50 | 50 | array( |
51 | 51 | 'args' => array( |
52 | 52 | 'id' => array( |
53 | - 'description' => __( 'Unique identifier for the resource.', 'woocommerce' ), |
|
53 | + 'description' => __('Unique identifier for the resource.', 'woocommerce'), |
|
54 | 54 | 'type' => 'integer', |
55 | 55 | ), |
56 | 56 | ), |
57 | 57 | array( |
58 | 58 | 'methods' => WP_REST_Server::READABLE, |
59 | - 'callback' => array( $this, 'get_item' ), |
|
60 | - 'permission_callback' => array( $this, 'get_item_permissions_check' ), |
|
59 | + 'callback' => array($this, 'get_item'), |
|
60 | + 'permission_callback' => array($this, 'get_item_permissions_check'), |
|
61 | 61 | 'args' => array( |
62 | 62 | 'context' => $this->get_context_param( |
63 | 63 | array( |
@@ -66,7 +66,7 @@ discard block |
||
66 | 66 | ), |
67 | 67 | ), |
68 | 68 | ), |
69 | - 'schema' => array( $this, 'get_public_item_schema' ), |
|
69 | + 'schema' => array($this, 'get_public_item_schema'), |
|
70 | 70 | ) |
71 | 71 | ); |
72 | 72 | } |
@@ -77,9 +77,9 @@ discard block |
||
77 | 77 | * @param WP_REST_Request $request Full details about the request. |
78 | 78 | * @return WP_Error|boolean |
79 | 79 | */ |
80 | - public function get_items_permissions_check( $request ) { |
|
81 | - if ( ! current_user_can( 'edit_posts' ) ) { |
|
82 | - return new WP_Error( 'woocommerce_rest_cannot_view', __( 'Sorry, you cannot list resources.', 'woocommerce' ), array( 'status' => rest_authorization_required_code() ) ); |
|
80 | + public function get_items_permissions_check($request) { |
|
81 | + if ( ! current_user_can('edit_posts')) { |
|
82 | + return new WP_Error('woocommerce_rest_cannot_view', __('Sorry, you cannot list resources.', 'woocommerce'), array('status' => rest_authorization_required_code())); |
|
83 | 83 | } |
84 | 84 | |
85 | 85 | return true; |
@@ -91,9 +91,9 @@ discard block |
||
91 | 91 | * @param WP_REST_Request $request Full details about the request. |
92 | 92 | * @return WP_Error|boolean |
93 | 93 | */ |
94 | - public function get_item_permissions_check( $request ) { |
|
95 | - if ( ! current_user_can( 'edit_posts' ) ) { |
|
96 | - return new WP_Error( 'woocommerce_rest_cannot_view', __( 'Sorry, you cannot view this resource.', 'woocommerce' ), array( 'status' => rest_authorization_required_code() ) ); |
|
94 | + public function get_item_permissions_check($request) { |
|
95 | + if ( ! current_user_can('edit_posts')) { |
|
96 | + return new WP_Error('woocommerce_rest_cannot_view', __('Sorry, you cannot view this resource.', 'woocommerce'), array('status' => rest_authorization_required_code())); |
|
97 | 97 | } |
98 | 98 | |
99 | 99 | return true; |
@@ -105,52 +105,52 @@ discard block |
||
105 | 105 | * @param WP_REST_Request $request Full details about the request. |
106 | 106 | * @return WP_Error|WP_REST_Response |
107 | 107 | */ |
108 | - public function get_items( $request ) { |
|
109 | - $query_args = $this->prepare_objects_query( $request ); |
|
110 | - $query_results = $this->get_objects( $query_args ); |
|
108 | + public function get_items($request) { |
|
109 | + $query_args = $this->prepare_objects_query($request); |
|
110 | + $query_results = $this->get_objects($query_args); |
|
111 | 111 | |
112 | 112 | $objects = array(); |
113 | - foreach ( $query_results['objects'] as $object ) { |
|
114 | - $data = $this->prepare_object_for_response( $object, $request ); |
|
115 | - $objects[] = $this->prepare_response_for_collection( $data ); |
|
113 | + foreach ($query_results['objects'] as $object) { |
|
114 | + $data = $this->prepare_object_for_response($object, $request); |
|
115 | + $objects[] = $this->prepare_response_for_collection($data); |
|
116 | 116 | } |
117 | 117 | |
118 | 118 | $page = (int) $query_args['paged']; |
119 | 119 | $max_pages = $query_results['pages']; |
120 | 120 | |
121 | - $response = rest_ensure_response( $objects ); |
|
122 | - $response->header( 'X-WP-Total', $query_results['total'] ); |
|
123 | - $response->header( 'X-WP-TotalPages', (int) $max_pages ); |
|
124 | - $response->header( 'X-Woo-Notice', __( 'Private REST API for use by block editor only.', 'woocommerce' ) ); |
|
121 | + $response = rest_ensure_response($objects); |
|
122 | + $response->header('X-WP-Total', $query_results['total']); |
|
123 | + $response->header('X-WP-TotalPages', (int) $max_pages); |
|
124 | + $response->header('X-Woo-Notice', __('Private REST API for use by block editor only.', 'woocommerce')); |
|
125 | 125 | |
126 | 126 | $base = $this->rest_base; |
127 | 127 | $attrib_prefix = '(?P<'; |
128 | - if ( strpos( $base, $attrib_prefix ) !== false ) { |
|
128 | + if (strpos($base, $attrib_prefix) !== false) { |
|
129 | 129 | $attrib_names = array(); |
130 | - preg_match( '/\(\?P<[^>]+>.*\)/', $base, $attrib_names, PREG_OFFSET_CAPTURE ); |
|
131 | - foreach ( $attrib_names as $attrib_name_match ) { |
|
132 | - $beginning_offset = strlen( $attrib_prefix ); |
|
133 | - $attrib_name_end = strpos( $attrib_name_match[0], '>', $attrib_name_match[1] ); |
|
134 | - $attrib_name = substr( $attrib_name_match[0], $beginning_offset, $attrib_name_end - $beginning_offset ); |
|
135 | - if ( isset( $request[ $attrib_name ] ) ) { |
|
136 | - $base = str_replace( "(?P<$attrib_name>[\d]+)", $request[ $attrib_name ], $base ); |
|
130 | + preg_match('/\(\?P<[^>]+>.*\)/', $base, $attrib_names, PREG_OFFSET_CAPTURE); |
|
131 | + foreach ($attrib_names as $attrib_name_match) { |
|
132 | + $beginning_offset = strlen($attrib_prefix); |
|
133 | + $attrib_name_end = strpos($attrib_name_match[0], '>', $attrib_name_match[1]); |
|
134 | + $attrib_name = substr($attrib_name_match[0], $beginning_offset, $attrib_name_end - $beginning_offset); |
|
135 | + if (isset($request[$attrib_name])) { |
|
136 | + $base = str_replace("(?P<$attrib_name>[\d]+)", $request[$attrib_name], $base); |
|
137 | 137 | } |
138 | 138 | } |
139 | 139 | } |
140 | - $base = add_query_arg( $request->get_query_params(), rest_url( sprintf( '/%s/%s', $this->namespace, $base ) ) ); |
|
140 | + $base = add_query_arg($request->get_query_params(), rest_url(sprintf('/%s/%s', $this->namespace, $base))); |
|
141 | 141 | |
142 | - if ( $page > 1 ) { |
|
142 | + if ($page > 1) { |
|
143 | 143 | $prev_page = $page - 1; |
144 | - if ( $prev_page > $max_pages ) { |
|
144 | + if ($prev_page > $max_pages) { |
|
145 | 145 | $prev_page = $max_pages; |
146 | 146 | } |
147 | - $prev_link = add_query_arg( 'page', $prev_page, $base ); |
|
148 | - $response->link_header( 'prev', $prev_link ); |
|
147 | + $prev_link = add_query_arg('page', $prev_page, $base); |
|
148 | + $response->link_header('prev', $prev_link); |
|
149 | 149 | } |
150 | - if ( $max_pages > $page ) { |
|
150 | + if ($max_pages > $page) { |
|
151 | 151 | $next_page = $page + 1; |
152 | - $next_link = add_query_arg( 'page', $next_page, $base ); |
|
153 | - $response->link_header( 'next', $next_link ); |
|
152 | + $next_link = add_query_arg('page', $next_page, $base); |
|
153 | + $response->link_header('next', $next_link); |
|
154 | 154 | } |
155 | 155 | |
156 | 156 | return $response; |
@@ -162,35 +162,35 @@ discard block |
||
162 | 162 | * @param WC_Product|WC_Product_Variation $product Product instance. |
163 | 163 | * @return array |
164 | 164 | */ |
165 | - protected function get_images( $product ) { |
|
165 | + protected function get_images($product) { |
|
166 | 166 | $images = array(); |
167 | 167 | $attachment_ids = array(); |
168 | 168 | |
169 | 169 | // Add featured image. |
170 | - if ( has_post_thumbnail( $product->get_id() ) ) { |
|
170 | + if (has_post_thumbnail($product->get_id())) { |
|
171 | 171 | $attachment_ids[] = $product->get_image_id(); |
172 | 172 | } |
173 | 173 | |
174 | 174 | // Add gallery images. |
175 | - $attachment_ids = array_merge( $attachment_ids, $product->get_gallery_image_ids() ); |
|
175 | + $attachment_ids = array_merge($attachment_ids, $product->get_gallery_image_ids()); |
|
176 | 176 | |
177 | 177 | // Build image data. |
178 | - foreach ( $attachment_ids as $attachment_id ) { |
|
179 | - $attachment_post = get_post( $attachment_id ); |
|
180 | - if ( is_null( $attachment_post ) ) { |
|
178 | + foreach ($attachment_ids as $attachment_id) { |
|
179 | + $attachment_post = get_post($attachment_id); |
|
180 | + if (is_null($attachment_post)) { |
|
181 | 181 | continue; |
182 | 182 | } |
183 | 183 | |
184 | - $attachment = wp_get_attachment_image_src( $attachment_id, 'full' ); |
|
185 | - if ( ! is_array( $attachment ) ) { |
|
184 | + $attachment = wp_get_attachment_image_src($attachment_id, 'full'); |
|
185 | + if ( ! is_array($attachment)) { |
|
186 | 186 | continue; |
187 | 187 | } |
188 | 188 | |
189 | 189 | $images[] = array( |
190 | 190 | 'id' => (int) $attachment_id, |
191 | - 'src' => current( $attachment ), |
|
192 | - 'name' => get_the_title( $attachment_id ), |
|
193 | - 'alt' => get_post_meta( $attachment_id, '_wp_attachment_image_alt', true ), |
|
191 | + 'src' => current($attachment), |
|
192 | + 'name' => get_the_title($attachment_id), |
|
193 | + 'alt' => get_post_meta($attachment_id, '_wp_attachment_image_alt', true), |
|
194 | 194 | ); |
195 | 195 | } |
196 | 196 | |
@@ -206,18 +206,18 @@ discard block |
||
206 | 206 | * @param WP_REST_Request $request Request object. |
207 | 207 | * @return WP_REST_Response |
208 | 208 | */ |
209 | - public function prepare_item_for_response( $post, $request ) { |
|
210 | - $product = wc_get_product( $post ); |
|
211 | - $data = $this->get_product_data( $product ); |
|
209 | + public function prepare_item_for_response($post, $request) { |
|
210 | + $product = wc_get_product($post); |
|
211 | + $data = $this->get_product_data($product); |
|
212 | 212 | |
213 | - $context = ! empty( $request['context'] ) ? $request['context'] : 'view'; |
|
214 | - $data = $this->add_additional_fields_to_object( $data, $request ); |
|
215 | - $data = $this->filter_response_by_context( $data, $context ); |
|
213 | + $context = ! empty($request['context']) ? $request['context'] : 'view'; |
|
214 | + $data = $this->add_additional_fields_to_object($data, $request); |
|
215 | + $data = $this->filter_response_by_context($data, $context); |
|
216 | 216 | |
217 | 217 | // Wrap the data in a response object. |
218 | - $response = rest_ensure_response( $data ); |
|
219 | - $response->header( 'X-Woo-Notice', __( 'Private REST API for use by block editor only.', 'woocommerce' ) ); |
|
220 | - $response->add_links( $this->prepare_links( $product, $request ) ); |
|
218 | + $response = rest_ensure_response($data); |
|
219 | + $response->header('X-Woo-Notice', __('Private REST API for use by block editor only.', 'woocommerce')); |
|
220 | + $response->add_links($this->prepare_links($product, $request)); |
|
221 | 221 | |
222 | 222 | return $response; |
223 | 223 | } |
@@ -229,52 +229,52 @@ discard block |
||
229 | 229 | * @param WP_REST_Request $request Request data. |
230 | 230 | * @return array |
231 | 231 | */ |
232 | - protected function prepare_objects_query( $request ) { |
|
233 | - $args = parent::prepare_objects_query( $request ); |
|
232 | + protected function prepare_objects_query($request) { |
|
233 | + $args = parent::prepare_objects_query($request); |
|
234 | 234 | $operator_mapping = array( |
235 | 235 | 'in' => 'IN', |
236 | 236 | 'not_in' => 'NOT IN', |
237 | 237 | 'and' => 'AND', |
238 | 238 | ); |
239 | 239 | |
240 | - $orderby = $request->get_param( 'orderby' ); |
|
241 | - $order = $request->get_param( 'order' ); |
|
242 | - $category_operator = $operator_mapping[ $request->get_param( 'category_operator' ) ]; |
|
243 | - $attribute_operator = $operator_mapping[ $request->get_param( 'attribute_operator' ) ]; |
|
244 | - $catalog_visibility = $request->get_param( 'catalog_visibility' ); |
|
240 | + $orderby = $request->get_param('orderby'); |
|
241 | + $order = $request->get_param('order'); |
|
242 | + $category_operator = $operator_mapping[$request->get_param('category_operator')]; |
|
243 | + $attribute_operator = $operator_mapping[$request->get_param('attribute_operator')]; |
|
244 | + $catalog_visibility = $request->get_param('catalog_visibility'); |
|
245 | 245 | |
246 | - $ordering_args = WC()->query->get_catalog_ordering_args( $orderby, $order ); |
|
246 | + $ordering_args = WC()->query->get_catalog_ordering_args($orderby, $order); |
|
247 | 247 | $args['orderby'] = $ordering_args['orderby']; |
248 | 248 | $args['order'] = $ordering_args['order']; |
249 | - if ( $ordering_args['meta_key'] ) { |
|
249 | + if ($ordering_args['meta_key']) { |
|
250 | 250 | $args['meta_key'] = $ordering_args['meta_key']; // WPCS: slow query ok. |
251 | 251 | } |
252 | 252 | |
253 | - if ( $category_operator && isset( $args['tax_query'] ) ) { |
|
254 | - foreach ( $args['tax_query'] as $i => $tax_query ) { |
|
255 | - if ( 'product_cat' === $tax_query['taxonomy'] ) { |
|
256 | - $args['tax_query'][ $i ]['operator'] = $category_operator; |
|
257 | - $args['tax_query'][ $i ]['include_children'] = 'AND' === $category_operator ? false : true; |
|
253 | + if ($category_operator && isset($args['tax_query'])) { |
|
254 | + foreach ($args['tax_query'] as $i => $tax_query) { |
|
255 | + if ('product_cat' === $tax_query['taxonomy']) { |
|
256 | + $args['tax_query'][$i]['operator'] = $category_operator; |
|
257 | + $args['tax_query'][$i]['include_children'] = 'AND' === $category_operator ? false : true; |
|
258 | 258 | } |
259 | 259 | } |
260 | 260 | } |
261 | 261 | |
262 | - if ( $attribute_operator && isset( $args['tax_query'] ) ) { |
|
263 | - foreach ( $args['tax_query'] as $i => $tax_query ) { |
|
264 | - if ( in_array( $tax_query['taxonomy'], wc_get_attribute_taxonomy_names(), true ) ) { |
|
265 | - $args['tax_query'][ $i ]['operator'] = $attribute_operator; |
|
262 | + if ($attribute_operator && isset($args['tax_query'])) { |
|
263 | + foreach ($args['tax_query'] as $i => $tax_query) { |
|
264 | + if (in_array($tax_query['taxonomy'], wc_get_attribute_taxonomy_names(), true)) { |
|
265 | + $args['tax_query'][$i]['operator'] = $attribute_operator; |
|
266 | 266 | } |
267 | 267 | } |
268 | 268 | } |
269 | 269 | |
270 | - if ( in_array( $catalog_visibility, array_keys( wc_get_product_visibility_options() ), true ) ) { |
|
270 | + if (in_array($catalog_visibility, array_keys(wc_get_product_visibility_options()), true)) { |
|
271 | 271 | $exclude_from_catalog = 'search' === $catalog_visibility ? '' : 'exclude-from-catalog'; |
272 | 272 | $exclude_from_search = 'catalog' === $catalog_visibility ? '' : 'exclude-from-search'; |
273 | 273 | |
274 | 274 | $args['tax_query'][] = array( |
275 | 275 | 'taxonomy' => 'product_visibility', |
276 | 276 | 'field' => 'name', |
277 | - 'terms' => array( $exclude_from_catalog, $exclude_from_search ), |
|
277 | + 'terms' => array($exclude_from_catalog, $exclude_from_search), |
|
278 | 278 | 'operator' => 'hidden' === $catalog_visibility ? 'AND' : 'NOT IN', |
279 | 279 | ); |
280 | 280 | } |
@@ -290,8 +290,8 @@ discard block |
||
290 | 290 | * Options: 'view' and 'edit'. |
291 | 291 | * @return array |
292 | 292 | */ |
293 | - protected function get_product_data( $product, $context = 'view' ) { |
|
294 | - $raw_data = parent::get_product_data( $product, $context ); |
|
293 | + protected function get_product_data($product, $context = 'view') { |
|
294 | + $raw_data = parent::get_product_data($product, $context); |
|
295 | 295 | $data = array(); |
296 | 296 | |
297 | 297 | $data['id'] = $raw_data['id']; |
@@ -317,27 +317,27 @@ discard block |
||
317 | 317 | */ |
318 | 318 | public function get_collection_params() { |
319 | 319 | $params = parent::get_collection_params(); |
320 | - $params['orderby']['enum'] = array_merge( $params['orderby']['enum'], array( 'price', 'popularity', 'rating', 'menu_order' ) ); |
|
320 | + $params['orderby']['enum'] = array_merge($params['orderby']['enum'], array('price', 'popularity', 'rating', 'menu_order')); |
|
321 | 321 | $params['category_operator'] = array( |
322 | - 'description' => __( 'Operator to compare product category terms.', 'woocommerce' ), |
|
322 | + 'description' => __('Operator to compare product category terms.', 'woocommerce'), |
|
323 | 323 | 'type' => 'string', |
324 | - 'enum' => array( 'in', 'not_in', 'and' ), |
|
324 | + 'enum' => array('in', 'not_in', 'and'), |
|
325 | 325 | 'default' => 'in', |
326 | 326 | 'sanitize_callback' => 'sanitize_key', |
327 | 327 | 'validate_callback' => 'rest_validate_request_arg', |
328 | 328 | ); |
329 | 329 | $params['attribute_operator'] = array( |
330 | - 'description' => __( 'Operator to compare product attribute terms.', 'woocommerce' ), |
|
330 | + 'description' => __('Operator to compare product attribute terms.', 'woocommerce'), |
|
331 | 331 | 'type' => 'string', |
332 | - 'enum' => array( 'in', 'not_in', 'and' ), |
|
332 | + 'enum' => array('in', 'not_in', 'and'), |
|
333 | 333 | 'default' => 'in', |
334 | 334 | 'sanitize_callback' => 'sanitize_key', |
335 | 335 | 'validate_callback' => 'rest_validate_request_arg', |
336 | 336 | ); |
337 | 337 | $params['catalog_visibility'] = array( |
338 | - 'description' => __( 'Determines if hidden or visible catalog products are shown.', 'woocommerce' ), |
|
338 | + 'description' => __('Determines if hidden or visible catalog products are shown.', 'woocommerce'), |
|
339 | 339 | 'type' => 'string', |
340 | - 'enum' => array( 'visible', 'catalog', 'search', 'hidden' ), |
|
340 | + 'enum' => array('visible', 'catalog', 'search', 'hidden'), |
|
341 | 341 | 'sanitize_callback' => 'sanitize_key', |
342 | 342 | 'validate_callback' => 'rest_validate_request_arg', |
343 | 343 | ); |
@@ -371,7 +371,7 @@ discard block |
||
371 | 371 | $schema['properties']['images'] = array( |
372 | 372 | 'description' => $raw_schema['properties']['images']['description'], |
373 | 373 | 'type' => 'object', |
374 | - 'context' => array( 'view', 'edit' ), |
|
374 | + 'context' => array('view', 'edit'), |
|
375 | 375 | 'items' => array( |
376 | 376 | 'type' => 'object', |
377 | 377 | 'properties' => array(), |
@@ -385,6 +385,6 @@ discard block |
||
385 | 385 | $schema['properties']['images']['items']['properties']['name'] = $images_schema['name']; |
386 | 386 | $schema['properties']['images']['items']['properties']['alt'] = $images_schema['alt']; |
387 | 387 | |
388 | - return $this->add_additional_fields_schema( $schema ); |
|
388 | + return $this->add_additional_fields_schema($schema); |
|
389 | 389 | } |
390 | 390 | } |
@@ -8,7 +8,7 @@ discard block |
||
8 | 8 | * @package WooCommerce/RestApi |
9 | 9 | */ |
10 | 10 | |
11 | -if ( ! defined( 'ABSPATH' ) ) { |
|
11 | +if ( ! defined('ABSPATH')) { |
|
12 | 12 | exit; |
13 | 13 | } |
14 | 14 | |
@@ -36,11 +36,11 @@ discard block |
||
36 | 36 | array( |
37 | 37 | array( |
38 | 38 | 'methods' => WP_REST_Server::READABLE, |
39 | - 'callback' => array( $this, 'get_items' ), |
|
40 | - 'permission_callback' => array( $this, 'get_items_permissions_check' ), |
|
39 | + 'callback' => array($this, 'get_items'), |
|
40 | + 'permission_callback' => array($this, 'get_items_permissions_check'), |
|
41 | 41 | 'args' => $this->get_collection_params(), |
42 | 42 | ), |
43 | - 'schema' => array( $this, 'get_public_item_schema' ), |
|
43 | + 'schema' => array($this, 'get_public_item_schema'), |
|
44 | 44 | ) |
45 | 45 | ); |
46 | 46 | |
@@ -50,14 +50,14 @@ discard block |
||
50 | 50 | array( |
51 | 51 | 'args' => array( |
52 | 52 | 'id' => array( |
53 | - 'description' => __( 'Unique identifier for the resource.', 'woocommerce' ), |
|
53 | + 'description' => __('Unique identifier for the resource.', 'woocommerce'), |
|
54 | 54 | 'type' => 'integer', |
55 | 55 | ), |
56 | 56 | ), |
57 | 57 | array( |
58 | 58 | 'methods' => WP_REST_Server::READABLE, |
59 | - 'callback' => array( $this, 'get_item' ), |
|
60 | - 'permission_callback' => array( $this, 'get_item_permissions_check' ), |
|
59 | + 'callback' => array($this, 'get_item'), |
|
60 | + 'permission_callback' => array($this, 'get_item_permissions_check'), |
|
61 | 61 | 'args' => array( |
62 | 62 | 'context' => $this->get_context_param( |
63 | 63 | array( |
@@ -66,7 +66,7 @@ discard block |
||
66 | 66 | ), |
67 | 67 | ), |
68 | 68 | ), |
69 | - 'schema' => array( $this, 'get_public_item_schema' ), |
|
69 | + 'schema' => array($this, 'get_public_item_schema'), |
|
70 | 70 | ) |
71 | 71 | ); |
72 | 72 | } |
@@ -78,24 +78,24 @@ discard block |
||
78 | 78 | * @param string $context Request context. |
79 | 79 | * @return bool|WP_Error |
80 | 80 | */ |
81 | - protected function check_permissions( $request, $context = 'read' ) { |
|
81 | + protected function check_permissions($request, $context = 'read') { |
|
82 | 82 | // Get taxonomy. |
83 | - $taxonomy = $this->get_taxonomy( $request ); |
|
84 | - if ( ! $taxonomy || ! taxonomy_exists( $taxonomy ) ) { |
|
85 | - return new WP_Error( 'woocommerce_rest_taxonomy_invalid', __( 'Taxonomy does not exist.', 'woocommerce' ), array( 'status' => 404 ) ); |
|
83 | + $taxonomy = $this->get_taxonomy($request); |
|
84 | + if ( ! $taxonomy || ! taxonomy_exists($taxonomy)) { |
|
85 | + return new WP_Error('woocommerce_rest_taxonomy_invalid', __('Taxonomy does not exist.', 'woocommerce'), array('status' => 404)); |
|
86 | 86 | } |
87 | 87 | |
88 | 88 | // Check permissions for a single term. |
89 | - $id = intval( $request['id'] ); |
|
90 | - if ( $id ) { |
|
91 | - $term = get_term( $id, $taxonomy ); |
|
89 | + $id = intval($request['id']); |
|
90 | + if ($id) { |
|
91 | + $term = get_term($id, $taxonomy); |
|
92 | 92 | |
93 | - if ( is_wp_error( $term ) || ! $term || $term->taxonomy !== $taxonomy ) { |
|
94 | - return new WP_Error( 'woocommerce_rest_term_invalid', __( 'Resource does not exist.', 'woocommerce' ), array( 'status' => 404 ) ); |
|
93 | + if (is_wp_error($term) || ! $term || $term->taxonomy !== $taxonomy) { |
|
94 | + return new WP_Error('woocommerce_rest_term_invalid', __('Resource does not exist.', 'woocommerce'), array('status' => 404)); |
|
95 | 95 | } |
96 | 96 | } |
97 | 97 | |
98 | - return current_user_can( 'edit_posts' ); |
|
98 | + return current_user_can('edit_posts'); |
|
99 | 99 | } |
100 | 100 | |
101 | 101 | /** |
@@ -105,10 +105,10 @@ discard block |
||
105 | 105 | * @param WP_REST_Request $request Request instance. |
106 | 106 | * @return WP_REST_Response |
107 | 107 | */ |
108 | - public function prepare_item_for_response( $item, $request ) { |
|
108 | + public function prepare_item_for_response($item, $request) { |
|
109 | 109 | // Get the attribute slug. |
110 | - $attribute_id = absint( $request->get_param( 'attribute_id' ) ); |
|
111 | - $attribute = wc_get_attribute( $attribute_id ); |
|
110 | + $attribute_id = absint($request->get_param('attribute_id')); |
|
111 | + $attribute = wc_get_attribute($attribute_id); |
|
112 | 112 | |
113 | 113 | $data = array( |
114 | 114 | 'id' => (int) $item->term_id, |
@@ -122,15 +122,15 @@ discard block |
||
122 | 122 | ), |
123 | 123 | ); |
124 | 124 | |
125 | - $context = ! empty( $request['context'] ) ? $request['context'] : 'view'; |
|
126 | - $data = $this->add_additional_fields_to_object( $data, $request ); |
|
127 | - $data = $this->filter_response_by_context( $data, $context ); |
|
125 | + $context = ! empty($request['context']) ? $request['context'] : 'view'; |
|
126 | + $data = $this->add_additional_fields_to_object($data, $request); |
|
127 | + $data = $this->filter_response_by_context($data, $context); |
|
128 | 128 | |
129 | - $response = rest_ensure_response( $data ); |
|
129 | + $response = rest_ensure_response($data); |
|
130 | 130 | |
131 | - $response->header( 'X-Woo-Notice', __( 'Private REST API for use by block editor only.', 'woocommerce' ) ); |
|
131 | + $response->header('X-Woo-Notice', __('Private REST API for use by block editor only.', 'woocommerce')); |
|
132 | 132 | |
133 | - $response->add_links( $this->prepare_links( $item, $request ) ); |
|
133 | + $response->add_links($this->prepare_links($item, $request)); |
|
134 | 134 | |
135 | 135 | return $response; |
136 | 136 | } |
@@ -154,32 +154,32 @@ discard block |
||
154 | 154 | $schema['properties']['slug'] = $raw_schema['properties']['slug']; |
155 | 155 | $schema['properties']['count'] = $raw_schema['properties']['count']; |
156 | 156 | $schema['properties']['attribute'] = array( |
157 | - 'description' => __( 'Attribute.', 'woocommerce' ), |
|
157 | + 'description' => __('Attribute.', 'woocommerce'), |
|
158 | 158 | 'type' => 'object', |
159 | - 'context' => array( 'view', 'edit' ), |
|
159 | + 'context' => array('view', 'edit'), |
|
160 | 160 | 'readonly' => true, |
161 | 161 | 'properties' => array( |
162 | 162 | 'id' => array( |
163 | - 'description' => __( 'Attribute ID.', 'woocommerce' ), |
|
163 | + 'description' => __('Attribute ID.', 'woocommerce'), |
|
164 | 164 | 'type' => 'integer', |
165 | - 'context' => array( 'view', 'edit' ), |
|
165 | + 'context' => array('view', 'edit'), |
|
166 | 166 | 'readonly' => true, |
167 | 167 | ), |
168 | 168 | 'name' => array( |
169 | - 'description' => __( 'Attribute name.', 'woocommerce' ), |
|
169 | + 'description' => __('Attribute name.', 'woocommerce'), |
|
170 | 170 | 'type' => 'string', |
171 | - 'context' => array( 'view', 'edit' ), |
|
171 | + 'context' => array('view', 'edit'), |
|
172 | 172 | 'readonly' => true, |
173 | 173 | ), |
174 | 174 | 'slug' => array( |
175 | - 'description' => __( 'Attribute slug.', 'woocommerce' ), |
|
175 | + 'description' => __('Attribute slug.', 'woocommerce'), |
|
176 | 176 | 'type' => 'string', |
177 | - 'context' => array( 'view', 'edit' ), |
|
177 | + 'context' => array('view', 'edit'), |
|
178 | 178 | 'readonly' => true, |
179 | 179 | ), |
180 | 180 | ), |
181 | 181 | ); |
182 | 182 | |
183 | - return $this->add_additional_fields_schema( $schema ); |
|
183 | + return $this->add_additional_fields_schema($schema); |
|
184 | 184 | } |
185 | 185 | } |
@@ -7,7 +7,7 @@ discard block |
||
7 | 7 | |
8 | 8 | namespace WooCommerce\RestApi\Version4; |
9 | 9 | |
10 | -defined( 'ABSPATH' ) || exit; |
|
10 | +defined('ABSPATH') || exit; |
|
11 | 11 | |
12 | 12 | /** |
13 | 13 | * Controllers class. |
@@ -56,11 +56,11 @@ discard block |
||
56 | 56 | 'webhooks' => __NAMESPACE__ . '\Controllers\Webhooks', |
57 | 57 | ]; |
58 | 58 | |
59 | - if ( class_exists( '\WC_Admin_Note' ) ) { |
|
59 | + if (class_exists('\WC_Admin_Note')) { |
|
60 | 60 | $controllers['admin-notes'] = __NAMESPACE__ . '\Controllers\AdminNotes'; |
61 | 61 | } |
62 | 62 | |
63 | - if ( class_exists( '\WC_Admin_Reports_Sync' ) ) { |
|
63 | + if (class_exists('\WC_Admin_Reports_Sync')) { |
|
64 | 64 | $controllers['reports-categories'] = __NAMESPACE__ . '\Controllers\Reports\Categories'; |
65 | 65 | $controllers['reports-coupons'] = __NAMESPACE__ . '\Controllers\Reports\Coupons'; |
66 | 66 | $controllers['reports-coupon-stats'] = __NAMESPACE__ . '\Controllers\Reports\CouponStats'; |
@@ -9,7 +9,7 @@ discard block |
||
9 | 9 | |
10 | 10 | namespace WooCommerce\RestApi\Version4\Controllers; |
11 | 11 | |
12 | -defined( 'ABSPATH' ) || exit; |
|
12 | +defined('ABSPATH') || exit; |
|
13 | 13 | |
14 | 14 | /** |
15 | 15 | * AdminNotes controller class. |
@@ -40,11 +40,11 @@ discard block |
||
40 | 40 | array( |
41 | 41 | array( |
42 | 42 | 'methods' => \WP_REST_Server::READABLE, |
43 | - 'callback' => array( $this, 'get_items' ), |
|
44 | - 'permission_callback' => array( $this, 'get_items_permissions_check' ), |
|
43 | + 'callback' => array($this, 'get_items'), |
|
44 | + 'permission_callback' => array($this, 'get_items_permissions_check'), |
|
45 | 45 | 'args' => $this->get_collection_params(), |
46 | 46 | ), |
47 | - 'schema' => array( $this, 'get_public_item_schema' ), |
|
47 | + 'schema' => array($this, 'get_public_item_schema'), |
|
48 | 48 | ) |
49 | 49 | ); |
50 | 50 | |
@@ -54,21 +54,21 @@ discard block |
||
54 | 54 | array( |
55 | 55 | 'args' => array( |
56 | 56 | 'id' => array( |
57 | - 'description' => __( 'Unique ID for the resource.', 'woocommerce' ), |
|
57 | + 'description' => __('Unique ID for the resource.', 'woocommerce'), |
|
58 | 58 | 'type' => 'integer', |
59 | 59 | ), |
60 | 60 | ), |
61 | 61 | array( |
62 | 62 | 'methods' => \WP_REST_Server::READABLE, |
63 | - 'callback' => array( $this, 'get_item' ), |
|
64 | - 'permission_callback' => array( $this, 'get_item_permissions_check' ), |
|
63 | + 'callback' => array($this, 'get_item'), |
|
64 | + 'permission_callback' => array($this, 'get_item_permissions_check'), |
|
65 | 65 | ), |
66 | 66 | array( |
67 | 67 | 'methods' => \WP_REST_Server::EDITABLE, |
68 | - 'callback' => array( $this, 'update_item' ), |
|
69 | - 'permission_callback' => array( $this, 'update_items_permissions_check' ), |
|
68 | + 'callback' => array($this, 'update_item'), |
|
69 | + 'permission_callback' => array($this, 'update_items_permissions_check'), |
|
70 | 70 | ), |
71 | - 'schema' => array( $this, 'get_public_item_schema' ), |
|
71 | + 'schema' => array($this, 'get_public_item_schema'), |
|
72 | 72 | ) |
73 | 73 | ); |
74 | 74 | } |
@@ -79,26 +79,26 @@ discard block |
||
79 | 79 | * @param WP_REST_Request $request Request data. |
80 | 80 | * @return WP_REST_Response|WP_Error |
81 | 81 | */ |
82 | - public function get_item( $request ) { |
|
83 | - $note = \WC_Admin_Notes::get_note( $request->get_param( 'id' ) ); |
|
82 | + public function get_item($request) { |
|
83 | + $note = \WC_Admin_Notes::get_note($request->get_param('id')); |
|
84 | 84 | |
85 | - if ( ! $note ) { |
|
85 | + if ( ! $note) { |
|
86 | 86 | return new \WP_Error( |
87 | 87 | 'woocommerce_admin_notes_invalid_id', |
88 | - __( 'Sorry, there is no resouce with that ID.', 'woocommerce' ), |
|
89 | - array( 'status' => 404 ) |
|
88 | + __('Sorry, there is no resouce with that ID.', 'woocommerce'), |
|
89 | + array('status' => 404) |
|
90 | 90 | ); |
91 | 91 | } |
92 | 92 | |
93 | - if ( is_wp_error( $note ) ) { |
|
93 | + if (is_wp_error($note)) { |
|
94 | 94 | return $note; |
95 | 95 | } |
96 | 96 | |
97 | 97 | $data = $note->get_data(); |
98 | - $data = $this->prepare_item_for_response( $data, $request ); |
|
99 | - $data = $this->prepare_response_for_collection( $data ); |
|
98 | + $data = $this->prepare_item_for_response($data, $request); |
|
99 | + $data = $this->prepare_response_for_collection($data); |
|
100 | 100 | |
101 | - return rest_ensure_response( $data ); |
|
101 | + return rest_ensure_response($data); |
|
102 | 102 | } |
103 | 103 | |
104 | 104 | /** |
@@ -107,20 +107,20 @@ discard block |
||
107 | 107 | * @param WP_REST_Request $request Request data. |
108 | 108 | * @return WP_REST_Response |
109 | 109 | */ |
110 | - public function get_items( $request ) { |
|
111 | - $query_args = $this->prepare_objects_query( $request ); |
|
110 | + public function get_items($request) { |
|
111 | + $query_args = $this->prepare_objects_query($request); |
|
112 | 112 | |
113 | - $notes = \WC_Admin_Notes::get_notes( 'edit', $query_args ); |
|
113 | + $notes = \WC_Admin_Notes::get_notes('edit', $query_args); |
|
114 | 114 | |
115 | 115 | $data = array(); |
116 | - foreach ( (array) $notes as $note_obj ) { |
|
117 | - $note = $this->prepare_item_for_response( $note_obj, $request ); |
|
118 | - $note = $this->prepare_response_for_collection( $note ); |
|
116 | + foreach ((array) $notes as $note_obj) { |
|
117 | + $note = $this->prepare_item_for_response($note_obj, $request); |
|
118 | + $note = $this->prepare_response_for_collection($note); |
|
119 | 119 | $data[] = $note; |
120 | 120 | } |
121 | 121 | |
122 | - $response = rest_ensure_response( $data ); |
|
123 | - $response->header( 'X-WP-Total', \WC_Admin_Notes::get_notes_count( $query_args['type'], $query_args['status'] ) ); |
|
122 | + $response = rest_ensure_response($data); |
|
123 | + $response->header('X-WP-Total', \WC_Admin_Notes::get_notes_count($query_args['type'], $query_args['status'])); |
|
124 | 124 | |
125 | 125 | return $response; |
126 | 126 | } |
@@ -131,16 +131,16 @@ discard block |
||
131 | 131 | * @param WP_REST_Request $request Full details about the request. |
132 | 132 | * @return array |
133 | 133 | */ |
134 | - protected function prepare_objects_query( $request ) { |
|
134 | + protected function prepare_objects_query($request) { |
|
135 | 135 | $args = array(); |
136 | 136 | $args['order'] = $request['order']; |
137 | 137 | $args['orderby'] = $request['orderby']; |
138 | 138 | $args['per_page'] = $request['per_page']; |
139 | 139 | $args['page'] = $request['page']; |
140 | - $args['type'] = isset( $request['type'] ) ? $request['type'] : array(); |
|
141 | - $args['status'] = isset( $request['status'] ) ? $request['status'] : array(); |
|
140 | + $args['type'] = isset($request['type']) ? $request['type'] : array(); |
|
141 | + $args['status'] = isset($request['status']) ? $request['status'] : array(); |
|
142 | 142 | |
143 | - if ( 'date' === $args['orderby'] ) { |
|
143 | + if ('date' === $args['orderby']) { |
|
144 | 144 | $args['orderby'] = 'date_created'; |
145 | 145 | } |
146 | 146 | |
@@ -153,7 +153,7 @@ discard block |
||
153 | 153 | * @param array $args Key value array of query var to query value. |
154 | 154 | * @param WP_REST_Request $request The request used. |
155 | 155 | */ |
156 | - $args = apply_filters( 'woocommerce_rest_admin_notes_object_query', $args, $request ); |
|
156 | + $args = apply_filters('woocommerce_rest_admin_notes_object_query', $args, $request); |
|
157 | 157 | |
158 | 158 | return $args; |
159 | 159 | } |
@@ -164,9 +164,9 @@ discard block |
||
164 | 164 | * @param WP_REST_Request $request Full details about the request. |
165 | 165 | * @return WP_Error|boolean |
166 | 166 | */ |
167 | - public function get_item_permissions_check( $request ) { |
|
168 | - if ( ! wc_rest_check_manager_permissions( 'system_status', 'read' ) ) { |
|
169 | - return new \WP_Error( 'woocommerce_rest_cannot_view', __( 'Sorry, you cannot list resources.', 'woocommerce' ), array( 'status' => rest_authorization_required_code() ) ); |
|
167 | + public function get_item_permissions_check($request) { |
|
168 | + if ( ! wc_rest_check_manager_permissions('system_status', 'read')) { |
|
169 | + return new \WP_Error('woocommerce_rest_cannot_view', __('Sorry, you cannot list resources.', 'woocommerce'), array('status' => rest_authorization_required_code())); |
|
170 | 170 | } |
171 | 171 | |
172 | 172 | return true; |
@@ -178,9 +178,9 @@ discard block |
||
178 | 178 | * @param WP_REST_Request $request Full details about the request. |
179 | 179 | * @return WP_Error|boolean |
180 | 180 | */ |
181 | - public function get_items_permissions_check( $request ) { |
|
182 | - if ( ! wc_rest_check_manager_permissions( 'system_status', 'read' ) ) { |
|
183 | - return new \WP_Error( 'woocommerce_rest_cannot_view', __( 'Sorry, you cannot list resources.', 'woocommerce' ), array( 'status' => rest_authorization_required_code() ) ); |
|
181 | + public function get_items_permissions_check($request) { |
|
182 | + if ( ! wc_rest_check_manager_permissions('system_status', 'read')) { |
|
183 | + return new \WP_Error('woocommerce_rest_cannot_view', __('Sorry, you cannot list resources.', 'woocommerce'), array('status' => rest_authorization_required_code())); |
|
184 | 184 | } |
185 | 185 | |
186 | 186 | return true; |
@@ -192,32 +192,32 @@ discard block |
||
192 | 192 | * @param WP_REST_Request $request Full details about the request. |
193 | 193 | * @return WP_REST_Request|WP_Error |
194 | 194 | */ |
195 | - public function update_item( $request ) { |
|
196 | - $note = \WC_Admin_Notes::get_note( $request->get_param( 'id' ) ); |
|
195 | + public function update_item($request) { |
|
196 | + $note = \WC_Admin_Notes::get_note($request->get_param('id')); |
|
197 | 197 | |
198 | - if ( ! $note ) { |
|
198 | + if ( ! $note) { |
|
199 | 199 | return new \WP_Error( |
200 | 200 | 'woocommerce_admin_notes_invalid_id', |
201 | - __( 'Sorry, there is no resouce with that ID.', 'woocommerce' ), |
|
202 | - array( 'status' => 404 ) |
|
201 | + __('Sorry, there is no resouce with that ID.', 'woocommerce'), |
|
202 | + array('status' => 404) |
|
203 | 203 | ); |
204 | 204 | } |
205 | 205 | |
206 | 206 | $note_changed = false; |
207 | - if ( ! is_null( $request->get_param( 'status' ) ) ) { |
|
208 | - $note->set_status( $request->get_param( 'status' ) ); |
|
207 | + if ( ! is_null($request->get_param('status'))) { |
|
208 | + $note->set_status($request->get_param('status')); |
|
209 | 209 | $note_changed = true; |
210 | 210 | } |
211 | 211 | |
212 | - if ( ! is_null( $request->get_param( 'date_reminder' ) ) ) { |
|
213 | - $note->set_date_reminder( $request->get_param( 'date_reminder' ) ); |
|
212 | + if ( ! is_null($request->get_param('date_reminder'))) { |
|
213 | + $note->set_date_reminder($request->get_param('date_reminder')); |
|
214 | 214 | $note_changed = true; |
215 | 215 | } |
216 | 216 | |
217 | - if ( $note_changed ) { |
|
217 | + if ($note_changed) { |
|
218 | 218 | $note->save(); |
219 | 219 | } |
220 | - return $this->get_item( $request ); |
|
220 | + return $this->get_item($request); |
|
221 | 221 | } |
222 | 222 | |
223 | 223 | /** |
@@ -226,9 +226,9 @@ discard block |
||
226 | 226 | * @param WP_REST_Request $request Full data about the request. |
227 | 227 | * @return WP_Error|bool |
228 | 228 | */ |
229 | - public function update_items_permissions_check( $request ) { |
|
230 | - if ( ! wc_rest_check_manager_permissions( 'settings', 'edit' ) ) { |
|
231 | - return new \WP_Error( 'woocommerce_rest_cannot_edit', __( 'Sorry, you cannot edit this resource.', 'woocommerce' ), array( 'status' => rest_authorization_required_code() ) ); |
|
229 | + public function update_items_permissions_check($request) { |
|
230 | + if ( ! wc_rest_check_manager_permissions('settings', 'edit')) { |
|
231 | + return new \WP_Error('woocommerce_rest_cannot_edit', __('Sorry, you cannot edit this resource.', 'woocommerce'), array('status' => rest_authorization_required_code())); |
|
232 | 232 | } |
233 | 233 | return true; |
234 | 234 | } |
@@ -239,21 +239,21 @@ discard block |
||
239 | 239 | * @param string $query The query, path, or URL to transform. |
240 | 240 | * @return string A fully formed URL. |
241 | 241 | */ |
242 | - public function prepare_query_for_response( $query ) { |
|
243 | - if ( empty( $query ) ) { |
|
242 | + public function prepare_query_for_response($query) { |
|
243 | + if (empty($query)) { |
|
244 | 244 | return $query; |
245 | 245 | } |
246 | - if ( 'https://' === substr( $query, 0, 8 ) ) { |
|
246 | + if ('https://' === substr($query, 0, 8)) { |
|
247 | 247 | return $query; |
248 | 248 | } |
249 | - if ( 'http://' === substr( $query, 0, 7 ) ) { |
|
249 | + if ('http://' === substr($query, 0, 7)) { |
|
250 | 250 | return $query; |
251 | 251 | } |
252 | - if ( '?' === substr( $query, 0, 1 ) ) { |
|
253 | - return admin_url( 'admin.php' . $query ); |
|
252 | + if ('?' === substr($query, 0, 1)) { |
|
253 | + return admin_url('admin.php' . $query); |
|
254 | 254 | } |
255 | 255 | |
256 | - return admin_url( $query ); |
|
256 | + return admin_url($query); |
|
257 | 257 | } |
258 | 258 | |
259 | 259 | /** |
@@ -263,32 +263,32 @@ discard block |
||
263 | 263 | * @param WP_REST_Request $request Request object. |
264 | 264 | * @return WP_REST_Response $response Response data. |
265 | 265 | */ |
266 | - public function prepare_item_for_response( $data, $request ) { |
|
267 | - $context = ! empty( $request['context'] ) ? $request['context'] : 'view'; |
|
268 | - $data = $this->add_additional_fields_to_object( $data, $request ); |
|
269 | - $data['date_created_gmt'] = wc_rest_prepare_date_response( $data['date_created'] ); |
|
270 | - $data['date_created'] = wc_rest_prepare_date_response( $data['date_created'], false ); |
|
271 | - $data['date_reminder_gmt'] = wc_rest_prepare_date_response( $data['date_reminder'] ); |
|
272 | - $data['date_reminder'] = wc_rest_prepare_date_response( $data['date_reminder'], false ); |
|
273 | - $data['title'] = stripslashes( $data['title'] ); |
|
274 | - $data['content'] = stripslashes( $data['content'] ); |
|
266 | + public function prepare_item_for_response($data, $request) { |
|
267 | + $context = ! empty($request['context']) ? $request['context'] : 'view'; |
|
268 | + $data = $this->add_additional_fields_to_object($data, $request); |
|
269 | + $data['date_created_gmt'] = wc_rest_prepare_date_response($data['date_created']); |
|
270 | + $data['date_created'] = wc_rest_prepare_date_response($data['date_created'], false); |
|
271 | + $data['date_reminder_gmt'] = wc_rest_prepare_date_response($data['date_reminder']); |
|
272 | + $data['date_reminder'] = wc_rest_prepare_date_response($data['date_reminder'], false); |
|
273 | + $data['title'] = stripslashes($data['title']); |
|
274 | + $data['content'] = stripslashes($data['content']); |
|
275 | 275 | $data['is_snoozable'] = (bool) $data['is_snoozable']; |
276 | - foreach ( (array) $data['actions'] as $key => $value ) { |
|
277 | - $data['actions'][ $key ]->label = stripslashes( $data['actions'][ $key ]->label ); |
|
278 | - $data['actions'][ $key ]->url = $this->prepare_query_for_response( $data['actions'][ $key ]->query ); |
|
279 | - $data['actions'][ $key ]->status = stripslashes( $data['actions'][ $key ]->status ); |
|
276 | + foreach ((array) $data['actions'] as $key => $value) { |
|
277 | + $data['actions'][$key]->label = stripslashes($data['actions'][$key]->label); |
|
278 | + $data['actions'][$key]->url = $this->prepare_query_for_response($data['actions'][$key]->query); |
|
279 | + $data['actions'][$key]->status = stripslashes($data['actions'][$key]->status); |
|
280 | 280 | } |
281 | - $data = $this->filter_response_by_context( $data, $context ); |
|
281 | + $data = $this->filter_response_by_context($data, $context); |
|
282 | 282 | |
283 | 283 | // Wrap the data in a response object. |
284 | - $response = rest_ensure_response( $data ); |
|
284 | + $response = rest_ensure_response($data); |
|
285 | 285 | $response->add_links( |
286 | 286 | array( |
287 | 287 | 'self' => array( |
288 | - 'href' => rest_url( sprintf( '/%s/%s/%d', $this->namespace, $this->rest_base, $data['id'] ) ), |
|
288 | + 'href' => rest_url(sprintf('/%s/%s/%d', $this->namespace, $this->rest_base, $data['id'])), |
|
289 | 289 | ), |
290 | 290 | 'collection' => array( |
291 | - 'href' => rest_url( sprintf( '%s/%s', $this->namespace, $this->rest_base ) ), |
|
291 | + 'href' => rest_url(sprintf('%s/%s', $this->namespace, $this->rest_base)), |
|
292 | 292 | ), |
293 | 293 | ) |
294 | 294 | ); |
@@ -301,7 +301,7 @@ discard block |
||
301 | 301 | * @param array $data The original note. |
302 | 302 | * @param WP_REST_Request $request Request used to generate the response. |
303 | 303 | */ |
304 | - return apply_filters( 'woocommerce_rest_prepare_admin_note', $response, $data, $request ); |
|
304 | + return apply_filters('woocommerce_rest_prepare_admin_note', $response, $data, $request); |
|
305 | 305 | } |
306 | 306 | |
307 | 307 | /** |
@@ -311,16 +311,16 @@ discard block |
||
311 | 311 | */ |
312 | 312 | public function get_collection_params() { |
313 | 313 | $params = array(); |
314 | - $params['context'] = $this->get_context_param( array( 'default' => 'view' ) ); |
|
314 | + $params['context'] = $this->get_context_param(array('default' => 'view')); |
|
315 | 315 | $params['order'] = array( |
316 | - 'description' => __( 'Order sort attribute ascending or descending.', 'woocommerce' ), |
|
316 | + 'description' => __('Order sort attribute ascending or descending.', 'woocommerce'), |
|
317 | 317 | 'type' => 'string', |
318 | 318 | 'default' => 'desc', |
319 | - 'enum' => array( 'asc', 'desc' ), |
|
319 | + 'enum' => array('asc', 'desc'), |
|
320 | 320 | 'validate_callback' => 'rest_validate_request_arg', |
321 | 321 | ); |
322 | - $params['orderby'] = array( |
|
323 | - 'description' => __( 'Sort collection by object attribute.', 'woocommerce' ), |
|
322 | + $params['orderby'] = array( |
|
323 | + 'description' => __('Sort collection by object attribute.', 'woocommerce'), |
|
324 | 324 | 'type' => 'string', |
325 | 325 | 'default' => 'date', |
326 | 326 | 'enum' => array( |
@@ -332,8 +332,8 @@ discard block |
||
332 | 332 | ), |
333 | 333 | 'validate_callback' => 'rest_validate_request_arg', |
334 | 334 | ); |
335 | - $params['page'] = array( |
|
336 | - 'description' => __( 'Current page of the collection.', 'woocommerce' ), |
|
335 | + $params['page'] = array( |
|
336 | + 'description' => __('Current page of the collection.', 'woocommerce'), |
|
337 | 337 | 'type' => 'integer', |
338 | 338 | 'default' => 1, |
339 | 339 | 'sanitize_callback' => 'absint', |
@@ -341,7 +341,7 @@ discard block |
||
341 | 341 | 'minimum' => 1, |
342 | 342 | ); |
343 | 343 | $params['per_page'] = array( |
344 | - 'description' => __( 'Maximum number of items to be returned in result set.', 'woocommerce' ), |
|
344 | + 'description' => __('Maximum number of items to be returned in result set.', 'woocommerce'), |
|
345 | 345 | 'type' => 'integer', |
346 | 346 | 'default' => 10, |
347 | 347 | 'minimum' => 1, |
@@ -349,8 +349,8 @@ discard block |
||
349 | 349 | 'sanitize_callback' => 'absint', |
350 | 350 | 'validate_callback' => 'rest_validate_request_arg', |
351 | 351 | ); |
352 | - $params['type'] = array( |
|
353 | - 'description' => __( 'Type of note.', 'woocommerce' ), |
|
352 | + $params['type'] = array( |
|
353 | + 'description' => __('Type of note.', 'woocommerce'), |
|
354 | 354 | 'type' => 'array', |
355 | 355 | 'sanitize_callback' => 'wp_parse_slug_list', |
356 | 356 | 'validate_callback' => 'rest_validate_request_arg', |
@@ -359,8 +359,8 @@ discard block |
||
359 | 359 | 'type' => 'string', |
360 | 360 | ), |
361 | 361 | ); |
362 | - $params['status'] = array( |
|
363 | - 'description' => __( 'Status of note.', 'woocommerce' ), |
|
362 | + $params['status'] = array( |
|
363 | + 'description' => __('Status of note.', 'woocommerce'), |
|
364 | 364 | 'type' => 'array', |
365 | 365 | 'sanitize_callback' => 'wp_parse_slug_list', |
366 | 366 | 'validate_callback' => 'rest_validate_request_arg', |
@@ -384,102 +384,102 @@ discard block |
||
384 | 384 | 'type' => 'object', |
385 | 385 | 'properties' => array( |
386 | 386 | 'id' => array( |
387 | - 'description' => __( 'ID of the note record.', 'woocommerce' ), |
|
387 | + 'description' => __('ID of the note record.', 'woocommerce'), |
|
388 | 388 | 'type' => 'integer', |
389 | - 'context' => array( 'view' ), |
|
389 | + 'context' => array('view'), |
|
390 | 390 | 'readonly' => true, |
391 | 391 | ), |
392 | 392 | 'name' => array( |
393 | - 'description' => __( 'Name of the note.', 'woocommerce' ), |
|
393 | + 'description' => __('Name of the note.', 'woocommerce'), |
|
394 | 394 | 'type' => 'string', |
395 | - 'context' => array( 'view', 'edit' ), |
|
395 | + 'context' => array('view', 'edit'), |
|
396 | 396 | 'readonly' => true, |
397 | 397 | ), |
398 | 398 | 'type' => array( |
399 | - 'description' => __( 'The type of the note (e.g. error, warning, etc.).', 'woocommerce' ), |
|
399 | + 'description' => __('The type of the note (e.g. error, warning, etc.).', 'woocommerce'), |
|
400 | 400 | 'type' => 'string', |
401 | - 'context' => array( 'view', 'edit' ), |
|
401 | + 'context' => array('view', 'edit'), |
|
402 | 402 | 'readonly' => true, |
403 | 403 | ), |
404 | 404 | 'locale' => array( |
405 | - 'description' => __( 'Locale used for the note title and content.', 'woocommerce' ), |
|
405 | + 'description' => __('Locale used for the note title and content.', 'woocommerce'), |
|
406 | 406 | 'type' => 'string', |
407 | - 'context' => array( 'view', 'edit' ), |
|
407 | + 'context' => array('view', 'edit'), |
|
408 | 408 | 'readonly' => true, |
409 | 409 | ), |
410 | 410 | 'title' => array( |
411 | - 'description' => __( 'Title of the note.', 'woocommerce' ), |
|
411 | + 'description' => __('Title of the note.', 'woocommerce'), |
|
412 | 412 | 'type' => 'string', |
413 | - 'context' => array( 'view', 'edit' ), |
|
413 | + 'context' => array('view', 'edit'), |
|
414 | 414 | 'readonly' => true, |
415 | 415 | ), |
416 | 416 | 'content' => array( |
417 | - 'description' => __( 'Content of the note.', 'woocommerce' ), |
|
417 | + 'description' => __('Content of the note.', 'woocommerce'), |
|
418 | 418 | 'type' => 'string', |
419 | - 'context' => array( 'view', 'edit' ), |
|
419 | + 'context' => array('view', 'edit'), |
|
420 | 420 | 'readonly' => true, |
421 | 421 | ), |
422 | 422 | 'icon' => array( |
423 | - 'description' => __( 'Icon (gridicon) for the note.', 'woocommerce' ), |
|
423 | + 'description' => __('Icon (gridicon) for the note.', 'woocommerce'), |
|
424 | 424 | 'type' => 'string', |
425 | - 'context' => array( 'view', 'edit' ), |
|
425 | + 'context' => array('view', 'edit'), |
|
426 | 426 | 'readonly' => true, |
427 | 427 | ), |
428 | 428 | 'content_data' => array( |
429 | - 'description' => __( 'Content data for the note. JSON string. Available for re-localization.', 'woocommerce' ), |
|
429 | + 'description' => __('Content data for the note. JSON string. Available for re-localization.', 'woocommerce'), |
|
430 | 430 | 'type' => 'string', |
431 | - 'context' => array( 'view', 'edit' ), |
|
431 | + 'context' => array('view', 'edit'), |
|
432 | 432 | 'readonly' => true, |
433 | 433 | ), |
434 | 434 | 'status' => array( |
435 | - 'description' => __( 'The status of the note (e.g. unactioned, actioned).', 'woocommerce' ), |
|
435 | + 'description' => __('The status of the note (e.g. unactioned, actioned).', 'woocommerce'), |
|
436 | 436 | 'type' => 'string', |
437 | - 'context' => array( 'view', 'edit' ), |
|
437 | + 'context' => array('view', 'edit'), |
|
438 | 438 | ), |
439 | 439 | 'source' => array( |
440 | - 'description' => __( 'Source of the note.', 'woocommerce' ), |
|
440 | + 'description' => __('Source of the note.', 'woocommerce'), |
|
441 | 441 | 'type' => 'string', |
442 | - 'context' => array( 'view', 'edit' ), |
|
442 | + 'context' => array('view', 'edit'), |
|
443 | 443 | 'readonly' => true, |
444 | 444 | ), |
445 | 445 | 'date_created' => array( |
446 | - 'description' => __( 'Date the note was created.', 'woocommerce' ), |
|
446 | + 'description' => __('Date the note was created.', 'woocommerce'), |
|
447 | 447 | 'type' => 'string', |
448 | - 'context' => array( 'view', 'edit' ), |
|
448 | + 'context' => array('view', 'edit'), |
|
449 | 449 | 'readonly' => true, |
450 | 450 | ), |
451 | 451 | 'date_created_gmt' => array( |
452 | - 'description' => __( 'Date the note was created (GMT).', 'woocommerce' ), |
|
452 | + 'description' => __('Date the note was created (GMT).', 'woocommerce'), |
|
453 | 453 | 'type' => 'string', |
454 | - 'context' => array( 'view', 'edit' ), |
|
454 | + 'context' => array('view', 'edit'), |
|
455 | 455 | 'readonly' => true, |
456 | 456 | ), |
457 | 457 | 'date_reminder' => array( |
458 | - 'description' => __( 'Date after which the user should be reminded of the note, if any.', 'woocommerce' ), |
|
458 | + 'description' => __('Date after which the user should be reminded of the note, if any.', 'woocommerce'), |
|
459 | 459 | 'type' => 'string', |
460 | - 'context' => array( 'view', 'edit' ), |
|
460 | + 'context' => array('view', 'edit'), |
|
461 | 461 | 'readonly' => true, |
462 | 462 | ), |
463 | 463 | 'date_reminder_gmt' => array( |
464 | - 'description' => __( 'Date after which the user should be reminded of the note, if any (GMT).', 'woocommerce' ), |
|
464 | + 'description' => __('Date after which the user should be reminded of the note, if any (GMT).', 'woocommerce'), |
|
465 | 465 | 'type' => 'string', |
466 | - 'context' => array( 'view', 'edit' ), |
|
466 | + 'context' => array('view', 'edit'), |
|
467 | 467 | 'readonly' => true, |
468 | 468 | ), |
469 | 469 | 'is_snoozable' => array( |
470 | - 'description' => __( 'Whether or a user can request to be reminded about the note.', 'woocommerce' ), |
|
470 | + 'description' => __('Whether or a user can request to be reminded about the note.', 'woocommerce'), |
|
471 | 471 | 'type' => 'boolean', |
472 | - 'context' => array( 'view', 'edit' ), |
|
472 | + 'context' => array('view', 'edit'), |
|
473 | 473 | 'readonly' => true, |
474 | 474 | ), |
475 | 475 | 'actions' => array( |
476 | - 'description' => __( 'An array of actions, if any, for the note.', 'woocommerce' ), |
|
476 | + 'description' => __('An array of actions, if any, for the note.', 'woocommerce'), |
|
477 | 477 | 'type' => 'array', |
478 | - 'context' => array( 'view', 'edit' ), |
|
478 | + 'context' => array('view', 'edit'), |
|
479 | 479 | 'readonly' => true, |
480 | 480 | ), |
481 | 481 | ), |
482 | 482 | ); |
483 | - return $this->add_additional_fields_schema( $schema ); |
|
483 | + return $this->add_additional_fields_schema($schema); |
|
484 | 484 | } |
485 | 485 | } |
@@ -9,7 +9,7 @@ discard block |
||
9 | 9 | |
10 | 10 | namespace WooCommerce\RestApi\Version4\Controllers; |
11 | 11 | |
12 | -defined( 'ABSPATH' ) || exit; |
|
12 | +defined('ABSPATH') || exit; |
|
13 | 13 | |
14 | 14 | /** |
15 | 15 | * REST API Order Refunds controller class. |
@@ -41,7 +41,7 @@ discard block |
||
41 | 41 | * Order refunds actions. |
42 | 42 | */ |
43 | 43 | public function __construct() { |
44 | - add_filter( "woocommerce_rest_{$this->post_type}_object_trashable", '__return_false' ); |
|
44 | + add_filter("woocommerce_rest_{$this->post_type}_object_trashable", '__return_false'); |
|
45 | 45 | } |
46 | 46 | |
47 | 47 | /** |
@@ -54,23 +54,23 @@ discard block |
||
54 | 54 | array( |
55 | 55 | 'args' => array( |
56 | 56 | 'order_id' => array( |
57 | - 'description' => __( 'The order ID.', 'woocommerce' ), |
|
57 | + 'description' => __('The order ID.', 'woocommerce'), |
|
58 | 58 | 'type' => 'integer', |
59 | 59 | ), |
60 | 60 | ), |
61 | 61 | array( |
62 | 62 | 'methods' => \WP_REST_Server::READABLE, |
63 | - 'callback' => array( $this, 'get_items' ), |
|
64 | - 'permission_callback' => array( $this, 'get_items_permissions_check' ), |
|
63 | + 'callback' => array($this, 'get_items'), |
|
64 | + 'permission_callback' => array($this, 'get_items_permissions_check'), |
|
65 | 65 | 'args' => $this->get_collection_params(), |
66 | 66 | ), |
67 | 67 | array( |
68 | 68 | 'methods' => \WP_REST_Server::CREATABLE, |
69 | - 'callback' => array( $this, 'create_item' ), |
|
70 | - 'permission_callback' => array( $this, 'create_item_permissions_check' ), |
|
71 | - 'args' => $this->get_endpoint_args_for_item_schema( \WP_REST_Server::CREATABLE ), |
|
69 | + 'callback' => array($this, 'create_item'), |
|
70 | + 'permission_callback' => array($this, 'create_item_permissions_check'), |
|
71 | + 'args' => $this->get_endpoint_args_for_item_schema(\WP_REST_Server::CREATABLE), |
|
72 | 72 | ), |
73 | - 'schema' => array( $this, 'get_public_item_schema' ), |
|
73 | + 'schema' => array($this, 'get_public_item_schema'), |
|
74 | 74 | ), |
75 | 75 | true |
76 | 76 | ); |
@@ -81,35 +81,35 @@ discard block |
||
81 | 81 | array( |
82 | 82 | 'args' => array( |
83 | 83 | 'order_id' => array( |
84 | - 'description' => __( 'The order ID.', 'woocommerce' ), |
|
84 | + 'description' => __('The order ID.', 'woocommerce'), |
|
85 | 85 | 'type' => 'integer', |
86 | 86 | ), |
87 | 87 | 'id' => array( |
88 | - 'description' => __( 'Unique identifier for the resource.', 'woocommerce' ), |
|
88 | + 'description' => __('Unique identifier for the resource.', 'woocommerce'), |
|
89 | 89 | 'type' => 'integer', |
90 | 90 | ), |
91 | 91 | ), |
92 | 92 | array( |
93 | 93 | 'methods' => \WP_REST_Server::READABLE, |
94 | - 'callback' => array( $this, 'get_item' ), |
|
95 | - 'permission_callback' => array( $this, 'get_item_permissions_check' ), |
|
94 | + 'callback' => array($this, 'get_item'), |
|
95 | + 'permission_callback' => array($this, 'get_item_permissions_check'), |
|
96 | 96 | 'args' => array( |
97 | - 'context' => $this->get_context_param( array( 'default' => 'view' ) ), |
|
97 | + 'context' => $this->get_context_param(array('default' => 'view')), |
|
98 | 98 | ), |
99 | 99 | ), |
100 | 100 | array( |
101 | 101 | 'methods' => \WP_REST_Server::DELETABLE, |
102 | - 'callback' => array( $this, 'delete_item' ), |
|
103 | - 'permission_callback' => array( $this, 'delete_item_permissions_check' ), |
|
102 | + 'callback' => array($this, 'delete_item'), |
|
103 | + 'permission_callback' => array($this, 'delete_item_permissions_check'), |
|
104 | 104 | 'args' => array( |
105 | 105 | 'force' => array( |
106 | 106 | 'default' => true, |
107 | 107 | 'type' => 'boolean', |
108 | - 'description' => __( 'Required to be true, as resource does not support trashing.', 'woocommerce' ), |
|
108 | + 'description' => __('Required to be true, as resource does not support trashing.', 'woocommerce'), |
|
109 | 109 | ), |
110 | 110 | ), |
111 | 111 | ), |
112 | - 'schema' => array( $this, 'get_public_item_schema' ), |
|
112 | + 'schema' => array($this, 'get_public_item_schema'), |
|
113 | 113 | ), |
114 | 114 | true |
115 | 115 | ); |
@@ -122,8 +122,8 @@ discard block |
||
122 | 122 | * @param int $id Object ID. |
123 | 123 | * @return WC_Data |
124 | 124 | */ |
125 | - protected function get_object( $id ) { |
|
126 | - return wc_get_order( $id ); |
|
125 | + protected function get_object($id) { |
|
126 | + return wc_get_order($id); |
|
127 | 127 | } |
128 | 128 | |
129 | 129 | /** |
@@ -133,27 +133,27 @@ discard block |
||
133 | 133 | * @param WC_Data $object WC_Data instance. |
134 | 134 | * @return array |
135 | 135 | */ |
136 | - protected function get_formatted_item_data( $object ) { |
|
136 | + protected function get_formatted_item_data($object) { |
|
137 | 137 | $data = $object->get_data(); |
138 | - $format_decimal = array( 'amount' ); |
|
139 | - $format_date = array( 'date_created' ); |
|
140 | - $format_line_items = array( 'line_items' ); |
|
138 | + $format_decimal = array('amount'); |
|
139 | + $format_date = array('date_created'); |
|
140 | + $format_line_items = array('line_items'); |
|
141 | 141 | |
142 | 142 | // Format decimal values. |
143 | - foreach ( $format_decimal as $key ) { |
|
144 | - $data[ $key ] = wc_format_decimal( $data[ $key ], $this->request['dp'] ); |
|
143 | + foreach ($format_decimal as $key) { |
|
144 | + $data[$key] = wc_format_decimal($data[$key], $this->request['dp']); |
|
145 | 145 | } |
146 | 146 | |
147 | 147 | // Format date values. |
148 | - foreach ( $format_date as $key ) { |
|
149 | - $datetime = $data[ $key ]; |
|
150 | - $data[ $key ] = wc_rest_prepare_date_response( $datetime, false ); |
|
151 | - $data[ $key . '_gmt' ] = wc_rest_prepare_date_response( $datetime ); |
|
148 | + foreach ($format_date as $key) { |
|
149 | + $datetime = $data[$key]; |
|
150 | + $data[$key] = wc_rest_prepare_date_response($datetime, false); |
|
151 | + $data[$key . '_gmt'] = wc_rest_prepare_date_response($datetime); |
|
152 | 152 | } |
153 | 153 | |
154 | 154 | // Format line items. |
155 | - foreach ( $format_line_items as $key ) { |
|
156 | - $data[ $key ] = array_values( array_map( array( $this, 'get_order_item_data' ), $data[ $key ] ) ); |
|
155 | + foreach ($format_line_items as $key) { |
|
156 | + $data[$key] = array_values(array_map(array($this, 'get_order_item_data'), $data[$key])); |
|
157 | 157 | } |
158 | 158 | |
159 | 159 | return array( |
@@ -179,28 +179,28 @@ discard block |
||
179 | 179 | * |
180 | 180 | * @return \WP_Error\WP_REST_Response |
181 | 181 | */ |
182 | - public function prepare_object_for_response( $object, $request ) { |
|
182 | + public function prepare_object_for_response($object, $request) { |
|
183 | 183 | $this->request = $request; |
184 | - $this->request['dp'] = is_null( $this->request['dp'] ) ? wc_get_price_decimals() : absint( $this->request['dp'] ); |
|
185 | - $order = wc_get_order( (int) $request['order_id'] ); |
|
184 | + $this->request['dp'] = is_null($this->request['dp']) ? wc_get_price_decimals() : absint($this->request['dp']); |
|
185 | + $order = wc_get_order((int) $request['order_id']); |
|
186 | 186 | |
187 | - if ( ! $order ) { |
|
188 | - return new \WP_Error( 'woocommerce_rest_invalid_order_id', __( 'Invalid order ID.', 'woocommerce' ), 404 ); |
|
187 | + if ( ! $order) { |
|
188 | + return new \WP_Error('woocommerce_rest_invalid_order_id', __('Invalid order ID.', 'woocommerce'), 404); |
|
189 | 189 | } |
190 | 190 | |
191 | - if ( ! $object || $object->get_parent_id() !== $order->get_id() ) { |
|
192 | - return new \WP_Error( 'woocommerce_rest_invalid_order_refund_id', __( 'Invalid order refund ID.', 'woocommerce' ), 404 ); |
|
191 | + if ( ! $object || $object->get_parent_id() !== $order->get_id()) { |
|
192 | + return new \WP_Error('woocommerce_rest_invalid_order_refund_id', __('Invalid order refund ID.', 'woocommerce'), 404); |
|
193 | 193 | } |
194 | 194 | |
195 | - $data = $this->get_formatted_item_data( $object ); |
|
196 | - $context = ! empty( $request['context'] ) ? $request['context'] : 'view'; |
|
197 | - $data = $this->add_additional_fields_to_object( $data, $request ); |
|
198 | - $data = $this->filter_response_by_context( $data, $context ); |
|
195 | + $data = $this->get_formatted_item_data($object); |
|
196 | + $context = ! empty($request['context']) ? $request['context'] : 'view'; |
|
197 | + $data = $this->add_additional_fields_to_object($data, $request); |
|
198 | + $data = $this->filter_response_by_context($data, $context); |
|
199 | 199 | |
200 | 200 | // Wrap the data in a response object. |
201 | - $response = rest_ensure_response( $data ); |
|
201 | + $response = rest_ensure_response($data); |
|
202 | 202 | |
203 | - $response->add_links( $this->prepare_links( $object, $request ) ); |
|
203 | + $response->add_links($this->prepare_links($object, $request)); |
|
204 | 204 | |
205 | 205 | /** |
206 | 206 | * Filter the data for a response. |
@@ -212,7 +212,7 @@ discard block |
||
212 | 212 | * @param WC_Data $object Object data. |
213 | 213 | * @param \WP_REST_Request $request Request object. |
214 | 214 | */ |
215 | - return apply_filters( "woocommerce_rest_prepare_{$this->post_type}_object", $response, $object, $request ); |
|
215 | + return apply_filters("woocommerce_rest_prepare_{$this->post_type}_object", $response, $object, $request); |
|
216 | 216 | } |
217 | 217 | |
218 | 218 | /** |
@@ -223,38 +223,38 @@ discard block |
||
223 | 223 | * |
224 | 224 | * @return \WP_Error\WP_REST_Response |
225 | 225 | */ |
226 | - public function prepare_item_for_response( $post, $request ) { |
|
227 | - $order = wc_get_order( (int) $request['order_id'] ); |
|
226 | + public function prepare_item_for_response($post, $request) { |
|
227 | + $order = wc_get_order((int) $request['order_id']); |
|
228 | 228 | |
229 | - if ( ! $order ) { |
|
230 | - return new \WP_Error( 'woocommerce_rest_invalid_order_id', __( 'Invalid order ID.', 'woocommerce' ), 404 ); |
|
229 | + if ( ! $order) { |
|
230 | + return new \WP_Error('woocommerce_rest_invalid_order_id', __('Invalid order ID.', 'woocommerce'), 404); |
|
231 | 231 | } |
232 | 232 | |
233 | - $refund = wc_get_order( $post ); |
|
233 | + $refund = wc_get_order($post); |
|
234 | 234 | |
235 | - if ( ! $refund || $refund->get_parent_id() !== $order->get_id() ) { |
|
236 | - return new \WP_Error( 'woocommerce_rest_invalid_order_refund_id', __( 'Invalid order refund ID.', 'woocommerce' ), 404 ); |
|
235 | + if ( ! $refund || $refund->get_parent_id() !== $order->get_id()) { |
|
236 | + return new \WP_Error('woocommerce_rest_invalid_order_refund_id', __('Invalid order refund ID.', 'woocommerce'), 404); |
|
237 | 237 | } |
238 | 238 | |
239 | - $dp = is_null( $request['dp'] ) ? wc_get_price_decimals() : absint( $request['dp'] ); |
|
239 | + $dp = is_null($request['dp']) ? wc_get_price_decimals() : absint($request['dp']); |
|
240 | 240 | |
241 | 241 | $data = array( |
242 | 242 | 'id' => $refund->get_id(), |
243 | - 'date_created' => wc_rest_prepare_date_response( $refund->get_date_created() ), |
|
244 | - 'amount' => wc_format_decimal( $refund->get_amount(), $dp ), |
|
243 | + 'date_created' => wc_rest_prepare_date_response($refund->get_date_created()), |
|
244 | + 'amount' => wc_format_decimal($refund->get_amount(), $dp), |
|
245 | 245 | 'reason' => $refund->get_reason(), |
246 | 246 | 'line_items' => array(), |
247 | 247 | ); |
248 | 248 | |
249 | 249 | // Add line items. |
250 | - foreach ( $refund->get_items() as $item_id => $item ) { |
|
251 | - $product = $refund->get_product_from_item( $item ); |
|
250 | + foreach ($refund->get_items() as $item_id => $item) { |
|
251 | + $product = $refund->get_product_from_item($item); |
|
252 | 252 | $product_id = 0; |
253 | 253 | $variation_id = 0; |
254 | 254 | $product_sku = null; |
255 | 255 | |
256 | 256 | // Check if the product exists. |
257 | - if ( is_object( $product ) ) { |
|
257 | + if (is_object($product)) { |
|
258 | 258 | $product_id = $item->get_product_id(); |
259 | 259 | $variation_id = $item->get_variation_id(); |
260 | 260 | $product_sku = $product->get_sku(); |
@@ -264,11 +264,11 @@ discard block |
||
264 | 264 | |
265 | 265 | $hideprefix = 'true' === $request['all_item_meta'] ? null : '_'; |
266 | 266 | |
267 | - foreach ( $item->get_formatted_meta_data( $hideprefix, true ) as $meta_key => $formatted_meta ) { |
|
267 | + foreach ($item->get_formatted_meta_data($hideprefix, true) as $meta_key => $formatted_meta) { |
|
268 | 268 | $item_meta[] = array( |
269 | 269 | 'key' => $formatted_meta->key, |
270 | 270 | 'label' => $formatted_meta->display_key, |
271 | - 'value' => wc_clean( $formatted_meta->display_value ), |
|
271 | + 'value' => wc_clean($formatted_meta->display_value), |
|
272 | 272 | ); |
273 | 273 | } |
274 | 274 | |
@@ -278,47 +278,47 @@ discard block |
||
278 | 278 | 'sku' => $product_sku, |
279 | 279 | 'product_id' => (int) $product_id, |
280 | 280 | 'variation_id' => (int) $variation_id, |
281 | - 'quantity' => wc_stock_amount( $item['qty'] ), |
|
282 | - 'tax_class' => ! empty( $item['tax_class'] ) ? $item['tax_class'] : '', |
|
283 | - 'price' => wc_format_decimal( $refund->get_item_total( $item, false, false ), $dp ), |
|
284 | - 'subtotal' => wc_format_decimal( $refund->get_line_subtotal( $item, false, false ), $dp ), |
|
285 | - 'subtotal_tax' => wc_format_decimal( $item['line_subtotal_tax'], $dp ), |
|
286 | - 'total' => wc_format_decimal( $refund->get_line_total( $item, false, false ), $dp ), |
|
287 | - 'total_tax' => wc_format_decimal( $item['line_tax'], $dp ), |
|
281 | + 'quantity' => wc_stock_amount($item['qty']), |
|
282 | + 'tax_class' => ! empty($item['tax_class']) ? $item['tax_class'] : '', |
|
283 | + 'price' => wc_format_decimal($refund->get_item_total($item, false, false), $dp), |
|
284 | + 'subtotal' => wc_format_decimal($refund->get_line_subtotal($item, false, false), $dp), |
|
285 | + 'subtotal_tax' => wc_format_decimal($item['line_subtotal_tax'], $dp), |
|
286 | + 'total' => wc_format_decimal($refund->get_line_total($item, false, false), $dp), |
|
287 | + 'total_tax' => wc_format_decimal($item['line_tax'], $dp), |
|
288 | 288 | 'taxes' => array(), |
289 | 289 | 'meta' => $item_meta, |
290 | 290 | ); |
291 | 291 | |
292 | - $item_line_taxes = maybe_unserialize( $item['line_tax_data'] ); |
|
293 | - if ( isset( $item_line_taxes['total'] ) ) { |
|
292 | + $item_line_taxes = maybe_unserialize($item['line_tax_data']); |
|
293 | + if (isset($item_line_taxes['total'])) { |
|
294 | 294 | $line_tax = array(); |
295 | 295 | |
296 | - foreach ( $item_line_taxes['total'] as $tax_rate_id => $tax ) { |
|
297 | - $line_tax[ $tax_rate_id ] = array( |
|
296 | + foreach ($item_line_taxes['total'] as $tax_rate_id => $tax) { |
|
297 | + $line_tax[$tax_rate_id] = array( |
|
298 | 298 | 'id' => $tax_rate_id, |
299 | 299 | 'total' => $tax, |
300 | 300 | 'subtotal' => '', |
301 | 301 | ); |
302 | 302 | } |
303 | 303 | |
304 | - foreach ( $item_line_taxes['subtotal'] as $tax_rate_id => $tax ) { |
|
305 | - $line_tax[ $tax_rate_id ]['subtotal'] = $tax; |
|
304 | + foreach ($item_line_taxes['subtotal'] as $tax_rate_id => $tax) { |
|
305 | + $line_tax[$tax_rate_id]['subtotal'] = $tax; |
|
306 | 306 | } |
307 | 307 | |
308 | - $line_item['taxes'] = array_values( $line_tax ); |
|
308 | + $line_item['taxes'] = array_values($line_tax); |
|
309 | 309 | } |
310 | 310 | |
311 | 311 | $data['line_items'][] = $line_item; |
312 | 312 | } |
313 | 313 | |
314 | - $context = ! empty( $request['context'] ) ? $request['context'] : 'view'; |
|
315 | - $data = $this->add_additional_fields_to_object( $data, $request ); |
|
316 | - $data = $this->filter_response_by_context( $data, $context ); |
|
314 | + $context = ! empty($request['context']) ? $request['context'] : 'view'; |
|
315 | + $data = $this->add_additional_fields_to_object($data, $request); |
|
316 | + $data = $this->filter_response_by_context($data, $context); |
|
317 | 317 | |
318 | 318 | // Wrap the data in a response object. |
319 | - $response = rest_ensure_response( $data ); |
|
319 | + $response = rest_ensure_response($data); |
|
320 | 320 | |
321 | - $response->add_links( $this->prepare_links( $refund, $request ) ); |
|
321 | + $response->add_links($this->prepare_links($refund, $request)); |
|
322 | 322 | |
323 | 323 | /** |
324 | 324 | * Filter the data for a response. |
@@ -330,7 +330,7 @@ discard block |
||
330 | 330 | * @param WP_Post $post Post object. |
331 | 331 | * @param \WP_REST_Request $request Request object. |
332 | 332 | */ |
333 | - return apply_filters( "woocommerce_rest_prepare_{$this->post_type}", $response, $post, $request ); |
|
333 | + return apply_filters("woocommerce_rest_prepare_{$this->post_type}", $response, $post, $request); |
|
334 | 334 | } |
335 | 335 | |
336 | 336 | /** |
@@ -340,17 +340,17 @@ discard block |
||
340 | 340 | * @param \WP_REST_Request $request Request object. |
341 | 341 | * @return array Links for the given post. |
342 | 342 | */ |
343 | - protected function prepare_links( $object, $request ) { |
|
344 | - $base = str_replace( '(?P<order_id>[\d]+)', $object->get_parent_id(), $this->rest_base ); |
|
343 | + protected function prepare_links($object, $request) { |
|
344 | + $base = str_replace('(?P<order_id>[\d]+)', $object->get_parent_id(), $this->rest_base); |
|
345 | 345 | $links = array( |
346 | 346 | 'self' => array( |
347 | - 'href' => rest_url( sprintf( '/%s/%s/%d', $this->namespace, $base, $object->get_id() ) ), |
|
347 | + 'href' => rest_url(sprintf('/%s/%s/%d', $this->namespace, $base, $object->get_id())), |
|
348 | 348 | ), |
349 | 349 | 'collection' => array( |
350 | - 'href' => rest_url( sprintf( '/%s/%s', $this->namespace, $base ) ), |
|
350 | + 'href' => rest_url(sprintf('/%s/%s', $this->namespace, $base)), |
|
351 | 351 | ), |
352 | 352 | 'up' => array( |
353 | - 'href' => rest_url( sprintf( '/%s/orders/%d', $this->namespace, $object->get_parent_id() ) ), |
|
353 | + 'href' => rest_url(sprintf('/%s/orders/%d', $this->namespace, $object->get_parent_id())), |
|
354 | 354 | ), |
355 | 355 | ); |
356 | 356 | |
@@ -364,11 +364,11 @@ discard block |
||
364 | 364 | * @param \WP_REST_Request $request Full details about the request. |
365 | 365 | * @return array |
366 | 366 | */ |
367 | - protected function prepare_objects_query( $request ) { |
|
368 | - $args = parent::prepare_objects_query( $request ); |
|
367 | + protected function prepare_objects_query($request) { |
|
368 | + $args = parent::prepare_objects_query($request); |
|
369 | 369 | |
370 | - $args['post_status'] = array_keys( wc_get_order_statuses() ); |
|
371 | - $args['post_parent__in'] = array( absint( $request['order_id'] ) ); |
|
370 | + $args['post_status'] = array_keys(wc_get_order_statuses()); |
|
371 | + $args['post_parent__in'] = array(absint($request['order_id'])); |
|
372 | 372 | |
373 | 373 | return $args; |
374 | 374 | } |
@@ -379,20 +379,20 @@ discard block |
||
379 | 379 | * @param \WP_REST_Request $request Full details about the request. |
380 | 380 | * @return \WP_Error\WP_REST_Response |
381 | 381 | */ |
382 | - public function create_item( $request ) { |
|
383 | - if ( ! empty( $request['id'] ) ) { |
|
382 | + public function create_item($request) { |
|
383 | + if ( ! empty($request['id'])) { |
|
384 | 384 | /* translators: %s: post type */ |
385 | - return new \WP_Error( "woocommerce_rest_{$this->post_type}_exists", sprintf( __( 'Cannot create existing %s.', 'woocommerce' ), $this->post_type ), array( 'status' => 400 ) ); |
|
385 | + return new \WP_Error("woocommerce_rest_{$this->post_type}_exists", sprintf(__('Cannot create existing %s.', 'woocommerce'), $this->post_type), array('status' => 400)); |
|
386 | 386 | } |
387 | 387 | |
388 | - $order_data = get_post( (int) $request['order_id'] ); |
|
388 | + $order_data = get_post((int) $request['order_id']); |
|
389 | 389 | |
390 | - if ( empty( $order_data ) ) { |
|
391 | - return new \WP_Error( 'woocommerce_rest_invalid_order', __( 'Order is invalid', 'woocommerce' ), 400 ); |
|
390 | + if (empty($order_data)) { |
|
391 | + return new \WP_Error('woocommerce_rest_invalid_order', __('Order is invalid', 'woocommerce'), 400); |
|
392 | 392 | } |
393 | 393 | |
394 | - if ( 0 > $request['amount'] ) { |
|
395 | - return new \WP_Error( 'woocommerce_rest_invalid_order_refund', __( 'Refund amount must be greater than zero.', 'woocommerce' ), 400 ); |
|
394 | + if (0 > $request['amount']) { |
|
395 | + return new \WP_Error('woocommerce_rest_invalid_order_refund', __('Refund amount must be greater than zero.', 'woocommerce'), 400); |
|
396 | 396 | } |
397 | 397 | |
398 | 398 | // Create the refund. |
@@ -400,22 +400,22 @@ discard block |
||
400 | 400 | array( |
401 | 401 | 'order_id' => $order_data->ID, |
402 | 402 | 'amount' => $request['amount'], |
403 | - 'reason' => empty( $request['reason'] ) ? null : $request['reason'], |
|
404 | - 'refund_payment' => is_bool( $request['api_refund'] ) ? $request['api_refund'] : true, |
|
403 | + 'reason' => empty($request['reason']) ? null : $request['reason'], |
|
404 | + 'refund_payment' => is_bool($request['api_refund']) ? $request['api_refund'] : true, |
|
405 | 405 | 'restock_items' => true, |
406 | 406 | ) |
407 | 407 | ); |
408 | 408 | |
409 | - if ( is_wp_error( $refund ) ) { |
|
410 | - return new \WP_Error( 'woocommerce_rest_cannot_create_order_refund', $refund->get_error_message(), 500 ); |
|
409 | + if (is_wp_error($refund)) { |
|
410 | + return new \WP_Error('woocommerce_rest_cannot_create_order_refund', $refund->get_error_message(), 500); |
|
411 | 411 | } |
412 | 412 | |
413 | - if ( ! $refund ) { |
|
414 | - return new \WP_Error( 'woocommerce_rest_cannot_create_order_refund', __( 'Cannot create order refund, please try again.', 'woocommerce' ), 500 ); |
|
413 | + if ( ! $refund) { |
|
414 | + return new \WP_Error('woocommerce_rest_cannot_create_order_refund', __('Cannot create order refund, please try again.', 'woocommerce'), 500); |
|
415 | 415 | } |
416 | 416 | |
417 | - $post = get_post( $refund->get_id() ); |
|
418 | - $this->update_additional_fields_for_object( $post, $request ); |
|
417 | + $post = get_post($refund->get_id()); |
|
418 | + $this->update_additional_fields_for_object($post, $request); |
|
419 | 419 | |
420 | 420 | /** |
421 | 421 | * Fires after a single item is created or updated via the REST API. |
@@ -424,13 +424,13 @@ discard block |
||
424 | 424 | * @param \WP_REST_Request $request Request object. |
425 | 425 | * @param boolean $creating True when creating item, false when updating. |
426 | 426 | */ |
427 | - do_action( "woocommerce_rest_insert_{$this->post_type}", $post, $request, true ); |
|
427 | + do_action("woocommerce_rest_insert_{$this->post_type}", $post, $request, true); |
|
428 | 428 | |
429 | - $request->set_param( 'context', 'edit' ); |
|
430 | - $response = $this->prepare_item_for_response( $post, $request ); |
|
431 | - $response = rest_ensure_response( $response ); |
|
432 | - $response->set_status( 201 ); |
|
433 | - $response->header( 'Location', rest_url( sprintf( '/%s/%s/%d', $this->namespace, $this->rest_base, $post->ID ) ) ); |
|
429 | + $request->set_param('context', 'edit'); |
|
430 | + $response = $this->prepare_item_for_response($post, $request); |
|
431 | + $response = rest_ensure_response($response); |
|
432 | + $response->set_status(201); |
|
433 | + $response->header('Location', rest_url(sprintf('/%s/%s/%d', $this->namespace, $this->rest_base, $post->ID))); |
|
434 | 434 | |
435 | 435 | return $response; |
436 | 436 | } |
@@ -443,15 +443,15 @@ discard block |
||
443 | 443 | * @param bool $creating If is creating a new object. |
444 | 444 | * @return \WP_Error|WC_Data The prepared item, or \WP_Error object on failure. |
445 | 445 | */ |
446 | - protected function prepare_object_for_database( $request, $creating = false ) { |
|
447 | - $order = wc_get_order( (int) $request['order_id'] ); |
|
446 | + protected function prepare_object_for_database($request, $creating = false) { |
|
447 | + $order = wc_get_order((int) $request['order_id']); |
|
448 | 448 | |
449 | - if ( ! $order ) { |
|
450 | - return new \WP_Error( 'woocommerce_rest_invalid_order_id', __( 'Invalid order ID.', 'woocommerce' ), 404 ); |
|
449 | + if ( ! $order) { |
|
450 | + return new \WP_Error('woocommerce_rest_invalid_order_id', __('Invalid order ID.', 'woocommerce'), 404); |
|
451 | 451 | } |
452 | 452 | |
453 | - if ( 0 > $request['amount'] ) { |
|
454 | - return new \WP_Error( 'woocommerce_rest_invalid_order_refund', __( 'Refund amount must be greater than zero.', 'woocommerce' ), 400 ); |
|
453 | + if (0 > $request['amount']) { |
|
454 | + return new \WP_Error('woocommerce_rest_invalid_order_refund', __('Refund amount must be greater than zero.', 'woocommerce'), 400); |
|
455 | 455 | } |
456 | 456 | |
457 | 457 | // Create the refund. |
@@ -459,24 +459,24 @@ discard block |
||
459 | 459 | array( |
460 | 460 | 'order_id' => $order->get_id(), |
461 | 461 | 'amount' => $request['amount'], |
462 | - 'reason' => empty( $request['reason'] ) ? null : $request['reason'], |
|
463 | - 'line_items' => empty( $request['line_items'] ) ? array() : $request['line_items'], |
|
464 | - 'refund_payment' => is_bool( $request['api_refund'] ) ? $request['api_refund'] : true, |
|
462 | + 'reason' => empty($request['reason']) ? null : $request['reason'], |
|
463 | + 'line_items' => empty($request['line_items']) ? array() : $request['line_items'], |
|
464 | + 'refund_payment' => is_bool($request['api_refund']) ? $request['api_refund'] : true, |
|
465 | 465 | 'restock_items' => true, |
466 | 466 | ) |
467 | 467 | ); |
468 | 468 | |
469 | - if ( is_wp_error( $refund ) ) { |
|
470 | - return new \WP_Error( 'woocommerce_rest_cannot_create_order_refund', $refund->get_error_message(), 500 ); |
|
469 | + if (is_wp_error($refund)) { |
|
470 | + return new \WP_Error('woocommerce_rest_cannot_create_order_refund', $refund->get_error_message(), 500); |
|
471 | 471 | } |
472 | 472 | |
473 | - if ( ! $refund ) { |
|
474 | - return new \WP_Error( 'woocommerce_rest_cannot_create_order_refund', __( 'Cannot create order refund, please try again.', 'woocommerce' ), 500 ); |
|
473 | + if ( ! $refund) { |
|
474 | + return new \WP_Error('woocommerce_rest_cannot_create_order_refund', __('Cannot create order refund, please try again.', 'woocommerce'), 500); |
|
475 | 475 | } |
476 | 476 | |
477 | - if ( ! empty( $request['meta_data'] ) && is_array( $request['meta_data'] ) ) { |
|
478 | - foreach ( $request['meta_data'] as $meta ) { |
|
479 | - $refund->update_meta_data( $meta['key'], $meta['value'], isset( $meta['id'] ) ? $meta['id'] : '' ); |
|
477 | + if ( ! empty($request['meta_data']) && is_array($request['meta_data'])) { |
|
478 | + foreach ($request['meta_data'] as $meta) { |
|
479 | + $refund->update_meta_data($meta['key'], $meta['value'], isset($meta['id']) ? $meta['id'] : ''); |
|
480 | 480 | } |
481 | 481 | $refund->save_meta_data(); |
482 | 482 | } |
@@ -491,7 +491,7 @@ discard block |
||
491 | 491 | * @param \WP_REST_Request $request Request object. |
492 | 492 | * @param bool $creating If is creating a new object. |
493 | 493 | */ |
494 | - return apply_filters( "woocommerce_rest_pre_insert_{$this->post_type}_object", $refund, $request, $creating ); |
|
494 | + return apply_filters("woocommerce_rest_pre_insert_{$this->post_type}_object", $refund, $request, $creating); |
|
495 | 495 | } |
496 | 496 | |
497 | 497 | /** |
@@ -502,19 +502,19 @@ discard block |
||
502 | 502 | * @param bool $creating If is creating a new object. |
503 | 503 | * @return \WC_Data|\WP_Error |
504 | 504 | */ |
505 | - protected function save_object( $request, $creating = false ) { |
|
505 | + protected function save_object($request, $creating = false) { |
|
506 | 506 | try { |
507 | - $object = $this->prepare_object_for_database( $request, $creating ); |
|
507 | + $object = $this->prepare_object_for_database($request, $creating); |
|
508 | 508 | |
509 | - if ( is_wp_error( $object ) ) { |
|
509 | + if (is_wp_error($object)) { |
|
510 | 510 | return $object; |
511 | 511 | } |
512 | 512 | |
513 | - return $this->get_object( $object->get_id() ); |
|
514 | - } catch ( \WC_Data_Exception $e ) { |
|
515 | - return new \WP_Error( $e->getErrorCode(), $e->getMessage(), $e->getErrorData() ); |
|
516 | - } catch ( \WC_REST_Exception $e ) { |
|
517 | - return new \WP_Error( $e->getErrorCode(), $e->getMessage(), array( 'status' => $e->getCode() ) ); |
|
513 | + return $this->get_object($object->get_id()); |
|
514 | + } catch (\WC_Data_Exception $e) { |
|
515 | + return new \WP_Error($e->getErrorCode(), $e->getMessage(), $e->getErrorData()); |
|
516 | + } catch (\WC_REST_Exception $e) { |
|
517 | + return new \WP_Error($e->getErrorCode(), $e->getMessage(), array('status' => $e->getCode())); |
|
518 | 518 | } |
519 | 519 | } |
520 | 520 | |
@@ -530,221 +530,221 @@ discard block |
||
530 | 530 | 'type' => 'object', |
531 | 531 | 'properties' => array( |
532 | 532 | 'id' => array( |
533 | - 'description' => __( 'Unique identifier for the resource.', 'woocommerce' ), |
|
533 | + 'description' => __('Unique identifier for the resource.', 'woocommerce'), |
|
534 | 534 | 'type' => 'integer', |
535 | - 'context' => array( 'view', 'edit' ), |
|
535 | + 'context' => array('view', 'edit'), |
|
536 | 536 | 'readonly' => true, |
537 | 537 | ), |
538 | 538 | 'date_created' => array( |
539 | - 'description' => __( "The date the order refund was created, in the site's timezone.", 'woocommerce' ), |
|
539 | + 'description' => __("The date the order refund was created, in the site's timezone.", 'woocommerce'), |
|
540 | 540 | 'type' => 'date-time', |
541 | - 'context' => array( 'view', 'edit' ), |
|
541 | + 'context' => array('view', 'edit'), |
|
542 | 542 | 'readonly' => true, |
543 | 543 | ), |
544 | 544 | 'date_created_gmt' => array( |
545 | - 'description' => __( 'The date the order refund was created, as GMT.', 'woocommerce' ), |
|
545 | + 'description' => __('The date the order refund was created, as GMT.', 'woocommerce'), |
|
546 | 546 | 'type' => 'date-time', |
547 | - 'context' => array( 'view', 'edit' ), |
|
547 | + 'context' => array('view', 'edit'), |
|
548 | 548 | 'readonly' => true, |
549 | 549 | ), |
550 | 550 | 'amount' => array( |
551 | - 'description' => __( 'Refund amount.', 'woocommerce' ), |
|
551 | + 'description' => __('Refund amount.', 'woocommerce'), |
|
552 | 552 | 'type' => 'string', |
553 | - 'context' => array( 'view', 'edit' ), |
|
553 | + 'context' => array('view', 'edit'), |
|
554 | 554 | ), |
555 | 555 | 'reason' => array( |
556 | - 'description' => __( 'Reason for refund.', 'woocommerce' ), |
|
556 | + 'description' => __('Reason for refund.', 'woocommerce'), |
|
557 | 557 | 'type' => 'string', |
558 | - 'context' => array( 'view', 'edit' ), |
|
558 | + 'context' => array('view', 'edit'), |
|
559 | 559 | ), |
560 | 560 | 'refunded_by' => array( |
561 | - 'description' => __( 'User ID of user who created the refund.', 'woocommerce' ), |
|
561 | + 'description' => __('User ID of user who created the refund.', 'woocommerce'), |
|
562 | 562 | 'type' => 'integer', |
563 | - 'context' => array( 'view', 'edit' ), |
|
563 | + 'context' => array('view', 'edit'), |
|
564 | 564 | ), |
565 | 565 | 'refunded_payment' => array( |
566 | - 'description' => __( 'If the payment was refunded via the API.', 'woocommerce' ), |
|
566 | + 'description' => __('If the payment was refunded via the API.', 'woocommerce'), |
|
567 | 567 | 'type' => 'boolean', |
568 | - 'context' => array( 'view' ), |
|
568 | + 'context' => array('view'), |
|
569 | 569 | 'readonly' => true, |
570 | 570 | ), |
571 | 571 | 'meta_data' => array( |
572 | - 'description' => __( 'Meta data.', 'woocommerce' ), |
|
572 | + 'description' => __('Meta data.', 'woocommerce'), |
|
573 | 573 | 'type' => 'array', |
574 | - 'context' => array( 'view', 'edit' ), |
|
574 | + 'context' => array('view', 'edit'), |
|
575 | 575 | 'items' => array( |
576 | 576 | 'type' => 'object', |
577 | 577 | 'properties' => array( |
578 | 578 | 'id' => array( |
579 | - 'description' => __( 'Meta ID.', 'woocommerce' ), |
|
579 | + 'description' => __('Meta ID.', 'woocommerce'), |
|
580 | 580 | 'type' => 'integer', |
581 | - 'context' => array( 'view', 'edit' ), |
|
581 | + 'context' => array('view', 'edit'), |
|
582 | 582 | 'readonly' => true, |
583 | 583 | ), |
584 | 584 | 'key' => array( |
585 | - 'description' => __( 'Meta key.', 'woocommerce' ), |
|
585 | + 'description' => __('Meta key.', 'woocommerce'), |
|
586 | 586 | 'type' => 'string', |
587 | - 'context' => array( 'view', 'edit' ), |
|
587 | + 'context' => array('view', 'edit'), |
|
588 | 588 | ), |
589 | 589 | 'value' => array( |
590 | - 'description' => __( 'Meta value.', 'woocommerce' ), |
|
590 | + 'description' => __('Meta value.', 'woocommerce'), |
|
591 | 591 | 'type' => 'mixed', |
592 | - 'context' => array( 'view', 'edit' ), |
|
592 | + 'context' => array('view', 'edit'), |
|
593 | 593 | ), |
594 | 594 | ), |
595 | 595 | ), |
596 | 596 | ), |
597 | 597 | 'line_items' => array( |
598 | - 'description' => __( 'Line items data.', 'woocommerce' ), |
|
598 | + 'description' => __('Line items data.', 'woocommerce'), |
|
599 | 599 | 'type' => 'array', |
600 | - 'context' => array( 'view', 'edit' ), |
|
600 | + 'context' => array('view', 'edit'), |
|
601 | 601 | 'readonly' => true, |
602 | 602 | 'items' => array( |
603 | 603 | 'type' => 'object', |
604 | 604 | 'properties' => array( |
605 | 605 | 'id' => array( |
606 | - 'description' => __( 'Item ID.', 'woocommerce' ), |
|
606 | + 'description' => __('Item ID.', 'woocommerce'), |
|
607 | 607 | 'type' => 'integer', |
608 | - 'context' => array( 'view', 'edit' ), |
|
608 | + 'context' => array('view', 'edit'), |
|
609 | 609 | 'readonly' => true, |
610 | 610 | ), |
611 | 611 | 'name' => array( |
612 | - 'description' => __( 'Product name.', 'woocommerce' ), |
|
612 | + 'description' => __('Product name.', 'woocommerce'), |
|
613 | 613 | 'type' => 'mixed', |
614 | - 'context' => array( 'view', 'edit' ), |
|
614 | + 'context' => array('view', 'edit'), |
|
615 | 615 | 'readonly' => true, |
616 | 616 | ), |
617 | 617 | 'product_id' => array( |
618 | - 'description' => __( 'Product ID.', 'woocommerce' ), |
|
618 | + 'description' => __('Product ID.', 'woocommerce'), |
|
619 | 619 | 'type' => 'mixed', |
620 | - 'context' => array( 'view', 'edit' ), |
|
620 | + 'context' => array('view', 'edit'), |
|
621 | 621 | 'readonly' => true, |
622 | 622 | ), |
623 | 623 | 'variation_id' => array( |
624 | - 'description' => __( 'Variation ID, if applicable.', 'woocommerce' ), |
|
624 | + 'description' => __('Variation ID, if applicable.', 'woocommerce'), |
|
625 | 625 | 'type' => 'integer', |
626 | - 'context' => array( 'view', 'edit' ), |
|
626 | + 'context' => array('view', 'edit'), |
|
627 | 627 | 'readonly' => true, |
628 | 628 | ), |
629 | 629 | 'quantity' => array( |
630 | - 'description' => __( 'Quantity ordered.', 'woocommerce' ), |
|
630 | + 'description' => __('Quantity ordered.', 'woocommerce'), |
|
631 | 631 | 'type' => 'integer', |
632 | - 'context' => array( 'view', 'edit' ), |
|
632 | + 'context' => array('view', 'edit'), |
|
633 | 633 | 'readonly' => true, |
634 | 634 | ), |
635 | 635 | 'tax_class' => array( |
636 | - 'description' => __( 'Tax class of product.', 'woocommerce' ), |
|
636 | + 'description' => __('Tax class of product.', 'woocommerce'), |
|
637 | 637 | 'type' => 'string', |
638 | - 'context' => array( 'view', 'edit' ), |
|
638 | + 'context' => array('view', 'edit'), |
|
639 | 639 | 'readonly' => true, |
640 | 640 | ), |
641 | 641 | 'subtotal' => array( |
642 | - 'description' => __( 'Line subtotal (before discounts).', 'woocommerce' ), |
|
642 | + 'description' => __('Line subtotal (before discounts).', 'woocommerce'), |
|
643 | 643 | 'type' => 'string', |
644 | - 'context' => array( 'view', 'edit' ), |
|
644 | + 'context' => array('view', 'edit'), |
|
645 | 645 | 'readonly' => true, |
646 | 646 | ), |
647 | 647 | 'subtotal_tax' => array( |
648 | - 'description' => __( 'Line subtotal tax (before discounts).', 'woocommerce' ), |
|
648 | + 'description' => __('Line subtotal tax (before discounts).', 'woocommerce'), |
|
649 | 649 | 'type' => 'string', |
650 | - 'context' => array( 'view', 'edit' ), |
|
650 | + 'context' => array('view', 'edit'), |
|
651 | 651 | 'readonly' => true, |
652 | 652 | ), |
653 | 653 | 'total' => array( |
654 | - 'description' => __( 'Line total (after discounts).', 'woocommerce' ), |
|
654 | + 'description' => __('Line total (after discounts).', 'woocommerce'), |
|
655 | 655 | 'type' => 'string', |
656 | - 'context' => array( 'view', 'edit' ), |
|
656 | + 'context' => array('view', 'edit'), |
|
657 | 657 | 'readonly' => true, |
658 | 658 | ), |
659 | 659 | 'total_tax' => array( |
660 | - 'description' => __( 'Line total tax (after discounts).', 'woocommerce' ), |
|
660 | + 'description' => __('Line total tax (after discounts).', 'woocommerce'), |
|
661 | 661 | 'type' => 'string', |
662 | - 'context' => array( 'view', 'edit' ), |
|
662 | + 'context' => array('view', 'edit'), |
|
663 | 663 | 'readonly' => true, |
664 | 664 | ), |
665 | 665 | 'taxes' => array( |
666 | - 'description' => __( 'Line taxes.', 'woocommerce' ), |
|
666 | + 'description' => __('Line taxes.', 'woocommerce'), |
|
667 | 667 | 'type' => 'array', |
668 | - 'context' => array( 'view', 'edit' ), |
|
668 | + 'context' => array('view', 'edit'), |
|
669 | 669 | 'readonly' => true, |
670 | 670 | 'items' => array( |
671 | 671 | 'type' => 'object', |
672 | 672 | 'properties' => array( |
673 | 673 | 'id' => array( |
674 | - 'description' => __( 'Tax rate ID.', 'woocommerce' ), |
|
674 | + 'description' => __('Tax rate ID.', 'woocommerce'), |
|
675 | 675 | 'type' => 'integer', |
676 | - 'context' => array( 'view', 'edit' ), |
|
676 | + 'context' => array('view', 'edit'), |
|
677 | 677 | 'readonly' => true, |
678 | 678 | ), |
679 | 679 | 'total' => array( |
680 | - 'description' => __( 'Tax total.', 'woocommerce' ), |
|
680 | + 'description' => __('Tax total.', 'woocommerce'), |
|
681 | 681 | 'type' => 'string', |
682 | - 'context' => array( 'view', 'edit' ), |
|
682 | + 'context' => array('view', 'edit'), |
|
683 | 683 | 'readonly' => true, |
684 | 684 | ), |
685 | 685 | 'subtotal' => array( |
686 | - 'description' => __( 'Tax subtotal.', 'woocommerce' ), |
|
686 | + 'description' => __('Tax subtotal.', 'woocommerce'), |
|
687 | 687 | 'type' => 'string', |
688 | - 'context' => array( 'view', 'edit' ), |
|
688 | + 'context' => array('view', 'edit'), |
|
689 | 689 | 'readonly' => true, |
690 | 690 | ), |
691 | 691 | ), |
692 | 692 | ), |
693 | 693 | ), |
694 | 694 | 'meta_data' => array( |
695 | - 'description' => __( 'Meta data.', 'woocommerce' ), |
|
695 | + 'description' => __('Meta data.', 'woocommerce'), |
|
696 | 696 | 'type' => 'array', |
697 | - 'context' => array( 'view', 'edit' ), |
|
697 | + 'context' => array('view', 'edit'), |
|
698 | 698 | 'readonly' => true, |
699 | 699 | 'items' => array( |
700 | 700 | 'type' => 'object', |
701 | 701 | 'properties' => array( |
702 | 702 | 'id' => array( |
703 | - 'description' => __( 'Meta ID.', 'woocommerce' ), |
|
703 | + 'description' => __('Meta ID.', 'woocommerce'), |
|
704 | 704 | 'type' => 'integer', |
705 | - 'context' => array( 'view', 'edit' ), |
|
705 | + 'context' => array('view', 'edit'), |
|
706 | 706 | 'readonly' => true, |
707 | 707 | ), |
708 | 708 | 'key' => array( |
709 | - 'description' => __( 'Meta key.', 'woocommerce' ), |
|
709 | + 'description' => __('Meta key.', 'woocommerce'), |
|
710 | 710 | 'type' => 'string', |
711 | - 'context' => array( 'view', 'edit' ), |
|
711 | + 'context' => array('view', 'edit'), |
|
712 | 712 | 'readonly' => true, |
713 | 713 | ), |
714 | 714 | 'value' => array( |
715 | - 'description' => __( 'Meta value.', 'woocommerce' ), |
|
715 | + 'description' => __('Meta value.', 'woocommerce'), |
|
716 | 716 | 'type' => 'mixed', |
717 | - 'context' => array( 'view', 'edit' ), |
|
717 | + 'context' => array('view', 'edit'), |
|
718 | 718 | 'readonly' => true, |
719 | 719 | ), |
720 | 720 | ), |
721 | 721 | ), |
722 | 722 | ), |
723 | 723 | 'sku' => array( |
724 | - 'description' => __( 'Product SKU.', 'woocommerce' ), |
|
724 | + 'description' => __('Product SKU.', 'woocommerce'), |
|
725 | 725 | 'type' => 'string', |
726 | - 'context' => array( 'view', 'edit' ), |
|
726 | + 'context' => array('view', 'edit'), |
|
727 | 727 | 'readonly' => true, |
728 | 728 | ), |
729 | 729 | 'price' => array( |
730 | - 'description' => __( 'Product price.', 'woocommerce' ), |
|
730 | + 'description' => __('Product price.', 'woocommerce'), |
|
731 | 731 | 'type' => 'number', |
732 | - 'context' => array( 'view', 'edit' ), |
|
732 | + 'context' => array('view', 'edit'), |
|
733 | 733 | 'readonly' => true, |
734 | 734 | ), |
735 | 735 | ), |
736 | 736 | ), |
737 | 737 | ), |
738 | 738 | 'api_refund' => array( |
739 | - 'description' => __( 'When true, the payment gateway API is used to generate the refund.', 'woocommerce' ), |
|
739 | + 'description' => __('When true, the payment gateway API is used to generate the refund.', 'woocommerce'), |
|
740 | 740 | 'type' => 'boolean', |
741 | - 'context' => array( 'edit' ), |
|
741 | + 'context' => array('edit'), |
|
742 | 742 | 'default' => true, |
743 | 743 | ), |
744 | 744 | ), |
745 | 745 | ); |
746 | 746 | |
747 | - return $this->add_additional_fields_schema( $schema ); |
|
747 | + return $this->add_additional_fields_schema($schema); |
|
748 | 748 | } |
749 | 749 | |
750 | 750 | /** |
@@ -757,13 +757,13 @@ discard block |
||
757 | 757 | |
758 | 758 | $params['dp'] = array( |
759 | 759 | 'default' => wc_get_price_decimals(), |
760 | - 'description' => __( 'Number of decimal points to use in each resource.', 'woocommerce' ), |
|
760 | + 'description' => __('Number of decimal points to use in each resource.', 'woocommerce'), |
|
761 | 761 | 'type' => 'integer', |
762 | 762 | 'sanitize_callback' => 'absint', |
763 | 763 | 'validate_callback' => 'rest_validate_request_arg', |
764 | 764 | ); |
765 | 765 | |
766 | - unset( $params['status'], $params['customer'], $params['product'] ); |
|
766 | + unset($params['status'], $params['customer'], $params['product']); |
|
767 | 767 | |
768 | 768 | return $params; |
769 | 769 | } |
@@ -9,7 +9,7 @@ discard block |
||
9 | 9 | |
10 | 10 | namespace WooCommerce\RestApi\Version4\Controllers; |
11 | 11 | |
12 | -defined( 'ABSPATH' ) || exit; |
|
12 | +defined('ABSPATH') || exit; |
|
13 | 13 | |
14 | 14 | /** |
15 | 15 | * REST API Product Attributes controller class. |
@@ -40,26 +40,26 @@ discard block |
||
40 | 40 | array( |
41 | 41 | array( |
42 | 42 | 'methods' => \WP_REST_Server::READABLE, |
43 | - 'callback' => array( $this, 'get_items' ), |
|
44 | - 'permission_callback' => array( $this, 'get_items_permissions_check' ), |
|
43 | + 'callback' => array($this, 'get_items'), |
|
44 | + 'permission_callback' => array($this, 'get_items_permissions_check'), |
|
45 | 45 | 'args' => $this->get_collection_params(), |
46 | 46 | ), |
47 | 47 | array( |
48 | 48 | 'methods' => \WP_REST_Server::CREATABLE, |
49 | - 'callback' => array( $this, 'create_item' ), |
|
50 | - 'permission_callback' => array( $this, 'create_item_permissions_check' ), |
|
49 | + 'callback' => array($this, 'create_item'), |
|
50 | + 'permission_callback' => array($this, 'create_item_permissions_check'), |
|
51 | 51 | 'args' => array_merge( |
52 | - $this->get_endpoint_args_for_item_schema( \WP_REST_Server::CREATABLE ), |
|
52 | + $this->get_endpoint_args_for_item_schema(\WP_REST_Server::CREATABLE), |
|
53 | 53 | array( |
54 | 54 | 'name' => array( |
55 | - 'description' => __( 'Name for the resource.', 'woocommerce' ), |
|
55 | + 'description' => __('Name for the resource.', 'woocommerce'), |
|
56 | 56 | 'type' => 'string', |
57 | 57 | 'required' => true, |
58 | 58 | ), |
59 | 59 | ) |
60 | 60 | ), |
61 | 61 | ), |
62 | - 'schema' => array( $this, 'get_public_item_schema' ), |
|
62 | + 'schema' => array($this, 'get_public_item_schema'), |
|
63 | 63 | ), |
64 | 64 | true |
65 | 65 | ); |
@@ -70,37 +70,37 @@ discard block |
||
70 | 70 | array( |
71 | 71 | 'args' => array( |
72 | 72 | 'id' => array( |
73 | - 'description' => __( 'Unique identifier for the resource.', 'woocommerce' ), |
|
73 | + 'description' => __('Unique identifier for the resource.', 'woocommerce'), |
|
74 | 74 | 'type' => 'integer', |
75 | 75 | ), |
76 | 76 | ), |
77 | 77 | array( |
78 | 78 | 'methods' => \WP_REST_Server::READABLE, |
79 | - 'callback' => array( $this, 'get_item' ), |
|
80 | - 'permission_callback' => array( $this, 'get_item_permissions_check' ), |
|
79 | + 'callback' => array($this, 'get_item'), |
|
80 | + 'permission_callback' => array($this, 'get_item_permissions_check'), |
|
81 | 81 | 'args' => array( |
82 | - 'context' => $this->get_context_param( array( 'default' => 'view' ) ), |
|
82 | + 'context' => $this->get_context_param(array('default' => 'view')), |
|
83 | 83 | ), |
84 | 84 | ), |
85 | 85 | array( |
86 | 86 | 'methods' => \WP_REST_Server::EDITABLE, |
87 | - 'callback' => array( $this, 'update_item' ), |
|
88 | - 'permission_callback' => array( $this, 'update_item_permissions_check' ), |
|
89 | - 'args' => $this->get_endpoint_args_for_item_schema( \WP_REST_Server::EDITABLE ), |
|
87 | + 'callback' => array($this, 'update_item'), |
|
88 | + 'permission_callback' => array($this, 'update_item_permissions_check'), |
|
89 | + 'args' => $this->get_endpoint_args_for_item_schema(\WP_REST_Server::EDITABLE), |
|
90 | 90 | ), |
91 | 91 | array( |
92 | 92 | 'methods' => \WP_REST_Server::DELETABLE, |
93 | - 'callback' => array( $this, 'delete_item' ), |
|
94 | - 'permission_callback' => array( $this, 'delete_item_permissions_check' ), |
|
93 | + 'callback' => array($this, 'delete_item'), |
|
94 | + 'permission_callback' => array($this, 'delete_item_permissions_check'), |
|
95 | 95 | 'args' => array( |
96 | 96 | 'force' => array( |
97 | 97 | 'default' => true, |
98 | 98 | 'type' => 'boolean', |
99 | - 'description' => __( 'Required to be true, as resource does not support trashing.', 'woocommerce' ), |
|
99 | + 'description' => __('Required to be true, as resource does not support trashing.', 'woocommerce'), |
|
100 | 100 | ), |
101 | 101 | ), |
102 | 102 | ), |
103 | - 'schema' => array( $this, 'get_public_item_schema' ), |
|
103 | + 'schema' => array($this, 'get_public_item_schema'), |
|
104 | 104 | ), |
105 | 105 | true |
106 | 106 | ); |
@@ -111,11 +111,11 @@ discard block |
||
111 | 111 | array( |
112 | 112 | array( |
113 | 113 | 'methods' => \WP_REST_Server::EDITABLE, |
114 | - 'callback' => array( $this, 'batch_items' ), |
|
115 | - 'permission_callback' => array( $this, 'batch_items_permissions_check' ), |
|
116 | - 'args' => $this->get_endpoint_args_for_item_schema( \WP_REST_Server::EDITABLE ), |
|
114 | + 'callback' => array($this, 'batch_items'), |
|
115 | + 'permission_callback' => array($this, 'batch_items_permissions_check'), |
|
116 | + 'args' => $this->get_endpoint_args_for_item_schema(\WP_REST_Server::EDITABLE), |
|
117 | 117 | ), |
118 | - 'schema' => array( $this, 'get_public_batch_schema' ), |
|
118 | + 'schema' => array($this, 'get_public_batch_schema'), |
|
119 | 119 | ), |
120 | 120 | true |
121 | 121 | ); |
@@ -127,9 +127,9 @@ discard block |
||
127 | 127 | * @param \WP_REST_Request $request Full details about the request. |
128 | 128 | * @return \WP_Error|boolean |
129 | 129 | */ |
130 | - public function get_items_permissions_check( $request ) { |
|
131 | - if ( ! wc_rest_check_manager_permissions( 'attributes', 'read' ) ) { |
|
132 | - return new \WP_Error( 'woocommerce_rest_cannot_view', __( 'Sorry, you cannot list resources.', 'woocommerce' ), array( 'status' => rest_authorization_required_code() ) ); |
|
130 | + public function get_items_permissions_check($request) { |
|
131 | + if ( ! wc_rest_check_manager_permissions('attributes', 'read')) { |
|
132 | + return new \WP_Error('woocommerce_rest_cannot_view', __('Sorry, you cannot list resources.', 'woocommerce'), array('status' => rest_authorization_required_code())); |
|
133 | 133 | } |
134 | 134 | |
135 | 135 | return true; |
@@ -141,9 +141,9 @@ discard block |
||
141 | 141 | * @param \WP_REST_Request $request Full details about the request. |
142 | 142 | * @return \WP_Error|boolean |
143 | 143 | */ |
144 | - public function create_item_permissions_check( $request ) { |
|
145 | - if ( ! wc_rest_check_manager_permissions( 'attributes', 'create' ) ) { |
|
146 | - return new \WP_Error( 'woocommerce_rest_cannot_create', __( 'Sorry, you cannot create new resource.', 'woocommerce' ), array( 'status' => rest_authorization_required_code() ) ); |
|
144 | + public function create_item_permissions_check($request) { |
|
145 | + if ( ! wc_rest_check_manager_permissions('attributes', 'create')) { |
|
146 | + return new \WP_Error('woocommerce_rest_cannot_create', __('Sorry, you cannot create new resource.', 'woocommerce'), array('status' => rest_authorization_required_code())); |
|
147 | 147 | } |
148 | 148 | |
149 | 149 | return true; |
@@ -155,13 +155,13 @@ discard block |
||
155 | 155 | * @param \WP_REST_Request $request Full details about the request. |
156 | 156 | * @return \WP_Error|boolean |
157 | 157 | */ |
158 | - public function get_item_permissions_check( $request ) { |
|
159 | - if ( ! $this->get_taxonomy( $request ) ) { |
|
160 | - return new \WP_Error( 'woocommerce_rest_taxonomy_invalid', __( 'Resource does not exist.', 'woocommerce' ), array( 'status' => 404 ) ); |
|
158 | + public function get_item_permissions_check($request) { |
|
159 | + if ( ! $this->get_taxonomy($request)) { |
|
160 | + return new \WP_Error('woocommerce_rest_taxonomy_invalid', __('Resource does not exist.', 'woocommerce'), array('status' => 404)); |
|
161 | 161 | } |
162 | 162 | |
163 | - if ( ! wc_rest_check_manager_permissions( 'attributes', 'read' ) ) { |
|
164 | - return new \WP_Error( 'woocommerce_rest_cannot_view', __( 'Sorry, you cannot view this resource.', 'woocommerce' ), array( 'status' => rest_authorization_required_code() ) ); |
|
163 | + if ( ! wc_rest_check_manager_permissions('attributes', 'read')) { |
|
164 | + return new \WP_Error('woocommerce_rest_cannot_view', __('Sorry, you cannot view this resource.', 'woocommerce'), array('status' => rest_authorization_required_code())); |
|
165 | 165 | } |
166 | 166 | |
167 | 167 | return true; |
@@ -173,13 +173,13 @@ discard block |
||
173 | 173 | * @param \WP_REST_Request $request Full details about the request. |
174 | 174 | * @return \WP_Error|boolean |
175 | 175 | */ |
176 | - public function update_item_permissions_check( $request ) { |
|
177 | - if ( ! $this->get_taxonomy( $request ) ) { |
|
178 | - return new \WP_Error( 'woocommerce_rest_taxonomy_invalid', __( 'Resource does not exist.', 'woocommerce' ), array( 'status' => 404 ) ); |
|
176 | + public function update_item_permissions_check($request) { |
|
177 | + if ( ! $this->get_taxonomy($request)) { |
|
178 | + return new \WP_Error('woocommerce_rest_taxonomy_invalid', __('Resource does not exist.', 'woocommerce'), array('status' => 404)); |
|
179 | 179 | } |
180 | 180 | |
181 | - if ( ! wc_rest_check_manager_permissions( 'attributes', 'edit' ) ) { |
|
182 | - return new \WP_Error( 'woocommerce_rest_cannot_update', __( 'Sorry, you cannot update resource.', 'woocommerce' ), array( 'status' => rest_authorization_required_code() ) ); |
|
181 | + if ( ! wc_rest_check_manager_permissions('attributes', 'edit')) { |
|
182 | + return new \WP_Error('woocommerce_rest_cannot_update', __('Sorry, you cannot update resource.', 'woocommerce'), array('status' => rest_authorization_required_code())); |
|
183 | 183 | } |
184 | 184 | |
185 | 185 | return true; |
@@ -191,13 +191,13 @@ discard block |
||
191 | 191 | * @param \WP_REST_Request $request Full details about the request. |
192 | 192 | * @return \WP_Error|boolean |
193 | 193 | */ |
194 | - public function delete_item_permissions_check( $request ) { |
|
195 | - if ( ! $this->get_taxonomy( $request ) ) { |
|
196 | - return new \WP_Error( 'woocommerce_rest_taxonomy_invalid', __( 'Resource does not exist.', 'woocommerce' ), array( 'status' => 404 ) ); |
|
194 | + public function delete_item_permissions_check($request) { |
|
195 | + if ( ! $this->get_taxonomy($request)) { |
|
196 | + return new \WP_Error('woocommerce_rest_taxonomy_invalid', __('Resource does not exist.', 'woocommerce'), array('status' => 404)); |
|
197 | 197 | } |
198 | 198 | |
199 | - if ( ! wc_rest_check_manager_permissions( 'attributes', 'delete' ) ) { |
|
200 | - return new \WP_Error( 'woocommerce_rest_cannot_delete', __( 'Sorry, you are not allowed to delete this resource.', 'woocommerce' ), array( 'status' => rest_authorization_required_code() ) ); |
|
199 | + if ( ! wc_rest_check_manager_permissions('attributes', 'delete')) { |
|
200 | + return new \WP_Error('woocommerce_rest_cannot_delete', __('Sorry, you are not allowed to delete this resource.', 'woocommerce'), array('status' => rest_authorization_required_code())); |
|
201 | 201 | } |
202 | 202 | |
203 | 203 | return true; |
@@ -210,9 +210,9 @@ discard block |
||
210 | 210 | * |
211 | 211 | * @return bool|\WP_Error |
212 | 212 | */ |
213 | - public function batch_items_permissions_check( $request ) { |
|
214 | - if ( ! wc_rest_check_manager_permissions( 'attributes', 'batch' ) ) { |
|
215 | - return new \WP_Error( 'woocommerce_rest_cannot_batch', __( 'Sorry, you are not allowed to batch manipulate this resource.', 'woocommerce' ), array( 'status' => rest_authorization_required_code() ) ); |
|
213 | + public function batch_items_permissions_check($request) { |
|
214 | + if ( ! wc_rest_check_manager_permissions('attributes', 'batch')) { |
|
215 | + return new \WP_Error('woocommerce_rest_cannot_batch', __('Sorry, you are not allowed to batch manipulate this resource.', 'woocommerce'), array('status' => rest_authorization_required_code())); |
|
216 | 216 | } |
217 | 217 | |
218 | 218 | return true; |
@@ -224,16 +224,16 @@ discard block |
||
224 | 224 | * @param \WP_REST_Request $request Request params. |
225 | 225 | * @return array |
226 | 226 | */ |
227 | - public function get_items( $request ) { |
|
227 | + public function get_items($request) { |
|
228 | 228 | $attributes = wc_get_attribute_taxonomies(); |
229 | 229 | $data = array(); |
230 | - foreach ( $attributes as $attribute_obj ) { |
|
231 | - $attribute = $this->prepare_item_for_response( $attribute_obj, $request ); |
|
232 | - $attribute = $this->prepare_response_for_collection( $attribute ); |
|
230 | + foreach ($attributes as $attribute_obj) { |
|
231 | + $attribute = $this->prepare_item_for_response($attribute_obj, $request); |
|
232 | + $attribute = $this->prepare_response_for_collection($attribute); |
|
233 | 233 | $data[] = $attribute; |
234 | 234 | } |
235 | 235 | |
236 | - return rest_ensure_response( $data ); |
|
236 | + return rest_ensure_response($data); |
|
237 | 237 | } |
238 | 238 | |
239 | 239 | /** |
@@ -242,31 +242,31 @@ discard block |
||
242 | 242 | * @param \WP_REST_Request $request Full details about the request. |
243 | 243 | * @return \WP_REST_Request|\WP_Error |
244 | 244 | */ |
245 | - public function create_item( $request ) { |
|
245 | + public function create_item($request) { |
|
246 | 246 | global $wpdb; |
247 | 247 | |
248 | 248 | $id = wc_create_attribute( |
249 | 249 | array( |
250 | 250 | 'name' => $request['name'], |
251 | - 'slug' => wc_sanitize_taxonomy_name( stripslashes( $request['slug'] ) ), |
|
252 | - 'type' => ! empty( $request['type'] ) ? $request['type'] : 'select', |
|
253 | - 'order_by' => ! empty( $request['order_by'] ) ? $request['order_by'] : 'menu_order', |
|
251 | + 'slug' => wc_sanitize_taxonomy_name(stripslashes($request['slug'])), |
|
252 | + 'type' => ! empty($request['type']) ? $request['type'] : 'select', |
|
253 | + 'order_by' => ! empty($request['order_by']) ? $request['order_by'] : 'menu_order', |
|
254 | 254 | 'has_archives' => true === $request['has_archives'], |
255 | 255 | ) |
256 | 256 | ); |
257 | 257 | |
258 | 258 | // Checks for errors. |
259 | - if ( is_wp_error( $id ) ) { |
|
260 | - return new \WP_Error( 'woocommerce_rest_cannot_create', $id->get_error_message(), array( 'status' => 400 ) ); |
|
259 | + if (is_wp_error($id)) { |
|
260 | + return new \WP_Error('woocommerce_rest_cannot_create', $id->get_error_message(), array('status' => 400)); |
|
261 | 261 | } |
262 | 262 | |
263 | - $attribute = $this->get_attribute( $id ); |
|
263 | + $attribute = $this->get_attribute($id); |
|
264 | 264 | |
265 | - if ( is_wp_error( $attribute ) ) { |
|
265 | + if (is_wp_error($attribute)) { |
|
266 | 266 | return $attribute; |
267 | 267 | } |
268 | 268 | |
269 | - $this->update_additional_fields_for_object( $attribute, $request ); |
|
269 | + $this->update_additional_fields_for_object($attribute, $request); |
|
270 | 270 | |
271 | 271 | /** |
272 | 272 | * Fires after a single product attribute is created or updated via the REST API. |
@@ -275,13 +275,13 @@ discard block |
||
275 | 275 | * @param \WP_REST_Request $request Request object. |
276 | 276 | * @param boolean $creating True when creating attribute, false when updating. |
277 | 277 | */ |
278 | - do_action( 'woocommerce_rest_insert_product_attribute', $attribute, $request, true ); |
|
278 | + do_action('woocommerce_rest_insert_product_attribute', $attribute, $request, true); |
|
279 | 279 | |
280 | - $request->set_param( 'context', 'edit' ); |
|
281 | - $response = $this->prepare_item_for_response( $attribute, $request ); |
|
282 | - $response = rest_ensure_response( $response ); |
|
283 | - $response->set_status( 201 ); |
|
284 | - $response->header( 'Location', rest_url( '/' . $this->namespace . '/' . $this->rest_base . '/' . $attribute->attribute_id ) ); |
|
280 | + $request->set_param('context', 'edit'); |
|
281 | + $response = $this->prepare_item_for_response($attribute, $request); |
|
282 | + $response = rest_ensure_response($response); |
|
283 | + $response->set_status(201); |
|
284 | + $response->header('Location', rest_url('/' . $this->namespace . '/' . $this->rest_base . '/' . $attribute->attribute_id)); |
|
285 | 285 | |
286 | 286 | return $response; |
287 | 287 | } |
@@ -292,16 +292,16 @@ discard block |
||
292 | 292 | * @param \WP_REST_Request $request Full details about the request. |
293 | 293 | * @return \WP_REST_Request|\WP_Error |
294 | 294 | */ |
295 | - public function get_item( $request ) { |
|
296 | - $attribute = $this->get_attribute( (int) $request['id'] ); |
|
295 | + public function get_item($request) { |
|
296 | + $attribute = $this->get_attribute((int) $request['id']); |
|
297 | 297 | |
298 | - if ( is_wp_error( $attribute ) ) { |
|
298 | + if (is_wp_error($attribute)) { |
|
299 | 299 | return $attribute; |
300 | 300 | } |
301 | 301 | |
302 | - $response = $this->prepare_item_for_response( $attribute, $request ); |
|
302 | + $response = $this->prepare_item_for_response($attribute, $request); |
|
303 | 303 | |
304 | - return rest_ensure_response( $response ); |
|
304 | + return rest_ensure_response($response); |
|
305 | 305 | } |
306 | 306 | |
307 | 307 | /** |
@@ -310,7 +310,7 @@ discard block |
||
310 | 310 | * @param \WP_REST_Request $request Full details about the request. |
311 | 311 | * @return \WP_REST_Request|\WP_Error |
312 | 312 | */ |
313 | - public function update_item( $request ) { |
|
313 | + public function update_item($request) { |
|
314 | 314 | global $wpdb; |
315 | 315 | |
316 | 316 | $id = (int) $request['id']; |
@@ -318,7 +318,7 @@ discard block |
||
318 | 318 | $id, |
319 | 319 | array( |
320 | 320 | 'name' => $request['name'], |
321 | - 'slug' => wc_sanitize_taxonomy_name( stripslashes( $request['slug'] ) ), |
|
321 | + 'slug' => wc_sanitize_taxonomy_name(stripslashes($request['slug'])), |
|
322 | 322 | 'type' => $request['type'], |
323 | 323 | 'order_by' => $request['order_by'], |
324 | 324 | 'has_archives' => $request['has_archives'], |
@@ -326,17 +326,17 @@ discard block |
||
326 | 326 | ); |
327 | 327 | |
328 | 328 | // Checks for errors. |
329 | - if ( is_wp_error( $edited ) ) { |
|
330 | - return new \WP_Error( 'woocommerce_rest_cannot_edit', $edited->get_error_message(), array( 'status' => 400 ) ); |
|
329 | + if (is_wp_error($edited)) { |
|
330 | + return new \WP_Error('woocommerce_rest_cannot_edit', $edited->get_error_message(), array('status' => 400)); |
|
331 | 331 | } |
332 | 332 | |
333 | - $attribute = $this->get_attribute( $id ); |
|
333 | + $attribute = $this->get_attribute($id); |
|
334 | 334 | |
335 | - if ( is_wp_error( $attribute ) ) { |
|
335 | + if (is_wp_error($attribute)) { |
|
336 | 336 | return $attribute; |
337 | 337 | } |
338 | 338 | |
339 | - $this->update_additional_fields_for_object( $attribute, $request ); |
|
339 | + $this->update_additional_fields_for_object($attribute, $request); |
|
340 | 340 | |
341 | 341 | /** |
342 | 342 | * Fires after a single product attribute is created or updated via the REST API. |
@@ -345,12 +345,12 @@ discard block |
||
345 | 345 | * @param \WP_REST_Request $request Request object. |
346 | 346 | * @param boolean $creating True when creating attribute, false when updating. |
347 | 347 | */ |
348 | - do_action( 'woocommerce_rest_insert_product_attribute', $attribute, $request, false ); |
|
348 | + do_action('woocommerce_rest_insert_product_attribute', $attribute, $request, false); |
|
349 | 349 | |
350 | - $request->set_param( 'context', 'edit' ); |
|
351 | - $response = $this->prepare_item_for_response( $attribute, $request ); |
|
350 | + $request->set_param('context', 'edit'); |
|
351 | + $response = $this->prepare_item_for_response($attribute, $request); |
|
352 | 352 | |
353 | - return rest_ensure_response( $response ); |
|
353 | + return rest_ensure_response($response); |
|
354 | 354 | } |
355 | 355 | |
356 | 356 | /** |
@@ -359,26 +359,26 @@ discard block |
||
359 | 359 | * @param \WP_REST_Request $request Full details about the request. |
360 | 360 | * @return \WP_REST_Response|\WP_Error |
361 | 361 | */ |
362 | - public function delete_item( $request ) { |
|
363 | - $force = isset( $request['force'] ) ? (bool) $request['force'] : false; |
|
362 | + public function delete_item($request) { |
|
363 | + $force = isset($request['force']) ? (bool) $request['force'] : false; |
|
364 | 364 | |
365 | 365 | // We don't support trashing for this type, error out. |
366 | - if ( ! $force ) { |
|
367 | - return new \WP_Error( 'woocommerce_rest_trash_not_supported', __( 'Resource does not support trashing.', 'woocommerce' ), array( 'status' => 501 ) ); |
|
366 | + if ( ! $force) { |
|
367 | + return new \WP_Error('woocommerce_rest_trash_not_supported', __('Resource does not support trashing.', 'woocommerce'), array('status' => 501)); |
|
368 | 368 | } |
369 | 369 | |
370 | - $attribute = $this->get_attribute( (int) $request['id'] ); |
|
370 | + $attribute = $this->get_attribute((int) $request['id']); |
|
371 | 371 | |
372 | - if ( is_wp_error( $attribute ) ) { |
|
372 | + if (is_wp_error($attribute)) { |
|
373 | 373 | return $attribute; |
374 | 374 | } |
375 | 375 | |
376 | - $request->set_param( 'context', 'edit' ); |
|
377 | - $previous = $this->prepare_item_for_response( $attribute, $request ); |
|
378 | - $deleted = wc_delete_attribute( $attribute->attribute_id ); |
|
376 | + $request->set_param('context', 'edit'); |
|
377 | + $previous = $this->prepare_item_for_response($attribute, $request); |
|
378 | + $deleted = wc_delete_attribute($attribute->attribute_id); |
|
379 | 379 | |
380 | - if ( false === $deleted ) { |
|
381 | - return new \WP_Error( 'woocommerce_rest_cannot_delete', __( 'The resource cannot be deleted.', 'woocommerce' ), array( 'status' => 500 ) ); |
|
380 | + if (false === $deleted) { |
|
381 | + return new \WP_Error('woocommerce_rest_cannot_delete', __('The resource cannot be deleted.', 'woocommerce'), array('status' => 500)); |
|
382 | 382 | } |
383 | 383 | |
384 | 384 | $response = new \WP_REST_Response(); |
@@ -396,7 +396,7 @@ discard block |
||
396 | 396 | * @param \WP_REST_Response $response The response data. |
397 | 397 | * @param \WP_REST_Request $request The request sent to the API. |
398 | 398 | */ |
399 | - do_action( 'woocommerce_rest_delete_product_attribute', $attribute, $response, $request ); |
|
399 | + do_action('woocommerce_rest_delete_product_attribute', $attribute, $response, $request); |
|
400 | 400 | |
401 | 401 | return $response; |
402 | 402 | } |
@@ -408,23 +408,23 @@ discard block |
||
408 | 408 | * @param \WP_REST_Request $request Request params. |
409 | 409 | * @return \WP_REST_Response $response |
410 | 410 | */ |
411 | - public function prepare_item_for_response( $item, $request ) { |
|
411 | + public function prepare_item_for_response($item, $request) { |
|
412 | 412 | $data = array( |
413 | 413 | 'id' => (int) $item->attribute_id, |
414 | 414 | 'name' => $item->attribute_label, |
415 | - 'slug' => wc_attribute_taxonomy_name( $item->attribute_name ), |
|
415 | + 'slug' => wc_attribute_taxonomy_name($item->attribute_name), |
|
416 | 416 | 'type' => $item->attribute_type, |
417 | 417 | 'order_by' => $item->attribute_orderby, |
418 | 418 | 'has_archives' => (bool) $item->attribute_public, |
419 | 419 | ); |
420 | 420 | |
421 | - $context = ! empty( $request['context'] ) ? $request['context'] : 'view'; |
|
422 | - $data = $this->add_additional_fields_to_object( $data, $request ); |
|
423 | - $data = $this->filter_response_by_context( $data, $context ); |
|
421 | + $context = ! empty($request['context']) ? $request['context'] : 'view'; |
|
422 | + $data = $this->add_additional_fields_to_object($data, $request); |
|
423 | + $data = $this->filter_response_by_context($data, $context); |
|
424 | 424 | |
425 | - $response = rest_ensure_response( $data ); |
|
425 | + $response = rest_ensure_response($data); |
|
426 | 426 | |
427 | - $response->add_links( $this->prepare_links( $item ) ); |
|
427 | + $response->add_links($this->prepare_links($item)); |
|
428 | 428 | |
429 | 429 | /** |
430 | 430 | * Filter a attribute item returned from the API. |
@@ -435,7 +435,7 @@ discard block |
||
435 | 435 | * @param object $item The original attribute object. |
436 | 436 | * @param \WP_REST_Request $request Request used to generate the response. |
437 | 437 | */ |
438 | - return apply_filters( 'woocommerce_rest_prepare_product_attribute', $response, $item, $request ); |
|
438 | + return apply_filters('woocommerce_rest_prepare_product_attribute', $response, $item, $request); |
|
439 | 439 | } |
440 | 440 | |
441 | 441 | /** |
@@ -444,14 +444,14 @@ discard block |
||
444 | 444 | * @param object $attribute Attribute object. |
445 | 445 | * @return array Links for the given attribute. |
446 | 446 | */ |
447 | - protected function prepare_links( $attribute ) { |
|
447 | + protected function prepare_links($attribute) { |
|
448 | 448 | $base = '/' . $this->namespace . '/' . $this->rest_base; |
449 | 449 | $links = array( |
450 | 450 | 'self' => array( |
451 | - 'href' => rest_url( trailingslashit( $base ) . $attribute->attribute_id ), |
|
451 | + 'href' => rest_url(trailingslashit($base) . $attribute->attribute_id), |
|
452 | 452 | ), |
453 | 453 | 'collection' => array( |
454 | - 'href' => rest_url( $base ), |
|
454 | + 'href' => rest_url($base), |
|
455 | 455 | ), |
456 | 456 | ); |
457 | 457 | |
@@ -470,51 +470,51 @@ discard block |
||
470 | 470 | 'type' => 'object', |
471 | 471 | 'properties' => array( |
472 | 472 | 'id' => array( |
473 | - 'description' => __( 'Unique identifier for the resource.', 'woocommerce' ), |
|
473 | + 'description' => __('Unique identifier for the resource.', 'woocommerce'), |
|
474 | 474 | 'type' => 'integer', |
475 | - 'context' => array( 'view', 'edit' ), |
|
475 | + 'context' => array('view', 'edit'), |
|
476 | 476 | 'readonly' => true, |
477 | 477 | ), |
478 | 478 | 'name' => array( |
479 | - 'description' => __( 'Attribute name.', 'woocommerce' ), |
|
479 | + 'description' => __('Attribute name.', 'woocommerce'), |
|
480 | 480 | 'type' => 'string', |
481 | - 'context' => array( 'view', 'edit' ), |
|
481 | + 'context' => array('view', 'edit'), |
|
482 | 482 | 'arg_options' => array( |
483 | 483 | 'sanitize_callback' => 'sanitize_text_field', |
484 | 484 | ), |
485 | 485 | ), |
486 | 486 | 'slug' => array( |
487 | - 'description' => __( 'An alphanumeric identifier for the resource unique to its type.', 'woocommerce' ), |
|
487 | + 'description' => __('An alphanumeric identifier for the resource unique to its type.', 'woocommerce'), |
|
488 | 488 | 'type' => 'string', |
489 | - 'context' => array( 'view', 'edit' ), |
|
489 | + 'context' => array('view', 'edit'), |
|
490 | 490 | 'arg_options' => array( |
491 | 491 | 'sanitize_callback' => 'sanitize_title', |
492 | 492 | ), |
493 | 493 | ), |
494 | 494 | 'type' => array( |
495 | - 'description' => __( 'Type of attribute.', 'woocommerce' ), |
|
495 | + 'description' => __('Type of attribute.', 'woocommerce'), |
|
496 | 496 | 'type' => 'string', |
497 | 497 | 'default' => 'select', |
498 | - 'enum' => array_keys( wc_get_attribute_types() ), |
|
499 | - 'context' => array( 'view', 'edit' ), |
|
498 | + 'enum' => array_keys(wc_get_attribute_types()), |
|
499 | + 'context' => array('view', 'edit'), |
|
500 | 500 | ), |
501 | 501 | 'order_by' => array( |
502 | - 'description' => __( 'Default sort order.', 'woocommerce' ), |
|
502 | + 'description' => __('Default sort order.', 'woocommerce'), |
|
503 | 503 | 'type' => 'string', |
504 | 504 | 'default' => 'menu_order', |
505 | - 'enum' => array( 'menu_order', 'name', 'name_num', 'id' ), |
|
506 | - 'context' => array( 'view', 'edit' ), |
|
505 | + 'enum' => array('menu_order', 'name', 'name_num', 'id'), |
|
506 | + 'context' => array('view', 'edit'), |
|
507 | 507 | ), |
508 | 508 | 'has_archives' => array( |
509 | - 'description' => __( 'Enable/Disable attribute archives.', 'woocommerce' ), |
|
509 | + 'description' => __('Enable/Disable attribute archives.', 'woocommerce'), |
|
510 | 510 | 'type' => 'boolean', |
511 | 511 | 'default' => false, |
512 | - 'context' => array( 'view', 'edit' ), |
|
512 | + 'context' => array('view', 'edit'), |
|
513 | 513 | ), |
514 | 514 | ), |
515 | 515 | ); |
516 | 516 | |
517 | - return $this->add_additional_fields_schema( $schema ); |
|
517 | + return $this->add_additional_fields_schema($schema); |
|
518 | 518 | } |
519 | 519 | |
520 | 520 | /** |
@@ -524,7 +524,7 @@ discard block |
||
524 | 524 | */ |
525 | 525 | public function get_collection_params() { |
526 | 526 | $params = array(); |
527 | - $params['context'] = $this->get_context_param( array( 'default' => 'view' ) ); |
|
527 | + $params['context'] = $this->get_context_param(array('default' => 'view')); |
|
528 | 528 | |
529 | 529 | return $params; |
530 | 530 | } |
@@ -535,13 +535,13 @@ discard block |
||
535 | 535 | * @param \WP_REST_Request $request Full details about the request. |
536 | 536 | * @return string |
537 | 537 | */ |
538 | - protected function get_taxonomy( $request ) { |
|
539 | - if ( '' !== $this->attribute ) { |
|
538 | + protected function get_taxonomy($request) { |
|
539 | + if ('' !== $this->attribute) { |
|
540 | 540 | return $this->attribute; |
541 | 541 | } |
542 | 542 | |
543 | - if ( $request['id'] ) { |
|
544 | - $name = wc_attribute_taxonomy_name_by_id( (int) $request['id'] ); |
|
543 | + if ($request['id']) { |
|
544 | + $name = wc_attribute_taxonomy_name_by_id((int) $request['id']); |
|
545 | 545 | |
546 | 546 | $this->attribute = $name; |
547 | 547 | } |
@@ -555,7 +555,7 @@ discard block |
||
555 | 555 | * @param int $id Attribute ID. |
556 | 556 | * @return stdClass|\WP_Error |
557 | 557 | */ |
558 | - protected function get_attribute( $id ) { |
|
558 | + protected function get_attribute($id) { |
|
559 | 559 | global $wpdb; |
560 | 560 | |
561 | 561 | $attribute = $wpdb->get_row( |
@@ -569,8 +569,8 @@ discard block |
||
569 | 569 | ) |
570 | 570 | ); |
571 | 571 | |
572 | - if ( is_wp_error( $attribute ) || is_null( $attribute ) ) { |
|
573 | - return new \WP_Error( 'woocommerce_rest_attribute_invalid', __( 'Resource does not exist.', 'woocommerce' ), array( 'status' => 404 ) ); |
|
572 | + if (is_wp_error($attribute) || is_null($attribute)) { |
|
573 | + return new \WP_Error('woocommerce_rest_attribute_invalid', __('Resource does not exist.', 'woocommerce'), array('status' => 404)); |
|
574 | 574 | } |
575 | 575 | |
576 | 576 | return $attribute; |
@@ -584,16 +584,16 @@ discard block |
||
584 | 584 | * @param bool $new_data Is the data new or old. |
585 | 585 | * @return bool|\WP_Error |
586 | 586 | */ |
587 | - protected function validate_attribute_slug( $slug, $new_data = true ) { |
|
588 | - if ( strlen( $slug ) >= 28 ) { |
|
587 | + protected function validate_attribute_slug($slug, $new_data = true) { |
|
588 | + if (strlen($slug) >= 28) { |
|
589 | 589 | /* Translators: %s slug. */ |
590 | - return new \WP_Error( 'woocommerce_rest_invalid_product_attribute_slug_too_long', sprintf( __( 'Slug "%s" is too long (28 characters max). Shorten it, please.', 'woocommerce' ), $slug ), array( 'status' => 400 ) ); |
|
591 | - } elseif ( wc_check_if_attribute_name_is_reserved( $slug ) ) { |
|
590 | + return new \WP_Error('woocommerce_rest_invalid_product_attribute_slug_too_long', sprintf(__('Slug "%s" is too long (28 characters max). Shorten it, please.', 'woocommerce'), $slug), array('status' => 400)); |
|
591 | + } elseif (wc_check_if_attribute_name_is_reserved($slug)) { |
|
592 | 592 | /* Translators: %s slug. */ |
593 | - return new \WP_Error( 'woocommerce_rest_invalid_product_attribute_slug_reserved_name', sprintf( __( 'Slug "%s" is not allowed because it is a reserved term. Change it, please.', 'woocommerce' ), $slug ), array( 'status' => 400 ) ); |
|
594 | - } elseif ( $new_data && taxonomy_exists( wc_attribute_taxonomy_name( $slug ) ) ) { |
|
593 | + return new \WP_Error('woocommerce_rest_invalid_product_attribute_slug_reserved_name', sprintf(__('Slug "%s" is not allowed because it is a reserved term. Change it, please.', 'woocommerce'), $slug), array('status' => 400)); |
|
594 | + } elseif ($new_data && taxonomy_exists(wc_attribute_taxonomy_name($slug))) { |
|
595 | 595 | /* Translators: %s slug. */ |
596 | - return new \WP_Error( 'woocommerce_rest_invalid_product_attribute_slug_already_exists', sprintf( __( 'Slug "%s" is already in use. Change it, please.', 'woocommerce' ), $slug ), array( 'status' => 400 ) ); |
|
596 | + return new \WP_Error('woocommerce_rest_invalid_product_attribute_slug_already_exists', sprintf(__('Slug "%s" is already in use. Change it, please.', 'woocommerce'), $slug), array('status' => 400)); |
|
597 | 597 | } |
598 | 598 | |
599 | 599 | return true; |
@@ -606,6 +606,6 @@ discard block |
||
606 | 606 | * @since 3.0.0 |
607 | 607 | */ |
608 | 608 | protected function flush_rewrite_rules() { |
609 | - wp_schedule_single_event( time(), 'woocommerce_flush_rewrite_rules' ); |
|
609 | + wp_schedule_single_event(time(), 'woocommerce_flush_rewrite_rules'); |
|
610 | 610 | } |
611 | 611 | } |