/var/www/html_uk/wp-content/plugins/automatewoo/includes/Logs.php


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
<?php
// phpcs:ignoreFile

namespace AutomateWoo;

use 
AutomateWoo\DataTypes\DataTypes;

if ( ! 
defined'ABSPATH' ) ) exit;

/**
 * Logs management class.
 *
 * @since 3.8
 */
class Logs {

    
/**
     * Returns the meta key that a data item is mapped to in log meta.
     *
     * @param $data_type_id string
     * @return bool|string
     */
    
static function get_data_layer_storage_key$data_type_id ) {
        
$storage_keys apply_filters'automatewoo/log/data_layer_storage_keys', [
            
'cart' => 'cart_id',
            
'category' => 'category_id',
            
'comment' => 'comment_id',
            
'guest' => 'guest_email',
            
'order' => 'order_id',
            
'order_item' => 'order_item_id',
            
'order_note' => 'order_note_id',
            
'product' => 'product_id',
            
'subscription' => 'subscription_id',
            
'tag' => 'tag_id',
            
'user' => 'user_id',
            
'wishlist' => 'wishlist_id',
            
'workflow' => 'workflow_id',
        ]);

        if ( isset( 
$storage_keys$data_type_id ] ) ) {
            return 
$storage_keys$data_type_id ];
        }
        else {
            return 
'_data_layer_' $data_type_id;
        }
    }


    
/**
     * @param $data_type_id
     * @param $data_item : must be validated
     * @return mixed
     */
    
static function get_data_layer_storage_value$data_type_id$data_item ) {
        
$value false;

        if ( 
$data_type DataTypes::get$data_type_id ) ) {
            
$value $data_type->compress$data_item );
        }

        return 
$value;
    }

}