@@ -70,7 +70,7 @@ discard block |
||
70 | 70 | /** |
71 | 71 | * Get product Complete Sheet |
72 | 72 | * @param integer $pid |
73 | - * @return Ambigous <string, string> |
|
73 | + * @return string <string, string> |
|
74 | 74 | */ |
75 | 75 | public static function get_product_complete_sheet_galery( $pid ) { |
76 | 76 | $output = ''; |
@@ -157,6 +157,9 @@ discard block |
||
157 | 157 | return $output; |
158 | 158 | } |
159 | 159 | |
160 | + /** |
|
161 | + * @param integer $product_id |
|
162 | + */ |
|
160 | 163 | public static function get_product_complete_sheet_attachments( $product_id ) { |
161 | 164 | $output = ''; |
162 | 165 |
@@ -1,15 +1,15 @@ discard block |
||
1 | -<?php if ( !defined( 'ABSPATH' ) ) exit; |
|
1 | +<?php if (!defined('ABSPATH')) exit; |
|
2 | 2 | class wps_media_manager_frontend_ctr { |
3 | 3 | |
4 | - public static function get_attachments( $pid, $type = 'gallery' ) { |
|
4 | + public static function get_attachments($pid, $type = 'gallery') { |
|
5 | 5 | $attachments = array(); |
6 | - $media_id_data = get_post_meta( $pid, '_wps_product_media', true ); |
|
7 | - if( !empty($media_id_data) ) { |
|
8 | - $media_id = explode( ',', $media_id_data ); |
|
9 | - foreach($media_id as $id) { |
|
10 | - if( ( ( wp_attachment_is_image( $id ) && $type == 'gallery' ) || ( !empty( $id ) && !wp_attachment_is_image( $id ) && $type == 'attachments' ) ) ) { |
|
11 | - $attachment_data = get_post( $id ); |
|
12 | - if( !empty( $attachment_data ) && !empty($attachment_data->ID) ) { |
|
6 | + $media_id_data = get_post_meta($pid, '_wps_product_media', true); |
|
7 | + if (!empty($media_id_data)) { |
|
8 | + $media_id = explode(',', $media_id_data); |
|
9 | + foreach ($media_id as $id) { |
|
10 | + if (((wp_attachment_is_image($id) && $type == 'gallery') || (!empty($id) && !wp_attachment_is_image($id) && $type == 'attachments'))) { |
|
11 | + $attachment_data = get_post($id); |
|
12 | + if (!empty($attachment_data) && !empty($attachment_data->ID)) { |
|
13 | 13 | $attachments[] = $attachment_data; |
14 | 14 | } |
15 | 15 | } |
@@ -26,13 +26,13 @@ discard block |
||
26 | 26 | * |
27 | 27 | * @return string The attachement gallery output |
28 | 28 | */ |
29 | - public static function display_attachment_gallery( $attachement_type, $content ) { |
|
29 | + public static function display_attachment_gallery($attachement_type, $content) { |
|
30 | 30 | $galery_output = ''; |
31 | 31 | |
32 | 32 | /* |
33 | 33 | * Get the template part for given galery type |
34 | 34 | */ |
35 | - switch ( $attachement_type ) { |
|
35 | + switch ($attachement_type) { |
|
36 | 36 | case 'picture': |
37 | 37 | $template_part = 'product_attachment_picture_galery'; |
38 | 38 | break; |
@@ -52,7 +52,7 @@ discard block |
||
52 | 52 | * Build template |
53 | 53 | */ |
54 | 54 | $tpl_way_to_take = wpshop_display::check_way_for_template($template_part); |
55 | - if ( $tpl_way_to_take[0] && !empty($tpl_way_to_take[1]) ) { |
|
55 | + if ($tpl_way_to_take[0] && !empty($tpl_way_to_take[1])) { |
|
56 | 56 | /* Include the old way template part */ |
57 | 57 | ob_start(); |
58 | 58 | require(wpshop_display::get_template_file($tpl_way_to_take[1])); |
@@ -72,81 +72,81 @@ discard block |
||
72 | 72 | * @param integer $pid |
73 | 73 | * @return Ambigous <string, string> |
74 | 74 | */ |
75 | - public static function get_product_complete_sheet_galery( $pid ) { |
|
75 | + public static function get_product_complete_sheet_galery($pid) { |
|
76 | 76 | $output = ''; |
77 | - if( !empty($pid) ) { |
|
77 | + if (!empty($pid)) { |
|
78 | 78 | $tpl_component = $sub_tpl_component = array(); |
79 | 79 | $attachments = array(); |
80 | 80 | $tpl_component['THUMBNAILS'] = ''; |
81 | 81 | $tpl_component['SLIDER_CONTENT'] = ''; |
82 | 82 | |
83 | 83 | /** Check and get the product thumbnail */ |
84 | - $principal_thumbnail_id = get_post_meta( $pid, '_thumbnail_id', true); |
|
85 | - if( !empty($principal_thumbnail_id) ) { |
|
86 | - $attachments[0] = get_post( $principal_thumbnail_id ); |
|
84 | + $principal_thumbnail_id = get_post_meta($pid, '_thumbnail_id', true); |
|
85 | + if (!empty($principal_thumbnail_id)) { |
|
86 | + $attachments[0] = get_post($principal_thumbnail_id); |
|
87 | 87 | } |
88 | 88 | else { |
89 | 89 | $sub_tpl_component['THUMBNAIL_GALLERY_THUMBNAIL'] = ''; |
90 | - $sub_tpl_component['IMAGE_SLIDER_FULL'] = '<img src="' .WPSHOP_DEFAULT_PRODUCT_PICTURE. '" alt="" />'; |
|
91 | - $sub_tpl_component['THUMBNAIL_GALLERY_FULL'] = '<img src="' .WPSHOP_DEFAULT_PRODUCT_PICTURE. '" alt="" />'; |
|
90 | + $sub_tpl_component['IMAGE_SLIDER_FULL'] = '<img src="' . WPSHOP_DEFAULT_PRODUCT_PICTURE . '" alt="" />'; |
|
91 | + $sub_tpl_component['THUMBNAIL_GALLERY_FULL'] = '<img src="' . WPSHOP_DEFAULT_PRODUCT_PICTURE . '" alt="" />'; |
|
92 | 92 | $sub_tpl_component['THUMBNAIL_GALLERY_THUMBNAIL_ID'] = ''; |
93 | 93 | |
94 | - $tpl_component[ 'SLIDER_CONTENT' ] .= wpshop_display::display_template_element( 'wps_product_complete_sheet_gallery_slider_element', $sub_tpl_component ); |
|
95 | - $tpl_component[ 'THUMBNAILS' ] = ''; |
|
94 | + $tpl_component['SLIDER_CONTENT'] .= wpshop_display::display_template_element('wps_product_complete_sheet_gallery_slider_element', $sub_tpl_component); |
|
95 | + $tpl_component['THUMBNAILS'] = ''; |
|
96 | 96 | } |
97 | 97 | |
98 | 98 | /** Get product associated pictures */ |
99 | 99 | $allowed_mime_type = get_allowed_mime_types(); |
100 | 100 | |
101 | - $attachments = array_merge( $attachments, (array)self::get_attachments( $pid ) ); |
|
101 | + $attachments = array_merge($attachments, (array)self::get_attachments($pid)); |
|
102 | 102 | |
103 | 103 | /** In case there are picture read and display them into product sheet */ |
104 | - if ( !empty($attachments) ) { |
|
105 | - foreach( $attachments as $attachment) { |
|
106 | - if( !empty($attachment) && !empty($attachment->post_mime_type) && in_array( $attachment->post_mime_type, $allowed_mime_type ) ) { |
|
104 | + if (!empty($attachments)) { |
|
105 | + foreach ($attachments as $attachment) { |
|
106 | + if (!empty($attachment) && !empty($attachment->post_mime_type) && in_array($attachment->post_mime_type, $allowed_mime_type)) { |
|
107 | 107 | //IMAGE SLIDER |
108 | - $image_attributes = wp_get_attachment_metadata( $attachment->ID ); |
|
108 | + $image_attributes = wp_get_attachment_metadata($attachment->ID); |
|
109 | 109 | $sub_tpl_component['THUMBNAIL_GALLERY_THUMBNAIL'] = ''; |
110 | 110 | $sub_tpl_component['THUMBNAIL_GALLERY_THUMBNAIL_ID'] = $attachment->ID; |
111 | - if ( !empty($image_attributes) && !empty($image_attributes['sizes']) && is_array($image_attributes['sizes']) ) { |
|
112 | - foreach ( $image_attributes['sizes'] as $size_name => $size_def) { |
|
113 | - $p = wp_get_attachment_image( $attachment->ID, $size_name); |
|
114 | - $src = wp_get_attachment_image_src( $attachment->ID, $size_name ); |
|
111 | + if (!empty($image_attributes) && !empty($image_attributes['sizes']) && is_array($image_attributes['sizes'])) { |
|
112 | + foreach ($image_attributes['sizes'] as $size_name => $size_def) { |
|
113 | + $p = wp_get_attachment_image($attachment->ID, $size_name); |
|
114 | + $src = wp_get_attachment_image_src($attachment->ID, $size_name); |
|
115 | 115 | $sub_tpl_component['THUMBNAIL_GALLERY_' . strtoupper($size_name)] = ''; |
116 | 116 | $sub_tpl_component['IMAGE_SLIDER_' . strtoupper($size_name)] = ''; |
117 | - if( !empty($p) ) { |
|
118 | - $sub_tpl_component['SRC_IMAGE_SLIDER_' . strtoupper($size_name)] = ( !empty($src) ) ? $src[0] : ''; |
|
119 | - $sub_tpl_component['IMAGE_SLIDER_' . strtoupper($size_name)] = ( !empty( $p ) ) ? $p : '<img src="' .WPSHOP_DEFAULT_PRODUCT_PICTURE. '" alt="" />'; |
|
120 | - $sub_tpl_component['THUMBNAIL_GALLERY_' . strtoupper($size_name)] = ( !empty( $p ) ) ? $p : '<img src="' .WPSHOP_DEFAULT_PRODUCT_PICTURE. '" alt="" />'; |
|
117 | + if (!empty($p)) { |
|
118 | + $sub_tpl_component['SRC_IMAGE_SLIDER_' . strtoupper($size_name)] = (!empty($src)) ? $src[0] : ''; |
|
119 | + $sub_tpl_component['IMAGE_SLIDER_' . strtoupper($size_name)] = (!empty($p)) ? $p : '<img src="' . WPSHOP_DEFAULT_PRODUCT_PICTURE . '" alt="" />'; |
|
120 | + $sub_tpl_component['THUMBNAIL_GALLERY_' . strtoupper($size_name)] = (!empty($p)) ? $p : '<img src="' . WPSHOP_DEFAULT_PRODUCT_PICTURE . '" alt="" />'; |
|
121 | 121 | } |
122 | 122 | } |
123 | - $p = wp_get_attachment_image( $attachment->ID, 'full'); |
|
124 | - $src = wp_get_attachment_image_src( $attachment->ID, 'full' ); |
|
125 | - if( !empty($p) ) { |
|
126 | - $sub_tpl_component['SRC_IMAGE_SLIDER_FULL'] = ( !empty($src) ) ? $src[0] : ''; |
|
127 | - $sub_tpl_component['IMAGE_SLIDER_FULL'] = ( !empty($p) ) ? $p : ''; |
|
128 | - $sub_tpl_component['THUMBNAIL_GALLERY_FULL'] = ( !empty($p) ) ? $p : ''; |
|
123 | + $p = wp_get_attachment_image($attachment->ID, 'full'); |
|
124 | + $src = wp_get_attachment_image_src($attachment->ID, 'full'); |
|
125 | + if (!empty($p)) { |
|
126 | + $sub_tpl_component['SRC_IMAGE_SLIDER_FULL'] = (!empty($src)) ? $src[0] : ''; |
|
127 | + $sub_tpl_component['IMAGE_SLIDER_FULL'] = (!empty($p)) ? $p : ''; |
|
128 | + $sub_tpl_component['THUMBNAIL_GALLERY_FULL'] = (!empty($p)) ? $p : ''; |
|
129 | 129 | } |
130 | 130 | } |
131 | 131 | else { |
132 | - $p = wp_get_attachment_image( $attachment->ID, 'full' ); |
|
133 | - $src = wp_get_attachment_image_src( $attachment->ID, 'full' ); |
|
134 | - $sub_tpl_component['SRC_IMAGE_SLIDER_FULL'] = ( !empty($src) ) ? $src[0] : ''; |
|
135 | - $sub_tpl_component['IMAGE_SLIDER_FULL'] = ( !empty( $p ) ) ? $p : '<img src="' .WPSHOP_DEFAULT_PRODUCT_PICTURE. '" alt="" />'; |
|
136 | - $sub_tpl_component['THUMBNAIL_GALLERY_FULL'] = ( !empty( $p ) ) ? $p : '<img src="' .WPSHOP_DEFAULT_PRODUCT_PICTURE. '" alt="" />'; |
|
132 | + $p = wp_get_attachment_image($attachment->ID, 'full'); |
|
133 | + $src = wp_get_attachment_image_src($attachment->ID, 'full'); |
|
134 | + $sub_tpl_component['SRC_IMAGE_SLIDER_FULL'] = (!empty($src)) ? $src[0] : ''; |
|
135 | + $sub_tpl_component['IMAGE_SLIDER_FULL'] = (!empty($p)) ? $p : '<img src="' . WPSHOP_DEFAULT_PRODUCT_PICTURE . '" alt="" />'; |
|
136 | + $sub_tpl_component['THUMBNAIL_GALLERY_FULL'] = (!empty($p)) ? $p : '<img src="' . WPSHOP_DEFAULT_PRODUCT_PICTURE . '" alt="" />'; |
|
137 | 137 | } |
138 | - if ( !empty( $sub_tpl_component['IMAGE_SLIDER_FULL'] ) ) { |
|
139 | - $tpl_component[ 'SLIDER_CONTENT' ] .= wpshop_display::display_template_element( 'wps_product_complete_sheet_gallery_slider_element', $sub_tpl_component ); |
|
140 | - if ( ( 1 < count( $attachments ) ) || ( ( 1 == count( $attachments ) ) && empty( $principal_thumbnail_id ) ) ) { |
|
141 | - $tpl_component[ 'THUMBNAILS' ] .= wpshop_display::display_template_element( 'wps_product_complete_sheet_gallery_thumbnail_element', $sub_tpl_component ); |
|
138 | + if (!empty($sub_tpl_component['IMAGE_SLIDER_FULL'])) { |
|
139 | + $tpl_component['SLIDER_CONTENT'] .= wpshop_display::display_template_element('wps_product_complete_sheet_gallery_slider_element', $sub_tpl_component); |
|
140 | + if ((1 < count($attachments)) || ((1 == count($attachments)) && empty($principal_thumbnail_id))) { |
|
141 | + $tpl_component['THUMBNAILS'] .= wpshop_display::display_template_element('wps_product_complete_sheet_gallery_thumbnail_element', $sub_tpl_component); |
|
142 | 142 | } |
143 | 143 | } |
144 | - unset( $sub_tpl_component ); |
|
144 | + unset($sub_tpl_component); |
|
145 | 145 | } |
146 | 146 | else { |
147 | 147 | $sub_tpl_component['SRC_IMAGE_SLIDER_FULL'] = ''; |
148 | - $sub_tpl_component['IMAGE_SLIDER_FULL'] = '<img src="' .WPSHOP_DEFAULT_PRODUCT_PICTURE. '" alt="" />'; |
|
149 | - $sub_tpl_component['THUMBNAIL_GALLERY_FULL'] = '<img src="' .WPSHOP_DEFAULT_PRODUCT_PICTURE. '" alt="" />'; |
|
148 | + $sub_tpl_component['IMAGE_SLIDER_FULL'] = '<img src="' . WPSHOP_DEFAULT_PRODUCT_PICTURE . '" alt="" />'; |
|
149 | + $sub_tpl_component['THUMBNAIL_GALLERY_FULL'] = '<img src="' . WPSHOP_DEFAULT_PRODUCT_PICTURE . '" alt="" />'; |
|
150 | 150 | } |
151 | 151 | } |
152 | 152 | } |
@@ -157,35 +157,35 @@ discard block |
||
157 | 157 | return $output; |
158 | 158 | } |
159 | 159 | |
160 | - public static function get_product_complete_sheet_attachments( $product_id ) { |
|
160 | + public static function get_product_complete_sheet_attachments($product_id) { |
|
161 | 161 | $output = ''; |
162 | 162 | |
163 | 163 | /** Get attachement file for the current product */ |
164 | 164 | $product_picture_galery_content = $product_document_galery_content = ''; |
165 | 165 | $picture_number = $document_number = $index_li = 0; |
166 | 166 | |
167 | - $attachments = self::get_attachments( $product_id, 'attachments' ); |
|
167 | + $attachments = self::get_attachments($product_id, 'attachments'); |
|
168 | 168 | |
169 | - if ( is_array($attachments) && (count($attachments) > 0) ) { |
|
169 | + if (is_array($attachments) && (count($attachments) > 0)) { |
|
170 | 170 | $picture_increment = $document_increment = 1; |
171 | 171 | foreach ($attachments as $attachment) { |
172 | 172 | $tpl_component = array(); |
173 | - $attachment_url = wp_get_attachment_url( $attachment->ID ); |
|
173 | + $attachment_url = wp_get_attachment_url($attachment->ID); |
|
174 | 174 | $attachment_extension = explode('.', $attachment_url); |
175 | 175 | $attachment_extension = $attachment_extension[1]; |
176 | 176 | $tpl_component['ATTACHMENT_ITEM_GUID'] = $attachment_url; |
177 | 177 | $tpl_component['ATTACHMENT_ITEM_TITLE'] = $attachment->post_title; |
178 | 178 | $tpl_component['ATTACHMENT_ITEM_EXTENSION'] = $attachment_extension; |
179 | - if(is_int(strpos($attachment->post_mime_type, 'application/')) || is_int(strpos($attachment->post_mime_type, 'text/'))) { |
|
179 | + if (is_int(strpos($attachment->post_mime_type, 'application/')) || is_int(strpos($attachment->post_mime_type, 'text/'))) { |
|
180 | 180 | $tpl_component['ATTACHMENT_ITEM_TYPE'] = 'document'; |
181 | - $tpl_component['ATTACHMENT_ITEM_SPECIFIC_CLASS'] = (!($document_increment%WPSHOP_DISPLAY_GALLERY_ELEMENT_NUMBER_PER_LINE)) ? 'wpshop_gallery_document_last' : ''; |
|
181 | + $tpl_component['ATTACHMENT_ITEM_SPECIFIC_CLASS'] = (!($document_increment % WPSHOP_DISPLAY_GALLERY_ELEMENT_NUMBER_PER_LINE)) ? 'wpshop_gallery_document_last' : ''; |
|
182 | 182 | /** Template parameters */ |
183 | 183 | $template_part = 'product_attachment_item_document'; |
184 | 184 | $tpl_component['PRODUCT_ID'] = $product_id; |
185 | 185 | |
186 | 186 | /** Build template */ |
187 | 187 | $tpl_way_to_take = wpshop_display::check_way_for_template($template_part); |
188 | - if ( $tpl_way_to_take[0] && !empty($tpl_way_to_take[1]) ) { |
|
188 | + if ($tpl_way_to_take[0] && !empty($tpl_way_to_take[1])) { |
|
189 | 189 | /* Include the old way template part */ |
190 | 190 | |
191 | 191 | ob_start(); |
@@ -204,7 +204,7 @@ discard block |
||
204 | 204 | } |
205 | 205 | |
206 | 206 | ob_start(); |
207 | - require( wpshop_tools::get_template_part( WPS_MEDIA_MANAGER_DIR, WPS_MEDIA_MANAGER_TEMPLATE_DIR, 'frontend', 'associated', 'document' ) ); |
|
207 | + require(wpshop_tools::get_template_part(WPS_MEDIA_MANAGER_DIR, WPS_MEDIA_MANAGER_TEMPLATE_DIR, 'frontend', 'associated', 'document')); |
|
208 | 208 | $output = ob_get_contents(); |
209 | 209 | ob_end_clean(); |
210 | 210 | } |
@@ -1,4 +1,6 @@ discard block |
||
1 | -<?php if ( !defined( 'ABSPATH' ) ) exit; |
|
1 | +<?php if ( !defined( 'ABSPATH' ) ) { |
|
2 | + exit; |
|
3 | +} |
|
2 | 4 | class wps_media_manager_frontend_ctr { |
3 | 5 | |
4 | 6 | public static function get_attachments( $pid, $type = 'gallery' ) { |
@@ -58,8 +60,7 @@ discard block |
||
58 | 60 | require(wpshop_display::get_template_file($tpl_way_to_take[1])); |
59 | 61 | $galery_output = ob_get_contents(); |
60 | 62 | ob_end_clean(); |
61 | - } |
|
62 | - else { |
|
63 | + } else { |
|
63 | 64 | $galery_output = wpshop_display::display_template_element($template_part, $tpl_component); |
64 | 65 | } |
65 | 66 | unset($tpl_component); |
@@ -84,8 +85,7 @@ discard block |
||
84 | 85 | $principal_thumbnail_id = get_post_meta( $pid, '_thumbnail_id', true); |
85 | 86 | if( !empty($principal_thumbnail_id) ) { |
86 | 87 | $attachments[0] = get_post( $principal_thumbnail_id ); |
87 | - } |
|
88 | - else { |
|
88 | + } else { |
|
89 | 89 | $sub_tpl_component['THUMBNAIL_GALLERY_THUMBNAIL'] = ''; |
90 | 90 | $sub_tpl_component['IMAGE_SLIDER_FULL'] = '<img src="' .WPSHOP_DEFAULT_PRODUCT_PICTURE. '" alt="" />'; |
91 | 91 | $sub_tpl_component['THUMBNAIL_GALLERY_FULL'] = '<img src="' .WPSHOP_DEFAULT_PRODUCT_PICTURE. '" alt="" />'; |
@@ -127,8 +127,7 @@ discard block |
||
127 | 127 | $sub_tpl_component['IMAGE_SLIDER_FULL'] = ( !empty($p) ) ? $p : ''; |
128 | 128 | $sub_tpl_component['THUMBNAIL_GALLERY_FULL'] = ( !empty($p) ) ? $p : ''; |
129 | 129 | } |
130 | - } |
|
131 | - else { |
|
130 | + } else { |
|
132 | 131 | $p = wp_get_attachment_image( $attachment->ID, 'full' ); |
133 | 132 | $src = wp_get_attachment_image_src( $attachment->ID, 'full' ); |
134 | 133 | $sub_tpl_component['SRC_IMAGE_SLIDER_FULL'] = ( !empty($src) ) ? $src[0] : ''; |
@@ -142,8 +141,7 @@ discard block |
||
142 | 141 | } |
143 | 142 | } |
144 | 143 | unset( $sub_tpl_component ); |
145 | - } |
|
146 | - else { |
|
144 | + } else { |
|
147 | 145 | $sub_tpl_component['SRC_IMAGE_SLIDER_FULL'] = ''; |
148 | 146 | $sub_tpl_component['IMAGE_SLIDER_FULL'] = '<img src="' .WPSHOP_DEFAULT_PRODUCT_PICTURE. '" alt="" />'; |
149 | 147 | $sub_tpl_component['THUMBNAIL_GALLERY_FULL'] = '<img src="' .WPSHOP_DEFAULT_PRODUCT_PICTURE. '" alt="" />'; |
@@ -192,8 +190,7 @@ discard block |
||
192 | 190 | require(wpshop_display::get_template_file($tpl_way_to_take[1])); |
193 | 191 | $product_document_galery_content .= ob_get_contents(); |
194 | 192 | ob_end_clean(); |
195 | - } |
|
196 | - else { |
|
193 | + } else { |
|
197 | 194 | $product_document_galery_content .= wpshop_display::display_template_element($template_part, $tpl_component); |
198 | 195 | } |
199 | 196 |
@@ -299,7 +299,11 @@ |
||
299 | 299 | } |
300 | 300 | |
301 | 301 | /** Store a new message |
302 | - * @return boolean |
|
302 | + * @param string $email |
|
303 | + * @param string $title |
|
304 | + * @param string $message |
|
305 | + * @param integer $model_id |
|
306 | + * @return boolean|null |
|
303 | 307 | */ |
304 | 308 | function add_message($recipient_id=0, $email, $title, $message, $model_id, $object, $date = null) { |
305 | 309 | $date = empty($date) ? current_time('mysql', 0) : $date; |
@@ -1,4 +1,4 @@ discard block |
||
1 | -<?php if ( !defined( 'ABSPATH' ) ) exit; |
|
1 | +<?php if (!defined('ABSPATH')) exit; |
|
2 | 2 | class wps_message_ctr { |
3 | 3 | /** Define the main directory containing the template for the current plugin |
4 | 4 | * @var string |
@@ -20,14 +20,14 @@ discard block |
||
20 | 20 | $this->template_dir = WPS_MESSAGE_PATH . WPS_MESSAGE_DIR . "/templates/"; |
21 | 21 | |
22 | 22 | // WP General actions |
23 | - add_action( 'admin_init', array( $this, 'wps_messages_init_actions') ); |
|
24 | - add_action('add_meta_boxes', array( $this, 'add_meta_boxes') ); |
|
25 | - add_action('manage_'.WPSHOP_NEWTYPE_IDENTIFIER_MESSAGE.'_posts_custom_column', array( $this, 'messages_custom_columns')); |
|
26 | - add_filter('manage_edit-'.WPSHOP_NEWTYPE_IDENTIFIER_MESSAGE.'_columns', array( $this, 'messages_edit_columns')); |
|
23 | + add_action('admin_init', array($this, 'wps_messages_init_actions')); |
|
24 | + add_action('add_meta_boxes', array($this, 'add_meta_boxes')); |
|
25 | + add_action('manage_' . WPSHOP_NEWTYPE_IDENTIFIER_MESSAGE . '_posts_custom_column', array($this, 'messages_custom_columns')); |
|
26 | + add_filter('manage_edit-' . WPSHOP_NEWTYPE_IDENTIFIER_MESSAGE . '_columns', array($this, 'messages_edit_columns')); |
|
27 | 27 | |
28 | 28 | // Shortcodes |
29 | - add_shortcode( 'wps_message_histo', array( $this, 'display_message_histo_per_customer') ); |
|
30 | - add_shortcode( 'order_customer_personnal_informations', array( $this, 'order_personnal_informations') ); |
|
29 | + add_shortcode('wps_message_histo', array($this, 'display_message_histo_per_customer')); |
|
30 | + add_shortcode('order_customer_personnal_informations', array($this, 'order_personnal_informations')); |
|
31 | 31 | |
32 | 32 | /** Ajax */ |
33 | 33 | add_action('wp_ajax_get_content_message', array($this, 'get_content_message')); |
@@ -39,11 +39,11 @@ discard block |
||
39 | 39 | public function enqueue_scripts() { |
40 | 40 | /** Css */ |
41 | 41 | add_thickbox(); |
42 | - wp_register_style( 'wpeo-message-css', WPS_MESSAGE_URL . WPS_MESSAGE_DIR . '/assets/css/frontend.css', '', WPS_MESSAGE_VERSION ); |
|
43 | - wp_enqueue_style( 'wpeo-message-css' ); |
|
42 | + wp_register_style('wpeo-message-css', WPS_MESSAGE_URL . WPS_MESSAGE_DIR . '/assets/css/frontend.css', '', WPS_MESSAGE_VERSION); |
|
43 | + wp_enqueue_style('wpeo-message-css'); |
|
44 | 44 | |
45 | 45 | /** My js */ |
46 | - wp_enqueue_script( 'wps-message-js', WPS_MESSAGE_URL . WPS_MESSAGE_DIR . '/assets/js/frontend.js', array("jquery", 'thickbox'), WPS_MESSAGE_VERSION); |
|
46 | + wp_enqueue_script('wps-message-js', WPS_MESSAGE_URL . WPS_MESSAGE_DIR . '/assets/js/frontend.js', array("jquery", 'thickbox'), WPS_MESSAGE_VERSION); |
|
47 | 47 | } |
48 | 48 | |
49 | 49 | /** |
@@ -84,7 +84,7 @@ discard block |
||
84 | 84 | 'show_in_nav_menus' => false, |
85 | 85 | 'rewrite' => false, |
86 | 86 | 'query_var' => true, |
87 | - 'supports' => array('title','editor'), |
|
87 | + 'supports' => array('title', 'editor'), |
|
88 | 88 | 'has_archive' => false |
89 | 89 | )); |
90 | 90 | } |
@@ -97,7 +97,7 @@ discard block |
||
97 | 97 | add_meta_box( |
98 | 98 | 'wpshop_message_histo', |
99 | 99 | __('Message historic', 'wpshop'), |
100 | - array( $this, 'message_histo_box'), |
|
100 | + array($this, 'message_histo_box'), |
|
101 | 101 | WPSHOP_NEWTYPE_IDENTIFIER_MESSAGE, 'normal', 'high' |
102 | 102 | ); |
103 | 103 | } |
@@ -119,15 +119,15 @@ discard block |
||
119 | 119 | * @param integer $message_type_id : Message type ID |
120 | 120 | * @return string |
121 | 121 | */ |
122 | - function get_historic_message_by_type( $message_type_id ) { |
|
122 | + function get_historic_message_by_type($message_type_id) { |
|
123 | 123 | global $wpdb; |
124 | 124 | $output = ''; |
125 | - if ( !empty($message_type_id) ) { |
|
125 | + if (!empty($message_type_id)) { |
|
126 | 126 | // Recover all sended messages |
127 | 127 | $wps_message_mdl = new wps_message_mdl(); |
128 | - $messages = $wps_message_mdl->get_messages_histo( $message_type_id ); |
|
128 | + $messages = $wps_message_mdl->get_messages_histo($message_type_id); |
|
129 | 129 | ob_start(); |
130 | - require( wpshop_tools::get_template_part( WPS_MESSAGE_DIR, $this->template_dir, "backend", "message_historic") ); |
|
130 | + require(wpshop_tools::get_template_part(WPS_MESSAGE_DIR, $this->template_dir, "backend", "message_historic")); |
|
131 | 131 | $output .= ob_get_contents(); |
132 | 132 | ob_end_clean(); |
133 | 133 | } |
@@ -139,13 +139,13 @@ discard block |
||
139 | 139 | */ |
140 | 140 | public static function create_default_message() { |
141 | 141 | // Get default messages defined into xml files |
142 | - $xml_default_emails = file_get_contents( WP_PLUGIN_DIR . '/' . WPSHOP_PLUGIN_DIR . '/assets/datas/default_emails.xml' ); |
|
143 | - $default_emails = new SimpleXMLElement( $xml_default_emails ); |
|
142 | + $xml_default_emails = file_get_contents(WP_PLUGIN_DIR . '/' . WPSHOP_PLUGIN_DIR . '/assets/datas/default_emails.xml'); |
|
143 | + $default_emails = new SimpleXMLElement($xml_default_emails); |
|
144 | 144 | |
145 | 145 | //Read default emails for options creation |
146 | - foreach ( $default_emails->xpath( '//emails/email' ) as $email ) { |
|
147 | - if ( ( WPSHOP_DEFINED_SHOP_TYPE == (string)$email->attributes()->shop_type ) || ( 'sale' == WPSHOP_DEFINED_SHOP_TYPE ) ) { |
|
148 | - self::createMessage( (string)$email->attributes()->code, (string)$email->subject, (string)$email->content ); |
|
146 | + foreach ($default_emails->xpath('//emails/email') as $email) { |
|
147 | + if ((WPSHOP_DEFINED_SHOP_TYPE == (string)$email->attributes()->shop_type) || ('sale' == WPSHOP_DEFINED_SHOP_TYPE)) { |
|
148 | + self::createMessage((string)$email->attributes()->code, (string)$email->subject, (string)$email->content); |
|
149 | 149 | } |
150 | 150 | } |
151 | 151 | } |
@@ -157,24 +157,24 @@ discard block |
||
157 | 157 | * @param string $message : Message content |
158 | 158 | * @return integer message ID |
159 | 159 | */ |
160 | - public static function createMessage( $code, $object = "", $message = "" ) { |
|
160 | + public static function createMessage($code, $object = "", $message = "") { |
|
161 | 161 | $id = 0; |
162 | 162 | |
163 | - $object = empty( $object ) ? constant( $code . '_OBJECT' ) : $object; |
|
164 | - $message = empty( $message ) ? constant( $code ) : $message; |
|
165 | - $message_option = get_option( $code, null ); |
|
163 | + $object = empty($object) ? constant($code . '_OBJECT') : $object; |
|
164 | + $message = empty($message) ? constant($code) : $message; |
|
165 | + $message_option = get_option($code, null); |
|
166 | 166 | |
167 | - if ( empty( $message_option ) && !empty( $object ) && !empty( $message ) ) { |
|
167 | + if (empty($message_option) && !empty($object) && !empty($message)) { |
|
168 | 168 | $new_message = array( |
169 | - 'post_title' => __( $object , 'wpshop'), |
|
170 | - 'post_content' => self::customize_message( __( $message, 'wpshop' ) ), |
|
169 | + 'post_title' => __($object, 'wpshop'), |
|
170 | + 'post_content' => self::customize_message(__($message, 'wpshop')), |
|
171 | 171 | 'post_status' => 'publish', |
172 | 172 | 'post_author' => 1, |
173 | 173 | 'post_type' => WPSHOP_NEWTYPE_IDENTIFIER_MESSAGE |
174 | 174 | ); |
175 | - $id = wp_insert_post( $new_message ); |
|
175 | + $id = wp_insert_post($new_message); |
|
176 | 176 | |
177 | - update_option( $code, $id ); |
|
177 | + update_option($code, $id); |
|
178 | 178 | } |
179 | 179 | else { |
180 | 180 | $id = $message_option; |
@@ -190,13 +190,13 @@ discard block |
||
190 | 190 | function messages_custom_columns($column) { |
191 | 191 | global $post; |
192 | 192 | $metadata = get_post_custom(); |
193 | - switch($column){ |
|
193 | + switch ($column) { |
|
194 | 194 | case "extract": |
195 | 195 | echo wp_trim_words($post->post_content, 55); |
196 | 196 | break; |
197 | 197 | case "last_dispatch_date": |
198 | - if(!empty($metadata['wpshop_message_last_dispatch_date'][0])) |
|
199 | - echo mysql2date('d F Y, H:i:s',$metadata['wpshop_message_last_dispatch_date'][0], true); |
|
198 | + if (!empty($metadata['wpshop_message_last_dispatch_date'][0])) |
|
199 | + echo mysql2date('d F Y, H:i:s', $metadata['wpshop_message_last_dispatch_date'][0], true); |
|
200 | 200 | else |
201 | 201 | echo '-'; |
202 | 202 | break; |
@@ -211,9 +211,9 @@ discard block |
||
211 | 211 | $columns = array( |
212 | 212 | 'cb' => '<input type="checkbox" />', |
213 | 213 | 'title' => __('Name', 'wpshop'), |
214 | - 'extract' =>__('Extract from the message','wpshop'), |
|
215 | - 'date' => __('Creation date','wpshop'), |
|
216 | - 'last_dispatch_date' => __('Last dispatch date','wpshop') |
|
214 | + 'extract' =>__('Extract from the message', 'wpshop'), |
|
215 | + 'date' => __('Creation date', 'wpshop'), |
|
216 | + 'last_dispatch_date' => __('Last dispatch date', 'wpshop') |
|
217 | 217 | ); |
218 | 218 | |
219 | 219 | return $columns; |
@@ -229,12 +229,12 @@ discard block |
||
229 | 229 | 'post_type' => WPSHOP_NEWTYPE_IDENTIFIER_MESSAGE, |
230 | 230 | 'posts_per_page' => '-1', |
231 | 231 | )); |
232 | - $options=''; |
|
232 | + $options = ''; |
|
233 | 233 | if (!empty($posts)) { |
234 | - $options = '<option value="0">' .__('Select values from list', 'wpshop'). '</option>'; |
|
234 | + $options = '<option value="0">' . __('Select values from list', 'wpshop') . '</option>'; |
|
235 | 235 | foreach ($posts as $p) { |
236 | - $selected = $p->ID==$current ? ' selected="selected"': ''; |
|
237 | - $options .= '<option value="'.$p->ID.'"'.$selected.'>'.$p->post_title.'</option>'; |
|
236 | + $selected = $p->ID == $current ? ' selected="selected"' : ''; |
|
237 | + $options .= '<option value="' . $p->ID . '"' . $selected . '>' . $p->post_title . '</option>'; |
|
238 | 238 | } |
239 | 239 | } |
240 | 240 | wp_reset_query(); |
@@ -247,13 +247,13 @@ discard block |
||
247 | 247 | * @param integer $customer_id : ID to identifiate the customer |
248 | 248 | * @return string |
249 | 249 | */ |
250 | - function display_message_histo_per_customer( $args, $customer_id = '' ) { |
|
251 | - $customer_id = ( !empty($customer_id) ) ? $customer_id : get_current_user_id(); |
|
252 | - $message_id = ( !empty($args) && !empty($args['message_id']) ) ? $args['message_id'] : ''; |
|
250 | + function display_message_histo_per_customer($args, $customer_id = '') { |
|
251 | + $customer_id = (!empty($customer_id)) ? $customer_id : get_current_user_id(); |
|
252 | + $message_id = (!empty($args) && !empty($args['message_id'])) ? $args['message_id'] : ''; |
|
253 | 253 | $message_elements = ''; |
254 | 254 | |
255 | 255 | $wps_message_mdl = new wps_message_mdl(); |
256 | - $messages_data = $wps_message_mdl->get_messages_histo( $message_id, $customer_id ); |
|
256 | + $messages_data = $wps_message_mdl->get_messages_histo($message_id, $customer_id); |
|
257 | 257 | |
258 | 258 | // ob_start(); |
259 | 259 | // require( wpshop_tools::get_template_part( WPS_MESSAGE_DIR, $this->template_dir, "frontend", "messages") ); |
@@ -262,21 +262,21 @@ discard block |
||
262 | 262 | |
263 | 263 | /** Order emails */ |
264 | 264 | $messages_histo = array(); |
265 | - foreach( $messages_data as $meta_id => $messages ) : |
|
265 | + foreach ($messages_data as $meta_id => $messages) : |
|
266 | 266 | $i = 0; |
267 | - foreach ( $messages as $message ) : |
|
268 | - $messages_histo[ $message[ 'mess_dispatch_date' ][ 0 ] ][ $i ][ 'title' ] = $message[ 'mess_title' ]; |
|
269 | - $messages_histo[ $message[ 'mess_dispatch_date' ][ 0 ] ][ $i ][ 'message' ] = $message[ 'mess_message' ]; |
|
270 | - $messages_histo[ $message[ 'mess_dispatch_date' ][ 0 ] ][ $i ][ 'dates' ] = $message[ 'mess_dispatch_date' ]; |
|
271 | - if ( !empty( $message[ 'mess_object_id' ] ) ) { |
|
272 | - $messages_histo[ $message[ 'mess_dispatch_date' ][ 0 ] ][ $i ][ 'object' ] = $message[ 'mess_object_id' ]; |
|
267 | + foreach ($messages as $message) : |
|
268 | + $messages_histo[$message['mess_dispatch_date'][0]][$i]['title'] = $message['mess_title']; |
|
269 | + $messages_histo[$message['mess_dispatch_date'][0]][$i]['message'] = $message['mess_message']; |
|
270 | + $messages_histo[$message['mess_dispatch_date'][0]][$i]['dates'] = $message['mess_dispatch_date']; |
|
271 | + if (!empty($message['mess_object_id'])) { |
|
272 | + $messages_histo[$message['mess_dispatch_date'][0]][$i]['object'] = $message['mess_object_id']; |
|
273 | 273 | } |
274 | 274 | $i++; |
275 | 275 | endforeach; |
276 | 276 | endforeach; |
277 | - ksort( $messages_histo ); |
|
277 | + ksort($messages_histo); |
|
278 | 278 | ob_start(); |
279 | - require( wpshop_tools::get_template_part( WPS_MESSAGE_DIR, $this->template_dir, "frontend", "customer", "messages") ); |
|
279 | + require(wpshop_tools::get_template_part(WPS_MESSAGE_DIR, $this->template_dir, "frontend", "customer", "messages")); |
|
280 | 280 | $output = ob_get_contents(); |
281 | 281 | ob_end_clean(); |
282 | 282 | |
@@ -288,10 +288,10 @@ discard block |
||
288 | 288 | * @param string $message : message content |
289 | 289 | * @return string |
290 | 290 | */ |
291 | - public static function customize_message( $message ) { |
|
292 | - if( !empty($message) ) { |
|
291 | + public static function customize_message($message) { |
|
292 | + if (!empty($message)) { |
|
293 | 293 | ob_start(); |
294 | - require( wpshop_tools::get_template_part( WPS_MESSAGE_DIR, WPS_MESSAGE_PATH . WPS_MESSAGE_DIR . '/templates/', "backend", "message_html_structure") ); |
|
294 | + require(wpshop_tools::get_template_part(WPS_MESSAGE_DIR, WPS_MESSAGE_PATH . WPS_MESSAGE_DIR . '/templates/', "backend", "message_html_structure")); |
|
295 | 295 | $message = ob_get_contents(); |
296 | 296 | ob_end_clean(); |
297 | 297 | } |
@@ -301,12 +301,12 @@ discard block |
||
301 | 301 | /** Store a new message |
302 | 302 | * @return boolean |
303 | 303 | */ |
304 | - function add_message($recipient_id=0, $email, $title, $message, $model_id, $object, $date = null) { |
|
304 | + function add_message($recipient_id = 0, $email, $title, $message, $model_id, $object, $date = null) { |
|
305 | 305 | $date = empty($date) ? current_time('mysql', 0) : $date; |
306 | - $object_empty = array('object_type'=>'','object_id'=>0); |
|
306 | + $object_empty = array('object_type'=>'', 'object_id'=>0); |
|
307 | 307 | $object = array_merge($object_empty, $object); |
308 | 308 | |
309 | - $historic = get_post_meta($recipient_id, '_wpshop_messages_histo_' .$model_id. '_' .substr($date, 0, 7), true); |
|
309 | + $historic = get_post_meta($recipient_id, '_wpshop_messages_histo_' . $model_id . '_' . substr($date, 0, 7), true); |
|
310 | 310 | $data_to_insert = array( |
311 | 311 | 'mess_user_id' => $recipient_id, |
312 | 312 | 'mess_user_email' => $email, |
@@ -318,7 +318,7 @@ discard block |
||
318 | 318 | ); |
319 | 319 | $historic[] = $data_to_insert; |
320 | 320 | |
321 | - update_post_meta($recipient_id, '_wpshop_messages_histo_' .$model_id. '_' .substr($date, 0, 7), $historic); |
|
321 | + update_post_meta($recipient_id, '_wpshop_messages_histo_' . $model_id . '_' . substr($date, 0, 7), $historic); |
|
322 | 322 | } |
323 | 323 | |
324 | 324 | /** |
@@ -329,37 +329,37 @@ discard block |
||
329 | 329 | * @param boolean $duplicate_message : Duplicate a light message for historic storage |
330 | 330 | * @return string |
331 | 331 | */ |
332 | - function customMessage($string, $data, $model_name='', $duplicate_message=false) { |
|
332 | + function customMessage($string, $data, $model_name = '', $duplicate_message = false) { |
|
333 | 333 | $avant = array(); |
334 | 334 | $apres = array(); |
335 | 335 | |
336 | - $logo_option = get_option( 'wpshop_logo' ); |
|
336 | + $logo_option = get_option('wpshop_logo'); |
|
337 | 337 | |
338 | - $data['your_shop_logo'] = ( !empty($logo_option) ) ? '<img src="'.$logo_option.'" alt="' .get_bloginfo('name'). '" />' : ''; |
|
338 | + $data['your_shop_logo'] = (!empty($logo_option)) ? '<img src="' . $logo_option . '" alt="' . get_bloginfo('name') . '" />' : ''; |
|
339 | 339 | |
340 | - foreach($data as $key => $value) { |
|
341 | - $avant[] = '['.$key.']'; |
|
340 | + foreach ($data as $key => $value) { |
|
341 | + $avant[] = '[' . $key . ']'; |
|
342 | 342 | switch ($key) { |
343 | 343 | case 'order_content' : |
344 | - $apres[] = ( $duplicate_message ) ? '[order_content]' : $this->order_content_template_for_mail ( $data['order_id'] ); |
|
344 | + $apres[] = ($duplicate_message) ? '[order_content]' : $this->order_content_template_for_mail($data['order_id']); |
|
345 | 345 | break; |
346 | 346 | case 'order_addresses' : |
347 | - $apres[] = ( $duplicate_message ) ? '[order_addresses]' : $this->order_addresses_template_for_mail ( $data['order_id'] ); |
|
347 | + $apres[] = ($duplicate_message) ? '[order_addresses]' : $this->order_addresses_template_for_mail($data['order_id']); |
|
348 | 348 | break; |
349 | 349 | |
350 | 350 | case 'order_billing_address' : |
351 | - $apres[] = ( $duplicate_message ) ? '[order_billing_address]' : $this->order_addresses_template_for_mail ( $data['order_id'], 'billing' ); |
|
351 | + $apres[] = ($duplicate_message) ? '[order_billing_address]' : $this->order_addresses_template_for_mail($data['order_id'], 'billing'); |
|
352 | 352 | break; |
353 | 353 | |
354 | 354 | case 'order_shipping_address' : |
355 | - $apres[] = ( $duplicate_message ) ? '[order_shipping_address]' : $this->order_addresses_template_for_mail ( $data['order_id'], 'shipping' ); |
|
355 | + $apres[] = ($duplicate_message) ? '[order_shipping_address]' : $this->order_addresses_template_for_mail($data['order_id'], 'shipping'); |
|
356 | 356 | break; |
357 | 357 | |
358 | 358 | case 'order_customer_comments' : |
359 | - $apres[] = ( $duplicate_message ) ? '[order_customer_comments]' : $this->order_customer_comment_template_for_mail ( $data['order_id'] ); |
|
359 | + $apres[] = ($duplicate_message) ? '[order_customer_comments]' : $this->order_customer_comment_template_for_mail($data['order_id']); |
|
360 | 360 | break; |
361 | 361 | case 'order_personnal_informations' : |
362 | - $apres[] = ( $duplicate_message ) ? '[order_personnal_informations]' : $this->order_personnal_informations(); |
|
362 | + $apres[] = ($duplicate_message) ? '[order_personnal_informations]' : $this->order_personnal_informations(); |
|
363 | 363 | break; |
364 | 364 | default : |
365 | 365 | $apres[] = $value; |
@@ -368,9 +368,9 @@ discard block |
||
368 | 368 | } |
369 | 369 | $string = str_replace($avant, $apres, $string); |
370 | 370 | |
371 | - $string = apply_filters( 'wps_more_customized_message', $string, $data, $duplicate_message ); |
|
371 | + $string = apply_filters('wps_more_customized_message', $string, $data, $duplicate_message); |
|
372 | 372 | |
373 | - if ( ($model_name != 'WPSHOP_NEW_ORDER_ADMIN_MESSAGE') ) { |
|
373 | + if (($model_name != 'WPSHOP_NEW_ORDER_ADMIN_MESSAGE')) { |
|
374 | 374 | $string = preg_replace("/\[(.*)\]/Usi", '', $string); |
375 | 375 | } |
376 | 376 | |
@@ -385,21 +385,21 @@ discard block |
||
385 | 385 | * @param string $object : message object |
386 | 386 | * @param file $attached_file : File to attached to e-mail |
387 | 387 | */ |
388 | - function wpshop_prepared_email($email, $model_name, $data=array(), $object=array(), $attached_file = '') { |
|
388 | + function wpshop_prepared_email($email, $model_name, $data = array(), $object = array(), $attached_file = '') { |
|
389 | 389 | global $wpdb; |
390 | - $data = apply_filters( 'wps_extra_data_to_send_in_email', $data ); |
|
390 | + $data = apply_filters('wps_extra_data_to_send_in_email', $data); |
|
391 | 391 | $model_id = get_option($model_name, 0); |
392 | - $query = $wpdb->prepare( 'SELECT * FROM ' .$wpdb->posts. ' WHERE ID = %s', $model_id); |
|
393 | - $post_message = $wpdb->get_row( $query ); |
|
392 | + $query = $wpdb->prepare('SELECT * FROM ' . $wpdb->posts . ' WHERE ID = %s', $model_id); |
|
393 | + $post_message = $wpdb->get_row($query); |
|
394 | 394 | $duplicate_message = ''; |
395 | - if ( !empty($post_message) ) { |
|
395 | + if (!empty($post_message)) { |
|
396 | 396 | $title = $this->customMessage($post_message->post_title, $data, $model_name); |
397 | 397 | $message = $this->customMessage($post_message->post_content, $data, $model_name); |
398 | 398 | /* On envoie le mail */ |
399 | - if ( array_key_exists('order_content', $data) || array_key_exists('order_addresses', $data) || array_key_exists('order_customer_comments', $data) ) { |
|
399 | + if (array_key_exists('order_content', $data) || array_key_exists('order_addresses', $data) || array_key_exists('order_customer_comments', $data)) { |
|
400 | 400 | $duplicate_message = $this->customMessage($post_message->post_content, $data, $model_name, true); |
401 | 401 | } |
402 | - if ( !empty($email) ) { |
|
402 | + if (!empty($email)) { |
|
403 | 403 | $this->wpshop_email($email, $title, $message, true, $model_id, $object, $attached_file, $duplicate_message); |
404 | 404 | } |
405 | 405 | } |
@@ -419,17 +419,17 @@ discard block |
||
419 | 419 | function wpshop_email($email, $title, $message, $save = true, $model_id, $object = array(), $attachments = '', $duplicate_message = '') { |
420 | 420 | global $wpdb; |
421 | 421 | // Sauvegarde |
422 | - if($save) { |
|
423 | - $user = $wpdb->get_row('SELECT ID FROM '.$wpdb->users.' WHERE user_email="'.$email.'";'); |
|
422 | + if ($save) { |
|
423 | + $user = $wpdb->get_row('SELECT ID FROM ' . $wpdb->users . ' WHERE user_email="' . $email . '";'); |
|
424 | 424 | $user_id = $user ? $user->ID : get_current_user_id(); |
425 | - $query = $wpdb->prepare('SELECT ID FROM ' .$wpdb->posts. ' WHERE post_author = %d AND post_type = %s ', $user_id, WPSHOP_NEWTYPE_IDENTIFIER_CUSTOMERS); |
|
426 | - $user_post_id = $wpdb->get_var( $query ); |
|
425 | + $query = $wpdb->prepare('SELECT ID FROM ' . $wpdb->posts . ' WHERE post_author = %d AND post_type = %s ', $user_id, WPSHOP_NEWTYPE_IDENTIFIER_CUSTOMERS); |
|
426 | + $user_post_id = $wpdb->get_var($query); |
|
427 | 427 | |
428 | - if ( !empty($duplicate_message) ) { |
|
429 | - $this->add_message( $user_post_id, $email, $title, $duplicate_message, $model_id, $object ); |
|
428 | + if (!empty($duplicate_message)) { |
|
429 | + $this->add_message($user_post_id, $email, $title, $duplicate_message, $model_id, $object); |
|
430 | 430 | } |
431 | 431 | else { |
432 | - $this->add_message( $user_post_id, $email, $title, $message, $model_id, $object ); |
|
432 | + $this->add_message($user_post_id, $email, $title, $message, $model_id, $object); |
|
433 | 433 | } |
434 | 434 | |
435 | 435 | } |
@@ -437,19 +437,19 @@ discard block |
||
437 | 437 | $emails = get_option('wpshop_emails', array()); |
438 | 438 | $noreply_email = $emails['noreply_email']; |
439 | 439 | // Split the email to get the name |
440 | - $vers_nom = substr($email, 0, strpos($email,'@')); |
|
440 | + $vers_nom = substr($email, 0, strpos($email, '@')); |
|
441 | 441 | |
442 | 442 | // Headers du mail |
443 | 443 | $headers = "MIME-Version: 1.0\r\n"; |
444 | 444 | $headers .= "Content-type: text/html; charset=UTF-8\r\n"; |
445 | - $headers .= 'From: '.get_bloginfo('name').' <'.$noreply_email.'>' . "\r\n"; |
|
445 | + $headers .= 'From: ' . get_bloginfo('name') . ' <' . $noreply_email . '>' . "\r\n"; |
|
446 | 446 | |
447 | 447 | // Mail en HTML |
448 | 448 | @wp_mail($email, $title, $message, $headers, $attachments); |
449 | 449 | |
450 | 450 | |
451 | - if ( !empty($attachments) ) { |
|
452 | - unlink( $attachments ); |
|
451 | + if (!empty($attachments)) { |
|
452 | + unlink($attachments); |
|
453 | 453 | } |
454 | 454 | } |
455 | 455 | |
@@ -458,13 +458,13 @@ discard block |
||
458 | 458 | * @param integer $order_id : Order ID |
459 | 459 | * @return string |
460 | 460 | */ |
461 | - function order_content_template_for_mail ( $order_id ) { |
|
461 | + function order_content_template_for_mail($order_id) { |
|
462 | 462 | $message = ''; |
463 | - if ( !empty($order_id) ) { |
|
463 | + if (!empty($order_id)) { |
|
464 | 464 | $currency_code = wpshop_tools::wpshop_get_currency(false); |
465 | 465 | $orders_infos = get_post_meta($order_id, '_order_postmeta', true); |
466 | 466 | ob_start(); |
467 | - require( wpshop_tools::get_template_part( WPS_MESSAGE_DIR, $this->template_dir, "backend/mails", "order_content_mail_template" ) ); |
|
467 | + require(wpshop_tools::get_template_part(WPS_MESSAGE_DIR, $this->template_dir, "backend/mails", "order_content_mail_template")); |
|
468 | 468 | $message .= ob_get_contents(); |
469 | 469 | ob_end_clean(); |
470 | 470 | } |
@@ -477,44 +477,44 @@ discard block |
||
477 | 477 | * @param integer $address_type : Address type ID |
478 | 478 | * @return string |
479 | 479 | */ |
480 | - function order_addresses_template_for_mail ( $order_id, $address_type = '' ) { |
|
480 | + function order_addresses_template_for_mail($order_id, $address_type = '') { |
|
481 | 481 | global $wpdb; |
482 | - $shipping_option = get_option( 'wpshop_shipping_address_choice' ); |
|
483 | - $display_shipping = ( !empty($shipping_option) && !empty($shipping_option['activate']) ) ? true : false; |
|
482 | + $shipping_option = get_option('wpshop_shipping_address_choice'); |
|
483 | + $display_shipping = (!empty($shipping_option) && !empty($shipping_option['activate'])) ? true : false; |
|
484 | 484 | $message = ''; |
485 | - if ( !empty($order_id) ) { |
|
485 | + if (!empty($order_id)) { |
|
486 | 486 | $order_addresses = get_post_meta($order_id, '_order_info', true); |
487 | - if ( !empty($order_addresses) ) { |
|
488 | - foreach ( $order_addresses as $key=>$order_address ) { |
|
489 | - if ( !empty($order_address) && ( empty($address_type) || $address_type == $key ) ) { |
|
487 | + if (!empty($order_addresses)) { |
|
488 | + foreach ($order_addresses as $key=>$order_address) { |
|
489 | + if (!empty($order_address) && (empty($address_type) || $address_type == $key)) { |
|
490 | 490 | |
491 | - if( $key != 'shipping' || ($key == 'shipping' && $display_shipping) ) { |
|
492 | - $address_type_title = ( !empty($key) && $key == 'billing' ) ? __('Billing address', 'wpshop') : __('Shipping address', 'wpshop'); |
|
491 | + if ($key != 'shipping' || ($key == 'shipping' && $display_shipping)) { |
|
492 | + $address_type_title = (!empty($key) && $key == 'billing') ? __('Billing address', 'wpshop') : __('Shipping address', 'wpshop'); |
|
493 | 493 | $civility = ''; |
494 | - if ( !empty($order_address['address']['civility']) ) { |
|
495 | - $query = $wpdb->prepare('SELECT label FROM ' .WPSHOP_DBT_ATTRIBUTE_VALUES_OPTIONS. ' WHERE id = %d', $order_address['address']['civility']); |
|
496 | - $civility = $wpdb->get_var( $query ); |
|
494 | + if (!empty($order_address['address']['civility'])) { |
|
495 | + $query = $wpdb->prepare('SELECT label FROM ' . WPSHOP_DBT_ATTRIBUTE_VALUES_OPTIONS . ' WHERE id = %d', $order_address['address']['civility']); |
|
496 | + $civility = $wpdb->get_var($query); |
|
497 | 497 | } |
498 | 498 | |
499 | 499 | // Address informations |
500 | - $customer_last_name = (!empty($order_address['address']['address_last_name']) ) ? $order_address['address']['address_last_name'] : ''; |
|
501 | - $customer_firtsname = (!empty($order_address['address']['address_first_name']) ) ? $order_address['address']['address_first_name'] : ''; |
|
502 | - $customer_company = (!empty($order_address['address']['company']) ) ? $order_address['address']['company'] : ''; |
|
503 | - $customer_address = (!empty($order_address['address']['address']) ) ? $order_address['address']['address'] : ''; |
|
504 | - $customer_zip_code = (!empty($order_address['address']['postcode']) ) ? $order_address['address']['postcode'] : ''; |
|
505 | - $customer_city = (!empty($order_address['address']['city']) ) ? $order_address['address']['city'] : ''; |
|
506 | - $customer_state = (!empty($order_address['address']['state']) ) ? $order_address['address']['state'] : ''; |
|
507 | - $customer_phone = (!empty($order_address['address']['phone']) ) ? ' Tel. : '.$order_address['address']['phone'] : ''; |
|
500 | + $customer_last_name = (!empty($order_address['address']['address_last_name'])) ? $order_address['address']['address_last_name'] : ''; |
|
501 | + $customer_firtsname = (!empty($order_address['address']['address_first_name'])) ? $order_address['address']['address_first_name'] : ''; |
|
502 | + $customer_company = (!empty($order_address['address']['company'])) ? $order_address['address']['company'] : ''; |
|
503 | + $customer_address = (!empty($order_address['address']['address'])) ? $order_address['address']['address'] : ''; |
|
504 | + $customer_zip_code = (!empty($order_address['address']['postcode'])) ? $order_address['address']['postcode'] : ''; |
|
505 | + $customer_city = (!empty($order_address['address']['city'])) ? $order_address['address']['city'] : ''; |
|
506 | + $customer_state = (!empty($order_address['address']['state'])) ? $order_address['address']['state'] : ''; |
|
507 | + $customer_phone = (!empty($order_address['address']['phone'])) ? ' Tel. : ' . $order_address['address']['phone'] : ''; |
|
508 | 508 | $country = ''; |
509 | - foreach ( unserialize(WPSHOP_COUNTRY_LIST) as $key => $value ) { |
|
510 | - if ( !empty($order_address['address']['country']) && $key == $order_address['address']['country']) { |
|
509 | + foreach (unserialize(WPSHOP_COUNTRY_LIST) as $key => $value) { |
|
510 | + if (!empty($order_address['address']['country']) && $key == $order_address['address']['country']) { |
|
511 | 511 | $country = $value; |
512 | 512 | } |
513 | 513 | } |
514 | 514 | $customer_country = $country; |
515 | 515 | |
516 | 516 | ob_start(); |
517 | - require( wpshop_tools::get_template_part( WPS_MESSAGE_DIR, $this->template_dir, "backend/mails", "order_addresses_template_for_mail") ); |
|
517 | + require(wpshop_tools::get_template_part(WPS_MESSAGE_DIR, $this->template_dir, "backend/mails", "order_addresses_template_for_mail")); |
|
518 | 518 | $message .= ob_get_contents(); |
519 | 519 | ob_end_clean(); |
520 | 520 | } |
@@ -530,21 +530,21 @@ discard block |
||
530 | 530 | * @param integer $order_id : Order ID |
531 | 531 | * @return string |
532 | 532 | */ |
533 | - function order_customer_comment_template_for_mail ( $order_id ) { |
|
533 | + function order_customer_comment_template_for_mail($order_id) { |
|
534 | 534 | global $wpdb; |
535 | 535 | $message = ''; |
536 | - if ( !empty($order_id) ) { |
|
537 | - $query = $wpdb->prepare('SELECT post_excerpt FROM ' .$wpdb->posts. ' WHERE ID = %d', $order_id); |
|
538 | - $comment = $wpdb->get_var( $query ); |
|
536 | + if (!empty($order_id)) { |
|
537 | + $query = $wpdb->prepare('SELECT post_excerpt FROM ' . $wpdb->posts . ' WHERE ID = %d', $order_id); |
|
538 | + $comment = $wpdb->get_var($query); |
|
539 | 539 | $order_infos = get_post_meta($order_id, '_order_postmeta', true); |
540 | - if ( !empty($order_infos['order_key']) ) { |
|
541 | - $comment_title = __('Comments about the order', 'wpshop'); |
|
540 | + if (!empty($order_infos['order_key'])) { |
|
541 | + $comment_title = __('Comments about the order', 'wpshop'); |
|
542 | 542 | } |
543 | 543 | else { |
544 | - $comment_title = __('Comments about the quotation', 'wpshop'); |
|
544 | + $comment_title = __('Comments about the quotation', 'wpshop'); |
|
545 | 545 | } |
546 | 546 | ob_start(); |
547 | - require( wpshop_tools::get_template_part( WPS_MESSAGE_DIR, $this->template_dir, "backend/mails", "order_email_customer_comments") ); |
|
547 | + require(wpshop_tools::get_template_part(WPS_MESSAGE_DIR, $this->template_dir, "backend/mails", "order_email_customer_comments")); |
|
548 | 548 | $message .= ob_get_contents(); |
549 | 549 | ob_end_clean(); |
550 | 550 | } |
@@ -559,15 +559,15 @@ discard block |
||
559 | 559 | global $wpdb; |
560 | 560 | $user_id = get_current_user_id(); |
561 | 561 | $message = ''; |
562 | - $customer_entity = wpshop_entities::get_entity_identifier_from_code( WPSHOP_NEWTYPE_IDENTIFIER_CUSTOMERS ); |
|
563 | - if( !empty($customer_entity) ) { |
|
562 | + $customer_entity = wpshop_entities::get_entity_identifier_from_code(WPSHOP_NEWTYPE_IDENTIFIER_CUSTOMERS); |
|
563 | + if (!empty($customer_entity)) { |
|
564 | 564 | |
565 | - $query = $wpdb->prepare( 'SELECT * FROM '.WPSHOP_DBT_ATTRIBUTE_SET. ' WHERE entity_id = %d AND status = %s', $customer_entity, 'valid' ); |
|
566 | - $attributes_sets = $wpdb->get_results( $query ); |
|
565 | + $query = $wpdb->prepare('SELECT * FROM ' . WPSHOP_DBT_ATTRIBUTE_SET . ' WHERE entity_id = %d AND status = %s', $customer_entity, 'valid'); |
|
566 | + $attributes_sets = $wpdb->get_results($query); |
|
567 | 567 | |
568 | - if( !empty($attributes_sets) ) { |
|
568 | + if (!empty($attributes_sets)) { |
|
569 | 569 | ob_start(); |
570 | - require( wpshop_tools::get_template_part( WPS_MESSAGE_DIR, $this->template_dir, "backend/mails", "order_personnal_informations_template_for_mail") ); |
|
570 | + require(wpshop_tools::get_template_part(WPS_MESSAGE_DIR, $this->template_dir, "backend/mails", "order_personnal_informations_template_for_mail")); |
|
571 | 571 | $message .= ob_get_contents(); |
572 | 572 | ob_end_clean(); |
573 | 573 | } |
@@ -578,15 +578,15 @@ discard block |
||
578 | 578 | /** |
579 | 579 | * Support historic messages |
580 | 580 | */ |
581 | - function wpshop_messages_historic_correction () { |
|
581 | + function wpshop_messages_historic_correction() { |
|
582 | 582 | global $wpdb; |
583 | - $query = $wpdb->prepare('SELECT * FROM ' .$wpdb->postmeta. ' WHERE meta_key LIKE %s', '_wpshop_messages_histo_%'); |
|
584 | - $messages_histo = $wpdb->get_results( $query ); |
|
583 | + $query = $wpdb->prepare('SELECT * FROM ' . $wpdb->postmeta . ' WHERE meta_key LIKE %s', '_wpshop_messages_histo_%'); |
|
584 | + $messages_histo = $wpdb->get_results($query); |
|
585 | 585 | |
586 | - foreach ( $messages_histo as $message ) { |
|
587 | - $query_user = $wpdb->prepare( 'SELECT ID FROM ' .$wpdb->posts. ' WHERE post_author = %d AND post_type = %s', $message->post_id, WPSHOP_NEWTYPE_IDENTIFIER_CUSTOMERS); |
|
588 | - $user_post_id = $wpdb->get_var( $query_user ); |
|
589 | - $wpdb->update($wpdb->postmeta, array('post_id' => $user_post_id ), array('meta_id' => $message->meta_id ) ); |
|
586 | + foreach ($messages_histo as $message) { |
|
587 | + $query_user = $wpdb->prepare('SELECT ID FROM ' . $wpdb->posts . ' WHERE post_author = %d AND post_type = %s', $message->post_id, WPSHOP_NEWTYPE_IDENTIFIER_CUSTOMERS); |
|
588 | + $user_post_id = $wpdb->get_var($query_user); |
|
589 | + $wpdb->update($wpdb->postmeta, array('post_id' => $user_post_id), array('meta_id' => $message->meta_id)); |
|
590 | 590 | } |
591 | 591 | } |
592 | 592 | |
@@ -595,9 +595,9 @@ discard block |
||
595 | 595 | * Récupères le contenu du message |
596 | 596 | */ |
597 | 597 | public function get_content_message() { |
598 | - $_wponce = !empty( $_REQUEST['_wpnonce'] ) ? sanitize_text_field( $_REQUEST['_wpnonce'] ) : ''; |
|
598 | + $_wponce = !empty($_REQUEST['_wpnonce']) ? sanitize_text_field($_REQUEST['_wpnonce']) : ''; |
|
599 | 599 | |
600 | - if ( !wp_verify_nonce( $_wpnonce, 'get_content_message' ) ) |
|
600 | + if (!wp_verify_nonce($_wpnonce, 'get_content_message')) |
|
601 | 601 | wp_die(); |
602 | 602 | |
603 | 603 | global $wpdb; |
@@ -607,7 +607,7 @@ discard block |
||
607 | 607 | $result = unserialize($result[0]->meta_value); |
608 | 608 | $result = $result[0]['mess_message']; |
609 | 609 | |
610 | - wp_die( $result ); |
|
610 | + wp_die($result); |
|
611 | 611 | } |
612 | 612 | |
613 | 613 | } |
@@ -1,4 +1,6 @@ discard block |
||
1 | -<?php if ( !defined( 'ABSPATH' ) ) exit; |
|
1 | +<?php if ( !defined( 'ABSPATH' ) ) { |
|
2 | + exit; |
|
3 | +} |
|
2 | 4 | class wps_message_ctr { |
3 | 5 | /** Define the main directory containing the template for the current plugin |
4 | 6 | * @var string |
@@ -175,8 +177,7 @@ discard block |
||
175 | 177 | $id = wp_insert_post( $new_message ); |
176 | 178 | |
177 | 179 | update_option( $code, $id ); |
178 | - } |
|
179 | - else { |
|
180 | + } else { |
|
180 | 181 | $id = $message_option; |
181 | 182 | } |
182 | 183 | |
@@ -195,10 +196,11 @@ discard block |
||
195 | 196 | echo wp_trim_words($post->post_content, 55); |
196 | 197 | break; |
197 | 198 | case "last_dispatch_date": |
198 | - if(!empty($metadata['wpshop_message_last_dispatch_date'][0])) |
|
199 | - echo mysql2date('d F Y, H:i:s',$metadata['wpshop_message_last_dispatch_date'][0], true); |
|
200 | - else |
|
201 | - echo '-'; |
|
199 | + if(!empty($metadata['wpshop_message_last_dispatch_date'][0])) { |
|
200 | + echo mysql2date('d F Y, H:i:s',$metadata['wpshop_message_last_dispatch_date'][0], true); |
|
201 | + } else { |
|
202 | + echo '-'; |
|
203 | + } |
|
202 | 204 | break; |
203 | 205 | } |
204 | 206 | } |
@@ -427,8 +429,7 @@ discard block |
||
427 | 429 | |
428 | 430 | if ( !empty($duplicate_message) ) { |
429 | 431 | $this->add_message( $user_post_id, $email, $title, $duplicate_message, $model_id, $object ); |
430 | - } |
|
431 | - else { |
|
432 | + } else { |
|
432 | 433 | $this->add_message( $user_post_id, $email, $title, $message, $model_id, $object ); |
433 | 434 | } |
434 | 435 | |
@@ -539,8 +540,7 @@ discard block |
||
539 | 540 | $order_infos = get_post_meta($order_id, '_order_postmeta', true); |
540 | 541 | if ( !empty($order_infos['order_key']) ) { |
541 | 542 | $comment_title = __('Comments about the order', 'wpshop'); |
542 | - } |
|
543 | - else { |
|
543 | + } else { |
|
544 | 544 | $comment_title = __('Comments about the quotation', 'wpshop'); |
545 | 545 | } |
546 | 546 | ob_start(); |
@@ -597,8 +597,9 @@ discard block |
||
597 | 597 | public function get_content_message() { |
598 | 598 | $_wponce = !empty( $_REQUEST['_wpnonce'] ) ? sanitize_text_field( $_REQUEST['_wpnonce'] ) : ''; |
599 | 599 | |
600 | - if ( !wp_verify_nonce( $_wpnonce, 'get_content_message' ) ) |
|
601 | - wp_die(); |
|
600 | + if ( !wp_verify_nonce( $_wpnonce, 'get_content_message' ) ) { |
|
601 | + wp_die(); |
|
602 | + } |
|
602 | 603 | |
603 | 604 | global $wpdb; |
604 | 605 | $meta_id = (int)$_GET['meta_id']; |
@@ -129,7 +129,7 @@ discard block |
||
129 | 129 | /** |
130 | 130 | * Build an array with the different items to add to an order |
131 | 131 | * |
132 | - * @param array $products The item list to add to the order |
|
132 | + * @param array $product The item list to add to the order |
|
133 | 133 | * |
134 | 134 | * @return array $item_list The item to add to order |
135 | 135 | */ |
@@ -321,6 +321,9 @@ discard block |
||
321 | 321 | wp_die(); |
322 | 322 | } |
323 | 323 | |
324 | + /** |
|
325 | + * @param integer $order_id |
|
326 | + */ |
|
324 | 327 | function pay_quotation( $order_id ) { |
325 | 328 | $status = true; |
326 | 329 | $order_meta = get_post_meta( $order_id, '_order_postmeta', true ); |
@@ -1,4 +1,4 @@ discard block |
||
1 | -<?php if ( !defined( 'ABSPATH' ) ) exit; |
|
1 | +<?php if (!defined('ABSPATH')) exit; |
|
2 | 2 | class wps_orders_ctr { |
3 | 3 | /** Define the main directory containing the template for the current plugin |
4 | 4 | * @var string |
@@ -17,12 +17,12 @@ discard block |
||
17 | 17 | /** Template Load **/ |
18 | 18 | // add_filter( 'wpshop_custom_template', array( &$this, 'custom_template_load' ) ); |
19 | 19 | |
20 | - add_shortcode( 'order_customer_informations', array( &$this, 'display_order_customer_informations' ) ); |
|
21 | - add_shortcode( 'wps_orders_in_customer_account', array($this, 'display_orders_in_account') ); |
|
20 | + add_shortcode('order_customer_informations', array(&$this, 'display_order_customer_informations')); |
|
21 | + add_shortcode('wps_orders_in_customer_account', array($this, 'display_orders_in_account')); |
|
22 | 22 | |
23 | - add_action( 'wp_enqueue_scripts', array( $this, 'wps_orders_scripts') ); |
|
23 | + add_action('wp_enqueue_scripts', array($this, 'wps_orders_scripts')); |
|
24 | 24 | /** Include the different javascript */ |
25 | - add_action( 'admin_init', array(&$this, 'admin_js') ); |
|
25 | + add_action('admin_init', array(&$this, 'admin_js')); |
|
26 | 26 | |
27 | 27 | |
28 | 28 | /** Ajax Actions **/ |
@@ -32,17 +32,17 @@ discard block |
||
32 | 32 | // add_action( 'wap_ajax_wps_orders_load_variations_container', array( &$this, 'wps_orders_load_variations_container') ); |
33 | 33 | // add_action( 'wap_ajax_wps_order_refresh_in_admin', array( &$this, 'wps_order_refresh_in_admin') ); |
34 | 34 | |
35 | - add_action( 'wp_ajax_wps_orders_load_details', array( $this, 'wps_orders_load_details') ); |
|
35 | + add_action('wp_ajax_wps_orders_load_details', array($this, 'wps_orders_load_details')); |
|
36 | 36 | |
37 | 37 | // Add a product sale historic in administration product panel |
38 | - add_action( 'wp_ajax_wps_order_choose_customer', array( $this, 'wps_order_choose_customer' ) ); |
|
38 | + add_action('wp_ajax_wps_order_choose_customer', array($this, 'wps_order_choose_customer')); |
|
39 | 39 | |
40 | 40 | /** For delete order */ |
41 | - add_action( 'wp_ajax_wps_delete_order', array( $this, 'wps_delete_order' ) ); |
|
41 | + add_action('wp_ajax_wps_delete_order', array($this, 'wps_delete_order')); |
|
42 | 42 | |
43 | 43 | /** For pay billing */ |
44 | - add_action( 'wp_ajax_wps_checkout_quotation', array( $this, 'wps_checkout_quotation' ) ); |
|
45 | - add_action( 'wp_ajax_nopriv_wps_checkout_quotation', array( $this, 'wps_checkout_quotation_no_login' ) ); |
|
44 | + add_action('wp_ajax_wps_checkout_quotation', array($this, 'wps_checkout_quotation')); |
|
45 | + add_action('wp_ajax_nopriv_wps_checkout_quotation', array($this, 'wps_checkout_quotation_no_login')); |
|
46 | 46 | |
47 | 47 | } |
48 | 48 | |
@@ -58,24 +58,24 @@ discard block |
||
58 | 58 | * Add scripts |
59 | 59 | */ |
60 | 60 | function wps_orders_scripts() { |
61 | - wp_enqueue_script( 'wps_orders_fronend', WPS_ORDERS_URL.WPS_ORDERS_DIR.'/assets/frontend/js/wps_orders.js' ); |
|
61 | + wp_enqueue_script('wps_orders_fronend', WPS_ORDERS_URL . WPS_ORDERS_DIR . '/assets/frontend/js/wps_orders.js'); |
|
62 | 62 | } |
63 | 63 | |
64 | 64 | function display_order_customer_informations() { |
65 | 65 | global $post_id; global $wpdb; |
66 | 66 | $output = ''; |
67 | - if ( !empty($post_id) ) { |
|
68 | - $order_postmeta = get_post_meta( $post_id, '_order_postmeta', true ); |
|
69 | - $order_info = get_post_meta( $post_id, '_order_info', true ); |
|
67 | + if (!empty($post_id)) { |
|
68 | + $order_postmeta = get_post_meta($post_id, '_order_postmeta', true); |
|
69 | + $order_info = get_post_meta($post_id, '_order_info', true); |
|
70 | 70 | |
71 | 71 | /** Check the order status **/ |
72 | - if ( !empty($order_postmeta) ) { |
|
73 | - if ( !empty($order_postmeta['order_status']) && $order_postmeta['order_status'] != 'awaiting_payment' ) { |
|
74 | - $output = wps_address::display_an_address( $order_info['billing']['address'] ); |
|
75 | - $output .= wps_address::display_an_address( $order_info['shipping']['address'] ); |
|
72 | + if (!empty($order_postmeta)) { |
|
73 | + if (!empty($order_postmeta['order_status']) && $order_postmeta['order_status'] != 'awaiting_payment') { |
|
74 | + $output = wps_address::display_an_address($order_info['billing']['address']); |
|
75 | + $output .= wps_address::display_an_address($order_info['shipping']['address']); |
|
76 | 76 | } |
77 | 77 | else { |
78 | - $output = wps_address::display_an_address( $order_info['billing']['address'] ); |
|
78 | + $output = wps_address::display_an_address($order_info['billing']['address']); |
|
79 | 79 | } |
80 | 80 | } |
81 | 81 | } |
@@ -99,7 +99,7 @@ discard block |
||
99 | 99 | 'blog_id' => $GLOBALS['blog_id'], |
100 | 100 | 'who' => null // string |
101 | 101 | ); |
102 | - $tpl_component['CUSTOMERS_LIST'] = wp_dropdown_users( $args ); |
|
102 | + $tpl_component['CUSTOMERS_LIST'] = wp_dropdown_users($args); |
|
103 | 103 | $output = wpshop_display::display_template_element('wps_orders_choose_customer_interface', $tpl_component, array(), 'admin'); |
104 | 104 | } |
105 | 105 | return $output; |
@@ -110,16 +110,16 @@ discard block |
||
110 | 110 | * @param integer $customer_id |
111 | 111 | * @return string |
112 | 112 | */ |
113 | - function display_orders_in_account( $customer_id = '' ) { |
|
113 | + function display_orders_in_account($customer_id = '') { |
|
114 | 114 | $output = ''; |
115 | - $customer_id = ( !empty($customer_id) ) ? $customer_id : get_current_user_id(); |
|
116 | - $from_admin = ( !empty($customer_id) ) ? true : false; |
|
115 | + $customer_id = (!empty($customer_id)) ? $customer_id : get_current_user_id(); |
|
116 | + $from_admin = (!empty($customer_id)) ? true : false; |
|
117 | 117 | $wps_orders_mdl = new wps_orders_mdl(); |
118 | - $orders = $wps_orders_mdl->get_customer_orders( $customer_id ); |
|
118 | + $orders = $wps_orders_mdl->get_customer_orders($customer_id); |
|
119 | 119 | |
120 | 120 | // Display orders |
121 | 121 | ob_start(); |
122 | - require_once( wpshop_tools::get_template_part( WPS_ORDERS_DIR, $this->template_dir, "frontend", "orders_list_in_account") ); |
|
122 | + require_once(wpshop_tools::get_template_part(WPS_ORDERS_DIR, $this->template_dir, "frontend", "orders_list_in_account")); |
|
123 | 123 | $output = ob_get_contents(); |
124 | 124 | ob_end_clean(); |
125 | 125 | |
@@ -133,26 +133,26 @@ discard block |
||
133 | 133 | * |
134 | 134 | * @return array $item_list The item to add to order |
135 | 135 | */ |
136 | - function add_product_to_order( $product ) { |
|
136 | + function add_product_to_order($product) { |
|
137 | 137 | global $wpdb; |
138 | 138 | |
139 | - if( !empty($product) && empty($product['price_ttc_before_discount']) && empty($product['price_ht_before_discount']) ) { |
|
140 | - $price_infos = wpshop_prices::check_product_price( $product, true ); |
|
141 | - $product['price_ht'] = ( !empty($price_infos['discount']) && !empty($price_infos['discount']['discount_exist']) && $price_infos['discount']['discount_exist']) ? $price_infos['discount']['discount_et_price'] : $price_infos['et']; |
|
142 | - $product['product_price'] = ( !empty($price_infos['discount']) && !empty($price_infos['discount']['discount_exist']) && $price_infos['discount']['discount_exist']) ? $price_infos['discount']['discount_ati_price'] : $price_infos['ati']; |
|
143 | - $product['tva'] = ( !empty($price_infos['discount']) && !empty($price_infos['discount']['discount_exist']) && $price_infos['discount']['discount_exist']) ? $price_infos['discount']['discount_tva'] : $price_infos['tva']; |
|
139 | + if (!empty($product) && empty($product['price_ttc_before_discount']) && empty($product['price_ht_before_discount'])) { |
|
140 | + $price_infos = wpshop_prices::check_product_price($product, true); |
|
141 | + $product['price_ht'] = (!empty($price_infos['discount']) && !empty($price_infos['discount']['discount_exist']) && $price_infos['discount']['discount_exist']) ? $price_infos['discount']['discount_et_price'] : $price_infos['et']; |
|
142 | + $product['product_price'] = (!empty($price_infos['discount']) && !empty($price_infos['discount']['discount_exist']) && $price_infos['discount']['discount_exist']) ? $price_infos['discount']['discount_ati_price'] : $price_infos['ati']; |
|
143 | + $product['tva'] = (!empty($price_infos['discount']) && !empty($price_infos['discount']['discount_exist']) && $price_infos['discount']['discount_exist']) ? $price_infos['discount']['discount_tva'] : $price_infos['tva']; |
|
144 | 144 | } |
145 | 145 | |
146 | - $price_piloting = get_option( 'wpshop_shop_price_piloting' ); |
|
146 | + $price_piloting = get_option('wpshop_shop_price_piloting'); |
|
147 | 147 | |
148 | - if ( !empty($price_piloting) && $price_piloting == 'HT') { |
|
148 | + if (!empty($price_piloting) && $price_piloting == 'HT') { |
|
149 | 149 | $total_ht = $product['price_ht'] * $product['product_qty']; |
150 | - $tva_total_amount = $total_ht * ( $product['tx_tva'] / 100 ); |
|
150 | + $tva_total_amount = $total_ht * ($product['tx_tva'] / 100); |
|
151 | 151 | $total_ttc = $total_ht + $tva_total_amount; |
152 | 152 | } |
153 | 153 | else { |
154 | 154 | $total_ttc = $product['product_price'] * $product['product_qty']; |
155 | - $total_ht = $total_ttc / ( 1 + ( $product['tx_tva'] / 100 ) ); |
|
155 | + $total_ht = $total_ttc / (1 + ($product['tx_tva'] / 100)); |
|
156 | 156 | $tva_total_amount = $total_ttc - $total_ht; |
157 | 157 | } |
158 | 158 | |
@@ -160,21 +160,21 @@ discard block |
||
160 | 160 | |
161 | 161 | $item_discount_type = $item_discount_value = $item_discount_amount = 0; |
162 | 162 | |
163 | - $d_amount = !empty( $product ) && !empty( $product[ 'discount_amount' ] ) ? wpshop_tools::formate_number( $product['discount_amount'] ) : null; |
|
164 | - $d_rate = !empty( $product ) && !empty( $product[ 'discount_rate' ] ) ? wpshop_tools::formate_number( $product['discount_rate'] ) : null; |
|
165 | - $d_special = !empty( $product ) && !empty( $product[ 'special_price' ] ) ? wpshop_tools::formate_number( $product['special_price'] ) : null; |
|
163 | + $d_amount = !empty($product) && !empty($product['discount_amount']) ? wpshop_tools::formate_number($product['discount_amount']) : null; |
|
164 | + $d_rate = !empty($product) && !empty($product['discount_rate']) ? wpshop_tools::formate_number($product['discount_rate']) : null; |
|
165 | + $d_special = !empty($product) && !empty($product['special_price']) ? wpshop_tools::formate_number($product['special_price']) : null; |
|
166 | 166 | |
167 | - if( !empty($d_amount) ) { |
|
167 | + if (!empty($d_amount)) { |
|
168 | 168 | $item_discount_type = 'discount_amount'; |
169 | 169 | $item_discount_amount = $product['discount_amount']; |
170 | 170 | $item_discount_value = $product['discount_amount']; |
171 | 171 | } |
172 | - elseif(!empty($d_rate)) { |
|
172 | + elseif (!empty($d_rate)) { |
|
173 | 173 | $item_discount_type = 'discount_rate'; |
174 | 174 | $item_discount_amount = $product['discount_rate']; |
175 | 175 | $item_discount_value = $product['discount_rate']; |
176 | 176 | } |
177 | - elseif(!empty($d_special)) { |
|
177 | + elseif (!empty($d_special)) { |
|
178 | 178 | $item_discount_type = 'special_price'; |
179 | 179 | $item_discount_amount = $product['special_price']; |
180 | 180 | $item_discount_value = $product['special_price']; |
@@ -201,31 +201,31 @@ discard block |
||
201 | 201 | 'item_meta' => !empty($product['item_meta']) ? $product['item_meta'] : array() |
202 | 202 | ); |
203 | 203 | |
204 | - $array_not_to_do = array(WPSHOP_PRODUCT_PRICE_HT,WPSHOP_PRODUCT_PRICE_TTC,WPSHOP_PRODUCT_PRICE_TAX_AMOUNT,'product_qty',WPSHOP_PRODUCT_PRICE_TAX,'product_id','product_reference','product_name','variations'); |
|
204 | + $array_not_to_do = array(WPSHOP_PRODUCT_PRICE_HT, WPSHOP_PRODUCT_PRICE_TTC, WPSHOP_PRODUCT_PRICE_TAX_AMOUNT, 'product_qty', WPSHOP_PRODUCT_PRICE_TAX, 'product_id', 'product_reference', 'product_name', 'variations'); |
|
205 | 205 | |
206 | - if(!empty($product['item_meta'])) { |
|
207 | - foreach($product['item_meta'] as $key=>$value) { |
|
208 | - if( !isset($item['item_'.$key]) && !in_array($key, $array_not_to_do) && !empty($product[$key]) ) { |
|
209 | - $item['item_'.$key] = $product[$key]; |
|
206 | + if (!empty($product['item_meta'])) { |
|
207 | + foreach ($product['item_meta'] as $key=>$value) { |
|
208 | + if (!isset($item['item_' . $key]) && !in_array($key, $array_not_to_do) && !empty($product[$key])) { |
|
209 | + $item['item_' . $key] = $product[$key]; |
|
210 | 210 | } |
211 | 211 | } |
212 | 212 | } |
213 | 213 | |
214 | 214 | /** Check if it's a variation product **/ |
215 | - if ( !empty($product) && !empty( $product['item_meta']) && !empty($product['item_meta']['variations']) ) { |
|
216 | - foreach( $product['item_meta']['variations'] as $k => $variation ) { |
|
217 | - $product_variation_def = get_post_meta( $k, '_wpshop_variations_attribute_def', true); |
|
218 | - if ( !empty($product_variation_def) ) { |
|
219 | - foreach( $product_variation_def as $attribute_code => $variation_id ) { |
|
220 | - $variation_attribute_def = wpshop_attributes::getElement( $attribute_code, '"valid"', 'code' ); |
|
221 | - if ( !empty($variation_attribute_def) ) { |
|
215 | + if (!empty($product) && !empty($product['item_meta']) && !empty($product['item_meta']['variations'])) { |
|
216 | + foreach ($product['item_meta']['variations'] as $k => $variation) { |
|
217 | + $product_variation_def = get_post_meta($k, '_wpshop_variations_attribute_def', true); |
|
218 | + if (!empty($product_variation_def)) { |
|
219 | + foreach ($product_variation_def as $attribute_code => $variation_id) { |
|
220 | + $variation_attribute_def = wpshop_attributes::getElement($attribute_code, '"valid"', 'code'); |
|
221 | + if (!empty($variation_attribute_def)) { |
|
222 | 222 | $item['item_meta']['variation_definition'][$attribute_code]['NAME'] = $variation_attribute_def->frontend_label; |
223 | - if ( $variation_attribute_def->data_type_to_use == 'custom' ) { |
|
224 | - $query = $wpdb->prepare( 'SELECT label FROM ' .WPSHOP_DBT_ATTRIBUTE_VALUES_OPTIONS. ' WHERE id=%d', $variation_id); |
|
225 | - $variation_name = $wpdb->get_var( $query ); |
|
223 | + if ($variation_attribute_def->data_type_to_use == 'custom') { |
|
224 | + $query = $wpdb->prepare('SELECT label FROM ' . WPSHOP_DBT_ATTRIBUTE_VALUES_OPTIONS . ' WHERE id=%d', $variation_id); |
|
225 | + $variation_name = $wpdb->get_var($query); |
|
226 | 226 | } |
227 | 227 | else { |
228 | - $variation_post = get_post( $variation_id ); |
|
228 | + $variation_post = get_post($variation_id); |
|
229 | 229 | $variation_name = $variation_post->post_title; |
230 | 230 | } |
231 | 231 | $item['item_meta']['variation_definition'][$attribute_code]['UNSTYLED_VALUE'] = $variation_name; |
@@ -237,19 +237,19 @@ discard block |
||
237 | 237 | } |
238 | 238 | else { |
239 | 239 | /** Check if it's product with one variation **/ |
240 | - $product_variation_def = get_post_meta( $product['product_id'], '_wpshop_variations_attribute_def', true); |
|
240 | + $product_variation_def = get_post_meta($product['product_id'], '_wpshop_variations_attribute_def', true); |
|
241 | 241 | |
242 | - if ( !empty($product_variation_def) ) { |
|
243 | - foreach( $product_variation_def as $attribute_code => $variation_id ) { |
|
244 | - $variation_attribute_def = wpshop_attributes::getElement( $attribute_code, '"valid"', 'code' ); |
|
245 | - if ( !empty($variation_attribute_def) ) { |
|
242 | + if (!empty($product_variation_def)) { |
|
243 | + foreach ($product_variation_def as $attribute_code => $variation_id) { |
|
244 | + $variation_attribute_def = wpshop_attributes::getElement($attribute_code, '"valid"', 'code'); |
|
245 | + if (!empty($variation_attribute_def)) { |
|
246 | 246 | $item['item_meta']['variation_definition'][$attribute_code]['NAME'] = $variation_attribute_def->frontend_label; |
247 | - if ( $variation_attribute_def->data_type_to_use == 'custom' ) { |
|
248 | - $query = $wpdb->prepare( 'SELECT label FROM ' .WPSHOP_DBT_ATTRIBUTE_VALUES_OPTIONS. ' WHERE id=%d', $variation_id); |
|
249 | - $variation_name = $wpdb->get_var( $query ); |
|
247 | + if ($variation_attribute_def->data_type_to_use == 'custom') { |
|
248 | + $query = $wpdb->prepare('SELECT label FROM ' . WPSHOP_DBT_ATTRIBUTE_VALUES_OPTIONS . ' WHERE id=%d', $variation_id); |
|
249 | + $variation_name = $wpdb->get_var($query); |
|
250 | 250 | } |
251 | 251 | else { |
252 | - $variation_post = get_post( $variation_id ); |
|
252 | + $variation_post = get_post($variation_id); |
|
253 | 253 | $variation_name = $variation_post->post_title; |
254 | 254 | } |
255 | 255 | $item['item_meta']['variation_definition'][$attribute_code]['UNSTYLED_VALUE'] = $variation_name; |
@@ -260,7 +260,7 @@ discard block |
||
260 | 260 | } |
261 | 261 | |
262 | 262 | /** On ajoute la possibilité d'étendre les données produits ajoutées dans le panier / Add possibility to extends product data saved into cart */ |
263 | - $item = apply_filters( 'wpshop-add-product-to-order', $item, $product ); |
|
263 | + $item = apply_filters('wpshop-add-product-to-order', $item, $product); |
|
264 | 264 | |
265 | 265 | return $item; |
266 | 266 | } |
@@ -270,24 +270,24 @@ discard block |
||
270 | 270 | * AJAX - Load order details in customer account |
271 | 271 | */ |
272 | 272 | function wps_orders_load_details() { |
273 | - $_wponce = !empty( $_REQUEST['_wpnonce'] ) ? sanitize_text_field( $_REQUEST['_wpnonce'] ) : ''; |
|
273 | + $_wponce = !empty($_REQUEST['_wpnonce']) ? sanitize_text_field($_REQUEST['_wpnonce']) : ''; |
|
274 | 274 | |
275 | - if ( !wp_verify_nonce( $_wpnonce, 'wps_orders_load_details' ) ) |
|
275 | + if (!wp_verify_nonce($_wpnonce, 'wps_orders_load_details')) |
|
276 | 276 | wp_die(); |
277 | 277 | |
278 | - $order_id = ( !empty($_POST['order_id']) ) ? wpshop_tools::varSanitizer( $_POST['order_id'] ) : ''; |
|
278 | + $order_id = (!empty($_POST['order_id'])) ? wpshop_tools::varSanitizer($_POST['order_id']) : ''; |
|
279 | 279 | $user_id = get_current_user_id(); |
280 | 280 | $status = false; $result = ''; |
281 | - if( !empty($order_id) ) { |
|
282 | - $order = get_post( $order_id ); |
|
283 | - $order_infos = get_post_meta( $order_id, '_order_postmeta', true ); |
|
284 | - $order_key = ( !empty($order_infos['order_key']) ) ? $order_infos['order_key'] : '-'; |
|
285 | - if( !empty($order) && !empty($user_id) && $order->post_type == WPSHOP_NEWTYPE_IDENTIFIER_ORDER && $order->post_author == $user_id ) { |
|
286 | - $result = do_shortcode( '[wps_cart cart_type="summary" oid="' .$order_id. '"]' ); |
|
281 | + if (!empty($order_id)) { |
|
282 | + $order = get_post($order_id); |
|
283 | + $order_infos = get_post_meta($order_id, '_order_postmeta', true); |
|
284 | + $order_key = (!empty($order_infos['order_key'])) ? $order_infos['order_key'] : '-'; |
|
285 | + if (!empty($order) && !empty($user_id) && $order->post_type == WPSHOP_NEWTYPE_IDENTIFIER_ORDER && $order->post_author == $user_id) { |
|
286 | + $result = do_shortcode('[wps_cart cart_type="summary" oid="' . $order_id . '"]'); |
|
287 | 287 | $status = true; |
288 | 288 | } |
289 | 289 | } |
290 | - echo json_encode( array( 'status' => $status, 'title' => sprintf( __( 'Order n° %s details', 'wpshop' ), $order_key ), 'content' => $result ) ); |
|
290 | + echo json_encode(array('status' => $status, 'title' => sprintf(__('Order n° %s details', 'wpshop'), $order_key), 'content' => $result)); |
|
291 | 291 | wp_die(); |
292 | 292 | } |
293 | 293 | |
@@ -295,83 +295,83 @@ discard block |
||
295 | 295 | * AJAX - Choose customer to create order |
296 | 296 | */ |
297 | 297 | function wps_order_choose_customer() { |
298 | - $_wponce = !empty( $_REQUEST['_wpnonce'] ) ? sanitize_text_field( $_REQUEST['_wpnonce'] ) : ''; |
|
298 | + $_wponce = !empty($_REQUEST['_wpnonce']) ? sanitize_text_field($_REQUEST['_wpnonce']) : ''; |
|
299 | 299 | |
300 | - if ( !wp_verify_nonce( $_wpnonce, 'wps_order_choose_customer' ) ) |
|
300 | + if (!wp_verify_nonce($_wpnonce, 'wps_order_choose_customer')) |
|
301 | 301 | wp_die(); |
302 | 302 | |
303 | 303 | $status = false; $billing_data = $shipping_data = ''; |
304 | - $customer_id = ( !empty($_POST['customer_id']) ) ? intval( $_POST['customer_id'] ): null; |
|
305 | - if( !empty($customer_id) ) { |
|
304 | + $customer_id = (!empty($_POST['customer_id'])) ? intval($_POST['customer_id']) : null; |
|
305 | + if (!empty($customer_id)) { |
|
306 | 306 | $wps_address = new wps_address(); |
307 | - $billing_option = get_option( 'wpshop_billing_address' ); |
|
308 | - $shipping_option = get_option( 'wpshop_shipping_address_choice' ); |
|
307 | + $billing_option = get_option('wpshop_billing_address'); |
|
308 | + $shipping_option = get_option('wpshop_shipping_address_choice'); |
|
309 | 309 | $billing_option = $billing_option['choice']; |
310 | - $customer_addresses_list = wps_address::get_addresses_list( $customer_id ); |
|
310 | + $customer_addresses_list = wps_address::get_addresses_list($customer_id); |
|
311 | 311 | $status = true; |
312 | - $billing_data = '<div class="wps-alert-info">' .sprintf( __( 'No Billing address created, <a href="%s" title="' .__( 'Create a new billing address', 'wpshop' ). '" class="thickbox">create one</a>', 'wpshop' ),admin_url( 'admin-ajax.php' ). '?action=wps-add-an-address-in-admin&address_type='.$billing_option.'&customer_id='.$customer_id.'&height=600' ). '</div>'; |
|
312 | + $billing_data = '<div class="wps-alert-info">' . sprintf(__('No Billing address created, <a href="%s" title="' . __('Create a new billing address', 'wpshop') . '" class="thickbox">create one</a>', 'wpshop'), admin_url('admin-ajax.php') . '?action=wps-add-an-address-in-admin&address_type=' . $billing_option . '&customer_id=' . $customer_id . '&height=600') . '</div>'; |
|
313 | 313 | |
314 | - if( !empty($shipping_option) && !empty($shipping_option['activate']) ) { |
|
314 | + if (!empty($shipping_option) && !empty($shipping_option['activate'])) { |
|
315 | 315 | $shipping_option = $shipping_option['choice']; |
316 | - $shipping_data = '<div class="wps-alert-info">' .sprintf( __( 'No shipping address created, <a href="%s" title="' .__( 'Create a new shipping address', 'wpshop' ). '" class="thickbox">create one</a>', 'wpshop' ),admin_url( 'admin-ajax.php' ). '?action=wps-add-an-address-in-admin&address_type='.$shipping_option.'&customer_id='.$customer_id.'&height=600' ). '</div>'; |
|
316 | + $shipping_data = '<div class="wps-alert-info">' . sprintf(__('No shipping address created, <a href="%s" title="' . __('Create a new shipping address', 'wpshop') . '" class="thickbox">create one</a>', 'wpshop'), admin_url('admin-ajax.php') . '?action=wps-add-an-address-in-admin&address_type=' . $shipping_option . '&customer_id=' . $customer_id . '&height=600') . '</div>'; |
|
317 | 317 | } |
318 | 318 | |
319 | - if( !empty($customer_addresses_list) ) { |
|
320 | - foreach( $customer_addresses_list as $address_type => $customer_addresses ) { |
|
321 | - if( $billing_option == $address_type ) { |
|
322 | - $billing_data = $wps_address->display_address_in_administration( $customer_addresses, $address_type ); |
|
319 | + if (!empty($customer_addresses_list)) { |
|
320 | + foreach ($customer_addresses_list as $address_type => $customer_addresses) { |
|
321 | + if ($billing_option == $address_type) { |
|
322 | + $billing_data = $wps_address->display_address_in_administration($customer_addresses, $address_type); |
|
323 | 323 | } |
324 | 324 | else { |
325 | - $shipping_data = $wps_address->display_address_in_administration( $customer_addresses, $address_type ); |
|
325 | + $shipping_data = $wps_address->display_address_in_administration($customer_addresses, $address_type); |
|
326 | 326 | } |
327 | 327 | } |
328 | 328 | } |
329 | 329 | } |
330 | - echo json_encode( array( 'status' => $status, 'billing_data' => $billing_data, 'shipping_data' => $shipping_data) ); |
|
330 | + echo json_encode(array('status' => $status, 'billing_data' => $billing_data, 'shipping_data' => $shipping_data)); |
|
331 | 331 | wp_die(); |
332 | 332 | } |
333 | 333 | |
334 | - function pay_quotation( $order_id ) { |
|
334 | + function pay_quotation($order_id) { |
|
335 | 335 | $status = true; |
336 | - $order_meta = get_post_meta( $order_id, '_order_postmeta', true ); |
|
337 | - $order_info = get_post_meta( $order_id, '_order_info', true ); |
|
336 | + $order_meta = get_post_meta($order_id, '_order_postmeta', true); |
|
337 | + $order_info = get_post_meta($order_id, '_order_info', true); |
|
338 | 338 | $_SESSION['shipping_method'] = $order_meta['order_payment']['shipping_method']; |
339 | - isset( $order_info['billing']['address_id'] ) ? $_SESSION['billing_address'] = $order_info['billing']['address_id'] : $status = false; |
|
340 | - isset( $order_info['shipping']['address_id'] ) ? $_SESSION['shipping_address'] = $order_info['shipping']['address_id'] : false; |
|
339 | + isset($order_info['billing']['address_id']) ? $_SESSION['billing_address'] = $order_info['billing']['address_id'] : $status = false; |
|
340 | + isset($order_info['shipping']['address_id']) ? $_SESSION['shipping_address'] = $order_info['shipping']['address_id'] : false; |
|
341 | 341 | $_SESSION['cart'] = array(); |
342 | - $_SESSION['cart']['order_id'] = wpshop_tools::varSanitizer( $order_id ); |
|
342 | + $_SESSION['cart']['order_id'] = wpshop_tools::varSanitizer($order_id); |
|
343 | 343 | $_SESSION['cart']['cart_type'] = 'normal'; |
344 | 344 | $_SESSION['cart']['order_amount_to_pay_now'] = $order_meta['order_amount_to_pay_now']; |
345 | 345 | $_SESSION['cart']['order_items'] = $order_meta['order_items']; |
346 | - return array( 'status' => $status, 'permalink' => get_permalink( get_option('wpshop_cart_page_id') ) . '?order_step=5' ); |
|
346 | + return array('status' => $status, 'permalink' => get_permalink(get_option('wpshop_cart_page_id')) . '?order_step=5'); |
|
347 | 347 | } |
348 | 348 | /** |
349 | 349 | * AJAX - Delete order by order_id |
350 | 350 | */ |
351 | 351 | public function wps_delete_order() { |
352 | - $_wponce = !empty( $_REQUEST['_wpnonce'] ) ? sanitize_text_field( $_REQUEST['_wpnonce'] ) : ''; |
|
352 | + $_wponce = !empty($_REQUEST['_wpnonce']) ? sanitize_text_field($_REQUEST['_wpnonce']) : ''; |
|
353 | 353 | |
354 | - if ( !wp_verify_nonce( $_wpnonce, 'wps_delete_order' ) ) |
|
354 | + if (!wp_verify_nonce($_wpnonce, 'wps_delete_order')) |
|
355 | 355 | wp_die(); |
356 | 356 | |
357 | 357 | $status = false; |
358 | 358 | $output = ''; |
359 | - $order_id = !empty( $_POST['order_id'] ) ? (int) $_POST['order_id'] : 0; |
|
360 | - if( $order_id ) { |
|
361 | - $order_meta = get_post_meta( $order_id, '_order_postmeta', true ); |
|
359 | + $order_id = !empty($_POST['order_id']) ? (int)$_POST['order_id'] : 0; |
|
360 | + if ($order_id) { |
|
361 | + $order_meta = get_post_meta($order_id, '_order_postmeta', true); |
|
362 | 362 | $wps_credit = new wps_credit(); |
363 | - $wps_credit->create_an_credit( $order_id ); |
|
363 | + $wps_credit->create_an_credit($order_id); |
|
364 | 364 | $order_meta['order_status'] = 'canceled'; |
365 | - $order_meta['order_payment']['refunded_action']['refunded_date'] = current_time('mysql', 0 ); |
|
365 | + $order_meta['order_payment']['refunded_action']['refunded_date'] = current_time('mysql', 0); |
|
366 | 366 | $order_meta['order_payment']['refunded_action']['author'] = get_current_user_id(); |
367 | - update_post_meta( $order_id, '_order_postmeta', $order_meta ); |
|
367 | + update_post_meta($order_id, '_order_postmeta', $order_meta); |
|
368 | 368 | ob_start(); |
369 | - require( wpshop_tools::get_template_part( WPS_ORDERS_DIR, $this->template_dir, "frontend", "order_row_in_account") ); |
|
369 | + require(wpshop_tools::get_template_part(WPS_ORDERS_DIR, $this->template_dir, "frontend", "order_row_in_account")); |
|
370 | 370 | $output = ob_get_contents(); |
371 | 371 | ob_end_clean(); |
372 | 372 | $status = true; |
373 | 373 | } |
374 | - echo json_encode( array( 'status' => $status, 'row' => $output ) ); |
|
374 | + echo json_encode(array('status' => $status, 'row' => $output)); |
|
375 | 375 | wp_die(); |
376 | 376 | } |
377 | 377 | |
@@ -379,37 +379,37 @@ discard block |
||
379 | 379 | * AJAX - Pay billing |
380 | 380 | */ |
381 | 381 | public function wps_checkout_quotation() { |
382 | - $_wponce = !empty( $_REQUEST['_wpnonce'] ) ? sanitize_text_field( $_REQUEST['_wpnonce'] ) : ''; |
|
382 | + $_wponce = !empty($_REQUEST['_wpnonce']) ? sanitize_text_field($_REQUEST['_wpnonce']) : ''; |
|
383 | 383 | |
384 | - if ( !wp_verify_nonce( $_wpnonce, 'wps_checkout_quotation' ) ) |
|
384 | + if (!wp_verify_nonce($_wpnonce, 'wps_checkout_quotation')) |
|
385 | 385 | wp_die(); |
386 | 386 | |
387 | 387 | $status = true; |
388 | - $order_id = !empty( $_REQUEST['order_id'] ) ? (int) $_REQUEST['order_id'] : 0; |
|
388 | + $order_id = !empty($_REQUEST['order_id']) ? (int)$_REQUEST['order_id'] : 0; |
|
389 | 389 | |
390 | - if( !empty( $order_id ) ) { |
|
391 | - $pay_quotation = self::pay_quotation( $order_id ); |
|
390 | + if (!empty($order_id)) { |
|
391 | + $pay_quotation = self::pay_quotation($order_id); |
|
392 | 392 | $status = $pay_quotation['status']; |
393 | 393 | } |
394 | 394 | |
395 | - $is_link = !empty( $_REQUEST['is_link'] ) ? sanitize_text_field( $_REQUEST['is_link'] ) : ''; |
|
395 | + $is_link = !empty($_REQUEST['is_link']) ? sanitize_text_field($_REQUEST['is_link']) : ''; |
|
396 | 396 | |
397 | - if( !empty( $is_link ) ) { |
|
398 | - wp_redirect( $pay_quotation['permalink'] ); |
|
397 | + if (!empty($is_link)) { |
|
398 | + wp_redirect($pay_quotation['permalink']); |
|
399 | 399 | exit(); |
400 | 400 | } else { |
401 | - echo json_encode( array( 'status' => $status, '301' => $pay_quotation['permalink'] ) ); |
|
401 | + echo json_encode(array('status' => $status, '301' => $pay_quotation['permalink'])); |
|
402 | 402 | wp_die(); |
403 | 403 | } |
404 | 404 | } |
405 | 405 | public function wps_checkout_quotation_no_login() { |
406 | - $_wponce = !empty( $_REQUEST['_wpnonce'] ) ? sanitize_text_field( $_REQUEST['_wpnonce'] ) : ''; |
|
406 | + $_wponce = !empty($_REQUEST['_wpnonce']) ? sanitize_text_field($_REQUEST['_wpnonce']) : ''; |
|
407 | 407 | |
408 | - if ( !wp_verify_nonce( $_wpnonce, 'wps_checkout_quotation' ) ) |
|
408 | + if (!wp_verify_nonce($_wpnonce, 'wps_checkout_quotation')) |
|
409 | 409 | wp_die(); |
410 | 410 | |
411 | - $order_id = !empty( $_REQUEST['order_id'] ) ? (int) $_REQUEST['order_id'] : 0; |
|
412 | - wp_redirect( home_url('/wp-login.php') . '?redirect_to=' . urlencode( admin_url() . 'admin-ajax.php?action=wps_checkout_quotation&order_id=' . $order_id . '&is_link=link' ) ); |
|
411 | + $order_id = !empty($_REQUEST['order_id']) ? (int)$_REQUEST['order_id'] : 0; |
|
412 | + wp_redirect(home_url('/wp-login.php') . '?redirect_to=' . urlencode(admin_url() . 'admin-ajax.php?action=wps_checkout_quotation&order_id=' . $order_id . '&is_link=link')); |
|
413 | 413 | exit(); |
414 | 414 | } |
415 | 415 | } |
@@ -1,4 +1,6 @@ discard block |
||
1 | -<?php if ( !defined( 'ABSPATH' ) ) exit; |
|
1 | +<?php if ( !defined( 'ABSPATH' ) ) { |
|
2 | + exit; |
|
3 | +} |
|
2 | 4 | class wps_orders_ctr { |
3 | 5 | /** Define the main directory containing the template for the current plugin |
4 | 6 | * @var string |
@@ -73,13 +75,11 @@ discard block |
||
73 | 75 | if ( !empty($order_postmeta['order_status']) && $order_postmeta['order_status'] != 'awaiting_payment' ) { |
74 | 76 | $output = wps_address::display_an_address( $order_info['billing']['address'] ); |
75 | 77 | $output .= wps_address::display_an_address( $order_info['shipping']['address'] ); |
76 | - } |
|
77 | - else { |
|
78 | + } else { |
|
78 | 79 | $output = wps_address::display_an_address( $order_info['billing']['address'] ); |
79 | 80 | } |
80 | 81 | } |
81 | - } |
|
82 | - else { |
|
82 | + } else { |
|
83 | 83 | /** Display "Choose customer or create one" Interface **/ |
84 | 84 | $tpl_component = array(); |
85 | 85 | $args = array( |
@@ -149,8 +149,7 @@ discard block |
||
149 | 149 | $total_ht = $product['price_ht'] * $product['product_qty']; |
150 | 150 | $tva_total_amount = $total_ht * ( $product['tx_tva'] / 100 ); |
151 | 151 | $total_ttc = $total_ht + $tva_total_amount; |
152 | - } |
|
153 | - else { |
|
152 | + } else { |
|
154 | 153 | $total_ttc = $product['product_price'] * $product['product_qty']; |
155 | 154 | $total_ht = $total_ttc / ( 1 + ( $product['tx_tva'] / 100 ) ); |
156 | 155 | $tva_total_amount = $total_ttc - $total_ht; |
@@ -168,13 +167,11 @@ discard block |
||
168 | 167 | $item_discount_type = 'discount_amount'; |
169 | 168 | $item_discount_amount = $product['discount_amount']; |
170 | 169 | $item_discount_value = $product['discount_amount']; |
171 | - } |
|
172 | - elseif(!empty($d_rate)) { |
|
170 | + } elseif(!empty($d_rate)) { |
|
173 | 171 | $item_discount_type = 'discount_rate'; |
174 | 172 | $item_discount_amount = $product['discount_rate']; |
175 | 173 | $item_discount_value = $product['discount_rate']; |
176 | - } |
|
177 | - elseif(!empty($d_special)) { |
|
174 | + } elseif(!empty($d_special)) { |
|
178 | 175 | $item_discount_type = 'special_price'; |
179 | 176 | $item_discount_amount = $product['special_price']; |
180 | 177 | $item_discount_value = $product['special_price']; |
@@ -223,8 +220,7 @@ discard block |
||
223 | 220 | if ( $variation_attribute_def->data_type_to_use == 'custom' ) { |
224 | 221 | $query = $wpdb->prepare( 'SELECT label FROM ' .WPSHOP_DBT_ATTRIBUTE_VALUES_OPTIONS. ' WHERE id=%d', $variation_id); |
225 | 222 | $variation_name = $wpdb->get_var( $query ); |
226 | - } |
|
227 | - else { |
|
223 | + } else { |
|
228 | 224 | $variation_post = get_post( $variation_id ); |
229 | 225 | $variation_name = $variation_post->post_title; |
230 | 226 | } |
@@ -234,8 +230,7 @@ discard block |
||
234 | 230 | } |
235 | 231 | } |
236 | 232 | } |
237 | - } |
|
238 | - else { |
|
233 | + } else { |
|
239 | 234 | /** Check if it's product with one variation **/ |
240 | 235 | $product_variation_def = get_post_meta( $product['product_id'], '_wpshop_variations_attribute_def', true); |
241 | 236 | |
@@ -247,8 +242,7 @@ discard block |
||
247 | 242 | if ( $variation_attribute_def->data_type_to_use == 'custom' ) { |
248 | 243 | $query = $wpdb->prepare( 'SELECT label FROM ' .WPSHOP_DBT_ATTRIBUTE_VALUES_OPTIONS. ' WHERE id=%d', $variation_id); |
249 | 244 | $variation_name = $wpdb->get_var( $query ); |
250 | - } |
|
251 | - else { |
|
245 | + } else { |
|
252 | 246 | $variation_post = get_post( $variation_id ); |
253 | 247 | $variation_name = $variation_post->post_title; |
254 | 248 | } |
@@ -272,8 +266,9 @@ discard block |
||
272 | 266 | function wps_orders_load_details() { |
273 | 267 | $_wponce = !empty( $_REQUEST['_wpnonce'] ) ? sanitize_text_field( $_REQUEST['_wpnonce'] ) : ''; |
274 | 268 | |
275 | - if ( !wp_verify_nonce( $_wpnonce, 'wps_orders_load_details' ) ) |
|
276 | - wp_die(); |
|
269 | + if ( !wp_verify_nonce( $_wpnonce, 'wps_orders_load_details' ) ) { |
|
270 | + wp_die(); |
|
271 | + } |
|
277 | 272 | |
278 | 273 | $order_id = ( !empty($_POST['order_id']) ) ? wpshop_tools::varSanitizer( $_POST['order_id'] ) : ''; |
279 | 274 | $user_id = get_current_user_id(); |
@@ -297,8 +292,9 @@ discard block |
||
297 | 292 | function wps_order_choose_customer() { |
298 | 293 | $_wponce = !empty( $_REQUEST['_wpnonce'] ) ? sanitize_text_field( $_REQUEST['_wpnonce'] ) : ''; |
299 | 294 | |
300 | - if ( !wp_verify_nonce( $_wpnonce, 'wps_order_choose_customer' ) ) |
|
301 | - wp_die(); |
|
295 | + if ( !wp_verify_nonce( $_wpnonce, 'wps_order_choose_customer' ) ) { |
|
296 | + wp_die(); |
|
297 | + } |
|
302 | 298 | |
303 | 299 | $status = false; $billing_data = $shipping_data = ''; |
304 | 300 | $customer_id = ( !empty($_POST['customer_id']) ) ? intval( $_POST['customer_id'] ): null; |
@@ -320,8 +316,7 @@ discard block |
||
320 | 316 | foreach( $customer_addresses_list as $address_type => $customer_addresses ) { |
321 | 317 | if( $billing_option == $address_type ) { |
322 | 318 | $billing_data = $wps_address->display_address_in_administration( $customer_addresses, $address_type ); |
323 | - } |
|
324 | - else { |
|
319 | + } else { |
|
325 | 320 | $shipping_data = $wps_address->display_address_in_administration( $customer_addresses, $address_type ); |
326 | 321 | } |
327 | 322 | } |
@@ -351,8 +346,9 @@ discard block |
||
351 | 346 | public function wps_delete_order() { |
352 | 347 | $_wponce = !empty( $_REQUEST['_wpnonce'] ) ? sanitize_text_field( $_REQUEST['_wpnonce'] ) : ''; |
353 | 348 | |
354 | - if ( !wp_verify_nonce( $_wpnonce, 'wps_delete_order' ) ) |
|
355 | - wp_die(); |
|
349 | + if ( !wp_verify_nonce( $_wpnonce, 'wps_delete_order' ) ) { |
|
350 | + wp_die(); |
|
351 | + } |
|
356 | 352 | |
357 | 353 | $status = false; |
358 | 354 | $output = ''; |
@@ -381,8 +377,9 @@ discard block |
||
381 | 377 | public function wps_checkout_quotation() { |
382 | 378 | $_wponce = !empty( $_REQUEST['_wpnonce'] ) ? sanitize_text_field( $_REQUEST['_wpnonce'] ) : ''; |
383 | 379 | |
384 | - if ( !wp_verify_nonce( $_wpnonce, 'wps_checkout_quotation' ) ) |
|
385 | - wp_die(); |
|
380 | + if ( !wp_verify_nonce( $_wpnonce, 'wps_checkout_quotation' ) ) { |
|
381 | + wp_die(); |
|
382 | + } |
|
386 | 383 | |
387 | 384 | $status = true; |
388 | 385 | $order_id = !empty( $_REQUEST['order_id'] ) ? (int) $_REQUEST['order_id'] : 0; |
@@ -405,8 +402,9 @@ discard block |
||
405 | 402 | public function wps_checkout_quotation_no_login() { |
406 | 403 | $_wponce = !empty( $_REQUEST['_wpnonce'] ) ? sanitize_text_field( $_REQUEST['_wpnonce'] ) : ''; |
407 | 404 | |
408 | - if ( !wp_verify_nonce( $_wpnonce, 'wps_checkout_quotation' ) ) |
|
409 | - wp_die(); |
|
405 | + if ( !wp_verify_nonce( $_wpnonce, 'wps_checkout_quotation' ) ) { |
|
406 | + wp_die(); |
|
407 | + } |
|
410 | 408 | |
411 | 409 | $order_id = !empty( $_REQUEST['order_id'] ) ? (int) $_REQUEST['order_id'] : 0; |
412 | 410 | wp_redirect( home_url('/wp-login.php') . '?redirect_to=' . urlencode( admin_url() . 'admin-ajax.php?action=wps_checkout_quotation&order_id=' . $order_id . '&is_link=link' ) ); |
@@ -30,7 +30,6 @@ |
||
30 | 30 | * of the number of corrected product and the template of the method : ajax_checking_products_values if inconsistent product |
31 | 31 | * already present. |
32 | 32 | * |
33 | - * @param array $_POST['product_price'] List of the new price for the product like array( $id_product => $new_price ) |
|
34 | 33 | * @return JSON Response |
35 | 34 | */ |
36 | 35 | public function ajax_save_product_price() { |
@@ -1,8 +1,8 @@ discard block |
||
1 | -<?php if ( !defined( 'ABSPATH' ) ) exit; |
|
1 | +<?php if (!defined('ABSPATH')) exit; |
|
2 | 2 | class wps_product_ajax_ctr_01 { |
3 | 3 | public function __construct() { |
4 | - add_action( 'wp_ajax_checking_products_values', array( &$this, 'ajax_render_inconsistent_product_price' ) ); |
|
5 | - add_action( 'wp_ajax_save_products_prices', array( &$this, 'ajax_save_product_price' ) ); |
|
4 | + add_action('wp_ajax_checking_products_values', array(&$this, 'ajax_render_inconsistent_product_price')); |
|
5 | + add_action('wp_ajax_save_products_prices', array(&$this, 'ajax_save_product_price')); |
|
6 | 6 | } |
7 | 7 | |
8 | 8 | /** |
@@ -12,16 +12,16 @@ discard block |
||
12 | 12 | * list. Then display the template product_check_data |
13 | 13 | */ |
14 | 14 | public function ajax_render_inconsistent_product_price() { |
15 | - $_wponce = !empty( $_REQUEST['_wpnonce'] ) ? sanitize_text_field( $_REQUEST['_wpnonce'] ) : ''; |
|
15 | + $_wponce = !empty($_REQUEST['_wpnonce']) ? sanitize_text_field($_REQUEST['_wpnonce']) : ''; |
|
16 | 16 | |
17 | - if ( !wp_verify_nonce( $_wpnonce, 'ajax_render_inconsistent_product_price' ) ) |
|
17 | + if (!wp_verify_nonce($_wpnonce, 'ajax_render_inconsistent_product_price')) |
|
18 | 18 | wp_die(); |
19 | 19 | |
20 | 20 | $list_product = wps_product_ctr::get_inconsistent_product(); |
21 | 21 | |
22 | 22 | $inconsistent_product_number = count($list_product); |
23 | 23 | |
24 | - require( wpshop_tools::get_template_part( WPS_PRODUCT_DIR, WPS_PRODUCT_TEMPLATES_MAIN_DIR, "backend", "product_check_data") ); |
|
24 | + require(wpshop_tools::get_template_part(WPS_PRODUCT_DIR, WPS_PRODUCT_TEMPLATES_MAIN_DIR, "backend", "product_check_data")); |
|
25 | 25 | wp_die(); |
26 | 26 | } |
27 | 27 | |
@@ -39,39 +39,39 @@ discard block |
||
39 | 39 | * @return JSON Response |
40 | 40 | */ |
41 | 41 | public function ajax_save_product_price() { |
42 | - $_wponce = !empty( $_REQUEST['_wpnonce'] ) ? sanitize_text_field( $_REQUEST['_wpnonce'] ) : ''; |
|
42 | + $_wponce = !empty($_REQUEST['_wpnonce']) ? sanitize_text_field($_REQUEST['_wpnonce']) : ''; |
|
43 | 43 | |
44 | - if ( !wp_verify_nonce( $_wpnonce, 'ajax_save_product_price' ) ) |
|
44 | + if (!wp_verify_nonce($_wpnonce, 'ajax_save_product_price')) |
|
45 | 45 | wp_die(); |
46 | 46 | |
47 | - header( 'Content-Type: application/json' ); |
|
47 | + header('Content-Type: application/json'); |
|
48 | 48 | $response = array(); |
49 | 49 | |
50 | - $price_piloting_option = get_option( 'wpshop_shop_price_piloting' ); |
|
50 | + $price_piloting_option = get_option('wpshop_shop_price_piloting'); |
|
51 | 51 | |
52 | - $inconsistent_product_number = !empty( $_POST['product_price'] ) ? (int) count( $_POST['product_price'] ) : 0; |
|
53 | - $consistent_product_number = 0; |
|
52 | + $inconsistent_product_number = !empty($_POST['product_price']) ? (int)count($_POST['product_price']) : 0; |
|
53 | + $consistent_product_number = 0; |
|
54 | 54 | |
55 | - $entity_type_id = wpshop_entities::get_entity_identifier_from_code(WPSHOP_NEWTYPE_IDENTIFIER_PRODUCT); |
|
56 | - $language = WPSHOP_CURRENT_LOCALE; |
|
57 | - $icl_language = !empty( $_REQUEST['icl_post_language'] ) ? sanitize_text_field( $_REQUEST['icl_post_language'] ) : ''; |
|
55 | + $entity_type_id = wpshop_entities::get_entity_identifier_from_code(WPSHOP_NEWTYPE_IDENTIFIER_PRODUCT); |
|
56 | + $language = WPSHOP_CURRENT_LOCALE; |
|
57 | + $icl_language = !empty($_REQUEST['icl_post_language']) ? sanitize_text_field($_REQUEST['icl_post_language']) : ''; |
|
58 | 58 | |
59 | - if ( !empty($icl_language) ) { |
|
60 | - $query = $wpdb->prepare("SELECT locale FROM " . $wpdb->prefix . "icl_locale_map WHERE code = %s", $icl_language ); |
|
59 | + if (!empty($icl_language)) { |
|
60 | + $query = $wpdb->prepare("SELECT locale FROM " . $wpdb->prefix . "icl_locale_map WHERE code = %s", $icl_language); |
|
61 | 61 | $language = $wpdb->get_var($query); |
62 | 62 | } |
63 | 63 | |
64 | - $product_price = !empty( $_POST['product_price'] ) ? (array) $_POST['product_price'] : array(); |
|
64 | + $product_price = !empty($_POST['product_price']) ? (array)$_POST['product_price'] : array(); |
|
65 | 65 | |
66 | - if( !empty( $product_price ) ) { |
|
67 | - foreach( $product_price as $product_id => $price ) { |
|
66 | + if (!empty($product_price)) { |
|
67 | + foreach ($product_price as $product_id => $price) { |
|
68 | 68 | try { |
69 | - if( $price_piloting_option == 'TTC' ) |
|
70 | - wpshop_attributes::saveAttributeForEntity( array( 'decimal' => array( 'product_price' => sanitize_text_field( $price ) )), $entity_type_id, (int)$product_id, $language, 'wpshop_products' ); |
|
69 | + if ($price_piloting_option == 'TTC') |
|
70 | + wpshop_attributes::saveAttributeForEntity(array('decimal' => array('product_price' => sanitize_text_field($price))), $entity_type_id, (int)$product_id, $language, 'wpshop_products'); |
|
71 | 71 | else |
72 | - wpshop_attributes::saveAttributeForEntity( array( 'decimal' => array( 'price_ht' => sanitize_text_field( $price ) )), $entity_type_id, (int)$product_id, $language, 'wpshop_product' ); |
|
72 | + wpshop_attributes::saveAttributeForEntity(array('decimal' => array('price_ht' => sanitize_text_field($price))), $entity_type_id, (int)$product_id, $language, 'wpshop_product'); |
|
73 | 73 | |
74 | - wpshop_products::calculate_price( $product_id ); |
|
74 | + wpshop_products::calculate_price($product_id); |
|
75 | 75 | $consistent_product_number++; |
76 | 76 | |
77 | 77 | } catch (Exception $e) { |
@@ -79,14 +79,14 @@ discard block |
||
79 | 79 | } |
80 | 80 | } |
81 | 81 | |
82 | - $response['template_number'] = __( sprintf( 'Number of processed product : %d/%d', $consistent_product_number, $inconsistent_product_number ), 'wps-product' ); |
|
82 | + $response['template_number'] = __(sprintf('Number of processed product : %d/%d', $consistent_product_number, $inconsistent_product_number), 'wps-product'); |
|
83 | 83 | |
84 | 84 | $list_product = wps_product_ctr::get_inconsistent_product(); |
85 | 85 | ob_start(); |
86 | - require( wpshop_tools::get_template_part( WPS_PRODUCT_DIR, WPS_PRODUCT_TEMPLATES_MAIN_DIR, "backend", "product_check_data") ); |
|
86 | + require(wpshop_tools::get_template_part(WPS_PRODUCT_DIR, WPS_PRODUCT_TEMPLATES_MAIN_DIR, "backend", "product_check_data")); |
|
87 | 87 | $response['template'] = ob_get_clean(); |
88 | 88 | |
89 | - wp_die( json_encode( $response ) ); |
|
89 | + wp_die(json_encode($response)); |
|
90 | 90 | } |
91 | 91 | } |
92 | 92 |
@@ -1,4 +1,6 @@ discard block |
||
1 | -<?php if ( !defined( 'ABSPATH' ) ) exit; |
|
1 | +<?php if ( !defined( 'ABSPATH' ) ) { |
|
2 | + exit; |
|
3 | +} |
|
2 | 4 | class wps_product_ajax_ctr_01 { |
3 | 5 | public function __construct() { |
4 | 6 | add_action( 'wp_ajax_checking_products_values', array( &$this, 'ajax_render_inconsistent_product_price' ) ); |
@@ -14,8 +16,9 @@ discard block |
||
14 | 16 | public function ajax_render_inconsistent_product_price() { |
15 | 17 | $_wponce = !empty( $_REQUEST['_wpnonce'] ) ? sanitize_text_field( $_REQUEST['_wpnonce'] ) : ''; |
16 | 18 | |
17 | - if ( !wp_verify_nonce( $_wpnonce, 'ajax_render_inconsistent_product_price' ) ) |
|
18 | - wp_die(); |
|
19 | + if ( !wp_verify_nonce( $_wpnonce, 'ajax_render_inconsistent_product_price' ) ) { |
|
20 | + wp_die(); |
|
21 | + } |
|
19 | 22 | |
20 | 23 | $list_product = wps_product_ctr::get_inconsistent_product(); |
21 | 24 | |
@@ -41,8 +44,9 @@ discard block |
||
41 | 44 | public function ajax_save_product_price() { |
42 | 45 | $_wponce = !empty( $_REQUEST['_wpnonce'] ) ? sanitize_text_field( $_REQUEST['_wpnonce'] ) : ''; |
43 | 46 | |
44 | - if ( !wp_verify_nonce( $_wpnonce, 'ajax_save_product_price' ) ) |
|
45 | - wp_die(); |
|
47 | + if ( !wp_verify_nonce( $_wpnonce, 'ajax_save_product_price' ) ) { |
|
48 | + wp_die(); |
|
49 | + } |
|
46 | 50 | |
47 | 51 | header( 'Content-Type: application/json' ); |
48 | 52 | $response = array(); |
@@ -66,10 +70,11 @@ discard block |
||
66 | 70 | if( !empty( $product_price ) ) { |
67 | 71 | foreach( $product_price as $product_id => $price ) { |
68 | 72 | try { |
69 | - if( $price_piloting_option == 'TTC' ) |
|
70 | - wpshop_attributes::saveAttributeForEntity( array( 'decimal' => array( 'product_price' => sanitize_text_field( $price ) )), $entity_type_id, (int)$product_id, $language, 'wpshop_products' ); |
|
71 | - else |
|
72 | - wpshop_attributes::saveAttributeForEntity( array( 'decimal' => array( 'price_ht' => sanitize_text_field( $price ) )), $entity_type_id, (int)$product_id, $language, 'wpshop_product' ); |
|
73 | + if( $price_piloting_option == 'TTC' ) { |
|
74 | + wpshop_attributes::saveAttributeForEntity( array( 'decimal' => array( 'product_price' => sanitize_text_field( $price ) )), $entity_type_id, (int)$product_id, $language, 'wpshop_products' ); |
|
75 | + } else { |
|
76 | + wpshop_attributes::saveAttributeForEntity( array( 'decimal' => array( 'price_ht' => sanitize_text_field( $price ) )), $entity_type_id, (int)$product_id, $language, 'wpshop_product' ); |
|
77 | + } |
|
73 | 78 | |
74 | 79 | wpshop_products::calculate_price( $product_id ); |
75 | 80 | $consistent_product_number++; |
@@ -257,8 +257,6 @@ |
||
257 | 257 | * |
258 | 258 | * @param int $product_id L'id du produit |
259 | 259 | * @param string $type Peut être varchar, integer, text, options, decimal, datetime |
260 | - * @param string $attribute_name Le code d'un attribut |
|
261 | - * @param string $attribute_value La valeur à mêttre à jour |
|
262 | 260 | */ |
263 | 261 | public function update_the_attribute_for_product($product_id, $type, $name_attribute, $value_attribute) { |
264 | 262 | global $wpdb; |
@@ -1,4 +1,4 @@ discard block |
||
1 | -<?php if ( !defined( 'ABSPATH' ) ) exit; |
|
1 | +<?php if (!defined('ABSPATH')) exit; |
|
2 | 2 | class wps_product_ctr { |
3 | 3 | |
4 | 4 | /** |
@@ -8,16 +8,16 @@ discard block |
||
8 | 8 | * @return void |
9 | 9 | */ |
10 | 10 | function __construct() { |
11 | - add_action( 'admin_enqueue_scripts', array( &$this, 'callback_admin_enqueue_scripts' ) ); |
|
11 | + add_action('admin_enqueue_scripts', array(&$this, 'callback_admin_enqueue_scripts')); |
|
12 | 12 | |
13 | - add_shortcode( 'wps_product_caracteristics', array( $this, 'display_product_caracteristics_tab' ) ); |
|
14 | - add_shortcode( 'wpshop_product_caracteristics', array( $this, 'display_product_caracteristics_tab' ) ); |
|
15 | - add_shortcode( 'wps_product_discount_chip', array( $this, 'display_discount_chip' ) ); |
|
16 | - add_shortcode( 'wpshop_product_discount_chip', array( $this, 'display_discount_chip' ) ); |
|
13 | + add_shortcode('wps_product_caracteristics', array($this, 'display_product_caracteristics_tab')); |
|
14 | + add_shortcode('wpshop_product_caracteristics', array($this, 'display_product_caracteristics_tab')); |
|
15 | + add_shortcode('wps_product_discount_chip', array($this, 'display_discount_chip')); |
|
16 | + add_shortcode('wpshop_product_discount_chip', array($this, 'display_discount_chip')); |
|
17 | 17 | |
18 | - add_shortcode( 'wpshop_product_title', array( $this, 'wpshop_product_title' ) ); |
|
19 | - add_shortcode( 'wpshop_product_content', array( $this, 'wpshop_product_content' ) ); |
|
20 | - add_shortcode( 'wpshop_product_thumbnail', array( $this, 'wpshop_product_thumbnail' ) ); |
|
18 | + add_shortcode('wpshop_product_title', array($this, 'wpshop_product_title')); |
|
19 | + add_shortcode('wpshop_product_content', array($this, 'wpshop_product_content')); |
|
20 | + add_shortcode('wpshop_product_thumbnail', array($this, 'wpshop_product_thumbnail')); |
|
21 | 21 | } |
22 | 22 | |
23 | 23 | /** |
@@ -28,14 +28,14 @@ discard block |
||
28 | 28 | $module_folder = WPS_PRODUCT_PATH . '/modules/'; |
29 | 29 | |
30 | 30 | /** Check if the defined directory exists for reading and including the different modules */ |
31 | - if( is_dir( $module_folder ) ) { |
|
32 | - $parent_folder_content = scandir( $module_folder ); |
|
33 | - foreach ( $parent_folder_content as $folder ) { |
|
34 | - if ( $folder && substr( $folder, 0, 1) != '.' && is_dir( $folder ) ) { |
|
35 | - $child_folder_content = scandir( $module_folder . $folder ); |
|
36 | - if ( file_exists( $module_folder . $folder . '/' . $folder . '.php') ) { |
|
37 | - $f = $module_folder . $folder . '/' . $folder . '.php'; |
|
38 | - include( $f ); |
|
31 | + if (is_dir($module_folder)) { |
|
32 | + $parent_folder_content = scandir($module_folder); |
|
33 | + foreach ($parent_folder_content as $folder) { |
|
34 | + if ($folder && substr($folder, 0, 1) != '.' && is_dir($folder)) { |
|
35 | + $child_folder_content = scandir($module_folder . $folder); |
|
36 | + if (file_exists($module_folder . $folder . '/' . $folder . '.php')) { |
|
37 | + $f = $module_folder . $folder . '/' . $folder . '.php'; |
|
38 | + include($f); |
|
39 | 39 | } |
40 | 40 | } |
41 | 41 | } |
@@ -43,7 +43,7 @@ discard block |
||
43 | 43 | } |
44 | 44 | |
45 | 45 | public function callback_admin_enqueue_scripts() { |
46 | - wp_enqueue_script( 'wps_product_js', WPS_PRODUCT_URL . '/asset/js/backend.js', array( "jquery", "jquery-form" ), WPS_PRODUCT_VERSION ); |
|
46 | + wp_enqueue_script('wps_product_js', WPS_PRODUCT_URL . '/asset/js/backend.js', array("jquery", "jquery-form"), WPS_PRODUCT_VERSION); |
|
47 | 47 | } |
48 | 48 | |
49 | 49 | /** |
@@ -51,14 +51,14 @@ discard block |
||
51 | 51 | * @param array $args |
52 | 52 | * @return string |
53 | 53 | */ |
54 | - function display_product_caracteristics_tab( $args ) { |
|
54 | + function display_product_caracteristics_tab($args) { |
|
55 | 55 | $output = ''; |
56 | - if( !empty($args) && !empty($args['pid']) ) { |
|
56 | + if (!empty($args) && !empty($args['pid'])) { |
|
57 | 57 | $wps_product_mdl = new wps_product_mdl(); |
58 | - $product_atts_def = $wps_product_mdl->get_product_atts_def( $args['pid'] ); |
|
59 | - if( !empty($product_atts_def) ) { |
|
58 | + $product_atts_def = $wps_product_mdl->get_product_atts_def($args['pid']); |
|
59 | + if (!empty($product_atts_def)) { |
|
60 | 60 | ob_start(); |
61 | - require( wpshop_tools::get_template_part( WPS_PRODUCT_DIR, WPS_PRODUCT_TEMPLATES_MAIN_DIR, "frontend", "product_caracteristics_tab") ); |
|
61 | + require(wpshop_tools::get_template_part(WPS_PRODUCT_DIR, WPS_PRODUCT_TEMPLATES_MAIN_DIR, "frontend", "product_caracteristics_tab")); |
|
62 | 62 | $output = ob_get_contents(); |
63 | 63 | ob_end_clean(); |
64 | 64 | } |
@@ -71,14 +71,14 @@ discard block |
||
71 | 71 | * @param array $args |
72 | 72 | * @return string |
73 | 73 | */ |
74 | - function display_discount_chip( $args ) { |
|
74 | + function display_discount_chip($args) { |
|
75 | 75 | $output = ''; |
76 | - if( !empty($args) && !empty($args['pid']) ) { |
|
76 | + if (!empty($args) && !empty($args['pid'])) { |
|
77 | 77 | $wps_price = new wpshop_prices(); |
78 | - $discount_data = wpshop_prices::check_discount_for_product( $args['pid'] ); |
|
79 | - if( !empty($discount_data) ) { |
|
78 | + $discount_data = wpshop_prices::check_discount_for_product($args['pid']); |
|
79 | + if (!empty($discount_data)) { |
|
80 | 80 | ob_start(); |
81 | - require( wpshop_tools::get_template_part( WPS_PRODUCT_DIR, WPS_PRODUCT_TEMPLATES_MAIN_DIR, "frontend", "product_discount_chip") ); |
|
81 | + require(wpshop_tools::get_template_part(WPS_PRODUCT_DIR, WPS_PRODUCT_TEMPLATES_MAIN_DIR, "frontend", "product_discount_chip")); |
|
82 | 82 | $output = ob_get_contents(); |
83 | 83 | ob_end_clean(); |
84 | 84 | } |
@@ -96,36 +96,36 @@ discard block |
||
96 | 96 | */ |
97 | 97 | function check_stock($product_id, $cart_asked_quantity, $combined_variation_id = '') { |
98 | 98 | // Checking if combined variation ID exist and it is a simple option |
99 | - if( !empty($combined_variation_id) && ( strpos($combined_variation_id, '__') !== false ) ) { |
|
100 | - $var_id = explode( '__', $combined_variation_id); |
|
99 | + if (!empty($combined_variation_id) && (strpos($combined_variation_id, '__') !== false)) { |
|
100 | + $var_id = explode('__', $combined_variation_id); |
|
101 | 101 | $combined_variation_id = $var_id[1]; |
102 | 102 | } |
103 | 103 | |
104 | 104 | |
105 | - if ( !empty($combined_variation_id) ) { |
|
105 | + if (!empty($combined_variation_id)) { |
|
106 | 106 | |
107 | - $variation_metadata = get_post_meta( $combined_variation_id, '_wpshop_product_metadata', true ); |
|
108 | - if ( isset($variation_metadata['product_stock']) ) { |
|
107 | + $variation_metadata = get_post_meta($combined_variation_id, '_wpshop_product_metadata', true); |
|
108 | + if (isset($variation_metadata['product_stock'])) { |
|
109 | 109 | $product_id = $combined_variation_id; |
110 | 110 | } |
111 | 111 | } |
112 | 112 | $product_data = wpshop_products::get_product_data($product_id, false, '"publish"'); |
113 | 113 | |
114 | - if(!empty($product_data)) { |
|
114 | + if (!empty($product_data)) { |
|
115 | 115 | $manage_stock = !empty($product_data['manage_stock']) ? $product_data['manage_stock'] : ''; |
116 | 116 | |
117 | - $product_post_type = get_post_type( $product_id ); |
|
117 | + $product_post_type = get_post_type($product_id); |
|
118 | 118 | |
119 | - if ( $product_post_type == WPSHOP_NEWTYPE_IDENTIFIER_PRODUCT_VARIATION ) { |
|
120 | - $parent_def = wpshop_products::get_parent_variation( $product_id ); |
|
121 | - if ( !empty($parent_def) && !empty($parent_def['parent_post']) ) { |
|
119 | + if ($product_post_type == WPSHOP_NEWTYPE_IDENTIFIER_PRODUCT_VARIATION) { |
|
120 | + $parent_def = wpshop_products::get_parent_variation($product_id); |
|
121 | + if (!empty($parent_def) && !empty($parent_def['parent_post'])) { |
|
122 | 122 | $parent_post = $parent_def['parent_post']; |
123 | 123 | $parent_product_data = wpshop_products::get_product_data($parent_post->ID); |
124 | - $manage_stock = empty( $manage_stock ) ? $parent_product_data['manage_stock'] : $manage_stock; |
|
124 | + $manage_stock = empty($manage_stock) ? $parent_product_data['manage_stock'] : $manage_stock; |
|
125 | 125 | } |
126 | 126 | } |
127 | - $manage_stock_is_activated = (!empty($manage_stock) && ( strtolower(__($manage_stock, 'wpshop')) == strtolower(__('Yes', 'wpshop')) )) ? true : false; |
|
128 | - $the_qty_is_in_stock = ( !empty($product_data['product_stock']) && $product_data['product_stock'] >= $cart_asked_quantity ) ? true : false ; |
|
127 | + $manage_stock_is_activated = (!empty($manage_stock) && (strtolower(__($manage_stock, 'wpshop')) == strtolower(__('Yes', 'wpshop')))) ? true : false; |
|
128 | + $the_qty_is_in_stock = (!empty($product_data['product_stock']) && $product_data['product_stock'] >= $cart_asked_quantity) ? true : false; |
|
129 | 129 | |
130 | 130 | if (($manage_stock_is_activated && $the_qty_is_in_stock) OR !$manage_stock_is_activated) { |
131 | 131 | return true; |
@@ -138,18 +138,18 @@ discard block |
||
138 | 138 | } |
139 | 139 | |
140 | 140 | public static function get_inconsistent_product() { |
141 | - $price_piloting_option = get_option( 'wpshop_shop_price_piloting' ); |
|
141 | + $price_piloting_option = get_option('wpshop_shop_price_piloting'); |
|
142 | 142 | |
143 | - $entity_id = wpshop_entities::get_entity_identifier_from_code( 'wpshop_product' ); |
|
143 | + $entity_id = wpshop_entities::get_entity_identifier_from_code('wpshop_product'); |
|
144 | 144 | |
145 | - $attribute_def = wpshop_attributes::getElement( ( $price_piloting_option == 'TTC' ) ? 'product_price' : 'price_ht', "'valid'", 'code' ); |
|
146 | - $attribute_id = $attribute_def->id; |
|
145 | + $attribute_def = wpshop_attributes::getElement(($price_piloting_option == 'TTC') ? 'product_price' : 'price_ht', "'valid'", 'code'); |
|
146 | + $attribute_id = $attribute_def->id; |
|
147 | 147 | |
148 | 148 | global $wpdb; |
149 | 149 | |
150 | 150 | $wpdb->query('SET SESSION group_concat_max_len = 10000'); |
151 | 151 | |
152 | - $query = " |
|
152 | + $query = " |
|
153 | 153 | SELECT post.ID, post.post_title, attr_val_dec.value as price_attribute, GROUP_CONCAT(postmeta.meta_key, '&sep&', postmeta.meta_value, '&&' ORDER BY postmeta.meta_key) as price |
154 | 154 | FROM $wpdb->posts as post |
155 | 155 | JOIN $wpdb->postmeta as postmeta |
@@ -162,15 +162,15 @@ discard block |
||
162 | 162 | AND postmeta.meta_key IN( '_product_price', '_wps_price_infos', '_wpshop_displayed_price', '_wpshop_product_metadata' ) |
163 | 163 | GROUP BY post.ID"; |
164 | 164 | |
165 | - $list_product = $wpdb->get_results( $wpdb->prepare( $query, array( $entity_id, $attribute_id ) ) ); |
|
165 | + $list_product = $wpdb->get_results($wpdb->prepare($query, array($entity_id, $attribute_id))); |
|
166 | 166 | |
167 | - if( !empty( $list_product ) ) { |
|
168 | - foreach( $list_product as $key_product => &$product ) { |
|
167 | + if (!empty($list_product)) { |
|
168 | + foreach ($list_product as $key_product => &$product) { |
|
169 | 169 | $product->price = explode('&&,', $product->price); |
170 | - if(!empty($product->price) && is_array($product->price)) { |
|
170 | + if (!empty($product->price) && is_array($product->price)) { |
|
171 | 171 | $array_price = array(); |
172 | - foreach($product->price as &$price) { |
|
173 | - if(strpos( $price, '&&' )) |
|
172 | + foreach ($product->price as &$price) { |
|
173 | + if (strpos($price, '&&')) |
|
174 | 174 | $price = substr($price, 0, -2); |
175 | 175 | |
176 | 176 | $tmp_price = explode('&sep&', $price); |
@@ -178,35 +178,35 @@ discard block |
||
178 | 178 | $price = maybe_unserialize($tmp_price[1]); |
179 | 179 | |
180 | 180 | /** _wpshop_product_metadata */ |
181 | - if( $key == '_wpshop_product_metadata' ) { |
|
182 | - $array_price[$key] = ( $price_piloting_option == 'TTC' ) ? $price['product_price'] : $price['price_ht']; |
|
181 | + if ($key == '_wpshop_product_metadata') { |
|
182 | + $array_price[$key] = ($price_piloting_option == 'TTC') ? $price['product_price'] : $price['price_ht']; |
|
183 | 183 | } |
184 | 184 | |
185 | 185 | /** _wps_price_infos */ |
186 | - if( $key == '_wps_price_infos' ) { |
|
187 | - $array_price[$key] = !empty( $price['PRODUCT_PRICE'] ) ? $price['PRODUCT_PRICE'] : '-'; |
|
186 | + if ($key == '_wps_price_infos') { |
|
187 | + $array_price[$key] = !empty($price['PRODUCT_PRICE']) ? $price['PRODUCT_PRICE'] : '-'; |
|
188 | 188 | } |
189 | 189 | |
190 | - if( $key == '_product_price' ) { |
|
191 | - $array_price[$key] = ( $price_piloting_option == 'TTC' ) ? $price : '-'; |
|
190 | + if ($key == '_product_price') { |
|
191 | + $array_price[$key] = ($price_piloting_option == 'TTC') ? $price : '-'; |
|
192 | 192 | } |
193 | 193 | |
194 | - if ( $key == '_wpshop_displayed_price' ) { |
|
194 | + if ($key == '_wpshop_displayed_price') { |
|
195 | 195 | $array_price[$key] = $price; |
196 | 196 | } |
197 | 197 | unset($price); |
198 | 198 | } |
199 | 199 | |
200 | - $array_meta_list = array( '_product_price', '_wps_price_infos', '_wpshop_displayed_price', '_wpshop_product_metadata', ); |
|
200 | + $array_meta_list = array('_product_price', '_wps_price_infos', '_wpshop_displayed_price', '_wpshop_product_metadata',); |
|
201 | 201 | |
202 | - foreach( $array_meta_list as $meta_list ) { |
|
203 | - if( !array_key_exists( $meta_list, $array_price ) ) { |
|
202 | + foreach ($array_meta_list as $meta_list) { |
|
203 | + if (!array_key_exists($meta_list, $array_price)) { |
|
204 | 204 | $array_price[$meta_list] = 0; |
205 | 205 | } |
206 | 206 | } |
207 | 207 | |
208 | 208 | $product->price = $array_price; |
209 | - if( $product->price_attribute === $product->price['_wpshop_product_metadata'] ) { |
|
209 | + if ($product->price_attribute === $product->price['_wpshop_product_metadata']) { |
|
210 | 210 | unset($list_product[$key_product]); |
211 | 211 | } |
212 | 212 | |
@@ -224,13 +224,13 @@ discard block |
||
224 | 224 | * @param int $pid L'id du produit |
225 | 225 | * @return WP_Post |
226 | 226 | */ |
227 | - public function get_thumbnail ( $pid ) { |
|
228 | - if( empty( $pid ) ) |
|
227 | + public function get_thumbnail($pid) { |
|
228 | + if (empty($pid)) |
|
229 | 229 | return null; |
230 | 230 | |
231 | - $thumbnail_id = get_post_meta( $pid, '_thumbnail_id', true ); |
|
231 | + $thumbnail_id = get_post_meta($pid, '_thumbnail_id', true); |
|
232 | 232 | |
233 | - if( empty( $thumbnail_id ) ) |
|
233 | + if (empty($thumbnail_id)) |
|
234 | 234 | return null; |
235 | 235 | |
236 | 236 | return $thumbnail_id; |
@@ -243,9 +243,9 @@ discard block |
||
243 | 243 | * @param array $array_data The array data [integer][barcode] = 0111100001 |
244 | 244 | */ |
245 | 245 | public function update_attributes_for_product($product_id, $array_data) { |
246 | - if(!empty($array_data)) { |
|
247 | - foreach($array_data as $type => $array) { |
|
248 | - foreach($array as $name_attribute => $value_attribute) { |
|
246 | + if (!empty($array_data)) { |
|
247 | + foreach ($array_data as $type => $array) { |
|
248 | + foreach ($array as $name_attribute => $value_attribute) { |
|
249 | 249 | $this->update_the_attribute_for_product($product_id, $type, $name_attribute, $value_attribute); |
250 | 250 | } |
251 | 251 | } |
@@ -269,7 +269,7 @@ discard block |
||
269 | 269 | $attribute_id = $wpdb->get_var($wpdb->prepare('SELECT id FROM ' . WPSHOP_DBT_ATTRIBUTE . ' WHERE code="%s"', array($name_attribute))); |
270 | 270 | |
271 | 271 | /** On vérifie s'il existe si c'est le cas, on update sinon on insert */ |
272 | - if(count($wpdb->get_row($wpdb->prepare('SELECT value_id FROM ' . WPSHOP_DBT_ATTRIBUTE . '_value_' . $type . ' WHERE entity_id=%d AND attribute_id IN(SELECT id FROM ' . WPSHOP_DBT_ATTRIBUTE . ' WHERE code="%s")', array($product_id, $name_attribute)))) > 0) { |
|
272 | + if (count($wpdb->get_row($wpdb->prepare('SELECT value_id FROM ' . WPSHOP_DBT_ATTRIBUTE . '_value_' . $type . ' WHERE entity_id=%d AND attribute_id IN(SELECT id FROM ' . WPSHOP_DBT_ATTRIBUTE . ' WHERE code="%s")', array($product_id, $name_attribute)))) > 0) { |
|
273 | 273 | $wpdb->query( |
274 | 274 | $wpdb->prepare('UPDATE ' . WPSHOP_DBT_ATTRIBUTE . '_value_' . $type . ' SET value="%s" WHERE entity_id=%d AND attribute_id=%d', |
275 | 275 | array($value_attribute, $product_id, $attribute_id) |
@@ -295,13 +295,13 @@ discard block |
||
295 | 295 | * @param array $args [ 'id' ] L'id du produit |
296 | 296 | * @return string |
297 | 297 | */ |
298 | - public function wpshop_product_title( $args ) { |
|
299 | - $output = __( 'No product has been found.', 'wpshop' ); |
|
298 | + public function wpshop_product_title($args) { |
|
299 | + $output = __('No product has been found.', 'wpshop'); |
|
300 | 300 | |
301 | - if ( !empty( $args ) && !empty( $args['pid'] ) ) { |
|
301 | + if (!empty($args) && !empty($args['pid'])) { |
|
302 | 302 | global $wpdb; |
303 | 303 | $query = "SELECT post_title FROM {$wpdb->posts} WHERE ID = %d"; |
304 | - $output = $wpdb->get_var( $wpdb->prepare( $query, $args['pid'] ) ); |
|
304 | + $output = $wpdb->get_var($wpdb->prepare($query, $args['pid'])); |
|
305 | 305 | } |
306 | 306 | |
307 | 307 | return $output; |
@@ -312,16 +312,16 @@ discard block |
||
312 | 312 | * @param array $args [ 'id' ] L'id du produit |
313 | 313 | * @return string |
314 | 314 | */ |
315 | - public function wpshop_product_content( $args ) { |
|
316 | - $output = __( 'No product has been found.', 'wpshop' ); |
|
315 | + public function wpshop_product_content($args) { |
|
316 | + $output = __('No product has been found.', 'wpshop'); |
|
317 | 317 | |
318 | - if ( !empty( $args ) && !empty( $args['pid'] ) ) { |
|
318 | + if (!empty($args) && !empty($args['pid'])) { |
|
319 | 319 | global $wpdb; |
320 | 320 | $query = "SELECT post_content FROM {$wpdb->posts} WHERE ID = %d"; |
321 | - $output = $wpdb->get_var( $wpdb->prepare( $query, $args['pid'] ) ); |
|
321 | + $output = $wpdb->get_var($wpdb->prepare($query, $args['pid'])); |
|
322 | 322 | } |
323 | 323 | |
324 | - return nl2br( $output ); |
|
324 | + return nl2br($output); |
|
325 | 325 | } |
326 | 326 | |
327 | 327 | /** |
@@ -331,12 +331,12 @@ discard block |
||
331 | 331 | * [ size ] La taille de l'image. Peut être défini comme : small, medium ou full |
332 | 332 | * @return string |
333 | 333 | */ |
334 | - public function wpshop_product_thumbnail( $args ) { |
|
334 | + public function wpshop_product_thumbnail($args) { |
|
335 | 335 | $url_thumbnail = WPSHOP_DEFAULT_PRODUCT_PICTURE; |
336 | 336 | $size = '20%'; |
337 | 337 | |
338 | - if ( !empty( $args ) && !empty( $args['size'] ) ) { |
|
339 | - switch ( $args['size'] ) { |
|
338 | + if (!empty($args) && !empty($args['size'])) { |
|
339 | + switch ($args['size']) { |
|
340 | 340 | case 'small': |
341 | 341 | $size = '20%'; |
342 | 342 | break; |
@@ -351,20 +351,20 @@ discard block |
||
351 | 351 | } |
352 | 352 | } |
353 | 353 | |
354 | - if ( !empty( $args ) && !empty( $args['pid'] ) ) { |
|
355 | - $thumbnail_id = $this->get_thumbnail( $args['pid'] ); |
|
354 | + if (!empty($args) && !empty($args['pid'])) { |
|
355 | + $thumbnail_id = $this->get_thumbnail($args['pid']); |
|
356 | 356 | |
357 | - if( !empty( $thumbnail_id ) ) { |
|
358 | - $attachment = get_post( $thumbnail_id ); |
|
357 | + if (!empty($thumbnail_id)) { |
|
358 | + $attachment = get_post($thumbnail_id); |
|
359 | 359 | |
360 | - if( !empty( $attachment ) && !empty( $attachment->guid ) ) { |
|
360 | + if (!empty($attachment) && !empty($attachment->guid)) { |
|
361 | 361 | $url_thumbnail = $attachment->guid; |
362 | 362 | } |
363 | 363 | } |
364 | 364 | } |
365 | 365 | |
366 | 366 | ob_start(); |
367 | - require( wpshop_tools::get_template_part( WPS_PRODUCT_DIR, WPS_PRODUCT_TEMPLATES_MAIN_DIR, "frontend", "product_thumbnail" ) ); |
|
367 | + require(wpshop_tools::get_template_part(WPS_PRODUCT_DIR, WPS_PRODUCT_TEMPLATES_MAIN_DIR, "frontend", "product_thumbnail")); |
|
368 | 368 | $output = ob_get_clean(); |
369 | 369 | |
370 | 370 | return $output; |
@@ -1,4 +1,6 @@ discard block |
||
1 | -<?php if ( !defined( 'ABSPATH' ) ) exit; |
|
1 | +<?php if ( !defined( 'ABSPATH' ) ) { |
|
2 | + exit; |
|
3 | +} |
|
2 | 4 | class wps_product_ctr { |
3 | 5 | |
4 | 6 | /** |
@@ -129,8 +131,7 @@ discard block |
||
129 | 131 | |
130 | 132 | if (($manage_stock_is_activated && $the_qty_is_in_stock) OR !$manage_stock_is_activated) { |
131 | 133 | return true; |
132 | - } |
|
133 | - else { |
|
134 | + } else { |
|
134 | 135 | return __('You cannot add that amount to the cart since there is not enough stock.', 'wpshop'); |
135 | 136 | } |
136 | 137 | } |
@@ -170,8 +171,9 @@ discard block |
||
170 | 171 | if(!empty($product->price) && is_array($product->price)) { |
171 | 172 | $array_price = array(); |
172 | 173 | foreach($product->price as &$price) { |
173 | - if(strpos( $price, '&&' )) |
|
174 | - $price = substr($price, 0, -2); |
|
174 | + if(strpos( $price, '&&' )) { |
|
175 | + $price = substr($price, 0, -2); |
|
176 | + } |
|
175 | 177 | |
176 | 178 | $tmp_price = explode('&sep&', $price); |
177 | 179 | $key = $tmp_price[0]; |
@@ -225,13 +227,15 @@ discard block |
||
225 | 227 | * @return WP_Post |
226 | 228 | */ |
227 | 229 | public function get_thumbnail ( $pid ) { |
228 | - if( empty( $pid ) ) |
|
229 | - return null; |
|
230 | + if( empty( $pid ) ) { |
|
231 | + return null; |
|
232 | + } |
|
230 | 233 | |
231 | 234 | $thumbnail_id = get_post_meta( $pid, '_thumbnail_id', true ); |
232 | 235 | |
233 | - if( empty( $thumbnail_id ) ) |
|
234 | - return null; |
|
236 | + if( empty( $thumbnail_id ) ) { |
|
237 | + return null; |
|
238 | + } |
|
235 | 239 | |
236 | 240 | return $thumbnail_id; |
237 | 241 | } |
@@ -275,8 +279,7 @@ discard block |
||
275 | 279 | array($value_attribute, $product_id, $attribute_id) |
276 | 280 | ) |
277 | 281 | ); |
278 | - } |
|
279 | - else { |
|
282 | + } else { |
|
280 | 283 | /** Insert avec toutes les informations requise */ |
281 | 284 | $wpdb->insert(WPSHOP_DBT_ATTRIBUTE . '_value_' . $type, array( |
282 | 285 | 'attribute_id' => $attribute_id, |
@@ -158,6 +158,7 @@ discard block |
||
158 | 158 | /** |
159 | 159 | * Display pagination |
160 | 160 | * |
161 | + * @param integer $current_page |
|
161 | 162 | * @return string |
162 | 163 | */ |
163 | 164 | function get_products_pagination( $current_page, $attribute_set_id = 1 ) { |
@@ -201,6 +202,9 @@ discard block |
||
201 | 202 | return $output; |
202 | 203 | } |
203 | 204 | |
205 | + /** |
|
206 | + * @param integer $product_id |
|
207 | + */ |
|
204 | 208 | function wps_product_attached_files( $product_id ) { |
205 | 209 | global $wpdb; |
206 | 210 | $output = ''; |
@@ -352,8 +352,8 @@ discard block |
||
352 | 352 | } |
353 | 353 | |
354 | 354 | /** |
355 | - * Delete product list |
|
356 | - **/ |
|
355 | + * Delete product list |
|
356 | + **/ |
|
357 | 357 | function wps_mass_delete_file() { |
358 | 358 | $status = false; |
359 | 359 | $file_id = (!empty($_POST['file_id']) ) ? intval($_POST['file_id']) : null; |
@@ -366,8 +366,8 @@ discard block |
||
366 | 366 | } |
367 | 367 | |
368 | 368 | /** |
369 | - * Update product files list |
|
370 | - */ |
|
369 | + * Update product files list |
|
370 | + */ |
|
371 | 371 | function wps_mass_edit_update_files_list() { |
372 | 372 | $status = false; $response = ''; |
373 | 373 | $product_id = ( !empty($_POST['product_id']) ) ? intval($_POST['product_id']) : null; |
@@ -1,4 +1,4 @@ discard block |
||
1 | -<?php if ( !defined( 'ABSPATH' ) ) exit; |
|
1 | +<?php if (!defined('ABSPATH')) exit; |
|
2 | 2 | /** |
3 | 3 | * Main controller file for product mass modification module |
4 | 4 | * |
@@ -19,47 +19,47 @@ discard block |
||
19 | 19 | */ |
20 | 20 | function __construct() { |
21 | 21 | // Add submenu |
22 | - add_action('admin_menu', array( $this, 'register_mass_products_edit_submenu' ), 350 ); |
|
22 | + add_action('admin_menu', array($this, 'register_mass_products_edit_submenu'), 350); |
|
23 | 23 | |
24 | 24 | // Declare Styles and JS Files |
25 | - add_action( 'admin_enqueue_scripts', array( $this, 'add_admin_scripts') ); |
|
26 | - add_action( 'admin_enqueue_scripts', array( $this, 'admin_css' ) ); |
|
27 | - add_action( 'admin_print_scripts', array( $this, 'admin_print_scripts' ) ); |
|
25 | + add_action('admin_enqueue_scripts', array($this, 'add_admin_scripts')); |
|
26 | + add_action('admin_enqueue_scripts', array($this, 'admin_css')); |
|
27 | + add_action('admin_print_scripts', array($this, 'admin_print_scripts')); |
|
28 | 28 | |
29 | 29 | // Trigger ajax action |
30 | - add_action( 'wp_ajax_wps_mass_edit_change_page', array( $this, 'wps_mass_edit_change_page') ); |
|
31 | - add_action( 'wp_ajax_wps_mass_edit_product_save_action', array( $this, 'wps_save_product_quick_interface') ); |
|
32 | - add_action( 'wp_ajax_wps_mass_interface_new_product_creation', array( $this, 'wps_mass_interface_new_product_creation' ) ); |
|
33 | - add_action( 'wp_ajax_wps_mass_delete_file', array( $this, 'wps_mass_delete_file' ) ); |
|
34 | - add_action( 'wp_ajax_wps_mass_edit_update_files_list', array( $this, 'wps_mass_edit_update_files_list' ) ); |
|
30 | + add_action('wp_ajax_wps_mass_edit_change_page', array($this, 'wps_mass_edit_change_page')); |
|
31 | + add_action('wp_ajax_wps_mass_edit_product_save_action', array($this, 'wps_save_product_quick_interface')); |
|
32 | + add_action('wp_ajax_wps_mass_interface_new_product_creation', array($this, 'wps_mass_interface_new_product_creation')); |
|
33 | + add_action('wp_ajax_wps_mass_delete_file', array($this, 'wps_mass_delete_file')); |
|
34 | + add_action('wp_ajax_wps_mass_edit_update_files_list', array($this, 'wps_mass_edit_update_files_list')); |
|
35 | 35 | // add_action( 'wap_ajax_wps_mass_delete_post', array( $this, 'wps_mass_delete_post' ) ); |
36 | 36 | } |
37 | 37 | |
38 | 38 | function register_mass_products_edit_submenu() { |
39 | - add_submenu_page( 'edit.php?post_type=wpshop_product', __('Mass product edit', 'wpshop' ), __('Mass product edit', 'wpshop'), 'manage_options', 'mass_edit_interface', array($this, 'wps_display_mass_edit_interface')); |
|
39 | + add_submenu_page('edit.php?post_type=wpshop_product', __('Mass product edit', 'wpshop'), __('Mass product edit', 'wpshop'), 'manage_options', 'mass_edit_interface', array($this, 'wps_display_mass_edit_interface')); |
|
40 | 40 | } |
41 | 41 | |
42 | 42 | /** |
43 | 43 | * Define the aministration pat styles |
44 | 44 | */ |
45 | 45 | function admin_css() { |
46 | - wp_enqueue_style( 'wps-mass-product-update', WPS_PDCT_MASS_URL.'/assets/css/backend.css', '', WPS_PDCT_MASS_VERSION); |
|
46 | + wp_enqueue_style('wps-mass-product-update', WPS_PDCT_MASS_URL . '/assets/css/backend.css', '', WPS_PDCT_MASS_VERSION); |
|
47 | 47 | } |
48 | 48 | |
49 | 49 | /** |
50 | 50 | * Add javascript to administration |
51 | 51 | */ |
52 | 52 | function add_admin_scripts() { |
53 | - wp_enqueue_script( 'admin_product_js', WPS_PDCT_MASS_URL.'/assets/js/backend.js', '', WPS_PDCT_MASS_VERSION, true); |
|
53 | + wp_enqueue_script('admin_product_js', WPS_PDCT_MASS_URL . '/assets/js/backend.js', '', WPS_PDCT_MASS_VERSION, true); |
|
54 | 54 | wp_enqueue_media(); |
55 | 55 | } |
56 | 56 | |
57 | 57 | function admin_print_scripts() { |
58 | 58 | $output = '<script type="text/javascript">'; |
59 | - $output .= 'var WPS_MASS_ERROR_INIT = "' .__( 'An error has occured, the page cannot be initialized', 'wpshop' ). '";'; |
|
60 | - $output .= 'var WPS_MASS_ERROR_PRODUCT_CREATION = "' .__( 'An error was occured, the new product cannot be created', 'wpshop' ). '";'; |
|
61 | - $output .= 'var WPS_MASS_ERROR_PRODUCT_SAVE = "' .__( 'You must select product to save', 'wpshop' ). '";'; |
|
62 | - $output .= 'var WPS_MASS_CONFIRMATION_NEW_PRODUCT = "' .__( 'You will save selected products, are you sure to continue ?', 'wpshop' ). '";'; |
|
59 | + $output .= 'var WPS_MASS_ERROR_INIT = "' . __('An error has occured, the page cannot be initialized', 'wpshop') . '";'; |
|
60 | + $output .= 'var WPS_MASS_ERROR_PRODUCT_CREATION = "' . __('An error was occured, the new product cannot be created', 'wpshop') . '";'; |
|
61 | + $output .= 'var WPS_MASS_ERROR_PRODUCT_SAVE = "' . __('You must select product to save', 'wpshop') . '";'; |
|
62 | + $output .= 'var WPS_MASS_CONFIRMATION_NEW_PRODUCT = "' . __('You will save selected products, are you sure to continue ?', 'wpshop') . '";'; |
|
63 | 63 | $output .= '</script>'; |
64 | 64 | echo $output; |
65 | 65 | } |
@@ -71,15 +71,15 @@ discard block |
||
71 | 71 | * |
72 | 72 | * @return array |
73 | 73 | */ |
74 | - function check_attribute_to_display_for_quick_add( $attribute_list, $quick_add_form_attributes = array() ) { |
|
75 | - |
|
76 | - if ( !empty( $attribute_list ) ) { |
|
77 | - foreach( $attribute_list as $attributes_group ) { |
|
78 | - foreach( $attributes_group as $attributes_sections ) { |
|
79 | - if( !empty($attributes_sections) && !empty($attributes_sections['attributes']) ) { |
|
80 | - foreach( $attributes_sections['attributes'] as $attribute_id => $att_def ) { |
|
81 | - if( !empty($att_def) && !empty($att_def['is_used_in_quick_add_form']) && $att_def['is_used_in_quick_add_form'] == 'yes' ) { |
|
82 | - $quick_add_form_attributes[ $attribute_id ] = $att_def; |
|
74 | + function check_attribute_to_display_for_quick_add($attribute_list, $quick_add_form_attributes = array()) { |
|
75 | + |
|
76 | + if (!empty($attribute_list)) { |
|
77 | + foreach ($attribute_list as $attributes_group) { |
|
78 | + foreach ($attributes_group as $attributes_sections) { |
|
79 | + if (!empty($attributes_sections) && !empty($attributes_sections['attributes'])) { |
|
80 | + foreach ($attributes_sections['attributes'] as $attribute_id => $att_def) { |
|
81 | + if (!empty($att_def) && !empty($att_def['is_used_in_quick_add_form']) && $att_def['is_used_in_quick_add_form'] == 'yes') { |
|
82 | + $quick_add_form_attributes[$attribute_id] = $att_def; |
|
83 | 83 | } |
84 | 84 | } |
85 | 85 | } |
@@ -96,29 +96,29 @@ discard block |
||
96 | 96 | * @param integer $page |
97 | 97 | * @return string |
98 | 98 | */ |
99 | - function display_products_list( $default = 1, $page = 0 ) { |
|
99 | + function display_products_list($default = 1, $page = 0) { |
|
100 | 100 | global $wpdb; |
101 | 101 | // Product entity |
102 | - $product_entity_id = wpshop_entities::get_entity_identifier_from_code( WPSHOP_NEWTYPE_IDENTIFIER_PRODUCT ); |
|
102 | + $product_entity_id = wpshop_entities::get_entity_identifier_from_code(WPSHOP_NEWTYPE_IDENTIFIER_PRODUCT); |
|
103 | 103 | |
104 | 104 | $user_id = get_current_user_id(); |
105 | 105 | // Check product limit |
106 | - $product_limit = get_user_meta( $user_id, 'edit_wpshop_product_per_page', true ); |
|
107 | - $product_limit = ( !empty($product_limit) ) ? $product_limit : 20; |
|
106 | + $product_limit = get_user_meta($user_id, 'edit_wpshop_product_per_page', true); |
|
107 | + $product_limit = (!empty($product_limit)) ? $product_limit : 20; |
|
108 | 108 | |
109 | 109 | // Get products for the current page |
110 | 110 | $wps_product_mass_interface_mdl = new wps_product_mass_interface_mdl(); |
111 | - $products = $wps_product_mass_interface_mdl->get_quick_interface_products( $default, $page, $product_limit ); |
|
111 | + $products = $wps_product_mass_interface_mdl->get_quick_interface_products($default, $page, $product_limit); |
|
112 | 112 | |
113 | 113 | // Construct Table Head Data |
114 | 114 | $quick_add_form_attributes = array(); |
115 | 115 | $get_attributes_quick_add_form = $wps_product_mass_interface_mdl->get_attributes_quick_add_form(); |
116 | - foreach( $get_attributes_quick_add_form as $quick_add_form_attribute ) { |
|
116 | + foreach ($get_attributes_quick_add_form as $quick_add_form_attribute) { |
|
117 | 117 | $quick_add_form_attributes[$quick_add_form_attribute['id']] = $quick_add_form_attribute; |
118 | 118 | } |
119 | 119 | |
120 | 120 | ob_start(); |
121 | - require( wpshop_tools::get_template_part( WPS_PDCT_MASS_DIR, WPS_PDCT_MASS_TEMPLATES_MAIN_DIR, "backend", "quick_add_interface", "product_list" ) ); |
|
121 | + require(wpshop_tools::get_template_part(WPS_PDCT_MASS_DIR, WPS_PDCT_MASS_TEMPLATES_MAIN_DIR, "backend", "quick_add_interface", "product_list")); |
|
122 | 122 | $output = ob_get_contents(); |
123 | 123 | ob_end_clean(); |
124 | 124 | return $output; |
@@ -134,25 +134,25 @@ discard block |
||
134 | 134 | $products_attributes_groups = $wps_product_mass_interface_mdl->get_product_attributes_sets(); |
135 | 135 | |
136 | 136 | $default = ''; |
137 | - if( !empty($products_attributes_groups) ) { |
|
138 | - foreach( $products_attributes_groups as $key => $products_attributes_group ) { |
|
139 | - if( $products_attributes_group->slug == 'free_product' ) { |
|
140 | - unset( $products_attributes_groups[$key] ); |
|
137 | + if (!empty($products_attributes_groups)) { |
|
138 | + foreach ($products_attributes_groups as $key => $products_attributes_group) { |
|
139 | + if ($products_attributes_group->slug == 'free_product') { |
|
140 | + unset($products_attributes_groups[$key]); |
|
141 | 141 | } |
142 | - if( !empty($products_attributes_group->default_set) && $products_attributes_group->default_set == 'yes' ) { |
|
142 | + if (!empty($products_attributes_group->default_set) && $products_attributes_group->default_set == 'yes') { |
|
143 | 143 | $default = $products_attributes_group->id; |
144 | 144 | } |
145 | 145 | } |
146 | 146 | } |
147 | 147 | // Check page |
148 | - $page = ( !empty( $_GET[ 'page' ] ) && is_int( (int)$_GET[ 'page' ] ) && $_GET[ 'page' ] > 0 ) ? (int)($_GET[ 'page' ] - 1) : 0; |
|
148 | + $page = (!empty($_GET['page']) && is_int((int)$_GET['page']) && $_GET['page'] > 0) ? (int)($_GET['page'] - 1) : 0; |
|
149 | 149 | // Display product tab |
150 | - $product_list_interface = $this->display_products_list( $default, $page ); |
|
150 | + $product_list_interface = $this->display_products_list($default, $page); |
|
151 | 151 | |
152 | 152 | // Get pagination |
153 | - $pagination = $this->get_products_pagination( $page, $default ); |
|
153 | + $pagination = $this->get_products_pagination($page, $default); |
|
154 | 154 | |
155 | - require( wpshop_tools::get_template_part( WPS_PDCT_MASS_DIR, WPS_PDCT_MASS_TEMPLATES_MAIN_DIR, "backend", "quick_add_interface" ) ); |
|
155 | + require(wpshop_tools::get_template_part(WPS_PDCT_MASS_DIR, WPS_PDCT_MASS_TEMPLATES_MAIN_DIR, "backend", "quick_add_interface")); |
|
156 | 156 | } |
157 | 157 | |
158 | 158 | /** |
@@ -160,13 +160,13 @@ discard block |
||
160 | 160 | * |
161 | 161 | * @return string |
162 | 162 | */ |
163 | - function get_products_pagination( $current_page, $attribute_set_id = 1 ) { |
|
163 | + function get_products_pagination($current_page, $attribute_set_id = 1) { |
|
164 | 164 | global $wpdb; |
165 | 165 | $user_id = get_current_user_id(); |
166 | 166 | $output = ''; |
167 | 167 | /** Define the element number per page. If the user change the default value, take this value */ |
168 | - $one_page_limit = get_user_meta( $user_id, 'edit_wpshop_product_per_page', true ); |
|
169 | - $one_page_limit = ( !empty($one_page_limit) ) ? $one_page_limit : 20; |
|
168 | + $one_page_limit = get_user_meta($user_id, 'edit_wpshop_product_per_page', true); |
|
169 | + $one_page_limit = (!empty($one_page_limit)) ? $one_page_limit : 20; |
|
170 | 170 | |
171 | 171 | /** Count the number of product existing in the shop */ |
172 | 172 | $query = $wpdb->prepare( |
@@ -178,37 +178,37 @@ discard block |
||
178 | 178 | AND meta_value = %s |
179 | 179 | AND post_status IN ( 'publish', 'draft' )", |
180 | 180 | WPSHOP_NEWTYPE_IDENTIFIER_PRODUCT, '_wpshop_product_attribute_set_id', $attribute_set_id); |
181 | - $products = $wpdb->get_var( $query ); |
|
181 | + $products = $wpdb->get_var($query); |
|
182 | 182 | |
183 | - if( !empty($products) ) { |
|
183 | + if (!empty($products)) { |
|
184 | 184 | $args = array( |
185 | 185 | 'base' => '%_%', |
186 | - 'format' => admin_url( 'admin-ajax.php?action=wps_add_quick_interface&page=%#%' ), |
|
187 | - 'current' => ( $current_page + 1 ), |
|
188 | - 'total' => ceil( $products / $one_page_limit ), |
|
186 | + 'format' => admin_url('admin-ajax.php?action=wps_add_quick_interface&page=%#%'), |
|
187 | + 'current' => ($current_page + 1), |
|
188 | + 'total' => ceil($products / $one_page_limit), |
|
189 | 189 | 'type' => 'array', |
190 | 190 | 'prev_next' => false, |
191 | 191 | 'show_all' => true, |
192 | 192 | ); |
193 | - $paginate = paginate_links( $args ); |
|
193 | + $paginate = paginate_links($args); |
|
194 | 194 | |
195 | 195 | $wps_product_ctr = new wps_product_ctr(); |
196 | 196 | ob_start(); |
197 | - require( wpshop_tools::get_template_part( WPS_PDCT_MASS_DIR, WPS_PDCT_MASS_TEMPLATES_MAIN_DIR, "backend", "quick_add_interface_pagination" ) ); |
|
197 | + require(wpshop_tools::get_template_part(WPS_PDCT_MASS_DIR, WPS_PDCT_MASS_TEMPLATES_MAIN_DIR, "backend", "quick_add_interface_pagination")); |
|
198 | 198 | $output = ob_get_contents(); |
199 | 199 | ob_end_clean(); |
200 | 200 | } |
201 | 201 | return $output; |
202 | 202 | } |
203 | 203 | |
204 | - function wps_product_attached_files( $product_id ) { |
|
204 | + function wps_product_attached_files($product_id) { |
|
205 | 205 | global $wpdb; |
206 | 206 | $output = ''; |
207 | - $query = $wpdb->prepare( 'SELECT * FROM ' .$wpdb->posts. ' WHERE post_parent = %d AND post_type = %s AND post_mime_type LIKE %s', $product_id, 'attachment', 'application%' ); |
|
208 | - $files = $wpdb->get_results( $query ); |
|
209 | - if( !empty($files) ) { |
|
207 | + $query = $wpdb->prepare('SELECT * FROM ' . $wpdb->posts . ' WHERE post_parent = %d AND post_type = %s AND post_mime_type LIKE %s', $product_id, 'attachment', 'application%'); |
|
208 | + $files = $wpdb->get_results($query); |
|
209 | + if (!empty($files)) { |
|
210 | 210 | ob_start(); |
211 | - require( wpshop_tools::get_template_part( WPS_PDCT_MASS_DIR, WPS_PDCT_MASS_TEMPLATES_MAIN_DIR, "backend", "quick_add_interface", "attached_files_list" ) ); |
|
211 | + require(wpshop_tools::get_template_part(WPS_PDCT_MASS_DIR, WPS_PDCT_MASS_TEMPLATES_MAIN_DIR, "backend", "quick_add_interface", "attached_files_list")); |
|
212 | 212 | $output = ob_get_contents(); |
213 | 213 | ob_end_clean(); |
214 | 214 | } |
@@ -220,23 +220,23 @@ discard block |
||
220 | 220 | * AJAX - Change page action on mass edit product interface |
221 | 221 | */ |
222 | 222 | function wps_mass_edit_change_page() { |
223 | - $_wponce = !empty( $_REQUEST['_wpnonce'] ) ? sanitize_text_field( $_REQUEST['_wpnonce'] ) : ''; |
|
223 | + $_wponce = !empty($_REQUEST['_wpnonce']) ? sanitize_text_field($_REQUEST['_wpnonce']) : ''; |
|
224 | 224 | |
225 | - if ( !wp_verify_nonce( $_wpnonce, 'wps_mass_edit_change_page' ) ) |
|
225 | + if (!wp_verify_nonce($_wpnonce, 'wps_mass_edit_change_page')) |
|
226 | 226 | wp_die(); |
227 | 227 | |
228 | 228 | $status = false; $response = ''; |
229 | - $page = ( !empty($_POST['page_id']) ) ? intval( $_POST['page_id'] ) - 1 : 0; |
|
230 | - $attribute_set_id = ( !empty($_POST['att_set_id']) ) ? intval( $_POST['att_set_id'] ) : 1; |
|
231 | - if( !empty($attribute_set_id) ) { |
|
229 | + $page = (!empty($_POST['page_id'])) ? intval($_POST['page_id']) - 1 : 0; |
|
230 | + $attribute_set_id = (!empty($_POST['att_set_id'])) ? intval($_POST['att_set_id']) : 1; |
|
231 | + if (!empty($attribute_set_id)) { |
|
232 | 232 | // Get tab |
233 | - $response = $this->display_products_list( $attribute_set_id, $page ); |
|
234 | - $pagination = $this->get_products_pagination( $page, $attribute_set_id ); |
|
235 | - if( !empty($response) ) { |
|
233 | + $response = $this->display_products_list($attribute_set_id, $page); |
|
234 | + $pagination = $this->get_products_pagination($page, $attribute_set_id); |
|
235 | + if (!empty($response)) { |
|
236 | 236 | $status = true; |
237 | 237 | } |
238 | 238 | } |
239 | - echo json_encode( array( 'status' => $status, 'response' => $response, 'pagination' => $pagination ) ); |
|
239 | + echo json_encode(array('status' => $status, 'response' => $response, 'pagination' => $pagination)); |
|
240 | 240 | wp_die(); |
241 | 241 | } |
242 | 242 | |
@@ -244,30 +244,30 @@ discard block |
||
244 | 244 | * AJAX - Create a draft product and display the line allowing to edit informations for this product |
245 | 245 | */ |
246 | 246 | function wps_mass_interface_new_product_creation() { |
247 | - $_wponce = !empty( $_REQUEST['_wpnonce'] ) ? sanitize_text_field( $_REQUEST['_wpnonce'] ) : ''; |
|
247 | + $_wponce = !empty($_REQUEST['_wpnonce']) ? sanitize_text_field($_REQUEST['_wpnonce']) : ''; |
|
248 | 248 | |
249 | - if ( !wp_verify_nonce( $_wpnonce, 'wps_mass_interface_new_product_creation' ) ) |
|
249 | + if (!wp_verify_nonce($_wpnonce, 'wps_mass_interface_new_product_creation')) |
|
250 | 250 | wp_die(); |
251 | 251 | |
252 | 252 | global $wpdb; |
253 | 253 | $output = $pagination = ''; |
254 | 254 | $status = false; |
255 | 255 | |
256 | - $new_product_id = wp_insert_post( array( |
|
256 | + $new_product_id = wp_insert_post(array( |
|
257 | 257 | 'post_type' => WPSHOP_NEWTYPE_IDENTIFIER_PRODUCT, |
258 | 258 | 'post_status' => 'publish', |
259 | - 'post_title' => __( 'New product', 'wpshop' ), |
|
260 | - ) ); |
|
259 | + 'post_title' => __('New product', 'wpshop'), |
|
260 | + )); |
|
261 | 261 | |
262 | - if( !is_object($new_product_id) ) { |
|
262 | + if (!is_object($new_product_id)) { |
|
263 | 263 | $status = true; |
264 | 264 | } |
265 | - if ( !empty( $new_product_id ) ) { |
|
266 | - $product_attribute_set_id = ( !empty($_POST['attributes_set']) ) ? intval( $_POST['attributes_set'] ) : 1; |
|
267 | - update_post_meta( $new_product_id, '_' . WPSHOP_NEWTYPE_IDENTIFIER_PRODUCT . '_attribute_set_id', $product_attribute_set_id ); |
|
265 | + if (!empty($new_product_id)) { |
|
266 | + $product_attribute_set_id = (!empty($_POST['attributes_set'])) ? intval($_POST['attributes_set']) : 1; |
|
267 | + update_post_meta($new_product_id, '_' . WPSHOP_NEWTYPE_IDENTIFIER_PRODUCT . '_attribute_set_id', $product_attribute_set_id); |
|
268 | 268 | } |
269 | 269 | |
270 | - echo json_encode( array( 'status' => $status, 'response' => $output, 'pagination' => $pagination ) ); |
|
270 | + echo json_encode(array('status' => $status, 'response' => $output, 'pagination' => $pagination)); |
|
271 | 271 | wp_die(); |
272 | 272 | } |
273 | 273 | |
@@ -275,59 +275,59 @@ discard block |
||
275 | 275 | * AJAX - Save datas |
276 | 276 | */ |
277 | 277 | function wps_save_product_quick_interface() { |
278 | - $_wponce = !empty( $_REQUEST['_wpnonce'] ) ? sanitize_text_field( $_REQUEST['_wpnonce'] ) : ''; |
|
278 | + $_wponce = !empty($_REQUEST['_wpnonce']) ? sanitize_text_field($_REQUEST['_wpnonce']) : ''; |
|
279 | 279 | |
280 | - if ( !wp_verify_nonce( $_wpnonce, 'wps_save_product_quick_interface' ) ) |
|
280 | + if (!wp_verify_nonce($_wpnonce, 'wps_save_product_quick_interface')) |
|
281 | 281 | wp_die(); |
282 | 282 | |
283 | 283 | global $wpdb; |
284 | 284 | $response = ''; $status = false; |
285 | 285 | $count_products_to_update = 0; $total_updated_products = 0; |
286 | 286 | |
287 | - $wps_product_quick_save = !empty( $_REQUEST['wps_product_quick_save'] ) ? (array) $_REQUEST['wps_product_quick_save'] : array(); |
|
288 | - $wps_mass_interface = !empty( $_REQUEST['wps_mass_interface'] ) ? (array) $_REQUEST['wps_mass_interface'] : array(); |
|
289 | - $wpshop_product_attribute = !empty( $_REQUEST['wpshop_product_attribute'] ) ? (array) $_REQUEST['wpshop_product_attribute'] : array(); |
|
287 | + $wps_product_quick_save = !empty($_REQUEST['wps_product_quick_save']) ? (array)$_REQUEST['wps_product_quick_save'] : array(); |
|
288 | + $wps_mass_interface = !empty($_REQUEST['wps_mass_interface']) ? (array)$_REQUEST['wps_mass_interface'] : array(); |
|
289 | + $wpshop_product_attribute = !empty($_REQUEST['wpshop_product_attribute']) ? (array)$_REQUEST['wpshop_product_attribute'] : array(); |
|
290 | 290 | |
291 | - if( !empty($wps_product_quick_save) ) { |
|
292 | - $count_products_to_update = count( $wps_product_quick_save ); |
|
293 | - foreach( $wps_product_quick_save as $product_to_save ) { |
|
291 | + if (!empty($wps_product_quick_save)) { |
|
292 | + $count_products_to_update = count($wps_product_quick_save); |
|
293 | + foreach ($wps_product_quick_save as $product_to_save) { |
|
294 | 294 | $data_to_save = array(); |
295 | 295 | // Update post |
296 | - $updated_post = wp_update_post( array( 'ID' => $product_to_save, |
|
297 | - 'post_title' => sanitize_text_field( $wps_mass_interface[$product_to_save]['post_title'] ), |
|
298 | - 'post_content' => sanitize_text_field( $wps_mass_interface[$product_to_save]['post_content'] ), |
|
296 | + $updated_post = wp_update_post(array('ID' => $product_to_save, |
|
297 | + 'post_title' => sanitize_text_field($wps_mass_interface[$product_to_save]['post_title']), |
|
298 | + 'post_content' => sanitize_text_field($wps_mass_interface[$product_to_save]['post_content']), |
|
299 | 299 | ) |
300 | 300 | ); |
301 | 301 | // Update attributes |
302 | - if( !empty($updated_post) ) { |
|
302 | + if (!empty($updated_post)) { |
|
303 | 303 | // Update Featured picture |
304 | - if( !empty($wps_mass_interface[$product_to_save]['picture']) ) { |
|
305 | - $thumbnail_exist = get_post_meta( $updated_post, '_thumbnail_id', true ); |
|
306 | - if($wps_mass_interface[$product_to_save]['picture'] != 'deleted') { |
|
307 | - wp_update_post( array('ID' => (int)$wps_mass_interface[$product_to_save]['picture'], 'post_parent' => $updated_post) ); |
|
308 | - update_post_meta( $updated_post, '_thumbnail_id', (int)$wps_mass_interface[$product_to_save]['picture'] ); |
|
304 | + if (!empty($wps_mass_interface[$product_to_save]['picture'])) { |
|
305 | + $thumbnail_exist = get_post_meta($updated_post, '_thumbnail_id', true); |
|
306 | + if ($wps_mass_interface[$product_to_save]['picture'] != 'deleted') { |
|
307 | + wp_update_post(array('ID' => (int)$wps_mass_interface[$product_to_save]['picture'], 'post_parent' => $updated_post)); |
|
308 | + update_post_meta($updated_post, '_thumbnail_id', (int)$wps_mass_interface[$product_to_save]['picture']); |
|
309 | 309 | } |
310 | - elseif($wps_mass_interface[$product_to_save]['picture'] == 'deleted' && !empty($thumbnail_exist)) { |
|
311 | - delete_post_meta( $updated_post, '_thumbnail_id' ); |
|
310 | + elseif ($wps_mass_interface[$product_to_save]['picture'] == 'deleted' && !empty($thumbnail_exist)) { |
|
311 | + delete_post_meta($updated_post, '_thumbnail_id'); |
|
312 | 312 | } |
313 | 313 | } |
314 | 314 | |
315 | 315 | // Update files datas |
316 | - if( !empty($wps_mass_interface[$product_to_save]['files']) ) { |
|
317 | - $files_data = explode( ',', sanitize_text_field( $_REQUEST['wps_mass_interface'][$product_to_save]['files'] ) ); |
|
318 | - if( !empty($files_data) && is_array($files_data) ) { |
|
319 | - foreach( $files_data as $file_id ) { |
|
320 | - if( !empty($file_id) ) { |
|
321 | - wp_update_post( array('ID' => $file_id, 'post_parent' => $updated_post) ); |
|
316 | + if (!empty($wps_mass_interface[$product_to_save]['files'])) { |
|
317 | + $files_data = explode(',', sanitize_text_field($_REQUEST['wps_mass_interface'][$product_to_save]['files'])); |
|
318 | + if (!empty($files_data) && is_array($files_data)) { |
|
319 | + foreach ($files_data as $file_id) { |
|
320 | + if (!empty($file_id)) { |
|
321 | + wp_update_post(array('ID' => $file_id, 'post_parent' => $updated_post)); |
|
322 | 322 | } |
323 | 323 | } |
324 | 324 | } |
325 | 325 | } |
326 | 326 | |
327 | - $data_to_save['post_ID'] = $data_to_save['product_id'] = intval( $product_to_save ); |
|
328 | - $data_to_save['wpshop_product_attribute'] = ( !empty($wpshop_product_attribute[ $product_to_save ]) ) ? $wpshop_product_attribute[ $product_to_save ] : array(); |
|
327 | + $data_to_save['post_ID'] = $data_to_save['product_id'] = intval($product_to_save); |
|
328 | + $data_to_save['wpshop_product_attribute'] = (!empty($wpshop_product_attribute[$product_to_save])) ? $wpshop_product_attribute[$product_to_save] : array(); |
|
329 | 329 | |
330 | - if(empty($data_to_save['wpshop_product_attribute']['varchar']['barcode'])) { |
|
330 | + if (empty($data_to_save['wpshop_product_attribute']['varchar']['barcode'])) { |
|
331 | 331 | // Get current barcode |
332 | 332 | $wps_product_mdl = new wps_product_mdl(); |
333 | 333 | $attid = wpshop_attributes::getElement('barcode', "'valid'", 'code')->id; |
@@ -338,34 +338,34 @@ discard block |
||
338 | 338 | $data_to_save['user_ID'] = get_current_user_id(); |
339 | 339 | $data_to_save['action'] = 'editpost'; |
340 | 340 | |
341 | - if( !empty($wps_mass_interface[$product_to_save]['post_delete']) && $wps_mass_interface[$product_to_save]['post_delete'] == "true" ) { |
|
342 | - wp_trash_post( $product_to_save ); |
|
341 | + if (!empty($wps_mass_interface[$product_to_save]['post_delete']) && $wps_mass_interface[$product_to_save]['post_delete'] == "true") { |
|
342 | + wp_trash_post($product_to_save); |
|
343 | 343 | } |
344 | 344 | |
345 | - if( !empty($product_to_save) && !empty( $data_to_save['user_ID'] ) ) { |
|
345 | + if (!empty($product_to_save) && !empty($data_to_save['user_ID'])) { |
|
346 | 346 | $product_class = new wpshop_products(); |
347 | - $product_class->save_product_custom_informations( $product_to_save, $data_to_save ); |
|
347 | + $product_class->save_product_custom_informations($product_to_save, $data_to_save); |
|
348 | 348 | $total_updated_products++; |
349 | 349 | } |
350 | 350 | } |
351 | 351 | } |
352 | 352 | } |
353 | 353 | // Checking status |
354 | - $status = ( $total_updated_products == $count_products_to_update ) ? true : false; |
|
354 | + $status = ($total_updated_products == $count_products_to_update) ? true : false; |
|
355 | 355 | |
356 | - if( $status ) { |
|
357 | - $response = sprintf( __( '%d products have been successfully updated', 'wpshop'), $total_updated_products ); |
|
356 | + if ($status) { |
|
357 | + $response = sprintf(__('%d products have been successfully updated', 'wpshop'), $total_updated_products); |
|
358 | 358 | } |
359 | 359 | else { |
360 | - if( !empty($total_updated_products) ) { |
|
361 | - $response = sprintf( __( 'All selected products do not be updated. %d on %d products have been successfully updated', 'wpshop'), $total_updated_products, $count_products_to_update ); |
|
360 | + if (!empty($total_updated_products)) { |
|
361 | + $response = sprintf(__('All selected products do not be updated. %d on %d products have been successfully updated', 'wpshop'), $total_updated_products, $count_products_to_update); |
|
362 | 362 | } |
363 | 363 | else { |
364 | - $response = __( 'No product have been updated', 'wpshop'); |
|
364 | + $response = __('No product have been updated', 'wpshop'); |
|
365 | 365 | } |
366 | 366 | } |
367 | 367 | |
368 | - echo json_encode( array('status' => $status, 'response' => $response ) ); |
|
368 | + echo json_encode(array('status' => $status, 'response' => $response)); |
|
369 | 369 | wp_die(); |
370 | 370 | } |
371 | 371 | |
@@ -373,18 +373,18 @@ discard block |
||
373 | 373 | * Delete product list |
374 | 374 | **/ |
375 | 375 | function wps_mass_delete_file() { |
376 | - $_wponce = !empty( $_REQUEST['_wpnonce'] ) ? sanitize_text_field( $_REQUEST['_wpnonce'] ) : ''; |
|
376 | + $_wponce = !empty($_REQUEST['_wpnonce']) ? sanitize_text_field($_REQUEST['_wpnonce']) : ''; |
|
377 | 377 | |
378 | - if ( !wp_verify_nonce( $_wpnonce, 'wps_mass_delete_file' ) ) |
|
378 | + if (!wp_verify_nonce($_wpnonce, 'wps_mass_delete_file')) |
|
379 | 379 | wp_die(); |
380 | 380 | |
381 | 381 | $status = false; |
382 | - $file_id = (!empty($_POST['file_id']) ) ? intval($_POST['file_id']) : null; |
|
383 | - if( !empty($file_id) ) { |
|
384 | - wp_update_post( array('ID' => $file_id, 'post_parent' => 0) ); |
|
382 | + $file_id = (!empty($_POST['file_id'])) ? intval($_POST['file_id']) : null; |
|
383 | + if (!empty($file_id)) { |
|
384 | + wp_update_post(array('ID' => $file_id, 'post_parent' => 0)); |
|
385 | 385 | $status = true; |
386 | 386 | } |
387 | - echo json_encode( array( 'status' => $status ) ); |
|
387 | + echo json_encode(array('status' => $status)); |
|
388 | 388 | wp_die(); |
389 | 389 | } |
390 | 390 | |
@@ -392,32 +392,32 @@ discard block |
||
392 | 392 | * Update product files list |
393 | 393 | */ |
394 | 394 | function wps_mass_edit_update_files_list() { |
395 | - $_wponce = !empty( $_REQUEST['_wpnonce'] ) ? sanitize_text_field( $_REQUEST['_wpnonce'] ) : ''; |
|
395 | + $_wponce = !empty($_REQUEST['_wpnonce']) ? sanitize_text_field($_REQUEST['_wpnonce']) : ''; |
|
396 | 396 | |
397 | - if ( !wp_verify_nonce( $_wpnonce, 'wps_mass_edit_update_files_list' ) ) |
|
397 | + if (!wp_verify_nonce($_wpnonce, 'wps_mass_edit_update_files_list')) |
|
398 | 398 | wp_die(); |
399 | 399 | |
400 | 400 | $status = false; $response = ''; |
401 | - $product_id = ( !empty($_POST['product_id']) ) ? intval($_POST['product_id']) : null; |
|
402 | - $files = ( !empty($_POST['files']) ) ? intval($_POST['files']) : null; |
|
403 | - if( !empty($product_id ) ) { |
|
401 | + $product_id = (!empty($_POST['product_id'])) ? intval($_POST['product_id']) : null; |
|
402 | + $files = (!empty($_POST['files'])) ? intval($_POST['files']) : null; |
|
403 | + if (!empty($product_id)) { |
|
404 | 404 | // Update files datas |
405 | - if( !empty($files) ) { |
|
406 | - $files_data = explode( ',', $files ); |
|
407 | - if( !empty($files_data) && is_array($files_data) ) { |
|
408 | - foreach( $files_data as $file_id ) { |
|
409 | - if( !empty($file_id) ) { |
|
410 | - wp_update_post( array('ID' => $file_id, 'post_parent' => $product_id) ); |
|
405 | + if (!empty($files)) { |
|
406 | + $files_data = explode(',', $files); |
|
407 | + if (!empty($files_data) && is_array($files_data)) { |
|
408 | + foreach ($files_data as $file_id) { |
|
409 | + if (!empty($file_id)) { |
|
410 | + wp_update_post(array('ID' => $file_id, 'post_parent' => $product_id)); |
|
411 | 411 | } |
412 | 412 | } |
413 | 413 | } |
414 | 414 | } |
415 | 415 | |
416 | 416 | |
417 | - $response = $this->wps_product_attached_files( $product_id ); |
|
417 | + $response = $this->wps_product_attached_files($product_id); |
|
418 | 418 | $status = true; |
419 | 419 | } |
420 | - echo json_encode( array( 'status' => $status, 'response' => $response ) ); |
|
420 | + echo json_encode(array('status' => $status, 'response' => $response)); |
|
421 | 421 | wp_die(); |
422 | 422 | } |
423 | 423 |
@@ -1,4 +1,6 @@ discard block |
||
1 | -<?php if ( !defined( 'ABSPATH' ) ) exit; |
|
1 | +<?php if ( !defined( 'ABSPATH' ) ) { |
|
2 | + exit; |
|
3 | +} |
|
2 | 4 | /** |
3 | 5 | * Main controller file for product mass modification module |
4 | 6 | * |
@@ -222,8 +224,9 @@ discard block |
||
222 | 224 | function wps_mass_edit_change_page() { |
223 | 225 | $_wponce = !empty( $_REQUEST['_wpnonce'] ) ? sanitize_text_field( $_REQUEST['_wpnonce'] ) : ''; |
224 | 226 | |
225 | - if ( !wp_verify_nonce( $_wpnonce, 'wps_mass_edit_change_page' ) ) |
|
226 | - wp_die(); |
|
227 | + if ( !wp_verify_nonce( $_wpnonce, 'wps_mass_edit_change_page' ) ) { |
|
228 | + wp_die(); |
|
229 | + } |
|
227 | 230 | |
228 | 231 | $status = false; $response = ''; |
229 | 232 | $page = ( !empty($_POST['page_id']) ) ? intval( $_POST['page_id'] ) - 1 : 0; |
@@ -246,8 +249,9 @@ discard block |
||
246 | 249 | function wps_mass_interface_new_product_creation() { |
247 | 250 | $_wponce = !empty( $_REQUEST['_wpnonce'] ) ? sanitize_text_field( $_REQUEST['_wpnonce'] ) : ''; |
248 | 251 | |
249 | - if ( !wp_verify_nonce( $_wpnonce, 'wps_mass_interface_new_product_creation' ) ) |
|
250 | - wp_die(); |
|
252 | + if ( !wp_verify_nonce( $_wpnonce, 'wps_mass_interface_new_product_creation' ) ) { |
|
253 | + wp_die(); |
|
254 | + } |
|
251 | 255 | |
252 | 256 | global $wpdb; |
253 | 257 | $output = $pagination = ''; |
@@ -277,8 +281,9 @@ discard block |
||
277 | 281 | function wps_save_product_quick_interface() { |
278 | 282 | $_wponce = !empty( $_REQUEST['_wpnonce'] ) ? sanitize_text_field( $_REQUEST['_wpnonce'] ) : ''; |
279 | 283 | |
280 | - if ( !wp_verify_nonce( $_wpnonce, 'wps_save_product_quick_interface' ) ) |
|
281 | - wp_die(); |
|
284 | + if ( !wp_verify_nonce( $_wpnonce, 'wps_save_product_quick_interface' ) ) { |
|
285 | + wp_die(); |
|
286 | + } |
|
282 | 287 | |
283 | 288 | global $wpdb; |
284 | 289 | $response = ''; $status = false; |
@@ -306,8 +311,7 @@ discard block |
||
306 | 311 | if($wps_mass_interface[$product_to_save]['picture'] != 'deleted') { |
307 | 312 | wp_update_post( array('ID' => (int)$wps_mass_interface[$product_to_save]['picture'], 'post_parent' => $updated_post) ); |
308 | 313 | update_post_meta( $updated_post, '_thumbnail_id', (int)$wps_mass_interface[$product_to_save]['picture'] ); |
309 | - } |
|
310 | - elseif($wps_mass_interface[$product_to_save]['picture'] == 'deleted' && !empty($thumbnail_exist)) { |
|
314 | + } elseif($wps_mass_interface[$product_to_save]['picture'] == 'deleted' && !empty($thumbnail_exist)) { |
|
311 | 315 | delete_post_meta( $updated_post, '_thumbnail_id' ); |
312 | 316 | } |
313 | 317 | } |
@@ -355,12 +359,10 @@ discard block |
||
355 | 359 | |
356 | 360 | if( $status ) { |
357 | 361 | $response = sprintf( __( '%d products have been successfully updated', 'wpshop'), $total_updated_products ); |
358 | - } |
|
359 | - else { |
|
362 | + } else { |
|
360 | 363 | if( !empty($total_updated_products) ) { |
361 | 364 | $response = sprintf( __( 'All selected products do not be updated. %d on %d products have been successfully updated', 'wpshop'), $total_updated_products, $count_products_to_update ); |
362 | - } |
|
363 | - else { |
|
365 | + } else { |
|
364 | 366 | $response = __( 'No product have been updated', 'wpshop'); |
365 | 367 | } |
366 | 368 | } |
@@ -375,8 +377,9 @@ discard block |
||
375 | 377 | function wps_mass_delete_file() { |
376 | 378 | $_wponce = !empty( $_REQUEST['_wpnonce'] ) ? sanitize_text_field( $_REQUEST['_wpnonce'] ) : ''; |
377 | 379 | |
378 | - if ( !wp_verify_nonce( $_wpnonce, 'wps_mass_delete_file' ) ) |
|
379 | - wp_die(); |
|
380 | + if ( !wp_verify_nonce( $_wpnonce, 'wps_mass_delete_file' ) ) { |
|
381 | + wp_die(); |
|
382 | + } |
|
380 | 383 | |
381 | 384 | $status = false; |
382 | 385 | $file_id = (!empty($_POST['file_id']) ) ? intval($_POST['file_id']) : null; |
@@ -394,8 +397,9 @@ discard block |
||
394 | 397 | function wps_mass_edit_update_files_list() { |
395 | 398 | $_wponce = !empty( $_REQUEST['_wpnonce'] ) ? sanitize_text_field( $_REQUEST['_wpnonce'] ) : ''; |
396 | 399 | |
397 | - if ( !wp_verify_nonce( $_wpnonce, 'wps_mass_edit_update_files_list' ) ) |
|
398 | - wp_die(); |
|
400 | + if ( !wp_verify_nonce( $_wpnonce, 'wps_mass_edit_update_files_list' ) ) { |
|
401 | + wp_die(); |
|
402 | + } |
|
399 | 403 | |
400 | 404 | $status = false; $response = ''; |
401 | 405 | $product_id = ( !empty($_POST['product_id']) ) ? intval($_POST['product_id']) : null; |
@@ -16,8 +16,7 @@ |
||
16 | 16 | |
17 | 17 | /** |
18 | 18 | * Returns Products with post data and its attributes configuration |
19 | - * @param integer $limit |
|
20 | - * @param integer $count_products |
|
19 | + * @param integer $attribute_set_id |
|
21 | 20 | * @return array |
22 | 21 | */ |
23 | 22 | function get_quick_interface_products( $attribute_set_id, $start_limit = 0, $nb_product_per_page = 20 ) { |
@@ -1,4 +1,4 @@ discard block |
||
1 | -<?php if ( !defined( 'ABSPATH' ) ) exit; |
|
1 | +<?php if (!defined('ABSPATH')) exit; |
|
2 | 2 | /** |
3 | 3 | * Model file for product mass modification module |
4 | 4 | * |
@@ -20,7 +20,7 @@ discard block |
||
20 | 20 | * @param integer $count_products |
21 | 21 | * @return array |
22 | 22 | */ |
23 | - function get_quick_interface_products( $attribute_set_id, $start_limit = 0, $nb_product_per_page = 20 ) { |
|
23 | + function get_quick_interface_products($attribute_set_id, $start_limit = 0, $nb_product_per_page = 20) { |
|
24 | 24 | global $wpdb; |
25 | 25 | |
26 | 26 | $products_data = array(); |
@@ -34,12 +34,12 @@ discard block |
||
34 | 34 | AND meta_key = %s |
35 | 35 | AND meta_value = %s |
36 | 36 | ORDER BY ID DESC |
37 | - LIMIT " . $start_limit * $nb_product_per_page . ", " .$nb_product_per_page ."" |
|
37 | + LIMIT " . $start_limit * $nb_product_per_page . ", " . $nb_product_per_page . "" |
|
38 | 38 | , WPSHOP_NEWTYPE_IDENTIFIER_PRODUCT, '_wpshop_product_attribute_set_id', $attribute_set_id ); |
39 | - $products = $wpdb->get_results( $query ); |
|
39 | + $products = $wpdb->get_results($query); |
|
40 | 40 | |
41 | - if( !empty($products) ) { |
|
42 | - foreach( $products as $product ) { |
|
41 | + if (!empty($products)) { |
|
42 | + foreach ($products as $product) { |
|
43 | 43 | // For each product stock Post Datas and attributes definition |
44 | 44 | $tmp = array(); |
45 | 45 | $tmp['post_datas'] = $product; |
@@ -54,9 +54,9 @@ discard block |
||
54 | 54 | |
55 | 55 | function get_product_attributes_sets() { |
56 | 56 | global $wpdb; |
57 | - $product_entity_id = wpshop_entities::get_entity_identifier_from_code( WPSHOP_NEWTYPE_IDENTIFIER_PRODUCT ); |
|
58 | - $query = $wpdb->prepare( 'SELECT * FROM '. WPSHOP_DBT_ATTRIBUTE_SET . ' WHERE entity_id = %d AND status = %s', $product_entity_id, 'valid' ); |
|
59 | - $attributes_groups = $wpdb->get_results( $query ); |
|
57 | + $product_entity_id = wpshop_entities::get_entity_identifier_from_code(WPSHOP_NEWTYPE_IDENTIFIER_PRODUCT); |
|
58 | + $query = $wpdb->prepare('SELECT * FROM ' . WPSHOP_DBT_ATTRIBUTE_SET . ' WHERE entity_id = %d AND status = %s', $product_entity_id, 'valid'); |
|
59 | + $attributes_groups = $wpdb->get_results($query); |
|
60 | 60 | |
61 | 61 | return $attributes_groups; |
62 | 62 | } |
@@ -64,9 +64,9 @@ discard block |
||
64 | 64 | |
65 | 65 | function get_attributes_quick_add_form() { |
66 | 66 | global $wpdb; |
67 | - $product_entity_id = wpshop_entities::get_entity_identifier_from_code( WPSHOP_NEWTYPE_IDENTIFIER_PRODUCT ); |
|
68 | - $query = $wpdb->prepare( 'SELECT * FROM '. WPSHOP_DBT_ATTRIBUTE . ' WHERE entity_id = %d AND is_used_in_quick_add_form = %s AND status = %s', $product_entity_id, 'yes', 'valid' ); |
|
69 | - $attributes = $wpdb->get_results( $query, ARRAY_A ); |
|
67 | + $product_entity_id = wpshop_entities::get_entity_identifier_from_code(WPSHOP_NEWTYPE_IDENTIFIER_PRODUCT); |
|
68 | + $query = $wpdb->prepare('SELECT * FROM ' . WPSHOP_DBT_ATTRIBUTE . ' WHERE entity_id = %d AND is_used_in_quick_add_form = %s AND status = %s', $product_entity_id, 'yes', 'valid'); |
|
69 | + $attributes = $wpdb->get_results($query, ARRAY_A); |
|
70 | 70 | |
71 | 71 | return $attributes; |
72 | 72 | } |
@@ -1,4 +1,6 @@ |
||
1 | -<?php if ( !defined( 'ABSPATH' ) ) exit; |
|
1 | +<?php if ( !defined( 'ABSPATH' ) ) { |
|
2 | + exit; |
|
3 | +} |
|
2 | 4 | /** |
3 | 5 | * Fichier de définition du modèle des taxinomies / File for term model definition |
4 | 6 | * |
@@ -78,6 +78,11 @@ discard block |
||
78 | 78 | } |
79 | 79 | } |
80 | 80 | } |
81 | + |
|
82 | + /** |
|
83 | + * @param string $slug |
|
84 | + * @param string $separator |
|
85 | + */ |
|
81 | 86 | private function rewrite_term_hierarchy( $parent, &$rewrite, $slug, $separator ) { |
82 | 87 | $childs = get_terms( $this->taxonomy, array( 'parent' => $parent->term_id, 'hide_empty' => false ) ); |
83 | 88 | foreach( $childs as $child ) { |
@@ -115,6 +120,11 @@ discard block |
||
115 | 120 | } |
116 | 121 | return $permalink; |
117 | 122 | } |
123 | + |
|
124 | + /** |
|
125 | + * @param string $permalink |
|
126 | + * @param string $separator |
|
127 | + */ |
|
118 | 128 | private function permalink_term_hierarchy( $term, &$permalink, $taxonomy, $separator ) { |
119 | 129 | if( $term->parent == 0 ) { |
120 | 130 | $permalink = $term->slug . $separator . $permalink; |
@@ -220,6 +230,11 @@ discard block |
||
220 | 230 | } |
221 | 231 | } |
222 | 232 | } |
233 | + |
|
234 | + /** |
|
235 | + * @param string $slug |
|
236 | + * @param string $separator |
|
237 | + */ |
|
223 | 238 | private function rewrite_term_hierarchy( $parent, &$rewrite, $slug, $separator ) { |
224 | 239 | $rewrite[] = $slug . $parent->slug . $separator; |
225 | 240 | $childs = get_terms( $this->taxonomy, array( 'parent' => $parent->term_id, 'hide_empty' => false ) ); |
@@ -281,6 +296,11 @@ discard block |
||
281 | 296 | } |
282 | 297 | return $permalink; |
283 | 298 | } |
299 | + |
|
300 | + /** |
|
301 | + * @param string $permalink |
|
302 | + * @param string $separator |
|
303 | + */ |
|
284 | 304 | private function permalink_term_hierarchy( $term, &$permalink, $taxonomy, $separator ) { |
285 | 305 | if( $term->parent == 0 ) { |
286 | 306 | $permalink = $term->slug . $separator . $permalink; |
@@ -1,15 +1,15 @@ discard block |
||
1 | -<?php if ( !defined( 'ABSPATH' ) ) exit; |
|
1 | +<?php if (!defined('ABSPATH')) exit; |
|
2 | 2 | |
3 | 3 | // Rewrite wpshop_categories |
4 | -$options = get_option( 'wpshop_catalog_categories_option', null ); |
|
4 | +$options = get_option('wpshop_catalog_categories_option', null); |
|
5 | 5 | $slug = !empty($options['wpshop_catalog_categories_slug']) ? $options['wpshop_catalog_categories_slug'] : WPSHOP_CATALOG_PRODUCT_NO_CATEGORY; |
6 | -( empty( $options['wpshop_catalog_categories_slug'] ) || $options['wpshop_catalog_categories_slug'] == '/' ) ? new Custom_Taxonomy_Rewrite( WPSHOP_NEWTYPE_IDENTIFIER_CATEGORIES, WPSHOP_NEWTYPE_IDENTIFIER_PRODUCT, $slug, false ) : false; |
|
6 | +(empty($options['wpshop_catalog_categories_slug']) || $options['wpshop_catalog_categories_slug'] == '/') ? new Custom_Taxonomy_Rewrite(WPSHOP_NEWTYPE_IDENTIFIER_CATEGORIES, WPSHOP_NEWTYPE_IDENTIFIER_PRODUCT, $slug, false) : false; |
|
7 | 7 | |
8 | 8 | // Rewrite wpshop_products |
9 | -$options = get_option( 'wpshop_catalog_product_option', null ); |
|
10 | -$slug = !empty( $options['wpshop_catalog_product_slug'] ) ? $options['wpshop_catalog_product_slug'] : '/'; |
|
11 | -$categories = !empty( $options['wpshop_catalog_product_slug_with_category'] ); |
|
12 | -( empty( $options['wpshop_catalog_product_slug'] ) || $options['wpshop_catalog_product_slug'] == '/' ) ? new Custom_Post_Type_Rewrite( WPSHOP_NEWTYPE_IDENTIFIER_PRODUCT, WPSHOP_NEWTYPE_IDENTIFIER_CATEGORIES, $slug, $categories ) : false; |
|
9 | +$options = get_option('wpshop_catalog_product_option', null); |
|
10 | +$slug = !empty($options['wpshop_catalog_product_slug']) ? $options['wpshop_catalog_product_slug'] : '/'; |
|
11 | +$categories = !empty($options['wpshop_catalog_product_slug_with_category']); |
|
12 | +(empty($options['wpshop_catalog_product_slug']) || $options['wpshop_catalog_product_slug'] == '/') ? new Custom_Post_Type_Rewrite(WPSHOP_NEWTYPE_IDENTIFIER_PRODUCT, WPSHOP_NEWTYPE_IDENTIFIER_CATEGORIES, $slug, $categories) : false; |
|
13 | 13 | |
14 | 14 | class Custom_Taxonomy_Rewrite { |
15 | 15 | private $post_type; |
@@ -17,95 +17,95 @@ discard block |
||
17 | 17 | private $enable_rewrites; |
18 | 18 | private $use_slug; |
19 | 19 | private $use_hierarchy_cat_slug; |
20 | - public function __construct( $taxonomy, $post_type, $slug = '/', $hierarchy = false ) { |
|
20 | + public function __construct($taxonomy, $post_type, $slug = '/', $hierarchy = false) { |
|
21 | 21 | $this->post_type = $post_type; |
22 | 22 | $this->taxonomy = $taxonomy; |
23 | 23 | $this->use_slug = $slug; |
24 | 24 | $this->use_hierarchy_cat_slug = $hierarchy; |
25 | - add_action( 'init', array( $this, 'rewrite' ), 11 ); |
|
26 | - add_action( 'created_' . $this->taxonomy, array( $this, 'flush_rewrite' ) ); |
|
27 | - add_action( 'edited_' . $this->taxonomy, array( $this, 'flush_rewrite' ) ); |
|
28 | - add_action( 'delete_' . $this->taxonomy, array( $this, 'flush_rewrite' ) ); |
|
29 | - add_filter( 'term_link', array( $this, 'permalink' ), 10, 3 ); |
|
25 | + add_action('init', array($this, 'rewrite'), 11); |
|
26 | + add_action('created_' . $this->taxonomy, array($this, 'flush_rewrite')); |
|
27 | + add_action('edited_' . $this->taxonomy, array($this, 'flush_rewrite')); |
|
28 | + add_action('delete_' . $this->taxonomy, array($this, 'flush_rewrite')); |
|
29 | + add_filter('term_link', array($this, 'permalink'), 10, 3); |
|
30 | 30 | } |
31 | 31 | public function rewrite() { |
32 | 32 | global $wp_rewrite; |
33 | 33 | $this->enable_rewrites = $wp_rewrite->use_trailing_slashes; |
34 | - if( $this->enable_rewrites ) { |
|
35 | - if( empty( $this->use_slug ) || $this->use_slug == '/' ) { |
|
36 | - if( $this->use_hierarchy_cat_slug ) { |
|
34 | + if ($this->enable_rewrites) { |
|
35 | + if (empty($this->use_slug) || $this->use_slug == '/') { |
|
36 | + if ($this->use_hierarchy_cat_slug) { |
|
37 | 37 | $slug = ''; |
38 | 38 | $rewrite = array(); |
39 | - $terms = get_terms( $this->taxonomy, array( 'parent' => 0, 'hide_empty' => false ) ); |
|
40 | - foreach( $terms as $term ) { |
|
41 | - $this->rewrite_term_hierarchy( $term, $rewrite, $slug, '/' ); |
|
39 | + $terms = get_terms($this->taxonomy, array('parent' => 0, 'hide_empty' => false)); |
|
40 | + foreach ($terms as $term) { |
|
41 | + $this->rewrite_term_hierarchy($term, $rewrite, $slug, '/'); |
|
42 | 42 | } |
43 | - foreach( $rewrite as $way ) { |
|
44 | - add_rewrite_rule( $way . 'feed/(feed|rdf|rss|rss2|atom)/?$', 'index.php?' . $this->taxonomy . '=$matches[1]&feed=$matches[2]', 'top' ); |
|
45 | - add_rewrite_rule( $way . '(feed|rdf|rss|rss2|atom)/?$', 'index.php?' . $this->taxonomy . '=$matches[1]&feed=$matches[2]', 'top' ); |
|
46 | - add_rewrite_rule( $way . 'page/?([0-9]{1,})/?$', 'index.php?' . $this->taxonomy . '=$matches[1]&paged=$matches[2]', 'top' ); |
|
47 | - add_rewrite_rule( $way . '?$', 'index.php?' . $this->taxonomy . '=$matches[1]', 'top' ); |
|
43 | + foreach ($rewrite as $way) { |
|
44 | + add_rewrite_rule($way . 'feed/(feed|rdf|rss|rss2|atom)/?$', 'index.php?' . $this->taxonomy . '=$matches[1]&feed=$matches[2]', 'top'); |
|
45 | + add_rewrite_rule($way . '(feed|rdf|rss|rss2|atom)/?$', 'index.php?' . $this->taxonomy . '=$matches[1]&feed=$matches[2]', 'top'); |
|
46 | + add_rewrite_rule($way . 'page/?([0-9]{1,})/?$', 'index.php?' . $this->taxonomy . '=$matches[1]&paged=$matches[2]', 'top'); |
|
47 | + add_rewrite_rule($way . '?$', 'index.php?' . $this->taxonomy . '=$matches[1]', 'top'); |
|
48 | 48 | } |
49 | 49 | } else { |
50 | - $terms = get_terms( $this->taxonomy, array( 'fields' => 'id=>slug', 'hide_empty' => false ) ); |
|
51 | - foreach( $terms as $term ) { |
|
52 | - add_rewrite_rule( '(' . $term . ')/feed/(feed|rdf|rss|rss2|atom)/?$', 'index.php?' . $this->taxonomy . '=$matches[1]&feed=$matches[2]', 'top' ); |
|
53 | - add_rewrite_rule( '(' . $term . ')/(feed|rdf|rss|rss2|atom)/?$', 'index.php?' . $this->taxonomy . '=$matches[1]&feed=$matches[2]', 'top' ); |
|
54 | - add_rewrite_rule( '(' . $term . ')/page/?([0-9]{1,})/?$', 'index.php?' . $this->taxonomy . '=$matches[1]&paged=$matches[2]', 'top' ); |
|
55 | - add_rewrite_rule( '(' . $term . ')/?$', 'index.php?' . $this->taxonomy . '=$matches[1]', 'top' ); |
|
50 | + $terms = get_terms($this->taxonomy, array('fields' => 'id=>slug', 'hide_empty' => false)); |
|
51 | + foreach ($terms as $term) { |
|
52 | + add_rewrite_rule('(' . $term . ')/feed/(feed|rdf|rss|rss2|atom)/?$', 'index.php?' . $this->taxonomy . '=$matches[1]&feed=$matches[2]', 'top'); |
|
53 | + add_rewrite_rule('(' . $term . ')/(feed|rdf|rss|rss2|atom)/?$', 'index.php?' . $this->taxonomy . '=$matches[1]&feed=$matches[2]', 'top'); |
|
54 | + add_rewrite_rule('(' . $term . ')/page/?([0-9]{1,})/?$', 'index.php?' . $this->taxonomy . '=$matches[1]&paged=$matches[2]', 'top'); |
|
55 | + add_rewrite_rule('(' . $term . ')/?$', 'index.php?' . $this->taxonomy . '=$matches[1]', 'top'); |
|
56 | 56 | } |
57 | 57 | } |
58 | 58 | } else { |
59 | - if( $this->use_hierarchy_cat_slug ) { |
|
59 | + if ($this->use_hierarchy_cat_slug) { |
|
60 | 60 | $slug = '/'; |
61 | 61 | $rewrite = array(); |
62 | - $terms = get_terms( $this->taxonomy, array( 'parent' => 0, 'hide_empty' => false ) ); |
|
63 | - foreach( $terms as $term ) { |
|
64 | - $this->rewrite_term_hierarchy( $term, $rewrite, $slug, '/' ); |
|
62 | + $terms = get_terms($this->taxonomy, array('parent' => 0, 'hide_empty' => false)); |
|
63 | + foreach ($terms as $term) { |
|
64 | + $this->rewrite_term_hierarchy($term, $rewrite, $slug, '/'); |
|
65 | 65 | } |
66 | - foreach( $rewrite as $way ) { |
|
67 | - add_rewrite_rule( $this->use_slug . $way . 'feed/(feed|rdf|rss|rss2|atom)/?$', 'index.php?' . $this->taxonomy . '=$matches[1]&feed=$matches[2]', 'top' ); |
|
68 | - add_rewrite_rule( $this->use_slug . $way . '(feed|rdf|rss|rss2|atom)/?$', 'index.php?' . $this->taxonomy . '=$matches[1]&feed=$matches[2]', 'top' ); |
|
69 | - add_rewrite_rule( $this->use_slug . $way . 'page/?([0-9]{1,})/?$', 'index.php?' . $this->taxonomy . '=$matches[1]&paged=$matches[2]', 'top' ); |
|
70 | - add_rewrite_rule( $this->use_slug . $way . '?$', 'index.php?' . $this->taxonomy . '=$matches[1]', 'top' ); |
|
66 | + foreach ($rewrite as $way) { |
|
67 | + add_rewrite_rule($this->use_slug . $way . 'feed/(feed|rdf|rss|rss2|atom)/?$', 'index.php?' . $this->taxonomy . '=$matches[1]&feed=$matches[2]', 'top'); |
|
68 | + add_rewrite_rule($this->use_slug . $way . '(feed|rdf|rss|rss2|atom)/?$', 'index.php?' . $this->taxonomy . '=$matches[1]&feed=$matches[2]', 'top'); |
|
69 | + add_rewrite_rule($this->use_slug . $way . 'page/?([0-9]{1,})/?$', 'index.php?' . $this->taxonomy . '=$matches[1]&paged=$matches[2]', 'top'); |
|
70 | + add_rewrite_rule($this->use_slug . $way . '?$', 'index.php?' . $this->taxonomy . '=$matches[1]', 'top'); |
|
71 | 71 | } |
72 | 72 | } else { |
73 | - add_rewrite_rule( $this->use_slug . '/([^/]+)/feed/(feed|rdf|rss|rss2|atom)/?$', 'index.php?' . $this->taxonomy . '=$matches[1]&feed=$matches[2]', 'top' ); |
|
74 | - add_rewrite_rule( $this->use_slug . '/([^/]+)/(feed|rdf|rss|rss2|atom)/?$', 'index.php?' . $this->taxonomy . '=$matches[1]&feed=$matches[2]', 'top' ); |
|
75 | - add_rewrite_rule( $this->use_slug . '/([^/]+)/page/?([0-9]{1,})/?$', 'index.php?' . $this->taxonomy . '=$matches[1]&paged=$matches[2]', 'top' ); |
|
76 | - add_rewrite_rule( $this->use_slug . '/([^/]+)/?$', 'index.php?' . $this->taxonomy . '=$matches[1]', 'top' ); |
|
73 | + add_rewrite_rule($this->use_slug . '/([^/]+)/feed/(feed|rdf|rss|rss2|atom)/?$', 'index.php?' . $this->taxonomy . '=$matches[1]&feed=$matches[2]', 'top'); |
|
74 | + add_rewrite_rule($this->use_slug . '/([^/]+)/(feed|rdf|rss|rss2|atom)/?$', 'index.php?' . $this->taxonomy . '=$matches[1]&feed=$matches[2]', 'top'); |
|
75 | + add_rewrite_rule($this->use_slug . '/([^/]+)/page/?([0-9]{1,})/?$', 'index.php?' . $this->taxonomy . '=$matches[1]&paged=$matches[2]', 'top'); |
|
76 | + add_rewrite_rule($this->use_slug . '/([^/]+)/?$', 'index.php?' . $this->taxonomy . '=$matches[1]', 'top'); |
|
77 | 77 | } |
78 | 78 | } |
79 | 79 | } |
80 | 80 | } |
81 | - private function rewrite_term_hierarchy( $parent, &$rewrite, $slug, $separator ) { |
|
82 | - $childs = get_terms( $this->taxonomy, array( 'parent' => $parent->term_id, 'hide_empty' => false ) ); |
|
83 | - foreach( $childs as $child ) { |
|
84 | - $this->rewrite_term_hierarchy( $child, $rewrite, $slug . $parent->slug . $separator, $separator ); |
|
81 | + private function rewrite_term_hierarchy($parent, &$rewrite, $slug, $separator) { |
|
82 | + $childs = get_terms($this->taxonomy, array('parent' => $parent->term_id, 'hide_empty' => false)); |
|
83 | + foreach ($childs as $child) { |
|
84 | + $this->rewrite_term_hierarchy($child, $rewrite, $slug . $parent->slug . $separator, $separator); |
|
85 | 85 | } |
86 | 86 | $rewrite[] = $slug . '(' . $parent->slug . ')' . $separator; |
87 | 87 | } |
88 | 88 | public function flush_rewrite() { |
89 | - if( $this->enable_rewrites ) { |
|
89 | + if ($this->enable_rewrites) { |
|
90 | 90 | $this->rewrite(); |
91 | 91 | flush_rewrite_rules(); |
92 | 92 | } |
93 | 93 | } |
94 | - public function permalink( $permalink, $term, $taxonomy ) { |
|
95 | - if( $this->enable_rewrites ) { |
|
96 | - if( $taxonomy === $this->taxonomy ) { |
|
97 | - if( empty( $this->use_slug ) || $this->use_slug == '/' ) { |
|
98 | - if( $this->use_hierarchy_cat_slug ) { |
|
94 | + public function permalink($permalink, $term, $taxonomy) { |
|
95 | + if ($this->enable_rewrites) { |
|
96 | + if ($taxonomy === $this->taxonomy) { |
|
97 | + if (empty($this->use_slug) || $this->use_slug == '/') { |
|
98 | + if ($this->use_hierarchy_cat_slug) { |
|
99 | 99 | $term_permalink = ''; |
100 | - $this->permalink_term_hierarchy( $term, $term_permalink, $taxonomy, '/' ); |
|
100 | + $this->permalink_term_hierarchy($term, $term_permalink, $taxonomy, '/'); |
|
101 | 101 | $permalink = get_site_url() . '/' . $term_permalink; |
102 | 102 | } else { |
103 | 103 | $permalink = get_site_url() . '/' . $term->slug; |
104 | 104 | } |
105 | 105 | } else { |
106 | - if( $this->use_hierarchy_cat_slug ) { |
|
106 | + if ($this->use_hierarchy_cat_slug) { |
|
107 | 107 | $term_permalink = ''; |
108 | - $this->permalink_term_hierarchy( $term, $term_permalink, $taxonomy, '/' ); |
|
108 | + $this->permalink_term_hierarchy($term, $term_permalink, $taxonomy, '/'); |
|
109 | 109 | $permalink = get_site_url() . '/' . $this->use_slug . '/' . $term_permalink; |
110 | 110 | } else { |
111 | 111 | $permalink = get_site_url() . '/' . $this->use_slug . '/' . $term->slug; |
@@ -115,13 +115,13 @@ discard block |
||
115 | 115 | } |
116 | 116 | return $permalink; |
117 | 117 | } |
118 | - private function permalink_term_hierarchy( $term, &$permalink, $taxonomy, $separator ) { |
|
119 | - if( $term->parent == 0 ) { |
|
118 | + private function permalink_term_hierarchy($term, &$permalink, $taxonomy, $separator) { |
|
119 | + if ($term->parent == 0) { |
|
120 | 120 | $permalink = $term->slug . $separator . $permalink; |
121 | 121 | } else { |
122 | 122 | $permalink = $term->slug . $separator . $permalink; |
123 | - $term_parent = get_term( $term->parent, $taxonomy ); |
|
124 | - $this->permalink_term_hierarchy( $term_parent, $permalink, $taxonomy, $separator ); |
|
123 | + $term_parent = get_term($term->parent, $taxonomy); |
|
124 | + $this->permalink_term_hierarchy($term_parent, $permalink, $taxonomy, $separator); |
|
125 | 125 | } |
126 | 126 | } |
127 | 127 | } |
@@ -133,122 +133,122 @@ discard block |
||
133 | 133 | private $use_slug; |
134 | 134 | private $use_cat_slug; |
135 | 135 | private $use_hierarchy_cat_slug; |
136 | - public function __construct( $post_type, $taxonomy, $slug = '/', $categories = false ) { |
|
136 | + public function __construct($post_type, $taxonomy, $slug = '/', $categories = false) { |
|
137 | 137 | $this->post_type = $post_type; |
138 | 138 | $this->taxonomy = $taxonomy; |
139 | 139 | $this->use_slug = $slug; |
140 | - if( is_bool( $categories ) ) { |
|
140 | + if (is_bool($categories)) { |
|
141 | 141 | $this->use_cat_slug = $categories; |
142 | 142 | $this->use_hierarchy_cat_slug = false; |
143 | - } elseif( $categories == 'hierarchy' ) { |
|
143 | + } elseif ($categories == 'hierarchy') { |
|
144 | 144 | $this->use_cat_slug = true; |
145 | 145 | $this->use_hierarchy_cat_slug = true; |
146 | 146 | } |
147 | - add_action( 'init', array( $this, 'rewrite' ), 11 ); |
|
148 | - add_action( 'created_' . $this->taxonomy, array( $this, 'flush_rewrite' ) ); |
|
149 | - add_action( 'edited_' . $this->taxonomy, array( $this, 'flush_rewrite' ) ); |
|
150 | - add_action( 'delete_' . $this->taxonomy, array( $this, 'flush_rewrite' ) ); |
|
151 | - add_filter( 'post_type_link', array( $this, 'permalink' ), 10, 3 ); |
|
152 | - add_action( 'pre_get_posts', array( $this, 'query' ) ); |
|
147 | + add_action('init', array($this, 'rewrite'), 11); |
|
148 | + add_action('created_' . $this->taxonomy, array($this, 'flush_rewrite')); |
|
149 | + add_action('edited_' . $this->taxonomy, array($this, 'flush_rewrite')); |
|
150 | + add_action('delete_' . $this->taxonomy, array($this, 'flush_rewrite')); |
|
151 | + add_filter('post_type_link', array($this, 'permalink'), 10, 3); |
|
152 | + add_action('pre_get_posts', array($this, 'query')); |
|
153 | 153 | } |
154 | 154 | public function rewrite() { |
155 | 155 | global $wp_rewrite; |
156 | 156 | $this->enable_rewrites = $wp_rewrite->use_trailing_slashes; |
157 | - if( $this->enable_rewrites ) { |
|
158 | - if( empty( $this->use_slug ) || $this->use_slug == '/' ) { |
|
159 | - if( $this->use_cat_slug ) { |
|
160 | - if( $this->use_hierarchy_cat_slug ) { |
|
157 | + if ($this->enable_rewrites) { |
|
158 | + if (empty($this->use_slug) || $this->use_slug == '/') { |
|
159 | + if ($this->use_cat_slug) { |
|
160 | + if ($this->use_hierarchy_cat_slug) { |
|
161 | 161 | add_rewrite_tag('%taxonomies%', '(.*)'); |
162 | 162 | $slug = '('; |
163 | 163 | $rewrite = array(); |
164 | - $terms = get_terms( $this->taxonomy, array( 'parent' => 0, 'hide_empty' => false ) ); |
|
165 | - foreach( $terms as $term ) { |
|
166 | - $this->rewrite_term_hierarchy( $term, $rewrite, $slug, '/' ); |
|
164 | + $terms = get_terms($this->taxonomy, array('parent' => 0, 'hide_empty' => false)); |
|
165 | + foreach ($terms as $term) { |
|
166 | + $this->rewrite_term_hierarchy($term, $rewrite, $slug, '/'); |
|
167 | 167 | } |
168 | - foreach( array_reverse( $rewrite ) as $way ) { |
|
169 | - add_rewrite_rule( $way . ')([^/]+)/feed/(feed|rdf|rss|rss2|atom)/?$', 'index.php?taxonomies=$matches[1]&' . $this->post_type . '=$matches[2]&feed=$matches[3]', 'top' ); |
|
170 | - add_rewrite_rule( $way . ')([^/]+)/(feed|rdf|rss|rss2|atom)/?$', 'index.php?taxonomies=$matches[1]&' . $this->post_type . '=$matches[2]&feed=$matches[3]', 'top' ); |
|
171 | - add_rewrite_rule( $way . ')([^/]+)/page/?([0-9]{1,})/?$', 'index.php?taxonomies=$matches[1]&' . $this->post_type . '=$matches[2]&paged=$matches[3]', 'top' ); |
|
172 | - add_rewrite_rule( $way . ')([^/]+)/?$', 'index.php?taxonomies=$matches[1]&' . $this->post_type . '=$matches[2]', 'top' ); |
|
168 | + foreach (array_reverse($rewrite) as $way) { |
|
169 | + add_rewrite_rule($way . ')([^/]+)/feed/(feed|rdf|rss|rss2|atom)/?$', 'index.php?taxonomies=$matches[1]&' . $this->post_type . '=$matches[2]&feed=$matches[3]', 'top'); |
|
170 | + add_rewrite_rule($way . ')([^/]+)/(feed|rdf|rss|rss2|atom)/?$', 'index.php?taxonomies=$matches[1]&' . $this->post_type . '=$matches[2]&feed=$matches[3]', 'top'); |
|
171 | + add_rewrite_rule($way . ')([^/]+)/page/?([0-9]{1,})/?$', 'index.php?taxonomies=$matches[1]&' . $this->post_type . '=$matches[2]&paged=$matches[3]', 'top'); |
|
172 | + add_rewrite_rule($way . ')([^/]+)/?$', 'index.php?taxonomies=$matches[1]&' . $this->post_type . '=$matches[2]', 'top'); |
|
173 | 173 | } |
174 | 174 | } else { |
175 | 175 | add_rewrite_tag('%taxonomies%', '(.*)'); |
176 | - $terms = get_terms( $this->taxonomy, array( 'fields' => 'id=>slug', 'hide_empty' => false ) ); |
|
177 | - foreach( $terms as $term ) { |
|
178 | - add_rewrite_rule( '(' . $term . ')/([^/]+)/feed/(feed|rdf|rss|rss2|atom)/?$', 'index.php?taxonomies=$matches[1]&' . $this->post_type . '=$matches[2]&feed=$matches[3]', 'top' ); |
|
179 | - add_rewrite_rule( '(' . $term . ')/([^/]+)/(feed|rdf|rss|rss2|atom)/?$', 'index.php?taxonomies=$matches[1]&' . $this->post_type . '=$matches[2]&feed=$matches[3]', 'top' ); |
|
180 | - add_rewrite_rule( '(' . $term . ')/([^/]+)/page/?([0-9]{1,})/?$', 'index.php?taxonomies=$matches[1]&' . $this->post_type . '=$matches[2]&paged=$matches[3]', 'top' ); |
|
181 | - add_rewrite_rule( '(' . $term . ')/([^/]+)/?$', 'index.php?taxonomies=$matches[1]&' . $this->post_type . '=$matches[2]', 'top' ); |
|
176 | + $terms = get_terms($this->taxonomy, array('fields' => 'id=>slug', 'hide_empty' => false)); |
|
177 | + foreach ($terms as $term) { |
|
178 | + add_rewrite_rule('(' . $term . ')/([^/]+)/feed/(feed|rdf|rss|rss2|atom)/?$', 'index.php?taxonomies=$matches[1]&' . $this->post_type . '=$matches[2]&feed=$matches[3]', 'top'); |
|
179 | + add_rewrite_rule('(' . $term . ')/([^/]+)/(feed|rdf|rss|rss2|atom)/?$', 'index.php?taxonomies=$matches[1]&' . $this->post_type . '=$matches[2]&feed=$matches[3]', 'top'); |
|
180 | + add_rewrite_rule('(' . $term . ')/([^/]+)/page/?([0-9]{1,})/?$', 'index.php?taxonomies=$matches[1]&' . $this->post_type . '=$matches[2]&paged=$matches[3]', 'top'); |
|
181 | + add_rewrite_rule('(' . $term . ')/([^/]+)/?$', 'index.php?taxonomies=$matches[1]&' . $this->post_type . '=$matches[2]', 'top'); |
|
182 | 182 | } |
183 | 183 | } |
184 | 184 | } /*else { |
185 | 185 | Only in the query func |
186 | 186 | } */ |
187 | 187 | } else { |
188 | - if( $this->use_cat_slug ) { |
|
189 | - if( $this->use_hierarchy_cat_slug ) { |
|
188 | + if ($this->use_cat_slug) { |
|
189 | + if ($this->use_hierarchy_cat_slug) { |
|
190 | 190 | add_rewrite_tag('%taxonomies%', '(.*)'); |
191 | 191 | $slug = '/('; |
192 | 192 | $rewrite = array(); |
193 | - $terms = get_terms( $this->taxonomy, array( 'parent' => 0, 'hide_empty' => false ) ); |
|
194 | - foreach( $terms as $term ) { |
|
195 | - $this->rewrite_term_hierarchy( $term, $rewrite, $slug, '/' ); |
|
193 | + $terms = get_terms($this->taxonomy, array('parent' => 0, 'hide_empty' => false)); |
|
194 | + foreach ($terms as $term) { |
|
195 | + $this->rewrite_term_hierarchy($term, $rewrite, $slug, '/'); |
|
196 | 196 | } |
197 | - foreach( array_reverse( $rewrite ) as $way ) { |
|
198 | - add_rewrite_rule( $this->use_slug . $way . ')([^/]+)/feed/(feed|rdf|rss|rss2|atom)/?$', 'index.php?taxonomies=$matches[1]&' . $this->post_type . '=$matches[2]&feed=$matches[3]', 'top' ); |
|
199 | - add_rewrite_rule( $this->use_slug . $way . ')([^/]+)/(feed|rdf|rss|rss2|atom)/?$', 'index.php?taxonomies=$matches[1]&' . $this->post_type . '=$matches[2]&feed=$matches[3]', 'top' ); |
|
200 | - add_rewrite_rule( $this->use_slug . $way . ')([^/]+)/page/?([0-9]{1,})/?$', 'index.php?taxonomies=$matches[1]&' . $this->post_type . '=$matches[2]&paged=$matches[3]', 'top' ); |
|
201 | - add_rewrite_rule( $this->use_slug . $way . ')([^/]+)/?$', 'index.php?taxonomies=$matches[1]&' . $this->post_type . '=$matches[2]', 'top' ); |
|
197 | + foreach (array_reverse($rewrite) as $way) { |
|
198 | + add_rewrite_rule($this->use_slug . $way . ')([^/]+)/feed/(feed|rdf|rss|rss2|atom)/?$', 'index.php?taxonomies=$matches[1]&' . $this->post_type . '=$matches[2]&feed=$matches[3]', 'top'); |
|
199 | + add_rewrite_rule($this->use_slug . $way . ')([^/]+)/(feed|rdf|rss|rss2|atom)/?$', 'index.php?taxonomies=$matches[1]&' . $this->post_type . '=$matches[2]&feed=$matches[3]', 'top'); |
|
200 | + add_rewrite_rule($this->use_slug . $way . ')([^/]+)/page/?([0-9]{1,})/?$', 'index.php?taxonomies=$matches[1]&' . $this->post_type . '=$matches[2]&paged=$matches[3]', 'top'); |
|
201 | + add_rewrite_rule($this->use_slug . $way . ')([^/]+)/?$', 'index.php?taxonomies=$matches[1]&' . $this->post_type . '=$matches[2]', 'top'); |
|
202 | 202 | } |
203 | 203 | } else { |
204 | 204 | add_rewrite_tag('%taxonomies%', '(.*)'); |
205 | - $terms = get_terms( $this->taxonomy, array( 'fields' => 'id=>slug', 'hide_empty' => false ) ); |
|
206 | - foreach( $terms as $term ) { |
|
207 | - add_rewrite_rule( $this->use_slug . '/(' . $term . ')/([^/]+)/feed/(feed|rdf|rss|rss2|atom)/?$', 'index.php?taxonomies=$matches[1]&' . $this->post_type . '=$matches[2]&feed=$matches[3]', 'top' ); |
|
208 | - add_rewrite_rule( $this->use_slug . '/(' . $term . ')/([^/]+)/(feed|rdf|rss|rss2|atom)/?$', 'index.php?taxonomies=$matches[1]&' . $this->post_type . '=$matches[2]&feed=$matches[3]', 'top' ); |
|
209 | - add_rewrite_rule( $this->use_slug . '/(' . $term . ')/([^/]+)/page/?([0-9]{1,})/?$', 'index.php?taxonomies=$matches[1]&' . $this->post_type . '=$matches[2]&paged=$matches[3]', 'top' ); |
|
210 | - add_rewrite_rule( $this->use_slug . '/(' . $term . ')/([^/]+)/?$', 'index.php?taxonomies=$matches[1]&' . $this->post_type . '=$matches[2]', 'top' ); |
|
205 | + $terms = get_terms($this->taxonomy, array('fields' => 'id=>slug', 'hide_empty' => false)); |
|
206 | + foreach ($terms as $term) { |
|
207 | + add_rewrite_rule($this->use_slug . '/(' . $term . ')/([^/]+)/feed/(feed|rdf|rss|rss2|atom)/?$', 'index.php?taxonomies=$matches[1]&' . $this->post_type . '=$matches[2]&feed=$matches[3]', 'top'); |
|
208 | + add_rewrite_rule($this->use_slug . '/(' . $term . ')/([^/]+)/(feed|rdf|rss|rss2|atom)/?$', 'index.php?taxonomies=$matches[1]&' . $this->post_type . '=$matches[2]&feed=$matches[3]', 'top'); |
|
209 | + add_rewrite_rule($this->use_slug . '/(' . $term . ')/([^/]+)/page/?([0-9]{1,})/?$', 'index.php?taxonomies=$matches[1]&' . $this->post_type . '=$matches[2]&paged=$matches[3]', 'top'); |
|
210 | + add_rewrite_rule($this->use_slug . '/(' . $term . ')/([^/]+)/?$', 'index.php?taxonomies=$matches[1]&' . $this->post_type . '=$matches[2]', 'top'); |
|
211 | 211 | } |
212 | 212 | } |
213 | 213 | } else { |
214 | - add_rewrite_rule( $this->use_slug . '/([^/]+)/feed/(feed|rdf|rss|rss2|atom)/?$', 'index.php?' . $this->post_type . '=$matches[1]&feed=$matches[2]', 'top' ); |
|
215 | - add_rewrite_rule( $this->use_slug . '/([^/]+)/(feed|rdf|rss|rss2|atom)/?$', 'index.php?' . $this->post_type . '=$matches[1]&feed=$matches[2]', 'top' ); |
|
216 | - add_rewrite_rule( $this->use_slug . '/([^/]+)/page/?([0-9]{1,})/?$', 'index.php?' . $this->post_type . '=$matches[1]&paged=$matches[2]', 'top' ); |
|
217 | - add_rewrite_rule( $this->use_slug . '/([^/]+)/?$', 'index.php?' . $this->post_type . '=$matches[1]', 'top' ); |
|
214 | + add_rewrite_rule($this->use_slug . '/([^/]+)/feed/(feed|rdf|rss|rss2|atom)/?$', 'index.php?' . $this->post_type . '=$matches[1]&feed=$matches[2]', 'top'); |
|
215 | + add_rewrite_rule($this->use_slug . '/([^/]+)/(feed|rdf|rss|rss2|atom)/?$', 'index.php?' . $this->post_type . '=$matches[1]&feed=$matches[2]', 'top'); |
|
216 | + add_rewrite_rule($this->use_slug . '/([^/]+)/page/?([0-9]{1,})/?$', 'index.php?' . $this->post_type . '=$matches[1]&paged=$matches[2]', 'top'); |
|
217 | + add_rewrite_rule($this->use_slug . '/([^/]+)/?$', 'index.php?' . $this->post_type . '=$matches[1]', 'top'); |
|
218 | 218 | //'rewrite' => array( 'slug' => $this->post_type ) || true |
219 | 219 | } |
220 | 220 | } |
221 | 221 | } |
222 | 222 | } |
223 | - private function rewrite_term_hierarchy( $parent, &$rewrite, $slug, $separator ) { |
|
223 | + private function rewrite_term_hierarchy($parent, &$rewrite, $slug, $separator) { |
|
224 | 224 | $rewrite[] = $slug . $parent->slug . $separator; |
225 | - $childs = get_terms( $this->taxonomy, array( 'parent' => $parent->term_id, 'hide_empty' => false ) ); |
|
226 | - foreach( $childs as $child ) { |
|
227 | - $this->rewrite_term_hierarchy( $child, $rewrite, $slug . $parent->slug . $separator, $separator ); |
|
225 | + $childs = get_terms($this->taxonomy, array('parent' => $parent->term_id, 'hide_empty' => false)); |
|
226 | + foreach ($childs as $child) { |
|
227 | + $this->rewrite_term_hierarchy($child, $rewrite, $slug . $parent->slug . $separator, $separator); |
|
228 | 228 | } |
229 | 229 | } |
230 | 230 | public function flush_rewrite() { |
231 | - if( $this->enable_rewrites ) { |
|
231 | + if ($this->enable_rewrites) { |
|
232 | 232 | $this->rewrite(); |
233 | 233 | flush_rewrite_rules(); |
234 | 234 | } |
235 | 235 | } |
236 | - public function permalink( $permalink, $post, $leavename ) { |
|
237 | - if( $this->enable_rewrites ) { |
|
238 | - if( $post->post_type == $this->post_type ) { |
|
239 | - if( empty( $this->use_slug ) || $this->use_slug == '/' ) { |
|
240 | - if( $this->use_cat_slug ) { |
|
241 | - if( $this->use_hierarchy_cat_slug ) { |
|
242 | - $terms = get_the_terms( $post->ID, $this->taxonomy ); |
|
243 | - if( !empty( $terms ) ) { |
|
236 | + public function permalink($permalink, $post, $leavename) { |
|
237 | + if ($this->enable_rewrites) { |
|
238 | + if ($post->post_type == $this->post_type) { |
|
239 | + if (empty($this->use_slug) || $this->use_slug == '/') { |
|
240 | + if ($this->use_cat_slug) { |
|
241 | + if ($this->use_hierarchy_cat_slug) { |
|
242 | + $terms = get_the_terms($post->ID, $this->taxonomy); |
|
243 | + if (!empty($terms)) { |
|
244 | 244 | $term = $terms[0]; |
245 | 245 | $post_permalink = ''; |
246 | - $this->permalink_term_hierarchy( $term, $post_permalink, $this->taxonomy, '/' ); |
|
246 | + $this->permalink_term_hierarchy($term, $post_permalink, $this->taxonomy, '/'); |
|
247 | 247 | $permalink = get_site_url() . '/' . $post_permalink . $post->post_name . '/'; |
248 | 248 | } |
249 | 249 | } else { |
250 | - $terms = get_the_terms( $post->ID, $this->taxonomy ); |
|
251 | - if( !empty( $terms ) ) { |
|
250 | + $terms = get_the_terms($post->ID, $this->taxonomy); |
|
251 | + if (!empty($terms)) { |
|
252 | 252 | $term = $terms[0]; |
253 | 253 | $permalink = get_site_url() . '/' . $term->slug . '/' . $post->post_name . '/'; |
254 | 254 | } |
@@ -257,18 +257,18 @@ discard block |
||
257 | 257 | $permalink = get_site_url() . '/' . $post->post_name . '/'; |
258 | 258 | } |
259 | 259 | } else { |
260 | - if( $this->use_cat_slug ) { |
|
261 | - if( $this->use_hierarchy_cat_slug ) { |
|
262 | - $terms = get_the_terms( $post->ID, $this->taxonomy ); |
|
263 | - if( !empty( $terms ) ) { |
|
260 | + if ($this->use_cat_slug) { |
|
261 | + if ($this->use_hierarchy_cat_slug) { |
|
262 | + $terms = get_the_terms($post->ID, $this->taxonomy); |
|
263 | + if (!empty($terms)) { |
|
264 | 264 | $term = $terms[0]; |
265 | 265 | $post_permalink = ''; |
266 | - $this->permalink_term_hierarchy( $term, $post_permalink, $this->taxonomy, '/' ); |
|
266 | + $this->permalink_term_hierarchy($term, $post_permalink, $this->taxonomy, '/'); |
|
267 | 267 | $permalink = get_site_url() . '/' . $this->use_slug . '/' . $post_permalink . $post->post_name . '/'; |
268 | 268 | } |
269 | 269 | } else { |
270 | - $terms = get_the_terms( $post->ID, $this->taxonomy ); |
|
271 | - if( !empty( $terms ) ) { |
|
270 | + $terms = get_the_terms($post->ID, $this->taxonomy); |
|
271 | + if (!empty($terms)) { |
|
272 | 272 | $term = $terms[0]; |
273 | 273 | $permalink = get_site_url() . '/' . $this->use_slug . '/' . $term->slug . '/' . $post->post_name . '/'; |
274 | 274 | } |
@@ -281,20 +281,20 @@ discard block |
||
281 | 281 | } |
282 | 282 | return $permalink; |
283 | 283 | } |
284 | - private function permalink_term_hierarchy( $term, &$permalink, $taxonomy, $separator ) { |
|
285 | - if( $term->parent == 0 ) { |
|
284 | + private function permalink_term_hierarchy($term, &$permalink, $taxonomy, $separator) { |
|
285 | + if ($term->parent == 0) { |
|
286 | 286 | $permalink = $term->slug . $separator . $permalink; |
287 | 287 | } else { |
288 | 288 | $permalink = $term->slug . $separator . $permalink; |
289 | - $term_parent = get_term( $term->parent, $taxonomy ); |
|
290 | - $this->permalink_term_hierarchy( $term_parent, $permalink, $taxonomy, $separator ); |
|
289 | + $term_parent = get_term($term->parent, $taxonomy); |
|
290 | + $this->permalink_term_hierarchy($term_parent, $permalink, $taxonomy, $separator); |
|
291 | 291 | } |
292 | 292 | } |
293 | - public function query( $query ) { |
|
294 | - if( $this->enable_rewrites ) { |
|
295 | - if ( empty( $this->use_slug ) || $this->use_slug == '/' && !$this->use_cat_slug ) { |
|
296 | - if ( !is_admin() && $query->is_main_query() && !isset( $query->page ) && count( $query->query ) == 2 ) { |
|
297 | - $query->set('post_type', array( 'page', 'post', $this->post_type ) ); |
|
293 | + public function query($query) { |
|
294 | + if ($this->enable_rewrites) { |
|
295 | + if (empty($this->use_slug) || $this->use_slug == '/' && !$this->use_cat_slug) { |
|
296 | + if (!is_admin() && $query->is_main_query() && !isset($query->page) && count($query->query) == 2) { |
|
297 | + $query->set('post_type', array('page', 'post', $this->post_type)); |
|
298 | 298 | } |
299 | 299 | } |
300 | 300 | } |
@@ -1,4 +1,6 @@ |
||
1 | -<?php if ( !defined( 'ABSPATH' ) ) exit; |
|
1 | +<?php if ( !defined( 'ABSPATH' ) ) { |
|
2 | + exit; |
|
3 | +} |
|
2 | 4 | /** |
3 | 5 | * Fichier de définition du modèle des taxinomies / File for term model definition |
4 | 6 | * |
@@ -131,6 +131,7 @@ discard block |
||
131 | 131 | /** |
132 | 132 | * Construct the element when it's a text Data |
133 | 133 | * @param StdObject $attribute_def |
134 | + * @param integer $category_id |
|
134 | 135 | * @return string |
135 | 136 | */ |
136 | 137 | function get_filter_element_for_text_data( $attribute_def, $category_id, $current_category_child ) { |
@@ -155,6 +156,7 @@ discard block |
||
155 | 156 | /** |
156 | 157 | * Construct the element when it's a list Data |
157 | 158 | * @param StdObject $attribute_def |
159 | + * @param integer $category_id |
|
158 | 160 | * @return string |
159 | 161 | */ |
160 | 162 | function get_filter_element_for_list_data ( $attribute_def, $category_id, $current_category_child, $field_type, $type = 'select') { |
@@ -241,6 +243,7 @@ discard block |
||
241 | 243 | /** |
242 | 244 | * Construct the element when it's a decimal Data |
243 | 245 | * @param StdObject $attribute_def |
246 | + * @param integer $category_id |
|
244 | 247 | * @return string |
245 | 248 | */ |
246 | 249 | function get_filter_element_for_integer_data ( $attribute_def, $category_id, $current_category_children ) { |
@@ -268,7 +271,7 @@ discard block |
||
268 | 271 | * Save Products attribute values for List attribute data for a products category |
269 | 272 | * @param integer $category_id |
270 | 273 | * @param std_object $attribute_def |
271 | - * @param array $current_category_child |
|
274 | + * @param array $current_category_children |
|
272 | 275 | */ |
273 | 276 | function save_values_for_list_filterable_attribute( $category_id, $attribute_def, $current_category_children ) { |
274 | 277 | global $wpdb; |
@@ -462,7 +465,6 @@ discard block |
||
462 | 465 | |
463 | 466 | /** |
464 | 467 | * Save values for attributes |
465 | - * @param unknown_type $values |
|
466 | 468 | */ |
467 | 469 | function stock_values_for_attribute( $categories_id = array() ) { |
468 | 470 | @set_time_limit( 900 ); |
@@ -1,8 +1,8 @@ |
||
1 | 1 | <?php if ( !defined( 'ABSPATH' ) ) exit; |
2 | 2 | class wps_account_ctr { |
3 | 3 | /** Define the main directory containing the template for the current plugin |
4 | - * @var string |
|
5 | - */ |
|
4 | + * @var string |
|
5 | + */ |
|
6 | 6 | private $template_dir; |
7 | 7 | /** |
8 | 8 | * Define the directory name for the module in order to check into frontend |
@@ -1,4 +1,4 @@ discard block |
||
1 | -<?php if ( !defined( 'ABSPATH' ) ) exit; |
|
1 | +<?php if (!defined('ABSPATH')) exit; |
|
2 | 2 | class wps_filter_search { |
3 | 3 | |
4 | 4 | /** Define the main directory containing the template for the current plugin |
@@ -16,24 +16,24 @@ discard block |
||
16 | 16 | // Template Load |
17 | 17 | $this->template_dir = WPS_SEARCH_PATH . WPS_SEARCH_DIR . "/templates/"; |
18 | 18 | // Display Filter search |
19 | - add_shortcode('wpshop_filter_search', array( $this, 'display_filter_search')); |
|
19 | + add_shortcode('wpshop_filter_search', array($this, 'display_filter_search')); |
|
20 | 20 | |
21 | 21 | // WP General actions |
22 | 22 | add_action('save_post', 'wps_filter_search::save_displayed_price_meta'); |
23 | 23 | add_action('save_post', array(&$this, 'stock_values_for_attribute')); |
24 | 24 | |
25 | 25 | // Add scripts |
26 | - add_action( 'wp_enqueue_scripts', array( &$this, 'add_frontend_scripts' ) ); |
|
26 | + add_action('wp_enqueue_scripts', array(&$this, 'add_frontend_scripts')); |
|
27 | 27 | |
28 | 28 | // Ajax Actions |
29 | - add_action('wp_ajax_filter_search_action',array(&$this, 'wpshop_ajax_filter_search_action')); |
|
30 | - add_action('wp_ajax_nopriv_filter_search_action',array(&$this, 'wpshop_ajax_filter_search_action')); |
|
29 | + add_action('wp_ajax_filter_search_action', array(&$this, 'wpshop_ajax_filter_search_action')); |
|
30 | + add_action('wp_ajax_nopriv_filter_search_action', array(&$this, 'wpshop_ajax_filter_search_action')); |
|
31 | 31 | } |
32 | 32 | |
33 | 33 | |
34 | 34 | function add_frontend_scripts() { |
35 | - wp_enqueue_script( 'wpshop_filter_search_chosen', WPSHOP_JS_URL.'jquery-libs/chosen.jquery.min.js' ); |
|
36 | - wp_enqueue_script( 'wpshop_filter_search_js', WPS_SEARCH_URL.WPS_SEARCH_DIR.'/assets/filter_search/js/wpshop_filter_search.js' ); |
|
35 | + wp_enqueue_script('wpshop_filter_search_chosen', WPSHOP_JS_URL . 'jquery-libs/chosen.jquery.min.js'); |
|
36 | + wp_enqueue_script('wpshop_filter_search_js', WPS_SEARCH_URL . WPS_SEARCH_DIR . '/assets/filter_search/js/wpshop_filter_search.js'); |
|
37 | 37 | } |
38 | 38 | |
39 | 39 | |
@@ -41,14 +41,14 @@ discard block |
||
41 | 41 | * Display Filter search interface |
42 | 42 | * @return string |
43 | 43 | */ |
44 | - function display_filter_search () { |
|
44 | + function display_filter_search() { |
|
45 | 45 | global $wp_query; |
46 | 46 | $output = ''; |
47 | - if ( !empty($wp_query) && !empty($wp_query->queried_object_id) ) { |
|
47 | + if (!empty($wp_query) && !empty($wp_query->queried_object_id)) { |
|
48 | 48 | $category_id = $wp_query->queried_object_id; |
49 | - $category_option = get_option('wpshop_product_category_'.$category_id); |
|
50 | - if ( !empty($category_option) && !empty($category_option['wpshop_category_filterable_attributes']) ) { |
|
51 | - $output = $this->construct_wpshop_filter_search_interface( $category_id ); |
|
49 | + $category_option = get_option('wpshop_product_category_' . $category_id); |
|
50 | + if (!empty($category_option) && !empty($category_option['wpshop_category_filterable_attributes'])) { |
|
51 | + $output = $this->construct_wpshop_filter_search_interface($category_id); |
|
52 | 52 | } |
53 | 53 | } |
54 | 54 | return $output; |
@@ -59,19 +59,19 @@ discard block |
||
59 | 59 | * @param integer $category_id |
60 | 60 | * @return string |
61 | 61 | */ |
62 | - function construct_wpshop_filter_search_interface ( $category_id ) { |
|
62 | + function construct_wpshop_filter_search_interface($category_id) { |
|
63 | 63 | global $wpdb; |
64 | 64 | $filter_elements = ''; |
65 | - if ( !empty($category_id) ) { |
|
66 | - $category_option = get_option('wpshop_product_category_'.$category_id); |
|
67 | - if ( !empty($category_option) && !empty($category_option['wpshop_category_filterable_attributes']) && is_array($category_option['wpshop_category_filterable_attributes']) ) { |
|
68 | - foreach ( $category_option['wpshop_category_filterable_attributes'] as $k => $attribute ) { |
|
65 | + if (!empty($category_id)) { |
|
66 | + $category_option = get_option('wpshop_product_category_' . $category_id); |
|
67 | + if (!empty($category_option) && !empty($category_option['wpshop_category_filterable_attributes']) && is_array($category_option['wpshop_category_filterable_attributes'])) { |
|
68 | + foreach ($category_option['wpshop_category_filterable_attributes'] as $k => $attribute) { |
|
69 | 69 | $attribute_def = wpshop_attributes::getElement($k); |
70 | - $filter_elements .= $this->construct_element( $attribute_def, $category_id ); |
|
70 | + $filter_elements .= $this->construct_element($attribute_def, $category_id); |
|
71 | 71 | $unity = ''; |
72 | - if ( !empty($attribute_def->_default_unit) ) { |
|
73 | - $query = $wpdb->prepare('SELECT unit FROM ' .WPSHOP_DBT_ATTRIBUTE_UNIT. ' WHERE id= %d', $attribute_def->_default_unit); |
|
74 | - $unity = $wpdb->get_var( $query ); |
|
72 | + if (!empty($attribute_def->_default_unit)) { |
|
73 | + $query = $wpdb->prepare('SELECT unit FROM ' . WPSHOP_DBT_ATTRIBUTE_UNIT . ' WHERE id= %d', $attribute_def->_default_unit); |
|
74 | + $unity = $wpdb->get_var($query); |
|
75 | 75 | } |
76 | 76 | |
77 | 77 | //$tpl_component['DEFAULT_UNITY'.'_'.$attribute_def->code] = $unity; |
@@ -79,7 +79,7 @@ discard block |
||
79 | 79 | } |
80 | 80 | } |
81 | 81 | ob_start(); |
82 | - require( wpshop_tools::get_template_part( WPS_SEARCH_DIR, $this->template_dir, "frontend", "filter_search/filter_search_interface") ); |
|
82 | + require(wpshop_tools::get_template_part(WPS_SEARCH_DIR, $this->template_dir, "frontend", "filter_search/filter_search_interface")); |
|
83 | 83 | $filter_search_interface = ob_get_contents(); |
84 | 84 | ob_end_clean(); |
85 | 85 | return $filter_search_interface; |
@@ -91,7 +91,7 @@ discard block |
||
91 | 91 | * @param integer $category_id |
92 | 92 | * @return string |
93 | 93 | */ |
94 | - function construct_element ( $attribute_def, $category_id ) { |
|
94 | + function construct_element($attribute_def, $category_id) { |
|
95 | 95 | global $wpdb; |
96 | 96 | $current_category_children = array(); |
97 | 97 | $args = array( |
@@ -101,27 +101,27 @@ discard block |
||
101 | 101 | ); |
102 | 102 | $current_category_children = get_categories($args); |
103 | 103 | |
104 | - if ( !empty( $attribute_def ) ) { |
|
105 | - switch ( $attribute_def->frontend_input ) { |
|
104 | + if (!empty($attribute_def)) { |
|
105 | + switch ($attribute_def->frontend_input) { |
|
106 | 106 | case 'text' : |
107 | - if ( $attribute_def->data_type == 'decimal' || $attribute_def->data_type == 'integer') { |
|
108 | - return $this->get_filter_element_for_integer_data( $attribute_def, $category_id, $current_category_children ); |
|
107 | + if ($attribute_def->data_type == 'decimal' || $attribute_def->data_type == 'integer') { |
|
108 | + return $this->get_filter_element_for_integer_data($attribute_def, $category_id, $current_category_children); |
|
109 | 109 | } |
110 | 110 | else { |
111 | - return $this->get_filter_element_for_text_data( $attribute_def, $category_id, $current_category_children ); |
|
111 | + return $this->get_filter_element_for_text_data($attribute_def, $category_id, $current_category_children); |
|
112 | 112 | } |
113 | 113 | break; |
114 | 114 | |
115 | 115 | case 'select' : case 'multiple-select' : |
116 | - return $this->get_filter_element_for_list_data ( $attribute_def, $category_id, $current_category_children, $attribute_def->frontend_input, 'select'); |
|
116 | + return $this->get_filter_element_for_list_data($attribute_def, $category_id, $current_category_children, $attribute_def->frontend_input, 'select'); |
|
117 | 117 | break; |
118 | 118 | |
119 | 119 | case 'checkbox' : |
120 | - return $this->get_filter_element_for_list_data ( $attribute_def, $category_id, $current_category_children, $attribute_def->frontend_input, 'checkbox'); |
|
120 | + return $this->get_filter_element_for_list_data($attribute_def, $category_id, $current_category_children, $attribute_def->frontend_input, 'checkbox'); |
|
121 | 121 | break; |
122 | 122 | |
123 | 123 | case 'radio' : |
124 | - return $this->get_filter_element_for_list_data ( $attribute_def, $category_id, $current_category_children, $attribute_def->frontend_input, 'radio' ); |
|
124 | + return $this->get_filter_element_for_list_data($attribute_def, $category_id, $current_category_children, $attribute_def->frontend_input, 'radio'); |
|
125 | 125 | break; |
126 | 126 | |
127 | 127 | } |
@@ -133,20 +133,20 @@ discard block |
||
133 | 133 | * @param StdObject $attribute_def |
134 | 134 | * @return string |
135 | 135 | */ |
136 | - function get_filter_element_for_text_data( $attribute_def, $category_id, $current_category_child ) { |
|
136 | + function get_filter_element_for_text_data($attribute_def, $category_id, $current_category_child) { |
|
137 | 137 | global $wpdb; |
138 | 138 | $output = ''; |
139 | - $category_option = get_option('wpshop_product_category_'.$category_id); |
|
139 | + $category_option = get_option('wpshop_product_category_' . $category_id); |
|
140 | 140 | $list_values = ''; |
141 | 141 | |
142 | - if ( !empty($category_option) && !empty($category_option['wpshop_category_filterable_attributes']) && !empty($category_option['wpshop_category_filterable_attributes'][$attribute_def->id]) && is_array($category_option['wpshop_category_filterable_attributes'][$attribute_def->id]) ) { |
|
143 | - foreach( $category_option['wpshop_category_filterable_attributes'][$attribute_def->id] as $attribute_value ) { |
|
144 | - $list_values .= '<option value="' .$attribute_value. '">' .$attribute_value. '</option>'; |
|
142 | + if (!empty($category_option) && !empty($category_option['wpshop_category_filterable_attributes']) && !empty($category_option['wpshop_category_filterable_attributes'][$attribute_def->id]) && is_array($category_option['wpshop_category_filterable_attributes'][$attribute_def->id])) { |
|
143 | + foreach ($category_option['wpshop_category_filterable_attributes'][$attribute_def->id] as $attribute_value) { |
|
144 | + $list_values .= '<option value="' . $attribute_value . '">' . $attribute_value . '</option>'; |
|
145 | 145 | } |
146 | 146 | |
147 | 147 | } |
148 | 148 | ob_start(); |
149 | - require( wpshop_tools::get_template_part( WPS_SEARCH_DIR, $this->template_dir, "frontend", "filter_search/filter_elements/element_combobox") ); |
|
149 | + require(wpshop_tools::get_template_part(WPS_SEARCH_DIR, $this->template_dir, "frontend", "filter_search/filter_elements/element_combobox")); |
|
150 | 150 | $output = ob_get_contents(); |
151 | 151 | ob_end_clean(); |
152 | 152 | return $output; |
@@ -157,77 +157,77 @@ discard block |
||
157 | 157 | * @param StdObject $attribute_def |
158 | 158 | * @return string |
159 | 159 | */ |
160 | - function get_filter_element_for_list_data ( $attribute_def, $category_id, $current_category_child, $field_type, $type = 'select') { |
|
160 | + function get_filter_element_for_list_data($attribute_def, $category_id, $current_category_child, $field_type, $type = 'select') { |
|
161 | 161 | global $wpdb; |
162 | 162 | $output = $list_values = ''; |
163 | - $category_option = get_option('wpshop_product_category_'.$category_id); |
|
164 | - if ( !empty( $attribute_def) ){ |
|
163 | + $category_option = get_option('wpshop_product_category_' . $category_id); |
|
164 | + if (!empty($attribute_def)) { |
|
165 | 165 | // Recovery values |
166 | - if ( !empty($category_option) && !empty($category_option['wpshop_category_filterable_attributes']) && isset($category_option['wpshop_category_filterable_attributes'][$attribute_def->id]) ) { |
|
166 | + if (!empty($category_option) && !empty($category_option['wpshop_category_filterable_attributes']) && isset($category_option['wpshop_category_filterable_attributes'][$attribute_def->id])) { |
|
167 | 167 | $available_attribute_values = $category_option['wpshop_category_filterable_attributes'][$attribute_def->id]; |
168 | 168 | } |
169 | 169 | |
170 | 170 | // Store options for attribute |
171 | 171 | $stored_available_attribute_values = array(); |
172 | - $query = $wpdb->prepare( 'SELECT * FROM ' .WPSHOP_DBT_ATTRIBUTE_VALUES_OPTIONS .' WHERE attribute_id = %d ORDER BY position ASC', $attribute_def->id); |
|
173 | - $attributes_options = $wpdb->get_results( $query ); |
|
174 | - if ( $attribute_def->data_type_to_use == 'internal') { |
|
175 | - if ( !empty( $attribute_def->default_value ) ) { |
|
172 | + $query = $wpdb->prepare('SELECT * FROM ' . WPSHOP_DBT_ATTRIBUTE_VALUES_OPTIONS . ' WHERE attribute_id = %d ORDER BY position ASC', $attribute_def->id); |
|
173 | + $attributes_options = $wpdb->get_results($query); |
|
174 | + if ($attribute_def->data_type_to_use == 'internal') { |
|
175 | + if (!empty($attribute_def->default_value)) { |
|
176 | 176 | $attribute_default_value = $attribute_def->default_value; |
177 | 177 | $attribute_default_value = unserialize($attribute_default_value); |
178 | 178 | |
179 | - $query = $wpdb->prepare( 'SELECT * FROM ' .$wpdb->posts. ' WHERE post_type = %s ORDER BY menu_order ASC', $attribute_default_value['default_value']); |
|
180 | - $elements = $wpdb->get_results( $query ); |
|
179 | + $query = $wpdb->prepare('SELECT * FROM ' . $wpdb->posts . ' WHERE post_type = %s ORDER BY menu_order ASC', $attribute_default_value['default_value']); |
|
180 | + $elements = $wpdb->get_results($query); |
|
181 | 181 | |
182 | - if ( !empty( $elements) ) { |
|
183 | - foreach ( $elements as $element ) { |
|
184 | - if ( array_key_exists($element->ID,$available_attribute_values ) ) { |
|
185 | - $stored_available_attribute_values[] = array( 'option_id' => $element->ID, 'option_label' => $element->post_title ); |
|
182 | + if (!empty($elements)) { |
|
183 | + foreach ($elements as $element) { |
|
184 | + if (array_key_exists($element->ID, $available_attribute_values)) { |
|
185 | + $stored_available_attribute_values[] = array('option_id' => $element->ID, 'option_label' => $element->post_title); |
|
186 | 186 | } |
187 | 187 | } |
188 | 188 | } |
189 | 189 | } |
190 | 190 | } |
191 | 191 | else { |
192 | - foreach ( $attributes_options as $attributes_option ) { |
|
193 | - if ( in_array($attributes_option->label, $available_attribute_values) ) { |
|
194 | - $key_value = array_search( $attributes_option->label, $available_attribute_values); |
|
195 | - $stored_available_attribute_values[] = array('option_id' => $key_value, 'option_label' => $attributes_option->label ); |
|
192 | + foreach ($attributes_options as $attributes_option) { |
|
193 | + if (in_array($attributes_option->label, $available_attribute_values)) { |
|
194 | + $key_value = array_search($attributes_option->label, $available_attribute_values); |
|
195 | + $stored_available_attribute_values[] = array('option_id' => $key_value, 'option_label' => $attributes_option->label); |
|
196 | 196 | } |
197 | 197 | } |
198 | 198 | } |
199 | 199 | // Sort Stored values |
200 | - ksort( $stored_available_attribute_values); |
|
201 | - if ( !empty($stored_available_attribute_values) && is_array($stored_available_attribute_values) ) { |
|
200 | + ksort($stored_available_attribute_values); |
|
201 | + if (!empty($stored_available_attribute_values) && is_array($stored_available_attribute_values)) { |
|
202 | 202 | // Construct List values |
203 | - foreach( $stored_available_attribute_values as $stored_available_attribute_value ) { |
|
204 | - $list_values .= '<option value="' .$stored_available_attribute_value['option_id']. '">' .$stored_available_attribute_value['option_label']. '</option>'; |
|
203 | + foreach ($stored_available_attribute_values as $stored_available_attribute_value) { |
|
204 | + $list_values .= '<option value="' . $stored_available_attribute_value['option_id'] . '">' . $stored_available_attribute_value['option_label'] . '</option>'; |
|
205 | 205 | } |
206 | 206 | |
207 | 207 | // Display the good template file |
208 | - switch( $type ) { |
|
208 | + switch ($type) { |
|
209 | 209 | case 'radio' : |
210 | 210 | ob_start(); |
211 | - require( wpshop_tools::get_template_part( WPS_SEARCH_DIR, $this->template_dir, "frontend", "filter_search/filter_elements/element_radiobox") ); |
|
211 | + require(wpshop_tools::get_template_part(WPS_SEARCH_DIR, $this->template_dir, "frontend", "filter_search/filter_elements/element_radiobox")); |
|
212 | 212 | $output = ob_get_contents(); |
213 | 213 | ob_end_clean(); |
214 | 214 | break; |
215 | 215 | case 'checkbox' : |
216 | 216 | ob_start(); |
217 | - require( wpshop_tools::get_template_part( WPS_SEARCH_DIR, $this->template_dir, "frontend", "filter_search/filter_elements/element_checkbox") ); |
|
217 | + require(wpshop_tools::get_template_part(WPS_SEARCH_DIR, $this->template_dir, "frontend", "filter_search/filter_elements/element_checkbox")); |
|
218 | 218 | $output = ob_get_contents(); |
219 | 219 | ob_end_clean(); |
220 | 220 | break; |
221 | 221 | default : |
222 | - if ( $field_type == 'multiple-select' ) { |
|
222 | + if ($field_type == 'multiple-select') { |
|
223 | 223 | ob_start(); |
224 | - require( wpshop_tools::get_template_part( WPS_SEARCH_DIR, $this->template_dir, "frontend", "filter_search/filter_elements/element_multiple_select") ); |
|
224 | + require(wpshop_tools::get_template_part(WPS_SEARCH_DIR, $this->template_dir, "frontend", "filter_search/filter_elements/element_multiple_select")); |
|
225 | 225 | $output = ob_get_contents(); |
226 | 226 | ob_end_clean(); |
227 | 227 | } |
228 | 228 | else { |
229 | 229 | ob_start(); |
230 | - require( wpshop_tools::get_template_part( WPS_SEARCH_DIR, $this->template_dir, "frontend", "filter_search/filter_elements/element_combobox") ); |
|
230 | + require(wpshop_tools::get_template_part(WPS_SEARCH_DIR, $this->template_dir, "frontend", "filter_search/filter_elements/element_combobox")); |
|
231 | 231 | $output = ob_get_contents(); |
232 | 232 | ob_end_clean(); |
233 | 233 | } |
@@ -243,20 +243,20 @@ discard block |
||
243 | 243 | * @param StdObject $attribute_def |
244 | 244 | * @return string |
245 | 245 | */ |
246 | - function get_filter_element_for_integer_data ( $attribute_def, $category_id, $current_category_children ) { |
|
246 | + function get_filter_element_for_integer_data($attribute_def, $category_id, $current_category_children) { |
|
247 | 247 | $min_value = $max_value = 0; |
248 | 248 | $sub_tpl_component = array(); |
249 | 249 | $output = ''; |
250 | 250 | $first = true; |
251 | 251 | /** Get allproducts of category **/ |
252 | - $category_product_ids = wpshop_categories::get_product_of_category( $category_id ); |
|
253 | - $category_option = get_option('wpshop_product_category_'.$category_id ); |
|
254 | - $amount_min = ( !empty($category_option['wpshop_category_filterable_attributes'][$attribute_def->id]['min']) ) ? number_format($category_option['wpshop_category_filterable_attributes'][$attribute_def->id]['min'],2, '.', '') : 0; |
|
255 | - $amount_max = ( !empty($category_option['wpshop_category_filterable_attributes'][$attribute_def->id]['max']) ) ? number_format($category_option['wpshop_category_filterable_attributes'][$attribute_def->id]['max'],2, '.', '') : 0; |
|
252 | + $category_product_ids = wpshop_categories::get_product_of_category($category_id); |
|
253 | + $category_option = get_option('wpshop_product_category_' . $category_id); |
|
254 | + $amount_min = (!empty($category_option['wpshop_category_filterable_attributes'][$attribute_def->id]['min'])) ? number_format($category_option['wpshop_category_filterable_attributes'][$attribute_def->id]['min'], 2, '.', '') : 0; |
|
255 | + $amount_max = (!empty($category_option['wpshop_category_filterable_attributes'][$attribute_def->id]['max'])) ? number_format($category_option['wpshop_category_filterable_attributes'][$attribute_def->id]['max'], 2, '.', '') : 0; |
|
256 | 256 | |
257 | - if ( !empty($category_option) && !empty($category_option['wpshop_category_filterable_attributes']) && !empty($category_option['wpshop_category_filterable_attributes'][$attribute_def->id]) ) { |
|
257 | + if (!empty($category_option) && !empty($category_option['wpshop_category_filterable_attributes']) && !empty($category_option['wpshop_category_filterable_attributes'][$attribute_def->id])) { |
|
258 | 258 | ob_start(); |
259 | - require( wpshop_tools::get_template_part( WPS_SEARCH_DIR, $this->template_dir, "frontend", "filter_search/filter_elements/element_slider") ); |
|
259 | + require(wpshop_tools::get_template_part(WPS_SEARCH_DIR, $this->template_dir, "frontend", "filter_search/filter_elements/element_slider")); |
|
260 | 260 | $output = ob_get_contents(); |
261 | 261 | ob_end_clean(); |
262 | 262 | |
@@ -270,17 +270,17 @@ discard block |
||
270 | 270 | * @param std_object $attribute_def |
271 | 271 | * @param array $current_category_child |
272 | 272 | */ |
273 | - function save_values_for_list_filterable_attribute( $category_id, $attribute_def, $current_category_children ) { |
|
273 | + function save_values_for_list_filterable_attribute($category_id, $attribute_def, $current_category_children) { |
|
274 | 274 | global $wpdb; |
275 | - $category_option = get_option('wpshop_product_category_'.$category_id); |
|
276 | - $products = wpshop_categories::get_product_of_category( $category_id ); |
|
275 | + $category_option = get_option('wpshop_product_category_' . $category_id); |
|
276 | + $products = wpshop_categories::get_product_of_category($category_id); |
|
277 | 277 | /** If there are sub-categories take all products of sub-categories **/ |
278 | - if ( !empty($current_category_children) ) { |
|
279 | - foreach ( $current_category_children as $current_category_child ) { |
|
280 | - $sub_categories_product_ids = wpshop_categories::get_product_of_category( $current_category_child->term_taxonomy_id ); |
|
281 | - if ( !empty($sub_categories_product_ids) ) { |
|
282 | - foreach ( $sub_categories_product_ids as $sub_categories_product_id ) { |
|
283 | - if ( !in_array($sub_categories_product_id, $products) ) { |
|
278 | + if (!empty($current_category_children)) { |
|
279 | + foreach ($current_category_children as $current_category_child) { |
|
280 | + $sub_categories_product_ids = wpshop_categories::get_product_of_category($current_category_child->term_taxonomy_id); |
|
281 | + if (!empty($sub_categories_product_ids)) { |
|
282 | + foreach ($sub_categories_product_ids as $sub_categories_product_id) { |
|
283 | + if (!in_array($sub_categories_product_id, $products)) { |
|
284 | 284 | $products[] = $sub_categories_product_id; |
285 | 285 | } |
286 | 286 | } |
@@ -289,33 +289,33 @@ discard block |
||
289 | 289 | } |
290 | 290 | |
291 | 291 | |
292 | - if ( !empty($category_option) && !empty($category_option['wpshop_category_filterable_attributes']) && !empty($category_option['wpshop_category_filterable_attributes'][$attribute_def->id]) ) { |
|
292 | + if (!empty($category_option) && !empty($category_option['wpshop_category_filterable_attributes']) && !empty($category_option['wpshop_category_filterable_attributes'][$attribute_def->id])) { |
|
293 | 293 | $category_option['wpshop_category_filterable_attributes'][$attribute_def->id] = array(); |
294 | 294 | } |
295 | 295 | |
296 | 296 | |
297 | - if ( !empty( $attribute_def) ){ |
|
297 | + if (!empty($attribute_def)) { |
|
298 | 298 | $available_attribute_values = array(); |
299 | 299 | $test = array(); |
300 | - foreach ( $products as $product ) { |
|
301 | - $available_attribute_values = array_merge( $available_attribute_values, wpshop_attributes::get_affected_value_for_list( $attribute_def->code, $product, $attribute_def->data_type_to_use) ) ; |
|
300 | + foreach ($products as $product) { |
|
301 | + $available_attribute_values = array_merge($available_attribute_values, wpshop_attributes::get_affected_value_for_list($attribute_def->code, $product, $attribute_def->data_type_to_use)); |
|
302 | 302 | } |
303 | 303 | |
304 | 304 | $available_attribute_values = array_flip($available_attribute_values); |
305 | 305 | $data_to_save = array(); |
306 | - if ( !empty($available_attribute_values) ) { |
|
306 | + if (!empty($available_attribute_values)) { |
|
307 | 307 | $data_to_save = array(); |
308 | - foreach( $available_attribute_values as $k => $available_attribute_value ) { |
|
309 | - if ( $attribute_def->data_type_to_use == 'internal' ) { |
|
310 | - $attribute_name = get_the_title( $k ); |
|
308 | + foreach ($available_attribute_values as $k => $available_attribute_value) { |
|
309 | + if ($attribute_def->data_type_to_use == 'internal') { |
|
310 | + $attribute_name = get_the_title($k); |
|
311 | 311 | } |
312 | 312 | else { |
313 | - $query = $wpdb->prepare( 'SELECT label FROM ' .WPSHOP_DBT_ATTRIBUTE_VALUES_OPTIONS. ' WHERE attribute_id = %d AND id = %d', $attribute_def->id, $k); |
|
313 | + $query = $wpdb->prepare('SELECT label FROM ' . WPSHOP_DBT_ATTRIBUTE_VALUES_OPTIONS . ' WHERE attribute_id = %d AND id = %d', $attribute_def->id, $k); |
|
314 | 314 | |
315 | - $attribute_name = $wpdb->get_var( $query ); |
|
315 | + $attribute_name = $wpdb->get_var($query); |
|
316 | 316 | } |
317 | - if (!empty($attribute_name) && !empty($k) ) { |
|
318 | - if ( !empty($category_option) && !empty($category_option['wpshop_category_filterable_attributes']) && isset($category_option['wpshop_category_filterable_attributes'][$attribute_def->id]) ) { |
|
317 | + if (!empty($attribute_name) && !empty($k)) { |
|
318 | + if (!empty($category_option) && !empty($category_option['wpshop_category_filterable_attributes']) && isset($category_option['wpshop_category_filterable_attributes'][$attribute_def->id])) { |
|
319 | 319 | $data_to_save[$k] = $attribute_name; |
320 | 320 | $category_option['wpshop_category_filterable_attributes'][$attribute_def->id] = $data_to_save; |
321 | 321 | } |
@@ -323,7 +323,7 @@ discard block |
||
323 | 323 | } |
324 | 324 | } |
325 | 325 | } |
326 | - update_option('wpshop_product_category_'.$category_id, $category_option); |
|
326 | + update_option('wpshop_product_category_' . $category_id, $category_option); |
|
327 | 327 | } |
328 | 328 | |
329 | 329 | /** |
@@ -332,18 +332,18 @@ discard block |
||
332 | 332 | * @param std_object $attribute_def |
333 | 333 | * @param array $current_category_child |
334 | 334 | */ |
335 | - function save_values_for_integer_filterable_attribute ( $category_id, $attribute_def, $current_category_child ) { |
|
335 | + function save_values_for_integer_filterable_attribute($category_id, $attribute_def, $current_category_child) { |
|
336 | 336 | $first = true; |
337 | - $category_option = get_option('wpshop_product_category_'.$category_id); |
|
338 | - $category_product_ids = wpshop_categories::get_product_of_category( $category_id ); |
|
337 | + $category_option = get_option('wpshop_product_category_' . $category_id); |
|
338 | + $category_product_ids = wpshop_categories::get_product_of_category($category_id); |
|
339 | 339 | $min_value = $max_value = 0; |
340 | 340 | /** If there are sub-categories take all products of sub-categories **/ |
341 | - if ( !empty($current_category_children) ) { |
|
342 | - foreach ( $current_category_children as $current_category_child ) { |
|
343 | - $sub_categories_product_ids = wpshop_categories::get_product_of_category( $current_category_child->term_taxonomy_id ); |
|
344 | - if ( !empty($sub_categories_product_ids) ) { |
|
345 | - foreach ( $sub_categories_product_ids as $sub_categories_product_id ) { |
|
346 | - if ( !in_array($sub_categories_product_id, $category_product_ids) ) { |
|
341 | + if (!empty($current_category_children)) { |
|
342 | + foreach ($current_category_children as $current_category_child) { |
|
343 | + $sub_categories_product_ids = wpshop_categories::get_product_of_category($current_category_child->term_taxonomy_id); |
|
344 | + if (!empty($sub_categories_product_ids)) { |
|
345 | + foreach ($sub_categories_product_ids as $sub_categories_product_id) { |
|
346 | + if (!in_array($sub_categories_product_id, $category_product_ids)) { |
|
347 | 347 | $category_product_ids[] = $sub_categories_product_id; |
348 | 348 | } |
349 | 349 | } |
@@ -352,45 +352,45 @@ discard block |
||
352 | 352 | } |
353 | 353 | |
354 | 354 | /** For each product of category check the value **/ |
355 | - if ( !empty( $category_product_ids ) ) { |
|
355 | + if (!empty($category_product_ids)) { |
|
356 | 356 | $price_piloting_option = get_option('wpshop_shop_price_piloting'); |
357 | 357 | foreach ($category_product_ids as $category_product_id) { |
358 | 358 | |
359 | - if ( $attribute_def->code == WPSHOP_PRODUCT_PRICE_TTC || $attribute_def->code == WPSHOP_PRODUCT_PRICE_HT ) { |
|
359 | + if ($attribute_def->code == WPSHOP_PRODUCT_PRICE_TTC || $attribute_def->code == WPSHOP_PRODUCT_PRICE_HT) { |
|
360 | 360 | |
361 | 361 | $product_infos = wpshop_products::get_product_data($category_product_id); |
362 | 362 | $product_price_infos = wpshop_prices::check_product_price($product_infos); |
363 | - if (!empty($product_price_infos) && !empty($product_price_infos['fork_price']) && !empty($product_price_infos['fork_price']['have_fork_price']) && $product_price_infos['fork_price']['have_fork_price'] ) { |
|
363 | + if (!empty($product_price_infos) && !empty($product_price_infos['fork_price']) && !empty($product_price_infos['fork_price']['have_fork_price']) && $product_price_infos['fork_price']['have_fork_price']) { |
|
364 | 364 | |
365 | 365 | |
366 | - $max_value = ( !empty($product_price_infos['fork_price']['max_product_price']) && $product_price_infos['fork_price']['max_product_price'] > $max_value ) ? $product_price_infos['fork_price']['max_product_price'] : $max_value; |
|
367 | - $min_value = (!empty($product_price_infos['fork_price']['min_product_price']) && ( ( $product_price_infos['fork_price']['min_product_price'] < $min_value) || $first ) ) ? $product_price_infos['fork_price']['min_product_price'] : $min_value; |
|
366 | + $max_value = (!empty($product_price_infos['fork_price']['max_product_price']) && $product_price_infos['fork_price']['max_product_price'] > $max_value) ? $product_price_infos['fork_price']['max_product_price'] : $max_value; |
|
367 | + $min_value = (!empty($product_price_infos['fork_price']['min_product_price']) && (($product_price_infos['fork_price']['min_product_price'] < $min_value) || $first)) ? $product_price_infos['fork_price']['min_product_price'] : $min_value; |
|
368 | 368 | } |
369 | 369 | else { |
370 | - if (!empty($product_price_infos) && !empty($product_price_infos['discount']) && !empty($product_price_infos['discount']['discount_exist'] ) && $product_price_infos['discount']['discount_exist'] ) { |
|
371 | - $product_data = (!empty($price_piloting_option) && $price_piloting_option == 'HT') ? $product_price_infos['discount']['discount_et_price'] : $product_price_infos['discount']['discount_ati_price']; |
|
370 | + if (!empty($product_price_infos) && !empty($product_price_infos['discount']) && !empty($product_price_infos['discount']['discount_exist']) && $product_price_infos['discount']['discount_exist']) { |
|
371 | + $product_data = (!empty($price_piloting_option) && $price_piloting_option == 'HT') ? $product_price_infos['discount']['discount_et_price'] : $product_price_infos['discount']['discount_ati_price']; |
|
372 | 372 | |
373 | 373 | } |
374 | 374 | else { |
375 | 375 | |
376 | - $product_data = (!empty($price_piloting_option) && $price_piloting_option == 'HT') ? $product_price_infos['et'] : $product_price_infos['ati']; |
|
376 | + $product_data = (!empty($price_piloting_option) && $price_piloting_option == 'HT') ? $product_price_infos['et'] : $product_price_infos['ati']; |
|
377 | 377 | } |
378 | - $max_value = ( !empty($product_data) && $product_data > $max_value ) ? $product_data : $max_value; |
|
379 | - $min_value = (!empty($product_data) && ( ( $product_data < $min_value) || $first ) ) ? $product_data : $min_value; |
|
378 | + $max_value = (!empty($product_data) && $product_data > $max_value) ? $product_data : $max_value; |
|
379 | + $min_value = (!empty($product_data) && (($product_data < $min_value) || $first)) ? $product_data : $min_value; |
|
380 | 380 | } |
381 | 381 | } |
382 | 382 | else { |
383 | 383 | $product_postmeta = get_post_meta($category_product_id, WPSHOP_PRODUCT_ATTRIBUTE_META_KEY, true); |
384 | 384 | $product_data = $product_postmeta[$attribute_def->code]; |
385 | - $max_value = ( !empty($product_data) && $product_data > $max_value ) ? $product_data : $max_value; |
|
386 | - $min_value = (!empty($product_data) && ( ( $product_data < $min_value) || $first ) ) ? $product_data : $min_value; |
|
385 | + $max_value = (!empty($product_data) && $product_data > $max_value) ? $product_data : $max_value; |
|
386 | + $min_value = (!empty($product_data) && (($product_data < $min_value) || $first)) ? $product_data : $min_value; |
|
387 | 387 | } |
388 | 388 | $first = false; |
389 | 389 | } |
390 | 390 | $category_option['wpshop_category_filterable_attributes'][$attribute_def->id] = array('min' => $min_value, 'max' => $max_value); |
391 | 391 | } |
392 | 392 | /** Update the category option **/ |
393 | - update_option('wpshop_product_category_'.$category_id, $category_option); |
|
393 | + update_option('wpshop_product_category_' . $category_id, $category_option); |
|
394 | 394 | } |
395 | 395 | |
396 | 396 | /** |
@@ -399,66 +399,66 @@ discard block |
||
399 | 399 | * @param std_object $attribute_def |
400 | 400 | * @param array $current_category_child |
401 | 401 | */ |
402 | - function save_values_for_text_filterable_attribute ( $category_id, $attribute_def, $current_category_child ) { |
|
403 | - $category_option = get_option('wpshop_product_category_'.$category_id); |
|
404 | - $category_product_ids = wpshop_categories::get_product_of_category( $category_id ); |
|
402 | + function save_values_for_text_filterable_attribute($category_id, $attribute_def, $current_category_child) { |
|
403 | + $category_option = get_option('wpshop_product_category_' . $category_id); |
|
404 | + $category_product_ids = wpshop_categories::get_product_of_category($category_id); |
|
405 | 405 | /** If there are sub-categories take all products of sub-categories **/ |
406 | 406 | $list_values = array(); |
407 | - if ( !empty($current_category_children) ) { |
|
408 | - foreach ( $current_category_children as $current_category_child ) { |
|
409 | - $sub_categories_product_ids = wpshop_categories::get_product_of_category( $current_category_child->term_taxonomy_id ); |
|
410 | - if ( !empty($sub_categories_product_ids) ) { |
|
411 | - foreach ( $sub_categories_product_ids as $sub_categories_product_id ) { |
|
412 | - if ( !in_array($sub_categories_product_id, $category_product_ids) ) { |
|
407 | + if (!empty($current_category_children)) { |
|
408 | + foreach ($current_category_children as $current_category_child) { |
|
409 | + $sub_categories_product_ids = wpshop_categories::get_product_of_category($current_category_child->term_taxonomy_id); |
|
410 | + if (!empty($sub_categories_product_ids)) { |
|
411 | + foreach ($sub_categories_product_ids as $sub_categories_product_id) { |
|
412 | + if (!in_array($sub_categories_product_id, $category_product_ids)) { |
|
413 | 413 | $category_product_ids[] = $sub_categories_product_id; |
414 | 414 | } |
415 | 415 | } |
416 | 416 | } |
417 | 417 | } |
418 | 418 | } |
419 | - if ( !empty($category_option) && !empty($category_option['wpshop_category_filterable_attributes']) && !empty($category_option['wpshop_category_filterable_attributes'][$attribute_def->id]) ) { |
|
420 | - if ( !empty( $category_product_ids ) ) { |
|
419 | + if (!empty($category_option) && !empty($category_option['wpshop_category_filterable_attributes']) && !empty($category_option['wpshop_category_filterable_attributes'][$attribute_def->id])) { |
|
420 | + if (!empty($category_product_ids)) { |
|
421 | 421 | $product_data = ''; |
422 | - foreach ( $category_product_ids as $category_product_id ) { |
|
422 | + foreach ($category_product_ids as $category_product_id) { |
|
423 | 423 | $product_postmeta = get_post_meta($category_product_id, WPSHOP_PRODUCT_ATTRIBUTE_META_KEY, true); |
424 | - $product_data = ( !empty($product_postmeta[$attribute_def->code]) ) ? $product_postmeta[$attribute_def->code] : ''; |
|
425 | - if ( !in_array( $product_data, $list_values) ) { |
|
424 | + $product_data = (!empty($product_postmeta[$attribute_def->code])) ? $product_postmeta[$attribute_def->code] : ''; |
|
425 | + if (!in_array($product_data, $list_values)) { |
|
426 | 426 | $list_values[] = $product_data; |
427 | - if ( !empty($product_data) ) { |
|
427 | + if (!empty($product_data)) { |
|
428 | 428 | $category_option['wpshop_category_filterable_attributes'][$attribute_def->id][] = $product_data; |
429 | 429 | } |
430 | 430 | } |
431 | 431 | } |
432 | 432 | } |
433 | 433 | } |
434 | - update_option('wpshop_product_category_'.$category_id, $category_option); |
|
434 | + update_option('wpshop_product_category_' . $category_id, $category_option); |
|
435 | 435 | } |
436 | 436 | |
437 | 437 | /** |
438 | 438 | * Save the price which is displayed on website |
439 | 439 | */ |
440 | - public static function save_displayed_price_meta( $product_id = 0 ) { |
|
441 | - $ID = !empty( $_POST['ID'] ) ? (int) $_POST['ID'] : 0; |
|
442 | - $post_type = !empty( $_POST['post_type'] ) ? sanitize_text_field( $_POST['post_type'] ) : ''; |
|
440 | + public static function save_displayed_price_meta($product_id = 0) { |
|
441 | + $ID = !empty($_POST['ID']) ? (int)$_POST['ID'] : 0; |
|
442 | + $post_type = !empty($_POST['post_type']) ? sanitize_text_field($_POST['post_type']) : ''; |
|
443 | 443 | |
444 | - if ( !empty( $product_id ) || ( !empty( $ID ) && !empty($post_type) && $post_type == WPSHOP_NEWTYPE_IDENTIFIER_PRODUCT ) ) { |
|
445 | - $product_id = !empty( $product_id ) ? $product_id : $ID; |
|
444 | + if (!empty($product_id) || (!empty($ID) && !empty($post_type) && $post_type == WPSHOP_NEWTYPE_IDENTIFIER_PRODUCT)) { |
|
445 | + $product_id = !empty($product_id) ? $product_id : $ID; |
|
446 | 446 | |
447 | 447 | $price_piloting = get_option('wpshop_shop_price_piloting'); |
448 | 448 | $product_data = wpshop_products::get_product_data($product_id); |
449 | 449 | $price_infos = wpshop_prices::check_product_price($product_data); |
450 | 450 | |
451 | - if ( !empty($price_infos) ) { |
|
452 | - if ( !empty($price_infos['discount']) && !empty($price_infos['discount']['discount_exist']) ) { |
|
453 | - $displayed_price = ( !empty($price_piloting) && $price_piloting == 'HT') ? $price_infos['discount']['discount_et_price'] : $price_infos['discount']['discount_ati_price']; |
|
451 | + if (!empty($price_infos)) { |
|
452 | + if (!empty($price_infos['discount']) && !empty($price_infos['discount']['discount_exist'])) { |
|
453 | + $displayed_price = (!empty($price_piloting) && $price_piloting == 'HT') ? $price_infos['discount']['discount_et_price'] : $price_infos['discount']['discount_ati_price']; |
|
454 | 454 | } |
455 | - else if( !empty($price_infos['fork_price']) && !empty($price_infos['fork_price']['have_fork_price']) ) { |
|
455 | + else if (!empty($price_infos['fork_price']) && !empty($price_infos['fork_price']['have_fork_price'])) { |
|
456 | 456 | $displayed_price = $price_infos['fork_price']['min_product_price']; |
457 | 457 | } |
458 | 458 | else { |
459 | - $displayed_price = ( !empty($price_piloting) && $price_piloting == 'HT') ? $price_infos['et'] : $price_infos['ati']; |
|
459 | + $displayed_price = (!empty($price_piloting) && $price_piloting == 'HT') ? $price_infos['et'] : $price_infos['ati']; |
|
460 | 460 | } |
461 | - update_post_meta($product_id, '_wpshop_displayed_price', number_format($displayed_price,2, '.','') ); |
|
461 | + update_post_meta($product_id, '_wpshop_displayed_price', number_format($displayed_price, 2, '.', '')); |
|
462 | 462 | } |
463 | 463 | } |
464 | 464 | } |
@@ -467,19 +467,19 @@ discard block |
||
467 | 467 | * Save values for attributes |
468 | 468 | * @param unknown_type $values |
469 | 469 | */ |
470 | - function stock_values_for_attribute( $categories_id = array() ) { |
|
471 | - @set_time_limit( 900 ); |
|
470 | + function stock_values_for_attribute($categories_id = array()) { |
|
471 | + @set_time_limit(900); |
|
472 | 472 | |
473 | - $tax_input = ( !empty( $_POST['tax_input'] ) && !empty( $_POST['tax_input']['wpshop_product_category'] ) ) ? (int) $_POST['tax_input']['wpshop_product_category'] : ''; |
|
474 | - $post_type = !empty( $_POST['post_type'] ) ? sanitize_text_field( $_POST['post_type'] ) : ''; |
|
475 | - if ( !empty( $tax_input ) && !empty($post_type) && $post_type == WPSHOP_NEWTYPE_IDENTIFIER_PRODUCT ) { |
|
473 | + $tax_input = (!empty($_POST['tax_input']) && !empty($_POST['tax_input']['wpshop_product_category'])) ? (int)$_POST['tax_input']['wpshop_product_category'] : ''; |
|
474 | + $post_type = !empty($_POST['post_type']) ? sanitize_text_field($_POST['post_type']) : ''; |
|
475 | + if (!empty($tax_input) && !empty($post_type) && $post_type == WPSHOP_NEWTYPE_IDENTIFIER_PRODUCT) { |
|
476 | 476 | $categories_id = $tax_input; |
477 | 477 | } |
478 | 478 | |
479 | - if ( !empty( $categories_id ) ) { |
|
480 | - if ( $categories_id && is_array($categories_id) ) { |
|
481 | - foreach( $categories_id as $taxonomy_id ) { |
|
482 | - if ( $taxonomy_id != 0 ) { |
|
479 | + if (!empty($categories_id)) { |
|
480 | + if ($categories_id && is_array($categories_id)) { |
|
481 | + foreach ($categories_id as $taxonomy_id) { |
|
482 | + if ($taxonomy_id != 0) { |
|
483 | 483 | $current_category_children = array(); |
484 | 484 | $args = array( |
485 | 485 | 'type' => WPSHOP_NEWTYPE_IDENTIFIER_PRODUCT, |
@@ -488,23 +488,23 @@ discard block |
||
488 | 488 | ); |
489 | 489 | $current_category_children = get_categories($args); |
490 | 490 | |
491 | - $category_option = get_option('wpshop_product_category_'.$taxonomy_id); |
|
492 | - if ( !empty($category_option) && !empty($category_option['wpshop_category_filterable_attributes']) && is_array($category_option['wpshop_category_filterable_attributes']) ) { |
|
493 | - foreach ( $category_option['wpshop_category_filterable_attributes'] as $k => $filterable_attribute ) { |
|
491 | + $category_option = get_option('wpshop_product_category_' . $taxonomy_id); |
|
492 | + if (!empty($category_option) && !empty($category_option['wpshop_category_filterable_attributes']) && is_array($category_option['wpshop_category_filterable_attributes'])) { |
|
493 | + foreach ($category_option['wpshop_category_filterable_attributes'] as $k => $filterable_attribute) { |
|
494 | 494 | $attribute_def = wpshop_attributes::getElement($k); |
495 | - if ( !empty( $attribute_def) ) { |
|
496 | - switch ( $attribute_def->frontend_input ) { |
|
495 | + if (!empty($attribute_def)) { |
|
496 | + switch ($attribute_def->frontend_input) { |
|
497 | 497 | case 'text' : |
498 | - if ( $attribute_def->data_type == 'decimal' || $attribute_def->data_type == 'integer') { |
|
499 | - $this->save_values_for_integer_filterable_attribute( $taxonomy_id, $attribute_def, $current_category_children ); |
|
498 | + if ($attribute_def->data_type == 'decimal' || $attribute_def->data_type == 'integer') { |
|
499 | + $this->save_values_for_integer_filterable_attribute($taxonomy_id, $attribute_def, $current_category_children); |
|
500 | 500 | } |
501 | 501 | else { |
502 | - $this->save_values_for_text_filterable_attribute( $taxonomy_id, $attribute_def, $current_category_children ); |
|
502 | + $this->save_values_for_text_filterable_attribute($taxonomy_id, $attribute_def, $current_category_children); |
|
503 | 503 | } |
504 | 504 | break; |
505 | 505 | |
506 | 506 | case 'select' : case 'checkbox' : case 'radio' : case 'multiple-select' : |
507 | - $this->save_values_for_list_filterable_attribute( $taxonomy_id, $attribute_def, $current_category_children ); |
|
507 | + $this->save_values_for_list_filterable_attribute($taxonomy_id, $attribute_def, $current_category_children); |
|
508 | 508 | break; |
509 | 509 | |
510 | 510 | } |
@@ -522,22 +522,22 @@ discard block |
||
522 | 522 | * @param integer $category_id |
523 | 523 | * @return array |
524 | 524 | */ |
525 | - function pick_up_filter_search_elements_type ( $category_id ) { |
|
525 | + function pick_up_filter_search_elements_type($category_id) { |
|
526 | 526 | $filter_search_elements = array(); |
527 | - if ( !empty($category_id) ) { |
|
528 | - $category_option = get_option('wpshop_product_category_'.$category_id); |
|
529 | - if ( !empty($category_option) && !empty($category_option['wpshop_category_filterable_attributes']) ) { |
|
530 | - foreach ( $category_option['wpshop_category_filterable_attributes'] as $k => $attribute ) { |
|
527 | + if (!empty($category_id)) { |
|
528 | + $category_option = get_option('wpshop_product_category_' . $category_id); |
|
529 | + if (!empty($category_option) && !empty($category_option['wpshop_category_filterable_attributes'])) { |
|
530 | + foreach ($category_option['wpshop_category_filterable_attributes'] as $k => $attribute) { |
|
531 | 531 | $attribute_def = wpshop_attributes::getElement($k); |
532 | - if ( !empty($attribute_def) ) { |
|
533 | - if ( $attribute_def->frontend_input == 'text' ) { |
|
534 | - $filter_search_elements['_'.$attribute_def->code] = array('type' => 'fork_values'); |
|
532 | + if (!empty($attribute_def)) { |
|
533 | + if ($attribute_def->frontend_input == 'text') { |
|
534 | + $filter_search_elements['_' . $attribute_def->code] = array('type' => 'fork_values'); |
|
535 | 535 | } |
536 | - elseif( in_array( $attribute_def->frontend_input, array('checkbox', 'multiple-select', 'radio', 'select') ) ) { |
|
537 | - $filter_search_elements['_'.$attribute_def->code] = array('type' => 'multiple_select_value'); |
|
536 | + elseif (in_array($attribute_def->frontend_input, array('checkbox', 'multiple-select', 'radio', 'select'))) { |
|
537 | + $filter_search_elements['_' . $attribute_def->code] = array('type' => 'multiple_select_value'); |
|
538 | 538 | } |
539 | - elseif ( !in_array($attribute_def->frontend_input, array('hidden', 'textarea', 'password') ) ) { |
|
540 | - $filter_search_elements['_'.$attribute_def->code] = array('type' => 'select_value'); |
|
539 | + elseif (!in_array($attribute_def->frontend_input, array('hidden', 'textarea', 'password'))) { |
|
540 | + $filter_search_elements['_' . $attribute_def->code] = array('type' => 'select_value'); |
|
541 | 541 | } |
542 | 542 | } |
543 | 543 | } |
@@ -549,28 +549,28 @@ discard block |
||
549 | 549 | /** |
550 | 550 | * AJAX - Action to search with selected attributes values |
551 | 551 | */ |
552 | - function wpshop_ajax_filter_search_action () { |
|
553 | - $_wponce = !empty( $_REQUEST['_wpnonce'] ) ? sanitize_text_field( $_REQUEST['_wpnonce'] ) : ''; |
|
552 | + function wpshop_ajax_filter_search_action() { |
|
553 | + $_wponce = !empty($_REQUEST['_wpnonce']) ? sanitize_text_field($_REQUEST['_wpnonce']) : ''; |
|
554 | 554 | |
555 | - if ( !wp_verify_nonce( $_wpnonce, 'wpshop_ajax_filter_search_action' ) ) |
|
555 | + if (!wp_verify_nonce($_wpnonce, 'wpshop_ajax_filter_search_action')) |
|
556 | 556 | wp_die(); |
557 | 557 | |
558 | 558 | global $wpdb; |
559 | - $category_id = !empty($_POST['wpshop_filter_search_category_id']) ? wpshop_tools::varSanitizer( $_POST['wpshop_filter_search_category_id'] ) : 0; |
|
559 | + $category_id = !empty($_POST['wpshop_filter_search_category_id']) ? wpshop_tools::varSanitizer($_POST['wpshop_filter_search_category_id']) : 0; |
|
560 | 560 | $filter_search_elements = $this->pick_up_filter_search_elements_type($category_id); |
561 | - $page_id = ( !empty( $_POST['wpshop_filter_search_current_page_id']) ) ? wpshop_tools::varSanitizer( $_POST['wpshop_filter_search_current_page_id'] ) : 1; |
|
561 | + $page_id = (!empty($_POST['wpshop_filter_search_current_page_id'])) ? wpshop_tools::varSanitizer($_POST['wpshop_filter_search_current_page_id']) : 1; |
|
562 | 562 | $request_cmd = ''; |
563 | 563 | $status = false; |
564 | 564 | $data = array(); |
565 | - foreach ( $filter_search_elements as $k=>$filter_search_element) { |
|
566 | - $search = isset( $_REQUEST['filter_search'.$k] ) ? sanitize_text_field( $_REQUEST['filter_search'.$k] ) : ''; |
|
567 | - $amount_min = !isset( $_REQUEST['amount_min'.$k] ) ? 0 : sanitize_text_field( $_REQUEST['amount_min'.$k] ); |
|
568 | - $amount_max = !isset( $_REQUEST['amount_max'.$k] ) ? 0 : sanitize_text_field( $_REQUEST['amount_max'.$k] ); |
|
569 | - $datatype_element = array( 'select_value', 'multiple_select_value', 'fork_values'); |
|
570 | - if ( (in_array($filter_search_element['type'], $datatype_element) && ( isset($search) && $search == 'all_attribute_values' ) ) || |
|
571 | - ( ($filter_search_element['type'] == 'select_value' || $filter_search_element['type'] == 'multiple_select_value' ) && $search == '' ) || |
|
572 | - ( $filter_search_element['type'] == 'fork_values' && ( $amount_min == 0 || $amount_max == 0 ) ) ) { |
|
573 | - unset( $filter_search_elements[$k]); |
|
565 | + foreach ($filter_search_elements as $k=>$filter_search_element) { |
|
566 | + $search = isset($_REQUEST['filter_search' . $k]) ? sanitize_text_field($_REQUEST['filter_search' . $k]) : ''; |
|
567 | + $amount_min = !isset($_REQUEST['amount_min' . $k]) ? 0 : sanitize_text_field($_REQUEST['amount_min' . $k]); |
|
568 | + $amount_max = !isset($_REQUEST['amount_max' . $k]) ? 0 : sanitize_text_field($_REQUEST['amount_max' . $k]); |
|
569 | + $datatype_element = array('select_value', 'multiple_select_value', 'fork_values'); |
|
570 | + if ((in_array($filter_search_element['type'], $datatype_element) && (isset($search) && $search == 'all_attribute_values')) || |
|
571 | + (($filter_search_element['type'] == 'select_value' || $filter_search_element['type'] == 'multiple_select_value') && $search == '') || |
|
572 | + ($filter_search_element['type'] == 'fork_values' && ($amount_min == 0 || $amount_max == 0))) { |
|
573 | + unset($filter_search_elements[$k]); |
|
574 | 574 | } |
575 | 575 | } |
576 | 576 | $request_cmd = ''; |
@@ -589,8 +589,8 @@ discard block |
||
589 | 589 | /** Construct the array for SELECT query IN **/ |
590 | 590 | $categories_id = array(); |
591 | 591 | $categories_id[] = $category_id; |
592 | - if ( !empty($current_category_children) ) { |
|
593 | - foreach ( $current_category_children as $current_category_child ) { |
|
592 | + if (!empty($current_category_children)) { |
|
593 | + foreach ($current_category_children as $current_category_child) { |
|
594 | 594 | $categories_id[] = $current_category_child->term_taxonomy_id; |
595 | 595 | } |
596 | 596 | } |
@@ -599,55 +599,55 @@ discard block |
||
599 | 599 | $array_for_query = implode(',', $categories_id); |
600 | 600 | |
601 | 601 | /** SQL request Construct for pick up all product with one of filter search element value **/ |
602 | - if ( !empty( $filter_search_elements ) ) { |
|
603 | - foreach ( $filter_search_elements as $k=>$filter_search_element ) { |
|
604 | - $search = isset( $_REQUEST['filter_search'.$k] ) ? sanitize_text_field( $_REQUEST['filter_search'.$k] ) : ''; |
|
605 | - $amount_min = !isset( $_REQUEST['amount_min'.$k] ) ? 0 : sanitize_text_field( $_REQUEST['amount_min'.$k] ); |
|
606 | - $amount_max = !isset( $_REQUEST['amount_max'.$k] ) ? 0 : sanitize_text_field( $_REQUEST['amount_max'.$k] ); |
|
607 | - |
|
608 | - if ( !empty($filter_search_element['type']) && !empty($search) && $filter_search_element['type'] == 'select_value' && $search != 'all_attribute_values') { |
|
609 | - $request_cmd .= 'SELECT meta_key, post_id FROM ' .$wpdb->postmeta. ' INNER JOIN ' .$wpdb->posts. ' ON post_id = ID WHERE (meta_key = "'.$k.'" AND meta_value = "'.$search.'") AND post_type = "'.WPSHOP_NEWTYPE_IDENTIFIER_PRODUCT.'" AND post_status = "publish" '; |
|
610 | - $request_cmd .= ' AND post_id IN (SELECT object_id FROM '.$wpdb->term_relationships.' WHERE term_taxonomy_id IN ('.$array_for_query.') ) '; |
|
602 | + if (!empty($filter_search_elements)) { |
|
603 | + foreach ($filter_search_elements as $k=>$filter_search_element) { |
|
604 | + $search = isset($_REQUEST['filter_search' . $k]) ? sanitize_text_field($_REQUEST['filter_search' . $k]) : ''; |
|
605 | + $amount_min = !isset($_REQUEST['amount_min' . $k]) ? 0 : sanitize_text_field($_REQUEST['amount_min' . $k]); |
|
606 | + $amount_max = !isset($_REQUEST['amount_max' . $k]) ? 0 : sanitize_text_field($_REQUEST['amount_max' . $k]); |
|
607 | + |
|
608 | + if (!empty($filter_search_element['type']) && !empty($search) && $filter_search_element['type'] == 'select_value' && $search != 'all_attribute_values') { |
|
609 | + $request_cmd .= 'SELECT meta_key, post_id FROM ' . $wpdb->postmeta . ' INNER JOIN ' . $wpdb->posts . ' ON post_id = ID WHERE (meta_key = "' . $k . '" AND meta_value = "' . $search . '") AND post_type = "' . WPSHOP_NEWTYPE_IDENTIFIER_PRODUCT . '" AND post_status = "publish" '; |
|
610 | + $request_cmd .= ' AND post_id IN (SELECT object_id FROM ' . $wpdb->term_relationships . ' WHERE term_taxonomy_id IN (' . $array_for_query . ') ) '; |
|
611 | 611 | } |
612 | - else if($filter_search_element['type'] == 'fork_values') { |
|
613 | - $request_cmd .= 'SELECT meta_key, post_id FROM ' .$wpdb->postmeta. ' INNER JOIN ' .$wpdb->posts. ' ON post_id = ID WHERE (meta_key = "'.( ( !empty($k) && $k == '_product_price' ) ? '_wpshop_displayed_price' : $k).'" AND meta_value BETWEEN '.$amount_min.' AND '.$amount_max.') AND post_type = "'.WPSHOP_NEWTYPE_IDENTIFIER_PRODUCT.'" AND post_status = "publish"'; |
|
614 | - $request_cmd .= ' AND post_id IN (SELECT object_id FROM '.$wpdb->term_relationships.' WHERE term_taxonomy_id IN ('.$array_for_query.') ) '; |
|
612 | + else if ($filter_search_element['type'] == 'fork_values') { |
|
613 | + $request_cmd .= 'SELECT meta_key, post_id FROM ' . $wpdb->postmeta . ' INNER JOIN ' . $wpdb->posts . ' ON post_id = ID WHERE (meta_key = "' . ((!empty($k) && $k == '_product_price') ? '_wpshop_displayed_price' : $k) . '" AND meta_value BETWEEN ' . $amount_min . ' AND ' . $amount_max . ') AND post_type = "' . WPSHOP_NEWTYPE_IDENTIFIER_PRODUCT . '" AND post_status = "publish"'; |
|
614 | + $request_cmd .= ' AND post_id IN (SELECT object_id FROM ' . $wpdb->term_relationships . ' WHERE term_taxonomy_id IN (' . $array_for_query . ') ) '; |
|
615 | 615 | } |
616 | - else if( $filter_search_element['type'] == 'multiple_select_value' ) { |
|
616 | + else if ($filter_search_element['type'] == 'multiple_select_value') { |
|
617 | 617 | /** Check the attribute id **/ |
618 | 618 | $attribute_def = wpshop_attributes::getElement(substr($k, 1), "'valid'", 'code'); |
619 | - if ( !empty($attribute_def) ) { |
|
620 | - $request_cmd .= 'SELECT CONCAT("_", code) AS meta_key, ATT_INT.entity_id AS post_id FROM ' .WPSHOP_DBT_ATTRIBUTE. ', '.WPSHOP_DBT_ATTRIBUTE_VALUES_INTEGER.' AS ATT_INT WHERE attribute_id = id AND attribute_id = '.$attribute_def->id; |
|
619 | + if (!empty($attribute_def)) { |
|
620 | + $request_cmd .= 'SELECT CONCAT("_", code) AS meta_key, ATT_INT.entity_id AS post_id FROM ' . WPSHOP_DBT_ATTRIBUTE . ', ' . WPSHOP_DBT_ATTRIBUTE_VALUES_INTEGER . ' AS ATT_INT WHERE attribute_id = id AND attribute_id = ' . $attribute_def->id; |
|
621 | 621 | $first = true; |
622 | - if ( !empty($search) && is_array($search) ){ |
|
623 | - foreach ( $search as $r ) { |
|
624 | - if ( $first) { |
|
625 | - $request_cmd .= ' AND (value ="' . $r. '"'; |
|
622 | + if (!empty($search) && is_array($search)) { |
|
623 | + foreach ($search as $r) { |
|
624 | + if ($first) { |
|
625 | + $request_cmd .= ' AND (value ="' . $r . '"'; |
|
626 | 626 | $first = false; |
627 | 627 | } |
628 | 628 | else { |
629 | - $request_cmd .= ' OR value ="' . $r. '"'; |
|
629 | + $request_cmd .= ' OR value ="' . $r . '"'; |
|
630 | 630 | } |
631 | 631 | } |
632 | 632 | $request_cmd .= ')'; |
633 | 633 | } |
634 | - elseif( !empty($search) ) { |
|
634 | + elseif (!empty($search)) { |
|
635 | 635 | $request_cmd .= ' AND (value ="' . $search . '" )'; |
636 | 636 | } |
637 | - $request_cmd .= ' AND ATT_INT.entity_id IN (SELECT object_id FROM '.$wpdb->term_relationships.' WHERE term_taxonomy_id IN ('.$array_for_query.') ) '; |
|
637 | + $request_cmd .= ' AND ATT_INT.entity_id IN (SELECT object_id FROM ' . $wpdb->term_relationships . ' WHERE term_taxonomy_id IN (' . $array_for_query . ') ) '; |
|
638 | 638 | |
639 | 639 | |
640 | 640 | } |
641 | 641 | } |
642 | 642 | |
643 | 643 | |
644 | - if ($i < count($filter_search_elements) ) { |
|
644 | + if ($i < count($filter_search_elements)) { |
|
645 | 645 | $request_cmd .= ' UNION '; |
646 | 646 | } |
647 | 647 | $i++; |
648 | 648 | } |
649 | 649 | } else { |
650 | - $request_cmd .= 'SELECT object_id FROM '.$wpdb->term_relationships.' WHERE term_taxonomy_id IN ('.$array_for_query.')'; |
|
650 | + $request_cmd .= 'SELECT object_id FROM ' . $wpdb->term_relationships . ' WHERE term_taxonomy_id IN (' . $array_for_query . ')'; |
|
651 | 651 | } |
652 | 652 | /** SQL Request execution **/ |
653 | 653 | $query = $wpdb->prepare($request_cmd, ''); |
@@ -661,9 +661,9 @@ discard block |
||
661 | 661 | |
662 | 662 | $last = ''; |
663 | 663 | /** Transform the query result array **/ |
664 | - foreach ( $results as $result ) { |
|
665 | - $result->meta_key = ( !empty($result->meta_key) && $result->meta_key == '_wpshop_displayed_price' ) ? '_product_price' : $result->meta_key; |
|
666 | - if ( $last != $result->meta_key ){ |
|
664 | + foreach ($results as $result) { |
|
665 | + $result->meta_key = (!empty($result->meta_key) && $result->meta_key == '_wpshop_displayed_price') ? '_product_price' : $result->meta_key; |
|
666 | + if ($last != $result->meta_key) { |
|
667 | 667 | $filter_search_elements[$result->meta_key]['count'] = 1; |
668 | 668 | $last = $result->meta_key; |
669 | 669 | } |
@@ -677,12 +677,12 @@ discard block |
||
677 | 677 | /** Check the smaller array of attributes **/ |
678 | 678 | $smaller_array = ''; |
679 | 679 | $smaller_array_count = -1; |
680 | - foreach ( $filter_search_elements as $k=>$filter_search_element ) { |
|
681 | - if ( empty($filter_search_element['count']) ) { |
|
680 | + foreach ($filter_search_elements as $k=>$filter_search_element) { |
|
681 | + if (empty($filter_search_element['count'])) { |
|
682 | 682 | $smaller_array_count = 0; |
683 | 683 | $smaller_array = $k; |
684 | 684 | } |
685 | - elseif( $smaller_array_count == -1 || $filter_search_element['count'] <= $smaller_array_count ) { |
|
685 | + elseif ($smaller_array_count == -1 || $filter_search_element['count'] <= $smaller_array_count) { |
|
686 | 686 | $smaller_array_count = $filter_search_element['count']; |
687 | 687 | $smaller_array = $k; |
688 | 688 | } |
@@ -690,21 +690,21 @@ discard block |
||
690 | 690 | } |
691 | 691 | |
692 | 692 | /** Compare the smaller array with the others **/ |
693 | - if ( !empty($smaller_array_count) ) { |
|
693 | + if (!empty($smaller_array_count)) { |
|
694 | 694 | $temp_tab = $filter_search_elements[$smaller_array]['values']; |
695 | - foreach ( $filter_search_elements as $filter_search) { |
|
696 | - foreach ( $temp_tab as $value ) { |
|
697 | - if ( !in_array($value, $filter_search['values']) ) { |
|
695 | + foreach ($filter_search_elements as $filter_search) { |
|
696 | + foreach ($temp_tab as $value) { |
|
697 | + if (!in_array($value, $filter_search['values'])) { |
|
698 | 698 | /** If value don't exist in the smaller array, delete it **/ |
699 | 699 | $key = array_key_exists($value, $temp_tab); |
700 | - if ( $key ) { |
|
700 | + if ($key) { |
|
701 | 701 | unset($temp_tab[$value]); |
702 | 702 | } |
703 | 703 | } |
704 | 704 | } |
705 | 705 | } |
706 | 706 | /** Final result to display the products **/ |
707 | - if ( !empty( $temp_tab) ) { |
|
707 | + if (!empty($temp_tab)) { |
|
708 | 708 | $final_result = $temp_tab; |
709 | 709 | } |
710 | 710 | } |
@@ -713,21 +713,21 @@ discard block |
||
713 | 713 | } |
714 | 714 | |
715 | 715 | $products_count = count($final_result); |
716 | - $products_count = sprintf(__('%s products corresponds to your search.', 'wpshop'),$products_count) ; |
|
716 | + $products_count = sprintf(__('%s products corresponds to your search.', 'wpshop'), $products_count); |
|
717 | 717 | |
718 | 718 | /** If there is products for this filter search **/ |
719 | 719 | $status = true; |
720 | - if ( !empty($final_result) ) { |
|
720 | + if (!empty($final_result)) { |
|
721 | 721 | $data['status'] = true; |
722 | - $data['result'] = do_shortcode( '[wpshop_products pid="' . implode(',', $final_result) . '" container="no" ]' ) ; |
|
722 | + $data['result'] = do_shortcode('[wpshop_products pid="' . implode(',', $final_result) . '" container="no" ]'); |
|
723 | 723 | $data['products_count'] = $products_count; |
724 | 724 | } |
725 | 725 | else { |
726 | 726 | $data['status'] = false; |
727 | - $data['result'] = '<div class="container_product_listing">'.__('There is no product for this filter search.', 'wpshop').'</div>'; |
|
727 | + $data['result'] = '<div class="container_product_listing">' . __('There is no product for this filter search.', 'wpshop') . '</div>'; |
|
728 | 728 | $data['products_count'] = __('No products corresponds to your search', 'wpshop'); |
729 | 729 | } |
730 | - echo json_encode( $data ); |
|
730 | + echo json_encode($data); |
|
731 | 731 | die(); |
732 | 732 | } |
733 | 733 | } |
@@ -1,4 +1,6 @@ discard block |
||
1 | -<?php if ( !defined( 'ABSPATH' ) ) exit; |
|
1 | +<?php if ( !defined( 'ABSPATH' ) ) { |
|
2 | + exit; |
|
3 | +} |
|
2 | 4 | class wps_filter_search { |
3 | 5 | |
4 | 6 | /** Define the main directory containing the template for the current plugin |
@@ -106,8 +108,7 @@ discard block |
||
106 | 108 | case 'text' : |
107 | 109 | if ( $attribute_def->data_type == 'decimal' || $attribute_def->data_type == 'integer') { |
108 | 110 | return $this->get_filter_element_for_integer_data( $attribute_def, $category_id, $current_category_children ); |
109 | - } |
|
110 | - else { |
|
111 | + } else { |
|
111 | 112 | return $this->get_filter_element_for_text_data( $attribute_def, $category_id, $current_category_children ); |
112 | 113 | } |
113 | 114 | break; |
@@ -187,8 +188,7 @@ discard block |
||
187 | 188 | } |
188 | 189 | } |
189 | 190 | } |
190 | - } |
|
191 | - else { |
|
191 | + } else { |
|
192 | 192 | foreach ( $attributes_options as $attributes_option ) { |
193 | 193 | if ( in_array($attributes_option->label, $available_attribute_values) ) { |
194 | 194 | $key_value = array_search( $attributes_option->label, $available_attribute_values); |
@@ -224,8 +224,7 @@ discard block |
||
224 | 224 | require( wpshop_tools::get_template_part( WPS_SEARCH_DIR, $this->template_dir, "frontend", "filter_search/filter_elements/element_multiple_select") ); |
225 | 225 | $output = ob_get_contents(); |
226 | 226 | ob_end_clean(); |
227 | - } |
|
228 | - else { |
|
227 | + } else { |
|
229 | 228 | ob_start(); |
230 | 229 | require( wpshop_tools::get_template_part( WPS_SEARCH_DIR, $this->template_dir, "frontend", "filter_search/filter_elements/element_combobox") ); |
231 | 230 | $output = ob_get_contents(); |
@@ -308,8 +307,7 @@ discard block |
||
308 | 307 | foreach( $available_attribute_values as $k => $available_attribute_value ) { |
309 | 308 | if ( $attribute_def->data_type_to_use == 'internal' ) { |
310 | 309 | $attribute_name = get_the_title( $k ); |
311 | - } |
|
312 | - else { |
|
310 | + } else { |
|
313 | 311 | $query = $wpdb->prepare( 'SELECT label FROM ' .WPSHOP_DBT_ATTRIBUTE_VALUES_OPTIONS. ' WHERE attribute_id = %d AND id = %d', $attribute_def->id, $k); |
314 | 312 | |
315 | 313 | $attribute_name = $wpdb->get_var( $query ); |
@@ -365,21 +363,18 @@ discard block |
||
365 | 363 | |
366 | 364 | $max_value = ( !empty($product_price_infos['fork_price']['max_product_price']) && $product_price_infos['fork_price']['max_product_price'] > $max_value ) ? $product_price_infos['fork_price']['max_product_price'] : $max_value; |
367 | 365 | $min_value = (!empty($product_price_infos['fork_price']['min_product_price']) && ( ( $product_price_infos['fork_price']['min_product_price'] < $min_value) || $first ) ) ? $product_price_infos['fork_price']['min_product_price'] : $min_value; |
368 | - } |
|
369 | - else { |
|
366 | + } else { |
|
370 | 367 | if (!empty($product_price_infos) && !empty($product_price_infos['discount']) && !empty($product_price_infos['discount']['discount_exist'] ) && $product_price_infos['discount']['discount_exist'] ) { |
371 | 368 | $product_data = (!empty($price_piloting_option) && $price_piloting_option == 'HT') ? $product_price_infos['discount']['discount_et_price'] : $product_price_infos['discount']['discount_ati_price']; |
372 | 369 | |
373 | - } |
|
374 | - else { |
|
370 | + } else { |
|
375 | 371 | |
376 | 372 | $product_data = (!empty($price_piloting_option) && $price_piloting_option == 'HT') ? $product_price_infos['et'] : $product_price_infos['ati']; |
377 | 373 | } |
378 | 374 | $max_value = ( !empty($product_data) && $product_data > $max_value ) ? $product_data : $max_value; |
379 | 375 | $min_value = (!empty($product_data) && ( ( $product_data < $min_value) || $first ) ) ? $product_data : $min_value; |
380 | 376 | } |
381 | - } |
|
382 | - else { |
|
377 | + } else { |
|
383 | 378 | $product_postmeta = get_post_meta($category_product_id, WPSHOP_PRODUCT_ATTRIBUTE_META_KEY, true); |
384 | 379 | $product_data = $product_postmeta[$attribute_def->code]; |
385 | 380 | $max_value = ( !empty($product_data) && $product_data > $max_value ) ? $product_data : $max_value; |
@@ -451,11 +446,9 @@ discard block |
||
451 | 446 | if ( !empty($price_infos) ) { |
452 | 447 | if ( !empty($price_infos['discount']) && !empty($price_infos['discount']['discount_exist']) ) { |
453 | 448 | $displayed_price = ( !empty($price_piloting) && $price_piloting == 'HT') ? $price_infos['discount']['discount_et_price'] : $price_infos['discount']['discount_ati_price']; |
454 | - } |
|
455 | - else if( !empty($price_infos['fork_price']) && !empty($price_infos['fork_price']['have_fork_price']) ) { |
|
449 | + } else if( !empty($price_infos['fork_price']) && !empty($price_infos['fork_price']['have_fork_price']) ) { |
|
456 | 450 | $displayed_price = $price_infos['fork_price']['min_product_price']; |
457 | - } |
|
458 | - else { |
|
451 | + } else { |
|
459 | 452 | $displayed_price = ( !empty($price_piloting) && $price_piloting == 'HT') ? $price_infos['et'] : $price_infos['ati']; |
460 | 453 | } |
461 | 454 | update_post_meta($product_id, '_wpshop_displayed_price', number_format($displayed_price,2, '.','') ); |
@@ -497,8 +490,7 @@ discard block |
||
497 | 490 | case 'text' : |
498 | 491 | if ( $attribute_def->data_type == 'decimal' || $attribute_def->data_type == 'integer') { |
499 | 492 | $this->save_values_for_integer_filterable_attribute( $taxonomy_id, $attribute_def, $current_category_children ); |
500 | - } |
|
501 | - else { |
|
493 | + } else { |
|
502 | 494 | $this->save_values_for_text_filterable_attribute( $taxonomy_id, $attribute_def, $current_category_children ); |
503 | 495 | } |
504 | 496 | break; |
@@ -532,11 +524,9 @@ discard block |
||
532 | 524 | if ( !empty($attribute_def) ) { |
533 | 525 | if ( $attribute_def->frontend_input == 'text' ) { |
534 | 526 | $filter_search_elements['_'.$attribute_def->code] = array('type' => 'fork_values'); |
535 | - } |
|
536 | - elseif( in_array( $attribute_def->frontend_input, array('checkbox', 'multiple-select', 'radio', 'select') ) ) { |
|
527 | + } elseif( in_array( $attribute_def->frontend_input, array('checkbox', 'multiple-select', 'radio', 'select') ) ) { |
|
537 | 528 | $filter_search_elements['_'.$attribute_def->code] = array('type' => 'multiple_select_value'); |
538 | - } |
|
539 | - elseif ( !in_array($attribute_def->frontend_input, array('hidden', 'textarea', 'password') ) ) { |
|
529 | + } elseif ( !in_array($attribute_def->frontend_input, array('hidden', 'textarea', 'password') ) ) { |
|
540 | 530 | $filter_search_elements['_'.$attribute_def->code] = array('type' => 'select_value'); |
541 | 531 | } |
542 | 532 | } |
@@ -552,8 +542,9 @@ discard block |
||
552 | 542 | function wpshop_ajax_filter_search_action () { |
553 | 543 | $_wponce = !empty( $_REQUEST['_wpnonce'] ) ? sanitize_text_field( $_REQUEST['_wpnonce'] ) : ''; |
554 | 544 | |
555 | - if ( !wp_verify_nonce( $_wpnonce, 'wpshop_ajax_filter_search_action' ) ) |
|
556 | - wp_die(); |
|
545 | + if ( !wp_verify_nonce( $_wpnonce, 'wpshop_ajax_filter_search_action' ) ) { |
|
546 | + wp_die(); |
|
547 | + } |
|
557 | 548 | |
558 | 549 | global $wpdb; |
559 | 550 | $category_id = !empty($_POST['wpshop_filter_search_category_id']) ? wpshop_tools::varSanitizer( $_POST['wpshop_filter_search_category_id'] ) : 0; |
@@ -608,12 +599,10 @@ discard block |
||
608 | 599 | if ( !empty($filter_search_element['type']) && !empty($search) && $filter_search_element['type'] == 'select_value' && $search != 'all_attribute_values') { |
609 | 600 | $request_cmd .= 'SELECT meta_key, post_id FROM ' .$wpdb->postmeta. ' INNER JOIN ' .$wpdb->posts. ' ON post_id = ID WHERE (meta_key = "'.$k.'" AND meta_value = "'.$search.'") AND post_type = "'.WPSHOP_NEWTYPE_IDENTIFIER_PRODUCT.'" AND post_status = "publish" '; |
610 | 601 | $request_cmd .= ' AND post_id IN (SELECT object_id FROM '.$wpdb->term_relationships.' WHERE term_taxonomy_id IN ('.$array_for_query.') ) '; |
611 | - } |
|
612 | - else if($filter_search_element['type'] == 'fork_values') { |
|
602 | + } else if($filter_search_element['type'] == 'fork_values') { |
|
613 | 603 | $request_cmd .= 'SELECT meta_key, post_id FROM ' .$wpdb->postmeta. ' INNER JOIN ' .$wpdb->posts. ' ON post_id = ID WHERE (meta_key = "'.( ( !empty($k) && $k == '_product_price' ) ? '_wpshop_displayed_price' : $k).'" AND meta_value BETWEEN '.$amount_min.' AND '.$amount_max.') AND post_type = "'.WPSHOP_NEWTYPE_IDENTIFIER_PRODUCT.'" AND post_status = "publish"'; |
614 | 604 | $request_cmd .= ' AND post_id IN (SELECT object_id FROM '.$wpdb->term_relationships.' WHERE term_taxonomy_id IN ('.$array_for_query.') ) '; |
615 | - } |
|
616 | - else if( $filter_search_element['type'] == 'multiple_select_value' ) { |
|
605 | + } else if( $filter_search_element['type'] == 'multiple_select_value' ) { |
|
617 | 606 | /** Check the attribute id **/ |
618 | 607 | $attribute_def = wpshop_attributes::getElement(substr($k, 1), "'valid'", 'code'); |
619 | 608 | if ( !empty($attribute_def) ) { |
@@ -624,14 +613,12 @@ discard block |
||
624 | 613 | if ( $first) { |
625 | 614 | $request_cmd .= ' AND (value ="' . $r. '"'; |
626 | 615 | $first = false; |
627 | - } |
|
628 | - else { |
|
616 | + } else { |
|
629 | 617 | $request_cmd .= ' OR value ="' . $r. '"'; |
630 | 618 | } |
631 | 619 | } |
632 | 620 | $request_cmd .= ')'; |
633 | - } |
|
634 | - elseif( !empty($search) ) { |
|
621 | + } elseif( !empty($search) ) { |
|
635 | 622 | $request_cmd .= ' AND (value ="' . $search . '" )'; |
636 | 623 | } |
637 | 624 | $request_cmd .= ' AND ATT_INT.entity_id IN (SELECT object_id FROM '.$wpdb->term_relationships.' WHERE term_taxonomy_id IN ('.$array_for_query.') ) '; |
@@ -666,9 +653,9 @@ discard block |
||
666 | 653 | if ( $last != $result->meta_key ){ |
667 | 654 | $filter_search_elements[$result->meta_key]['count'] = 1; |
668 | 655 | $last = $result->meta_key; |
656 | + } else { |
|
657 | + $filter_search_elements[$result->meta_key]['count']++; |
|
669 | 658 | } |
670 | - else |
|
671 | - $filter_search_elements[$result->meta_key]['count']++; |
|
672 | 659 | |
673 | 660 | $filter_search_elements[$result->meta_key]['values'][$result->post_id] = $result->post_id; |
674 | 661 | } |
@@ -681,8 +668,7 @@ discard block |
||
681 | 668 | if ( empty($filter_search_element['count']) ) { |
682 | 669 | $smaller_array_count = 0; |
683 | 670 | $smaller_array = $k; |
684 | - } |
|
685 | - elseif( $smaller_array_count == -1 || $filter_search_element['count'] <= $smaller_array_count ) { |
|
671 | + } elseif( $smaller_array_count == -1 || $filter_search_element['count'] <= $smaller_array_count ) { |
|
686 | 672 | $smaller_array_count = $filter_search_element['count']; |
687 | 673 | $smaller_array = $k; |
688 | 674 | } |
@@ -707,8 +693,7 @@ discard block |
||
707 | 693 | if ( !empty( $temp_tab) ) { |
708 | 694 | $final_result = $temp_tab; |
709 | 695 | } |
710 | - } |
|
711 | - else { |
|
696 | + } else { |
|
712 | 697 | $final_result = array(); |
713 | 698 | } |
714 | 699 | |
@@ -721,8 +706,7 @@ discard block |
||
721 | 706 | $data['status'] = true; |
722 | 707 | $data['result'] = do_shortcode( '[wpshop_products pid="' . implode(',', $final_result) . '" container="no" ]' ) ; |
723 | 708 | $data['products_count'] = $products_count; |
724 | - } |
|
725 | - else { |
|
709 | + } else { |
|
726 | 710 | $data['status'] = false; |
727 | 711 | $data['result'] = '<div class="container_product_listing">'.__('There is no product for this filter search.', 'wpshop').'</div>'; |
728 | 712 | $data['products_count'] = __('No products corresponds to your search', 'wpshop'); |