| Server IP : 123.56.80.60 / Your IP : 216.73.216.78 Web Server : Apache/2.4.54 (Win32) OpenSSL/1.1.1s PHP/7.4.33 mod_fcgid/2.3.10-dev System : Windows NT iZhx3sob14hnz7Z 10.0 build 14393 (Windows Server 2016) i586 User : SYSTEM ( 0) PHP Version : 7.4.33 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : OFF | Perl : OFF | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : C:/wamp/www/wordpress2/wp-content/plugins/woocommerce/includes/ |
Upload File : |
<?php
/**
* Class for customer download logs.
*
* @package WooCommerce\Classes
* @version 3.3.0
* @since 3.3.0
*/
defined( 'ABSPATH' ) || exit;
/**
* Customer download log class.
*/
class WC_Customer_Download_Log extends WC_Data {
/**
* This is the name of this object type.
*
* @var string
*/
protected $object_type = 'customer_download_log';
/**
* Download Log Data array.
*
* @var array
*/
protected $data = array(
'timestamp' => null,
'permission_id' => 0,
'user_id' => null,
'user_ip_address' => null,
);
/**
* Constructor.
*
* @param int|object|array $download_log Download log ID.
*/
public function __construct( $download_log = 0 ) {
parent::__construct( $download_log );
if ( is_numeric( $download_log ) && $download_log > 0 ) {
$this->set_id( $download_log );
} elseif ( $download_log instanceof self ) {
$this->set_id( $download_log->get_id() );
} elseif ( is_object( $download_log ) && ! empty( $download_log->download_log_id ) ) {
$this->set_id( $download_log->download_log_id );
$this->set_props( (array) $download_log );
$this->set_object_read( true );
} else {
$this->set_object_read( true );
}
$this->data_store = WC_Data_Store::load( 'customer-download-log' );
if ( $this->get_id() > 0 ) {
$this->data_store->read( $this );
}
}
/*
|--------------------------------------------------------------------------
| Getters
|--------------------------------------------------------------------------
*/
/**
* Get timestamp.
*
* @param string $context Get context.
* @return WC_DateTime|null Object if the date is set or null if there is no date.
*/
public function get_timestamp( $context = 'view' ) {
return $this->get_prop( 'timestamp', $context );
}
/**
* Get permission id.
*
* @param string $context Get context.
* @return integer
*/
public function get_permission_id( $context = 'view' ) {
return $this->get_prop( 'permission_id', $context );
}
/**
* Get user id.
*
* @param string $context Get context.
* @return integer
*/
public function get_user_id( $context = 'view' ) {
return $this->get_prop( 'user_id', $context );
}
/**
* Get user ip address.
*
* @param string $context Get context.
* @return string
*/
public function get_user_ip_address( $context = 'view' ) {
return $this->get_prop( 'user_ip_address', $context );
}
/*
|--------------------------------------------------------------------------
| Setters
|--------------------------------------------------------------------------
*/
/**
* Set timestamp.
*
* @param string|integer|null $date UTC timestamp, or ISO 8601 DateTime. If the DateTime string has no timezone or offset, WordPress site timezone will be assumed. Null if their is no date.
*/
public function set_timestamp( $date = null ) {
$this->set_date_prop( 'timestamp', $date );
}
/**
* Set permission id.
*
* @param int $value Value to set.
*/
public function set_permission_id( $value ) {
$this->set_prop( 'permission_id', absint( $value ) );
}
/**
* Set user id.
*
* @param int $value Value to set.
*/
public function set_user_id( $value ) {
$this->set_prop( 'user_id', absint( $value ) );
}
/**
* Set user ip address.
*
* @param string $value Value to set.
*/
public function set_user_ip_address( $value ) {
$this->set_prop( 'user_ip_address', $value );
}
}