PluginProbe
Welcart e-Commerce / 2.12.3
Welcart e-Commerce v2.12.3
2.12.3 2.11.35 2.12.2 2.12.1 2.11.34 2.11.33 2.11.32 2.11.31 2.11.30 1.3.16 1.3.17 1.3.2 1.3.3 1.3.4 1.3.5 1.3.6 1.3.7 1.3.8 1.3.9 1.4.0 1.4.1 1.4.10 1.4.11 1.4.12 1.4.13 All 291 releases
usc-e-shop / classes / logger.class.php

logger.class.php in Welcart e-Commerce 2.12.3, at classes/logger.class.php

1,250 lines 34.5 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2 /**
3 * The Logger class.
4 *
5 * @since 2.7.4
6 * @package Welcart
7 * @author Collne Inc.
8 * @since 2.7.4
9 */
10
11 /**
12 * The Logger class
13 */
14 class Logger {
15 /**
16 * The instance of the Logger class.
17 *
18 * @since 2.7.4
19 * @access public
20 * @var object $logger The Logger instance.
21 */
22 public static $logger;
23
24 /**
25 * The entity type.
26 *
27 * @since 2.7.4
28 * @access private
29 * @var string $entity_type The entity type.
30 */
31 private $entity_type;
32
33 /**
34 * The action.
35 *
36 * @since 2.7.4
37 * @access private
38 * @var string $action The action.
39 */
40 private $action;
41
42 /**
43 * The entity id.
44 *
45 * @since 2.7.4
46 * @access private
47 * @var string $entity_id The entity id.
48 */
49 private $entity_id;
50
51 /**
52 * The ignored flag
53 *
54 * @since 2.7.4
55 * @access private
56 * @var boolean $ignored The ignored flag.
57 */
58 private $ignored = false;
59
60 /**
61 * The differed flag
62 *
63 * @since 2.7.4
64 * @access private
65 * @var boolean $differed The differed flag.
66 */
67 private $differed = false;
68
69 /**
70 * The comparable flag
71 *
72 * @since 2.7.4
73 * @access private
74 * @var boolean $compared_mode The comparable flag.
75 */
76 private $compared_mode = true;
77
78 /**
79 * The data.
80 *
81 * @since 2.7.4
82 * @access private
83 * @var array $data The data.
84 */
85 private $data = array();
86
87 /**
88 * The advance data.
89 *
90 * @since 2.7.4
91 * @access private
92 * @var array $advance_data The data.
93 */
94 private $advance_data = array();
95
96 private $screen;
97
98 /**
99 * Constructor
100 *
101 * @param integer $entity_id The entity id.
102 * @param string $screen The screen id.
103 * @param string $action The action.
104 */
105 private function __construct( $entity_id, $screen, $action ) {
106 $this->entity_id = $entity_id;
107 $this->screen = $screen;
108 $this->action = $action;
109 }
110
111 /**
112 * Save a log into database.
113 *
114 * @param integer $entity_id The entity id.
115 * @param string $screen The screen id.
116 * @param string $action The action.
117 * @param array $advance_data The advance data.
118 */
119 public static function log( $entity_id, $screen, $action, $advance_data = array() ) {
120 $logger = self::get_instance( $entity_id, $screen, $action );
121 if ( $logger->is_enabled() ) {
122 $logger->set_advance_data( $advance_data );
123 $logger->set_after_data();
124
125 $logger->prepare_display_data();
126
127 $logger->save();
128 }
129 }
130
131 /**
132 * Set entity id.
133 *
134 * @since 2.7.4
135 * @access public
136 * @param integer $entity_id The entity id.
137 * @param string $screen The screen id.
138 * @param string $action The action.
139 * @return Object $logger The Logger object.
140 */
141 public static function start( $entity_id, $screen, $action ) {
142 $logger = self::get_instance( $entity_id, $screen, $action );
143 if ( $logger->is_enabled() ) {
144 $logger->set_before_data();
145 }
146
147 return $logger;
148 }
149
150 /**
151 * Compare the before data and the after data.
152 * If they are diffirent, insert the current log into database
153 *
154 * @since 2.7.4
155 * @access public
156 */
157 public function flush() {
158 if ( $this->is_enabled() ) {
159 $this->set_after_data();
160 $this->prepare_display_data();
161
162 $logged = ! $this->ignored;
163 if ( $logged ) {
164 $this->save();
165 }
166 }
167 }
168
169 /**
170 * Save an admin log into the database.
171 *
172 * @since 2.7.4
173 * @access private
174 * @return void
175 */
176 private function save() {
177 global $wpdb;
178
179 $current_user = wp_get_current_user();
180 $author = ( isset( $current_user->user_login ) ) ? $current_user->user_login : '';
181 $datetime = get_date_from_gmt( gmdate( 'Y-m-d H:i:s', time() ) );
182 $data = maybe_serialize( $this->data );
183 $admin_log_table = $wpdb->prefix . 'usces_admin_log';
184
185 $wpdb->insert(
186 $admin_log_table,
187 array(
188 'author' => $author,
189 'message' => $this->message(),
190 'data' => $data,
191 'entity_id' => $this->entity_id,
192 'action' => $this->action,
193 'datetime' => $datetime,
194 'screen' => $this->screen,
195 )
196 );
197 }
198
199 /**
200 * Prepare the display data.
201 *
202 * @since 2.7.4
203 * @access private
204 * @return void
205 */
206 private function prepare_display_data() {
207 $comparable = ! empty( $this->data['before'] ) && ! empty( $this->data['after'] );
208 $this->set_compared_mode( $comparable );
209 $display_data = $this->prepare_display_fields();
210
211 switch ( $this->action ) {
212 case 'update':
213 $this->ignored = ! $this->differed;
214 $this->data['differed'] = $this->differed;
215 break;
216 case 'delete':
217 unset( $this->data['after'] );
218 break;
219 case 'create':
220 unset( $this->data['before'] );
221 break;
222 }
223
224 $this->data['display_data'] = $display_data;
225 }
226
227 /**
228 * Get list of the display fields
229 *
230 * @since 2.7.4
231 * @access private
232 * @return array $display_fields The display fields.
233 */
234 private function get_display_fields() {
235 switch ( $this->screen ) {
236 case 'orderlist':
237 case 'ordernew':
238 case 'orderedit':
239 $display_fields = $this->get_order_display_fields();
240 break;
241 case 'memberlist':
242 case 'membernew':
243 case 'memberedit':
244 $display_fields = $this->get_member_display_fields();
245 break;
246 }
247
248 return $display_fields;
249 }
250
251 /**
252 * Set the compare mode.
253 *
254 * @since 2.7.4
255 * @access private
256 * @param boolean $mode The mode.
257 * @return void
258 */
259 private function set_compared_mode( $mode ) {
260 $this->compared_mode = $mode;
261 }
262
263 /**
264 * Set the before entity data.
265 *
266 * @since 2.7.4
267 * @access private
268 * @return void
269 */
270 private function set_before_data() {
271 $this->data['before'] = $this->get_entity_data();
272 }
273
274 /**
275 * Set the after entity data.
276 *
277 * @since 2.7.4
278 * @access private
279 * @return void
280 */
281 private function set_after_data() {
282 $this->data['after'] = $this->get_entity_data();
283 }
284
285 /**
286 * Set the advance data.
287 *
288 * @since 2.7.4
289 * @access private
290 * @param array $advance_data The advance data.
291 * @return void
292 */
293 private function set_advance_data( $advance_data ) {
294 $this->advance_data = $advance_data;
295 }
296
297 /**
298 * Set entity type.
299 *
300 * @since 2.7.4
301 * @access private
302 * @return void
303 */
304 private function set_entity_type() {
305 switch ( $this->screen ) {
306 case 'orderlist':
307 case 'ordernew':
308 case 'orderedit':
309 $this->entity_type = 'order';
310 break;
311 case 'memberlist':
312 case 'membernew':
313 case 'memberedit':
314 $this->entity_type = 'member';
315 break;
316 default:
317 $this->entity_type = '';
318 }
319 }
320
321 /**
322 * Get the entity data from database.
323 *
324 * @since 2.7.4
325 * @access private
326 * @return array $entity_data The entity data.
327 */
328 private function get_entity_data() {
329 global $usces;
330 switch ( $this->entity_type ) {
331 case 'order':
332 $entity_data = $this->get_order_data();
333 break;
334 case 'member':
335 $entity_data = $this->get_member_data();
336 break;
337 default:
338 $entity_data = array();
339 }
340
341 if ( ! empty( $this->advance_data ) ) {
342 foreach ( $this->advance_data as $field_name => $field_data ) {
343 $entity_data[ $field_name ] = $field_data;
344 }
345 }
346
347 return $entity_data;
348 }
349
350 /**
351 * Get the order data by the order id.
352 *
353 * @since 2.7.4
354 * @access private
355 * @return array $order_data The order data.
356 */
357 private function get_order_data() {
358 global $usces;
359 $order_id = $this->entity_id;
360 $order_data = $usces->get_order_data( $order_id, 'direct' );
361 $cart = usces_get_ordercartdata( $order_id );
362 $order_data['order_cart'] = serialize( $cart );
363 $order_data['custom_order'] = $this->get_custom_order_data( 'order', $order_id );
364 $order_data['order_summary'] = $this->get_order_summary_data( $order_data );
365 $order_data['custom_customer'] = $this->get_custom_order_data( 'customer', $order_id );
366 $order_data['custom_delivery'] = $this->get_custom_order_data( 'delivery', $order_id );
367 $other_custom_order = $this->get_custom_order_data( 'other', $order_id );
368 $order_data = array_merge( $order_data, $other_custom_order );
369
370 return $order_data;
371 }
372
373 /**
374 * Get the member data by the member id.
375 *
376 * @since 2.7.4
377 * @access private
378 * @return array $member_data The member data.
379 */
380 private function get_member_data() {
381 global $usces;
382 $member_id = $this->entity_id;
383 $member_data = $usces->get_member_info( $member_id );
384
385 $member_data['custom_member'] = $this->get_custom_member_data( 'member', $member_id );
386 $member_data['custom_admin_member'] = $this->get_custom_member_data( 'admin_member', $member_id );
387
388 return $member_data;
389 }
390
391 /**
392 * Get the customer member data.
393 *
394 * @since 2.7.4
395 * @access private
396 * @param string $member_field_type "member" or "admin_member".
397 * @param integer $member_id The member id.
398 * @return array $custom_member_data The custom member data.
399 */
400 private function get_custom_member_data( $member_field_type, $member_id ) {
401 global $usces;
402 $custom_member_data = array();
403 $custom_member_metas = usces_has_custom_field_meta( $member_field_type );
404
405 if ( is_array( $custom_member_metas ) ) {
406 $is_admin_member_field = 'admin_member' === $member_field_type;
407 $member_field_prefix = ( $is_admin_member_field ) ? 'admb_' : 'csmb_';
408
409 $keys = array_keys( $custom_member_metas );
410 foreach ( $keys as $key ) {
411 $custom_member_meta_key = $member_field_prefix . $key;
412 $custom_member_data[ $key ] = wel_safe_maybe_unserialize( $usces->get_member_meta_value( $custom_member_meta_key, $member_id ) );
413 }
414 }
415
416 return $custom_member_data;
417 }
418
419 /**
420 * Get the customer order data.
421 *
422 * @since 2.7.4
423 * @access private
424 * @param string $order_field_type "order" or "customer".
425 * @param integer $order_id The member id.
426 * @return array $custom_order_data The customer order data.
427 */
428 private function get_custom_order_data( $order_field_type, $order_id ) {
429 global $usces;
430 $custom_order_data = array();
431 $is_other_field = 'other' === $order_field_type;
432 if ( $is_other_field ) {
433 $custom_order_metas = $this->get_other_custom_order_metas();
434 } else {
435 $custom_order_metas = usces_has_custom_field_meta( $order_field_type );
436 }
437
438 if ( is_array( $custom_order_metas ) ) {
439 switch ( $order_field_type ) {
440 case 'order':
441 $order_field_prefix = 'csod_';
442 break;
443 case 'customer':
444 $order_field_prefix = 'cscs_';
445 break;
446 case 'delivery':
447 $order_field_prefix = 'csde_';
448 break;
449 case 'other':
450 $order_field_prefix = '';
451 break;
452 default:
453 $order_field_prefix = '';
454 }
455
456 $keys = array_keys( $custom_order_metas );
457 foreach ( $keys as $key ) {
458 $custom_order_meta_key = $order_field_prefix . $key;
459 $custom_order_data[ $key ] = wel_safe_maybe_unserialize( $usces->get_order_meta_value( $custom_order_meta_key, $order_id ) );
460 }
461 }
462
463 return $custom_order_data;
464 }
465
466 /**
467 * Prepare data for the order summary.
468 *
469 * @since 2.7.4
470 * @access private
471 * @param array $order The order data.
472 * @return array $order_summary_data The order amount data.
473 */
474 private function get_order_summary_data( $order ) {
475 $order_summary_data = array();
476 $display_fields = $this->get_order_display_fields();
477 $order_summary_fields = $display_fields['order_summary']['fields'];
478 foreach ( $order_summary_fields as $field_name => $order_field ) {
479 $order_summary_data[ $field_name ] = ! empty( $order[ $field_name ] ) ? $order[ $field_name ] : '';
480 }
481
482 return $order_summary_data;
483 }
484 /**
485 * Get the other custom order fields.
486 *
487 * @since 2.7.4
488 * @access private
489 * @return array $other_custom_order_metas The meta fields.
490 */
491 private function get_other_custom_order_metas() {
492 $display_fields = $this->get_order_display_fields();
493 $other_custom_order_metas = array(
494 'order_memo' => $display_fields['order_memo'],
495 'delivery_company' => $display_fields['delivery_company'],
496 'tracking_number' => $display_fields['tracking_number'],
497 );
498
499 return $other_custom_order_metas;
500 }
501
502 /**
503 * The message.
504 *
505 * @since 2.7.4
506 * @access private
507 * @return string $message The message.
508 */
509 private function message() {
510 switch ( $this->action ) {
511 case 'create':
512 $message = __( 'Created the %1$s #%2$d successfully.', 'usces' );
513 break;
514 case 'update':
515 $message = __( 'Updated the %1$s #%2$d successfully.', 'usces' );
516 break;
517 case 'delete':
518 $message = __( 'Deleted the %1$s #%2$d successfully.', 'usces' );
519 break;
520 default:
521 $message = '';
522 }
523
524 $entity_type = $this->get_entity_type_label();
525 $message = sprintf(
526 $message,
527 $entity_type,
528 $this->entity_id
529 );
530
531 return $message;
532 }
533
534 /**
535 * Create the instance of the Logger class.
536 *
537 * @since 2.7.4
538 * @access private
539 * @param integer $entity_id The entity id.
540 * @param string $screen The screen id.
541 * @param string $action The action.
542 * @return object $logger The logger instance.
543 */
544 private static function get_instance( $entity_id, $screen, $action ) {
545 $logger = new self( $entity_id, $screen, $action );
546 $logger->set_entity_type();
547 return $logger;
548 }
549
550 /**
551 * Prepare data for display fields.
552 *
553 * @since 2.7.4
554 * @access private
555 * @return array $display_data The display data.
556 */
557 private function prepare_display_fields() {
558 $data = $this->data;
559 $display_data = array();
560 $differed = false;
561 if ( ! empty( $data['before'] ) || ! empty( $data['after'] ) ) {
562 $display_fields = $this->get_display_fields();
563 $before_data = ! empty( $data['before'] ) ? $data['before'] : '';
564 $after_data = ! empty( $data['after'] ) ? $data['after'] : '';
565 foreach ( $display_fields as $key => $display_field ) {
566 $before_value = ! empty( $before_data[ $key ] ) ? $before_data[ $key ] : '';
567 $after_value = ! empty( $after_data[ $key ] ) ? $after_data[ $key ] : '';
568 $field_data = $this->prepare_field_data( $display_field, $before_value, $after_value );
569 if ( ! empty( $field_data ) ) {
570 $display_data[ $key ] = $field_data;
571 $differed = $differed || ! empty( $field_data['is_diff'] );
572 }
573 }
574 }
575
576 $this->differed = $differed;
577 return $display_data;
578 }
579
580 /**
581 * Prepare field data.
582 *
583 * @since 2.7.4
584 * @access private
585 * @param array $field The field key.
586 * @param mixed $before_value The before value.
587 * @param mixed $after_value The after value.
588 * @return array $field_data The field data.
589 */
590 private function prepare_field_data( $field, $before_value, $after_value ) {
591 $field_data = array();
592
593 $has_callback = isset( $field['field_data_callback'] );
594 if ( $has_callback ) {
595 $callback = $field['field_data_callback'];
596 if ( method_exists( $this, $callback ) ) {
597 $field_data = $this->$callback( $field, $before_value, $after_value );
598 }
599
600 return $field_data;
601 } else {
602 $is_repeater = isset( $field['is_repeater'] );
603 $is_group = isset( $field['is_group'] );
604
605 if ( $is_repeater ) {
606 $field_data = $this->prepare_repeater_data( $field, $before_value, $after_value );
607 } elseif ( $is_group ) {
608 $field_data = $this->prepare_group_data( $field, $before_value, $after_value );
609 } else {
610 $field_data = $this->prepare_plain_data( $field, $before_value, $after_value );
611 }
612
613 return $field_data;
614 }
615 }
616
617 /**
618 * Compare the repeater field.
619 *
620 * @since 2.7.4
621 * @access private
622 * @param array $field The field key.
623 * @param mixed $before_value The before value.
624 * @param mixed $after_value The after value.
625 * @return array $field_data The field diff.
626 */
627 private function prepare_repeater_data( $field, $before_value, $after_value ) {
628 $field_data = array();
629 $parent_group = $field['group'];
630 $before_data = wel_safe_maybe_unserialize( $before_value );
631 $after_data = wel_safe_maybe_unserialize( $after_value );
632 if ( ! empty( $before_data ) || ! empty( $after_data ) ) {
633 $repeater_data_rows = array();
634 $is_key_and_value = isset( $field['is_key_and_value'] );
635 $row_keys = array();
636 if ( $is_key_and_value ) {
637 if ( empty( $row_keys ) ) {
638 if ( ! empty( $before_data ) ) {
639 $row_keys = array_keys( $before_data );
640 }
641
642 if ( ! empty( $after_data ) ) {
643 $row_keys = array_keys( $after_data );
644 }
645 }
646 } else {
647 if ( ! is_array( $before_data ) ) {
648 $is_before_data_much_more = false;
649 } elseif ( ! is_array( $after_data ) ) {
650 $is_before_data_much_more = true;
651 } else {
652 $is_before_data_much_more = count( $before_data ) > count( $after_data );
653 }
654
655 if ( $is_before_data_much_more ) {
656 $row_keys = array_keys( $before_data );
657 } else {
658 $row_keys = array_keys( $after_data );
659 }
660 }
661
662 $is_diff = false;
663 foreach ( $row_keys as $index ) {
664 $before_repeater_row = isset( $before_data[ $index ] ) ? $before_data[ $index ] : '';
665
666 if ( $is_key_and_value ) {
667 $before_repeater_row = wel_safe_maybe_unserialize( $before_repeater_row );
668 $sub_field = array(
669 'group' => $parent_group,
670 'label' => $index,
671 );
672
673 $after_repeater_row = isset( $after_data[ $index ] ) ? $after_data[ $index ] : '';
674 $after_repeater_row = wel_safe_maybe_unserialize( $after_repeater_row );
675
676 $repeater_data_rows[ $index ] = $this->prepare_field_data( $sub_field, $before_repeater_row, $after_repeater_row );
677 $is_diff = $is_diff || ! empty( $repeater_data_rows[ $index ]['is_diff'] );
678 } else {
679 $sub_fields = $field['fields'];
680 foreach ( $sub_fields as $key => $sub_field ) {
681 $sub_field['group'] = $parent_group;
682 $before_repeater_col = isset( $before_repeater_row[ $key ] ) ? $before_repeater_row[ $key ] : '';
683 $after_repeater_col = isset( $after_data[ $index ][ $key ] ) ? $after_data[ $index ][ $key ] : '';
684 $repeater_data_rows[ $index ][ $key ] = $this->prepare_field_data( $sub_field, $before_repeater_col, $after_repeater_col );
685 $is_diff = $is_diff || ! empty( $repeater_data_rows[ $index ][ $key ]['is_diff'] );
686 }
687 }
688 }
689
690 $field_data = array(
691 'field' => $field,
692 'is_diff' => $is_diff,
693 'is_repeater' => true,
694 'is_key_and_value' => $is_key_and_value,
695 'rows' => $repeater_data_rows,
696 );
697 }
698
699 return $field_data;
700 }
701
702 /**
703 * Prepare the group field data.
704 *
705 * @since 2.7.4
706 * @access private
707 * @param array $field The field key.
708 * @param mixed $before_value The before value.
709 * @param mixed $after_value The after value.
710 * @return array $field_data The field data.
711 */
712 private function prepare_group_data( $field, $before_value, $after_value ) {
713 $field_data = array();
714 $before_data = wel_safe_maybe_unserialize( $before_value );
715 $after_data = wel_safe_maybe_unserialize( $after_value );
716 if ( ! empty( $before_data ) || ! empty( $after_data ) ) {
717 $sub_field_data = array();
718 $sub_fields = $field['fields'];
719 $is_diff = false;
720 foreach ( $sub_fields as $key => $sub_field ) {
721 $sub_before_value = isset( $before_data[ $key ] ) ? $before_data[ $key ] : '';
722 $sub_after_value = isset( $after_data[ $key ] ) ? $after_data[ $key ] : '';
723 $sub_field_data[ $key ] = $this->prepare_field_data( $sub_field, $sub_before_value, $sub_after_value );
724 $is_diff = $is_diff || ! empty( $sub_field_data[ $key ]['is_diff'] );
725 }
726
727 $field_data = array(
728 'field' => $field,
729 'is_diff' => $is_diff,
730 'is_group' => true,
731 'fields' => $sub_field_data,
732 );
733 }
734
735 return $field_data;
736 }
737
738 /**
739 * Prepare the plain field data.
740 *
741 * @since 2.7.4
742 * @access private
743 * @param array $field The field key.
744 * @param mixed $before_value The before value.
745 * @param mixed $after_value The after value.
746 * @return array $field_data The field data.
747 */
748 private function prepare_plain_data( $field, $before_value, $after_value ) {
749 if ( is_array( $before_value ) ) {
750 $before_value = implode( ',', $before_value );
751 }
752
753 if ( is_array( $after_value ) ) {
754 $after_value = implode( ',', $after_value );
755 }
756
757 $field_data = array(
758 'field' => $field,
759 'before' => $before_value,
760 'after' => $after_value,
761 );
762
763 if ( $this->compared_mode ) {
764 $field_data['is_diff'] = $before_value !== $after_value;
765 }
766
767 return $field_data;
768 }
769
770 /**
771 * Get the lable of the current entity type.
772 *
773 * @since 2.7.4
774 * @access private
775 * @return string
776 */
777 private function get_entity_type_label() {
778 switch ( $this->entity_type ) {
779 case 'order':
780 return __( 'order', 'usces' );
781 case 'member':
782 return __( 'member', 'usces' );
783 }
784 }
785
786 /**
787 * Prepare the acting_welcart_card field data.
788 *
789 * @since 2.7.4
790 * @access private
791 * @param array $display_field The display field key.
792 * @param mixed $before_value The before value.
793 * @param mixed $after_value The after value.
794 * @return array $field_data The field data.
795 */
796 private function prepare_acting_welcart_card( $display_field, $before_value, $after_value ) {
797 $field_data = array();
798 if ( ! empty( $before_value ) || ! empty( $after_value ) ) {
799 $welcartpay = WELCARTPAY_SETTLEMENT::get_instance();
800 $after_data = array();
801 $log = usces_unserialize( $after_value['log'] );
802 $operate_name = ( isset( $log['OperateId'] ) ) ? $welcartpay->get_operate_name( $log['OperateId'] ) : '';
803 $amount = ( isset( $log['Amount'] ) ) ? usces_crform( $log['Amount'], false, true, 'return', true ) : '';
804
805 $after_data['TransactionDate'] = $after_value['datetime'];
806 $after_data['TransactionId'] = $log['TransactionId'];
807 $after_data['OperateId'] = $operate_name;
808 $after_data['Amount'] = $amount;
809 $after_data['ResponseCd'] = $log['ResponseCd'];
810
811 $field_data = $this->prepare_group_data( $display_field, $before_value, $after_data );
812 }
813
814 return $field_data;
815 }
816
817 /**
818 * Check if the operator log function is enabled or not.
819 */
820 private function is_enabled() {
821 return OPERATION_LOG::is_enabled();
822 }
823
824 /**
825 * List of the order compared fields.
826 *
827 * @since 2.7.4
828 * @access private
829 * @return array
830 */
831 private function get_order_display_fields() {
832 $order_check_display_fields = array(
833 'ordermail' => array(
834 'group' => 'other',
835 'label' => __( 'Mail for confirmation of order', 'usces' ),
836 ),
837 'changemail' => array(
838 'group' => 'other',
839 'label' => __( 'Mail for confiemation of change', 'usces' ),
840 ),
841 'receiptmail' => array(
842 'group' => 'other',
843 'label' => __( 'Mail for confirmation of transter', 'usces' ),
844 ),
845 'mitumorimail' => array(
846 'group' => 'other',
847 'label' => __( 'estimate mail', 'usces' ),
848 ),
849 'cancelmail' => array(
850 'group' => 'other',
851 'label' => __( 'Cancelling mail', 'usces' ),
852 ),
853 'othermail' => array(
854 'group' => 'other',
855 'label' => __( 'Other mail', 'usces' ),
856 ),
857 'completionmail' => array(
858 'group' => 'other',
859 'label' => __( 'Mail for Shipping', 'usces' ),
860 ),
861 'mitumoriprint' => array(
862 'group' => 'other',
863 'label' => __( 'print out the estimate', 'usces' ),
864 ),
865 'nohinprint' => array(
866 'group' => 'other',
867 'label' => __( 'print out Delivery Statement', 'usces' ),
868 ),
869 'billprint' => array(
870 'group' => 'other',
871 'label' => __( 'Print Invoice', 'usces' ),
872 ),
873 'receiptprint' => array(
874 'group' => 'other',
875 'label' => __( 'Print Receipt', 'usces' ),
876 ),
877 );
878 $order_check_display_fields = apply_filters( 'usces_filter_logger_order_check_display_fields', $order_check_display_fields );
879 return array(
880 'order_payment_name' => array(
881 'group' => 'other',
882 'label' => __( 'payment method', 'usces' ),
883 ),
884 'order_delivery_method' => array(
885 'group' => 'other',
886 'label' => __( 'shipping option', 'usces' ),
887 ),
888 'order_delivery_date' => array(
889 'group' => 'other',
890 'label' => __( 'Delivery date', 'usces' ),
891 ),
892 'order_delivery_time' => array(
893 'group' => 'other',
894 'label' => __( 'delivery time', 'usces' ),
895 ),
896 'order_delidue_date' => array(
897 'group' => 'other',
898 'label' => __( 'Shipping date', 'usces' ),
899 ),
900 'order_email' => array(
901 'group' => 'other',
902 'label' => __( 'e-mail adress', 'usces' ),
903 ),
904 'order_name1' => array(
905 'group' => 'other',
906 'label' => __( 'name', 'usces' ),
907 ),
908 'order_name2' => array(
909 'group' => 'other',
910 'label' => __( 'name', 'usces' ),
911 ),
912 'order_name3' => array(
913 'group' => 'other',
914 'label' => __( 'furigana', 'usces' ),
915 ),
916 'order_name4' => array(
917 'group' => 'other',
918 'label' => __( 'furigana', 'usces' ),
919 ),
920 'order_zip' => array(
921 'group' => 'other',
922 'label' => __( 'Zip/Postal Code', 'usces' ),
923 ),
924 'order_pref' => array(
925 'group' => 'other',
926 'label' => __( 'Province', 'usces' ),
927 ),
928 'order_address1' => array(
929 'group' => 'other',
930 'label' => __( 'city', 'usces' ),
931 ),
932 'order_address2' => array(
933 'group' => 'other',
934 'label' => __( 'numbers', 'usces' ),
935 ),
936 'order_address3' => array(
937 'group' => 'other',
938 'label' => __( 'building name', 'usces' ),
939 ),
940 'order_tel' => array(
941 'group' => 'other',
942 'label' => __( 'Phone number', 'usces' ),
943 ),
944 'order_fax' => array(
945 'group' => 'other',
946 'label' => __( 'FAX number', 'usces' ),
947 ),
948 'order_note' => array(
949 'group' => 'other',
950 'label' => __( 'Notes', 'usces' ),
951 ),
952 'order_status' => array(
953 'group' => 'other',
954 'label' => __( 'Status', 'usces' ),
955 ),
956 'order_memo' => array(
957 'group' => 'other',
958 'label' => __( 'Administrator Note', 'usces' ),
959 ),
960 'delivery_company' => array(
961 'group' => 'other',
962 'label' => __( 'Delivery company', 'usces' ),
963 ),
964 'tracking_number' => array(
965 'group' => 'other',
966 'label' => __( 'Tracking number', 'usces' ),
967 ),
968 'order_delivery' => array(
969 'group' => 'other',
970 'label' => __( 'shipping address', 'usces' ),
971 'is_group' => true,
972 'fields' => array(
973 'name1' => array(
974 'group' => 'other',
975 'label' => __( 'name', 'usces' ),
976 ),
977 'name2' => array(
978 'group' => 'other',
979 'label' => __( 'name', 'usces' ),
980 ),
981 'name3' => array(
982 'group' => 'other',
983 'label' => __( 'furigana', 'usces' ),
984 ),
985 'name4' => array(
986 'group' => 'other',
987 'label' => __( 'furigana', 'usces' ),
988 ),
989 'zipcode' => array(
990 'group' => 'other',
991 'label' => __( 'Zip/Postal Code', 'usces' ),
992 ),
993 'pref' => array(
994 'group' => 'other',
995 'label' => __( 'Province', 'usces' ),
996 ),
997 'address1' => array(
998 'group' => 'other',
999 'label' => __( 'city', 'usces' ),
1000 ),
1001 'address2' => array(
1002 'group' => 'other',
1003 'label' => __( 'numbers', 'usces' ),
1004 ),
1005 'address3' => array(
1006 'group' => 'other',
1007 'label' => __( 'building name', 'usces' ),
1008 ),
1009 'tel' => array(
1010 'group' => 'other',
1011 'label' => __( 'Phone number', 'usces' ),
1012 ),
1013 'fax' => array(
1014 'group' => 'other',
1015 'label' => __( 'FAX number', 'usces' ),
1016 ),
1017 ),
1018 ),
1019 'custom_order' => array(
1020 'is_repeater' => true,
1021 'group' => 'custom_order',
1022 'label' => __( 'Custom order field', 'usces' ),
1023 'is_key_and_value' => true,
1024 ),
1025 'custom_customer' => array(
1026 'is_repeater' => true,
1027 'group' => 'custom_customer',
1028 'label' => __( 'Custom customer field', 'usces' ),
1029 'is_key_and_value' => true,
1030 ),
1031 'custom_delivery' => array(
1032 'is_repeater' => true,
1033 'group' => 'custom_delivery',
1034 'label' => __( 'Custom delivery field', 'usces' ),
1035 'is_key_and_value' => true,
1036 ),
1037 'order_summary' => array(
1038 'group' => 'other',
1039 'label' => __( 'Order summary', 'usces' ),
1040 'is_group' => true,
1041 'fields' => array(
1042 'order_discount' => array(
1043 'group' => 'other',
1044 'label' => __( 'Campaign discount', 'usces' ),
1045 ),
1046 'order_shipping_charge' => array(
1047 'group' => 'other',
1048 'label' => __( 'Shipping', 'usces' ),
1049 ),
1050 'order_cod_fee' => array(
1051 'group' => 'other',
1052 'label' => __( 'COD fee', 'usces' ),
1053 ),
1054 'order_usedpoint' => array(
1055 'group' => 'other',
1056 'label' => __( 'Used points', 'usces' ),
1057 ),
1058 'order_getpoint' => array(
1059 'group' => 'other',
1060 'label' => __( 'granted points', 'usces' ),
1061 ),
1062 ),
1063 ),
1064 'order_cart' => array(
1065 'is_repeater' => true,
1066 'group' => 'order_cart',
1067 'label' => '',
1068 'row_label' => __( 'Cart item', 'usces' ),
1069 'fields' => array(
1070 'post_id' => array(
1071 'group' => 'order_cart',
1072 'label' => __( 'Item ID', 'usces' ),
1073 ),
1074 'item_name' => array(
1075 'group' => 'order_cart',
1076 'label' => __( 'item name', 'usces' ),
1077 ),
1078 'sku_code' => array(
1079 'group' => 'order_cart',
1080 'label' => __( 'SKU code', 'usces' ),
1081 ),
1082 'price' => array(
1083 'group' => 'order_cart',
1084 'label' => __( 'Price', 'usces' ),
1085 ),
1086 'cprice' => array(
1087 'group' => 'order_cart',
1088 'label' => __( 'normal price', 'usces' ),
1089 ),
1090 'quantity' => array(
1091 'group' => 'order_cart',
1092 'label' => __( 'Quantity', 'usces' ),
1093 ),
1094 'options' => array(
1095 'group' => 'order_cart',
1096 'label' => __( 'options for items', 'usces' ),
1097 'is_repeater' => true,
1098 'is_key_and_value' => true,
1099 ),
1100 ),
1101 ),
1102 'order_check' => array(
1103 'is_group' => true,
1104 'group' => 'other',
1105 'label' => __( 'Show the mail/print field', 'usces' ),
1106 'fields' => $order_check_display_fields,
1107 ),
1108 'acting_welcart_card' => array(
1109 'is_group' => true,
1110 'group' => 'payment_transaction_logs',
1111 'label' => __( 'Credit card transaction (WelcartPay)', 'usces' ),
1112 'field_data_callback' => 'prepare_acting_welcart_card',
1113 'fields' => array(
1114 'TransactionDate' => array(
1115 'group' => 'payment_transaction_logs',
1116 'label' => __( 'Processing date', 'usces' ),
1117 ),
1118 'TransactionId' => array(
1119 'group' => 'payment_transaction_logs',
1120 'label' => __( 'Sequence number', 'usces' ),
1121 ),
1122 'OperateId' => array(
1123 'group' => 'payment_transaction_logs',
1124 'label' => __( 'Processing classification', 'usces' ),
1125 ),
1126 'Amount' => array(
1127 'group' => 'payment_transaction_logs',
1128 'label' => __( 'Amount', 'usces' ),
1129 ),
1130 'ResponseCd' => array(
1131 'group' => 'payment_transaction_logs',
1132 'label' => __( 'Result', 'usces' ),
1133 ),
1134 ),
1135 ),
1136 'paygent_card' => array(
1137 'is_group' => true,
1138 'group' => 'payment_transaction_logs',
1139 'label' => 'ペイジェント',
1140 'fields' => array(
1141 'datetime' => array(
1142 'group' => 'payment_transaction_logs',
1143 'label' => __( 'Processing date', 'usces' ),
1144 ),
1145 'payment_id' => array(
1146 'group' => 'payment_transaction_logs',
1147 'label' => '決済ID',
1148 ),
1149 'status' => array(
1150 'group' => 'payment_transaction_logs',
1151 'label' => __( 'Processing classification', 'usces' ),
1152 ),
1153 'amount' => array(
1154 'group' => 'payment_transaction_logs',
1155 'label' => __( 'Amount', 'usces' ),
1156 ),
1157 'result' => array(
1158 'group' => 'payment_transaction_logs',
1159 'label' => __( 'Result', 'usces' ),
1160 ),
1161 ),
1162 ),
1163 );
1164 }
1165
1166 /**
1167 * List of the member compared fields
1168 *
1169 * @since 2.7.4
1170 * @access private
1171 * @return array
1172 */
1173 private function get_member_display_fields() {
1174 return array(
1175 'mem_email' => array(
1176 'group' => 'other',
1177 'label' => __( 'e-mail', 'usces' ),
1178 ),
1179 'mem_status' => array(
1180 'group' => 'other',
1181 'label' => __( 'Rank', 'usces' ),
1182 ),
1183 'mem_point' => array(
1184 'group' => 'other',
1185 'label' => __( 'current point', 'usces' ),
1186 ),
1187 'mem_name1' => array(
1188 'group' => 'other',
1189 'label' => __( 'name', 'usces' ),
1190 ),
1191 'mem_name2' => array(
1192 'group' => 'other',
1193 'label' => __( 'name', 'usces' ),
1194 ),
1195 'mem_name3' => array(
1196 'group' => 'other',
1197 'label' => __( 'furigana', 'usces' ),
1198 ),
1199 'mem_name4' => array(
1200 'group' => 'other',
1201 'label' => __( 'furigana', 'usces' ),
1202 ),
1203 'mem_zip' => array(
1204 'group' => 'other',
1205 'label' => __( 'Zip/Postal Code ', 'usces' ),
1206 ),
1207 'mem_pref' => array(
1208 'group' => 'other',
1209 'label' => __( 'Province', 'usces' ),
1210 ),
1211 'customer_country' => array(
1212 'group' => 'other',
1213 'label' => __( 'Country', 'usces' ),
1214 ),
1215 'mem_address1' => array(
1216 'group' => 'other',
1217 'label' => __( 'city', 'usces' ),
1218 ),
1219 'mem_address2' => array(
1220 'group' => 'other',
1221 'label' => __( 'numbers', 'usces' ),
1222 ),
1223 'mem_address3' => array(
1224 'group' => 'other',
1225 'label' => __( 'building name', 'usces' ),
1226 ),
1227 'mem_tel' => array(
1228 'group' => 'other',
1229 'label' => __( 'Phone number', 'usces' ),
1230 ),
1231 'mem_fax' => array(
1232 'group' => 'other',
1233 'label' => __( 'FAX number', 'usces' ),
1234 ),
1235 'custom_member' => array(
1236 'group' => 'custom_member',
1237 'label' => __( 'Custom member field', 'usces' ),
1238 'is_repeater' => true,
1239 'is_key_and_value' => true,
1240 ),
1241 'custom_admin_member' => array(
1242 'group' => 'custom_admin_member',
1243 'label' => __( 'Admin custom field', 'usces' ),
1244 'is_repeater' => true,
1245 'is_key_and_value' => true,
1246 ),
1247 );
1248 }
1249 }
1250