Changeset 2894136
- Timestamp:
- 04/05/2023 07:46:25 AM (3 years ago)
- Location:
- primer-mydata/trunk
- Files:
-
- 8 edited
-
README.txt (modified) (2 diffs)
-
admin/includes/primer-admin-options.php (modified) (3 diffs)
-
admin/includes/primer-admin-table.php (modified) (1 diff)
-
includes/class-primer-cron.php (modified) (4 diffs)
-
includes/class-primer.php (modified) (3 diffs)
-
includes/template-tags/primer-tags-display-modules.php (modified) (1 diff)
-
primer.php (modified) (3 diffs)
-
views/get_order_list.php (modified) (36 diffs)
Legend:
- Unmodified
- Added
- Removed
-
primer-mydata/trunk/README.txt
r2885707 r2894136 5 5 Tested up to: 6.1.1 6 6 Requires PHP: 7.4 7 Stable tag: 2.9.07 Stable tag: 3.0.0 8 8 License: GPLv2 9 9 License URI: https://www.gnu.org/licenses/gpl-2.0.html … … 155 155 = 2.9.0 - 2023-03-23 = 156 156 * Fix fatal error with Autoloader class that is being declared in other plugins 157 = 3.0.0 - 2023-03-29 = 158 * Optimization for orders search page -
primer-mydata/trunk/admin/includes/primer-admin-options.php
r2884889 r2894136 41 41 public function __construct() { 42 42 add_action('admin_menu', array(&$this, 'menu')); 43 add_filter('show_admin_bar', array(&$this, 'hide_adminbar'));44 43 add_action('plugins_loaded', array(&$this, "plugins_loaded")); 45 44 add_action('wp_print_scripts', array(&$this, 'data_include_script')); … … 69 68 } 70 69 } 71 72 public function hide_adminbar() {73 74 //Never show admin toolbar if the user is not even logged in75 if (!is_user_logged_in()) {76 return false;77 }78 79 if (current_user_can('administrator')) {80 //This is an admin user so show the tooldbar81 return true;82 }83 84 return false;85 }86 87 70 88 71 public function menu() { … … 5967 5950 ), 5968 5951 ); 5969 5970 5952 $html = file_get_contents($url, false, stream_context_create($arrContextOptions)); 5971 5953 -
primer-mydata/trunk/admin/includes/primer-admin-table.php
r2884889 r2894136 276 276 <div class="loadingio-spinner-spinner-chyosfc7wi6"><div class="ldio-drsjmtezgls"><div></div><div></div><div></div><div></div><div></div><div></div><div></div><div></div><div></div><div></div><div></div><div></div></div></div> 277 277 <?php 278 $orders_dates = $primer_orders->get_dates_from_orders($current_page); 279 if (!empty($orders_dates) && is_array($orders_dates)) { 280 $min_order_date = min($orders_dates); 281 $max_order_date = max($orders_dates); 282 } else { 283 $min_order_date = time(); 284 $max_order_date = time(); 285 } 286 278 $min_order_date = time(); 279 $max_order_date = time(); 287 280 $formatted_min_order_date = date('m/d/Y', $min_order_date); 288 281 $formatted_max_order_date = date('m/d/Y', $max_order_date); -
primer-mydata/trunk/includes/class-primer-cron.php
r2884889 r2894136 14 14 public function __construct() { 15 15 add_action( 'primer_cron_save_settings', array( $this, 'primer_save_automation_data' )); 16 add_action('primer_cron_process', array( $this, 'convert_order_to_invoice' ) );17 add_action('primer_cron_process_failed', array( $this, 'convert_order_to_invoice_failed' ) );18 add_action('primer_cron_process_credit_failed', array( $this, 'primer_cancel_invoice_cron' ) );16 add_action('primer_cron_process', array( $this, 'convert_order_to_invoice' ), 1); 17 add_action('primer_cron_process_failed', array( $this, 'convert_order_to_invoice_failed' ), 1); 18 add_action('primer_cron_process_credit_failed', array( $this, 'primer_cancel_invoice_cron' ), 1); 19 19 add_action('wp_ajax_primer_fire_cron', array( $this, 'ajax_fire_cron' )); 20 20 add_action( 'primer_cron_save_settings', array( $this, 'primer_save_export_data' )); … … 22 22 add_action('wp_ajax_export_invoice_to_report', array( $this, 'export_invoice_to_report' )); 23 23 add_action('wp_ajax_primer_get_woocommerce_tax_rates', array( $this, 'primer_get_woocommerce_tax_rates' )); 24 add_action('primer_cron_primer_license_remaining', array(&$this, 'primer_cron_license_remaining') );24 add_action('primer_cron_primer_license_remaining', array(&$this, 'primer_cron_license_remaining'), 1); 25 25 } 26 26 public function primer_save_automation_data() { … … 32 32 if ($current_schedule !== $automation_duration) { 33 33 wp_clear_scheduled_hook('primer_cron_process'); 34 wp_schedule_event( time(), $automation_duration, 'primer_cron_process' );34 wp_schedule_event( time(), $automation_duration, 'primer_cron_process'); 35 35 } elseif (!$next_timestamp) { 36 wp_schedule_event( time(), $automation_duration, 'primer_cron_process' );36 wp_schedule_event( time(), $automation_duration, 'primer_cron_process'); 37 37 } 38 38 if (!empty($automation_options) && !empty($activation_automation)) { 39 39 wp_clear_scheduled_hook('primer_cron_process'); 40 wp_schedule_event( time(), $automation_duration, 'primer_cron_process' );40 wp_schedule_event( time(), $automation_duration, 'primer_cron_process'); 41 41 } else { 42 42 wp_clear_scheduled_hook( 'primer_cron_process' ); … … 52 52 if ($current_schedule !== $automation_export_duration) { 53 53 wp_clear_scheduled_hook('primer_cron_export_process'); 54 wp_schedule_event( time(), $automation_export_duration, 'primer_cron_export_process' );54 wp_schedule_event( time(), $automation_export_duration, 'primer_cron_export_process'); 55 55 } elseif (!$next_timestamp) { 56 wp_schedule_event( time(), $automation_export_duration, 'primer_cron_export_process' );56 wp_schedule_event( time(), $automation_export_duration, 'primer_cron_export_process'); 57 57 } 58 58 if (!empty($export_options) && !empty($activation_automation_export)) { 59 59 wp_clear_scheduled_hook('primer_cron_export_process'); 60 wp_schedule_event( time(), $automation_export_duration, 'primer_cron_export_process' );60 wp_schedule_event( time(), $automation_export_duration, 'primer_cron_export_process'); 61 61 } else { 62 62 wp_clear_scheduled_hook( 'primer_cron_process' ); -
primer-mydata/trunk/includes/class-primer.php
r2884889 r2894136 199 199 $this->loader->add_filter( 'admin_notices', $plugin_admin, 'custom_admin_notices' ); 200 200 $this->loader->add_filter('cron_schedules', $plugin_admin, 'intervals'); 201 add_filter( 'woocommerce_get_wp_query_args', function( $wp_query_args, $query_vars ){ 202 if ( isset( $query_vars['meta_query'] ) ) { 203 $meta_query = isset( $wp_query_args['meta_query'] ) ? $wp_query_args['meta_query'] : []; 204 $wp_query_args['meta_query'] = array_merge( $meta_query, $query_vars['meta_query'] ); 205 } 206 return $wp_query_args; 207 }, 10, 2 ); 201 208 202 209 $general_settings = get_option('primer_generals'); … … 215 222 $primer_licenses = get_option('primer_licenses'); 216 223 $plugin_modules = ''; 217 define('WP_CRON_LOCK_TIMEOUT', 600);224 define('WP_CRON_LOCK_TIMEOUT', 5); 218 225 $exist_modules = array(); 219 226 … … 260 267 $next_timestamp = wp_next_scheduled( 'primer_cron_export_process' ); 261 268 wp_clear_scheduled_hook('primer_cron_export_process'); 262 wp_schedule_event( time(), $automation_export_duration, 'primer_cron_export_process' );269 wp_schedule_event( time(), $automation_export_duration, 'primer_cron_export_process'); 263 270 } 264 271 }, 10, 4); -
primer-mydata/trunk/includes/template-tags/primer-tags-display-modules.php
r2885707 r2894136 683 683 $customer_country = $order_customer_country; 684 684 $order_comment = $order->get_customer_note(); 685 $order_comment_all = $order->get_customer_order_notes();686 685 if ($order_customer_country == 'GR') { 687 686 $issuer_comment .= '<div class="cont_notation"><span class="skin bold">ΠΑΡΑΤΗΡΗΣΕΙΣ:</span> -
primer-mydata/trunk/primer.php
r2885707 r2894136 18 18 * Plugin URI: primer.gr/plugin/ 19 19 * Description: Issue receipts and invoices with woocommerce. 20 * Version: 2.9.020 * Version: 3.0.0 21 21 * Author: Primer Software 22 22 * Author URI: primer.gr … … 36 36 * Rename this for your plugin and update it as you release new versions. 37 37 */ 38 define( 'PRIMER_VERSION', ' 2.9.0' );38 define( 'PRIMER_VERSION', '3.0.0' ); 39 39 define( 'PRIMER_NAME', 'Primer MyData' ); 40 40 … … 115 115 } 116 116 add_action('wp_ajax_primer_timologio_for_wc_aade_fill', 'primer_timologio_for_wc_aade_fill'); 117 117 add_action('wp_ajax_nopriv_primer_timologio_for_wc_aade_fill', 'primer_timologio_for_wc_aade_fill'); 118 118 function primer_check_if_aade_isalive($timeout = 3) { 119 119 $url="https://www1.gsis.gr/wsaade/RgWsPublic2/RgWsPublic2?WSDL"; -
primer-mydata/trunk/views/get_order_list.php
r2884889 r2894136 7 7 public $orders_customers = array(); 8 8 9 public $orders_date_range = array();10 11 9 public function get($page_number) { 12 10 $primer_licenses = get_option('primer_licenses'); 13 $plugin_modules = '';14 $exist_modules = array();15 if (!empty($primer_licenses)) {16 if (isset($primer_licenses['wpModules'])) {17 $exist_modules = $primer_licenses['wpModules'];18 }19 }20 if (!empty($exist_modules)) {21 asort($exist_modules, SORT_NUMERIC);22 $plugin_modules = primer_plugin_allowed_functions($exist_modules);23 }24 25 11 $posts_per_page = 20; 26 12 $order_count = 0; 27 13 $paged = $page_number; 28 $orders = wc_get_orders( array('posts_per_page' => $posts_per_page, 14 $orders = wc_get_orders( array( 15 'posts_per_page' => $posts_per_page, 29 16 'paged' => $paged, 17 'offset' => ($paged - 1) * $posts_per_page, 30 18 'limit' => 20)); 31 $order_inside_ids = array();32 19 foreach ( $orders as $order ) { 33 20 if (is_a($order, 'WC_Order_Refund')) { 34 21 $order = wc_get_order($order->get_parent_id()); 35 22 } 36 $ order_id= $order->get_id();37 $receipt_order_status = get_post_meta($ order_id, 'receipt_status', true);23 $id_of_order = $order->get_id(); 24 $receipt_order_status = get_post_meta($id_of_order, 'receipt_status', true); 38 25 if (empty($receipt_order_status)) { 39 update_post_meta($order_id, 'receipt_status', 'not_issued'); 40 } 41 42 $order_invoice_type = get_post_meta($order_id, '_billing_invoice_type', true); 43 26 update_post_meta($id_of_order, 'receipt_status', 'not_issued'); 27 } 28 $order_invoice_type = get_post_meta($id_of_order, '_billing_invoice_type', true); 44 29 if ((in_array(2, $primer_licenses['wpModules'])) && !in_array(3, $primer_licenses['wpModules']) && !in_array(4, $primer_licenses['wpModules'])) { 45 30 if (($order_invoice_type !== 'primer_invoice' && $order_invoice_type !== 'invoice')) { 46 31 foreach ( $order->get_items() as $item_id => $item_data ) { 47 $id_of_order = $item_data->get_order_id();48 $order_paid_date = null;49 $order_paid_hour = null;50 32 $transmission_failure = get_post_meta($id_of_order, 'transmission_failure_check', true); 51 33 $failed_48 = get_post_meta($id_of_order, 'failed_48',true); … … 57 39 $order_paid_hour = date( 'H:i:s', $order->get_date_created()->getTimestamp()); 58 40 } 59 60 41 $order_total_price = $order->get_total(); 61 $user_id = $order->get_user_id();62 42 $user = $order->get_user(); 63 43 $user_first_name = $order->get_billing_first_name(); … … 79 59 $receipt_date = get_the_date('F j, Y', $exist_receipt_id[0]); 80 60 } 81 82 61 $log_for_order = get_post_meta($id_of_order, 'log_id_for_order', true); 83 84 $receipt_status_from_meta_url = '';85 62 if (!empty($log_for_order)) { 86 63 $log_type = get_post_type($log_for_order); … … 102 79 $transmission_failure_message = 'Αδυναμία Αποστόλης HTML'; 103 80 } 104 105 81 $this->orders_array[$order_count]['order_id'] = $id_of_order; 106 82 $this->orders_array[$order_count]['order_date'] = $order_paid_date; … … 126 102 $order_country = $order->get_billing_country(); 127 103 if ($order_country == 'GR') { 128 129 104 foreach ( $order->get_items() as $item_id => $item_data ) { 130 $id_of_order = $item_data->get_order_id();131 $order_paid_date = null;132 $order_paid_hour = null;133 105 $transmission_failure = get_post_meta($id_of_order, 'transmission_failure_check', true); 134 106 $failed_48 = get_post_meta($id_of_order, 'failed_48',true); … … 141 113 $order_paid_hour = date( 'H:i:s', $order->get_date_created()->getTimestamp()); 142 114 } 143 144 115 $order_total_price = $order->get_total(); 145 $user_id = $order->get_user_id();146 116 $user = $order->get_user(); 147 117 $user_first_name = $order->get_billing_first_name(); … … 164 134 } 165 135 $log_for_order = get_post_meta($id_of_order, 'log_id_for_order', true); 166 $receipt_status_from_meta_url = '';167 136 if (!empty($log_for_order)) { 168 137 $log_type = get_post_type($log_for_order); … … 184 153 $transmission_failure_message = 'Αδυναμία Αποστόλης HTML'; 185 154 } 186 187 155 $this->orders_array[$order_count]['order_id'] = $id_of_order; 188 156 $this->orders_array[$order_count]['order_date'] = $order_paid_date; … … 209 177 if ($order_country !== 'GR') { 210 178 foreach ( $order->get_items() as $item_id => $item_data ) { 211 $id_of_order = $item_data->get_order_id();212 $order_create_date = date( 'F j, Y', $order->get_date_created()->getOffsetTimestamp());213 $order_paid_date = null;214 $order_paid_hour = null;215 179 $transmission_failure = get_post_meta($id_of_order, 'transmission_failure_check', true); 216 180 $failed_48 = get_post_meta($id_of_order, 'failed_48',true); 217 218 181 if (!empty($order->get_date_paid())) { 219 182 $order_paid_date = date( 'F j, Y', $order->get_date_paid()->getTimestamp()); … … 223 186 $order_paid_hour = date( 'H:i:s', $order->get_date_created()->getTimestamp()); 224 187 } 225 226 188 $order_total_price = $order->get_total(); 227 $user_id = $order->get_user_id();228 189 $user = $order->get_user(); 229 190 $user_first_name = $order->get_billing_first_name(); … … 245 206 $receipt_date = get_the_date('F j, Y', $exist_receipt_id[0]); 246 207 } 247 248 208 $log_for_order = get_post_meta($id_of_order, 'log_id_for_order', true); 249 $receipt_status_from_meta_url = '';250 209 if (!empty($log_for_order)) { 251 210 $log_type = get_post_type($log_for_order); … … 267 226 $transmission_failure_message = 'Αδυναμία Αποστόλης HTML'; 268 227 } 269 270 271 228 $this->orders_array[$order_count]['order_id'] = $id_of_order; 272 229 $this->orders_array[$order_count]['order_date'] = $order_paid_date; … … 281 238 $this->orders_array[$order_count]['receipt_date'] = $receipt_date; 282 239 $this->orders_array[$order_count]['credit_receipt_date'] = $credit_receipt_date; 283 $this->orders_array[$order_count]['receipt_status'] = /*$receipt_status_from_meta_text*/$receipt_status_from_meta_url;240 $this->orders_array[$order_count]['receipt_status'] = $receipt_status_from_meta_url; 284 241 $this->orders_array[$order_count]['receipt_id'] = $exist_receipt_id ? $exist_receipt_id[0] : ''; 285 242 $this->orders_array[$order_count]['credit_receipt_id'] = $exist_credit_id ? $exist_credit_id[0] : ''; … … 290 247 elseif (in_array(2, $primer_licenses['wpModules']) && in_array(3, $primer_licenses['wpModules']) && in_array(4, $primer_licenses['wpModules'])) { 291 248 foreach ( $order->get_items() as $item_id => $item_data ) { 292 $id_of_order = $item_data->get_order_id();293 $order_create_date = date( 'F j, Y', $order->get_date_created()->getOffsetTimestamp());294 $order_paid_date = null;295 $order_paid_hour = null;296 249 $transmission_failure = get_post_meta($id_of_order, 'transmission_failure_check', true); 297 250 $failed_48 = get_post_meta($id_of_order, 'failed_48',true); … … 304 257 $order_paid_hour = date( 'H:i:s', $order->get_date_created()->getTimestamp()); 305 258 } 306 307 259 $order_total_price = $order->get_total(); 308 $user_id = $order->get_user_id();309 260 $user = $order->get_user(); 310 261 $user_first_name = $order->get_billing_first_name(); … … 328 279 $receipt_date = get_the_date('F j, Y', $exist_receipt_id[0]); 329 280 } 330 331 281 $log_for_order = get_post_meta($id_of_order, 'log_id_for_order', true); 332 333 $receipt_status_from_meta_url = '';334 282 if (!empty($log_for_order)) { 335 283 $log_type = get_post_type($log_for_order); … … 351 299 $transmission_failure_message = 'Αδυναμία Αποστόλης HTML'; 352 300 } 353 354 301 $this->orders_array[$order_count]['order_id'] = $id_of_order; 355 302 $this->orders_array[$order_count]['order_date'] = $order_paid_date; … … 364 311 $this->orders_array[$order_count]['receipt_date'] = $receipt_date; 365 312 $this->orders_array[$order_count]['credit_receipt_date'] = $credit_receipt_date; 366 $this->orders_array[$order_count]['receipt_status'] = /*$receipt_status_from_meta_text*/$receipt_status_from_meta_url;313 $this->orders_array[$order_count]['receipt_status'] = $receipt_status_from_meta_url; 367 314 $this->orders_array[$order_count]['receipt_id'] = $exist_receipt_id ? $exist_receipt_id[0] : ''; 368 315 $this->orders_array[$order_count]['credit_receipt_id'] = $exist_credit_id ? $exist_credit_id[0] : ''; … … 373 320 $order_country = $order->get_billing_country(); 374 321 if ($order_country == 'GR') { 375 376 322 foreach ( $order->get_items() as $item_id => $item_data ) { 377 $id_of_order = $item_data->get_order_id();378 $order_create_date = date( 'F j, Y', $order->get_date_created()->getOffsetTimestamp());379 $order_paid_date = null;380 $order_paid_hour = null;381 323 $transmission_failure = get_post_meta($id_of_order, 'transmission_failure_check', true); 382 324 $failed_48 = get_post_meta($id_of_order, 'failed_48',true); … … 389 331 $order_paid_hour = date( 'H:i:s', $order->get_date_created()->getTimestamp()); 390 332 } 391 392 333 $order_total_price = $order->get_total(); 393 $user_id = $order->get_user_id();394 334 $user = $order->get_user(); 395 335 $user_first_name = $order->get_billing_first_name(); … … 413 353 $receipt_date = get_the_date('F j, Y', $exist_receipt_id[0]); 414 354 } 415 416 355 $log_for_order = get_post_meta($id_of_order, 'log_id_for_order', true); 417 418 $receipt_status_from_meta_url = '';419 356 if (!empty($log_for_order)) { 420 357 $log_type = get_post_type($log_for_order); … … 460 397 if ($order_country == 'GR' && $order_invoice_type !== 'invoice') { 461 398 foreach ( $order->get_items() as $item_id => $item_data ) { 462 $id_of_order = $item_data->get_order_id();463 $order_create_date = date( 'F j, Y', $order->get_date_created()->getOffsetTimestamp());464 $order_paid_date = null;465 $order_paid_hour = null;466 399 $transmission_failure = get_post_meta($id_of_order, 'transmission_failure_check', true); 467 400 $failed_48 = get_post_meta($id_of_order, 'failed_48',true); 468 469 401 if (!empty($order->get_date_paid())) { 470 402 $order_paid_date = date( 'F j, Y', $order->get_date_paid()->getTimestamp()); … … 474 406 $order_paid_hour = date( 'H:i:s', $order->get_date_created()->getTimestamp()); 475 407 } 476 477 408 $order_total_price = $order->get_total(); 478 $user_id = $order->get_user_id();479 409 $user = $order->get_user(); 480 410 $user_first_name = $order->get_billing_first_name(); … … 498 428 $receipt_date = get_the_date('F j, Y', $exist_receipt_id[0]); 499 429 } 500 501 430 $log_for_order = get_post_meta($id_of_order, 'log_id_for_order', true); 502 503 $receipt_status_from_meta_url = '';504 431 if (!empty($log_for_order)) { 505 432 $log_type = get_post_type($log_for_order); … … 521 448 $transmission_failure_message = 'Αδυναμία Αποστόλης HTML'; 522 449 } 523 524 450 $this->orders_array[$order_count]['order_id'] = $id_of_order; 525 451 $this->orders_array[$order_count]['order_date'] = $order_paid_date; … … 545 471 if (($order_country == 'GR' && $order_invoice_type !== 'receipt') || ($order_country !== 'GR')) { 546 472 foreach ( $order->get_items() as $item_id => $item_data ) { 547 $id_of_order = $item_data->get_order_id();548 $order_create_date = date( 'F j, Y', $order->get_date_created()->getOffsetTimestamp());549 $order_paid_date = null;550 $order_paid_hour = null;551 473 $transmission_failure = get_post_meta($id_of_order, 'transmission_failure_check', true); 552 474 $failed_48 = get_post_meta($id_of_order, 'failed_48',true); 553 554 475 if (!empty($order->get_date_paid())) { 555 476 $order_paid_date = date( 'F j, Y', $order->get_date_paid()->getTimestamp()); … … 559 480 $order_paid_hour = date( 'H:i:s', $order->get_date_created()->getTimestamp()); 560 481 } 561 562 482 $order_total_price = $order->get_total(); 563 $user_id = $order->get_user_id();564 483 $user = $order->get_user(); 565 484 $user_first_name = $order->get_billing_first_name(); … … 583 502 $receipt_date = get_the_date('F j, Y', $exist_receipt_id[0]); 584 503 } 585 586 504 $log_for_order = get_post_meta($id_of_order, 'log_id_for_order', true); 587 588 $receipt_status_from_meta_url = '';589 505 if (!empty($log_for_order)) { 590 506 $log_type = get_post_type($log_for_order); … … 606 522 $transmission_failure_message = 'Αδυναμία Αποστόλης HTML'; 607 523 } 608 609 524 $this->orders_array[$order_count]['order_id'] = $id_of_order; 610 525 $this->orders_array[$order_count]['order_date'] = $order_paid_date; … … 627 542 } 628 543 } 629 if($order_count >= 498){630 ?>631 <div class="error" id="many_orders_notice" style="padding:6px;"close="dismiss">632 <p>633 <?php634 printf( __( 'Only the last 500 orders are displayed. If you want to see older orders you can search with the following filters.', 'primer' ));635 ?>636 <button style="float:right;"value="Dismiss" class="button" onclick="close_error(value);">Dismiss</button>637 </p>638 <script>639 function close_error(value){640 var close = document.getElementById('many_orders_notice');641 console.log(close.id);642 if(close.id === 'many_orders_notice') {643 close.style.display = 'none';644 close.id = 'Never show it';645 }646 }647 648 </script>649 </div>650 <?php651 }652 544 return $this->orders_array; 653 545 } … … 660 552 'paged' => $paged, 661 553 'limit' => 20)); 662 $order_inside_ids = array();663 554 foreach ( $orders as $order_id ) { 664 555 $order = new WC_Order( $order_id ); … … 742 633 return $this->orders_customers; 743 634 } 744 745 public function get_dates_from_orders($page_number) {746 747 $posts_per_page = 20;748 $order_count = 0;749 $paged = $page_number;750 $orders = wc_get_orders( array('posts_per_page' => $posts_per_page,751 'paged' => $paged,752 'limit' => 20));753 foreach ( $orders as $order_id ) {754 $order = new WC_Order( $order_id );755 foreach ( $order->get_items() as $item_id => $item_data ) {756 $id_of_order = $item_data->get_order_id();757 758 $order_create_date = date( 'F j, Y', $order->get_date_created()->getTimestamp());759 $order_paid_date = null;760 $order_paid_hour = null;761 if (!empty($order->get_date_paid())) {762 $order_paid_date = date( 'F j, Y', $order->get_date_paid()->getTimestamp());763 $order_paid_hour = date( 'H:i:s', $order->get_date_paid()->getTimestamp());764 }765 766 $order_total_price = $order->get_total();767 $user_id = $order->get_user_id();768 $user = $order->get_user();769 $currency = $order->get_currency();770 $currency_symbol = get_woocommerce_currency_symbol( $currency );771 $payment_method = $order->get_payment_method();772 $payment_title = $order->get_payment_method_title();773 $product_name = $item_data->get_name();774 $order_status = $order->get_status();775 $this->orders_date_range[] = strtotime($order_create_date);776 777 }778 $order_count++;779 }780 return $this->orders_date_range;781 }782 783 635 public function get_with_params($page_number,$order_date_from, $order_date_to, $order_customer, $order_status, $order_receipt_status) { 784 636 global $woocommerce; … … 786 638 $paged = $page_number; 787 639 $primer_licenses = get_option('primer_licenses'); 788 $plugin_modules = '';789 $exist_modules = array();790 if (!empty($primer_licenses)) {791 if (isset($primer_licenses['wpModules'])) {792 $exist_modules = $primer_licenses['wpModules'];793 }794 }795 if (!empty($exist_modules)) {796 asort($exist_modules, SORT_NUMERIC);797 $plugin_modules = primer_plugin_allowed_functions($exist_modules);798 }799 800 640 $order_status = $_GET['primer_order_status'] ?? ''; 801 641 $search_term = trim( sanitize_text_field( wp_unslash( $_GET['s'] ?? '' ) ) ); … … 810 650 'order' => 'DESC', 811 651 'posts_per_page' => $posts_per_page, 812 'paged' => $paged 652 'paged' => $paged, 813 653 ); 814 654 if($order_status != ''){ … … 819 659 $order_args['post__in'] = array(intval(sanitize_text_field( wp_unslash( $_GET['s'] )))); 820 660 } 821 $order_args2 = $order_args;822 661 823 662 // receipt_status 824 663 $order_args['meta_key'] = '_customer_user'; 825 664 $order_args['meta_value'] = sanitize_text_field($_GET['primer_order_client']); 826 827 665 if (!empty($_GET['primer_receipt_status'])) { 828 666 // $order_args['meta_key'] = 'receipt_status'; 829 667 // $order_args['meta_value'] = sanitize_text_field($_GET['primer_receipt_status']); 830 668 if(sanitize_text_field($_GET['primer_receipt_status']) == 'not_issued'){ 831 $order_args['meta_key'] = 'receipt_status'; 832 $order_args['meta_compare'] = 'NOT EXISTS'; 833 $order_args2['meta_key'] = 'receipt_status'; 834 $order_args2['meta_value'] = 'issued'; 835 $order_args2['meta_compare'] = 'NOT IN'; 669 $order_args['meta_query'] = array( 670 'relation' => 'OR', 671 array( 672 'key' => 'receipt_status', 673 'value' => 'not_issued', 674 'compare' => '=', 675 ), 676 array( 677 'key' => 'receipt_status', 678 'compare' => 'NOT EXISTS', 679 ), 680 ); 836 681 } else { 837 682 $order_args['meta_key'] = 'receipt_status'; … … 858 703 $order_args['date_created'] = '>=' . $date_after; 859 704 } 860 861 705 $query_orders = wc_get_orders($order_args); 862 update_post_meta(5656,"gfddf78899",$order_args );863 $query_orders2 = wc_get_orders($order_args2);864 if (!empty($_GET['primer_order_client']) && !empty($_GET['primer_receipt_status'])) {865 $unique_query_orders = array_intersect($query_orders, $query_orders2);866 $query_orders = $unique_query_orders;867 }868 869 706 $orders = $query_orders; 707 update_post_meta(1212,"dfgdf123g", $order_args); 708 update_post_meta(1212,"dfgdfg", $orders); 870 709 $order_count = 0; 871 710 foreach ( $orders as $order_id ) {
Note: See TracChangeset
for help on using the changeset viewer.