Test Setup Failed
Push — issue/3917 ( 16fa88...30dd66 )
by Ravinder
08:20
created

Give_Donor_Stats::donated()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 3

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
cc 1
nc 1
nop 1
dl 0
loc 3
rs 10
c 0
b 0
f 0
1
<?php
2
3
/**
4
 * Donor stats
5
 *
6
 * @package     Give
7
 * @subpackage  Classes/Stats
8
 * @copyright   Copyright (c) 2018, GiveWP
9
 * @license     https://opensource.org/licenses/gpl-license GNU Public License
10
 * @since       2.2.0
11
 */
12
class Give_Donor_Stats extends Give_Stats {
13
	/**
14
	 * Object.
15
	 *
16
	 * @since 2.4.1
17
	 * @var Give_Donation_Stats
18
	 */
19
	private $donation_stats;
20
21
	/**
22
	 * Required query vars
23
	 *
24
	 * @since 2.4.1
25
	 * @var array
26
	 */
27
	protected $required_query_vars = array(
28
		'donor_id',
29
	);
30
31
	/**
32
	 * Singleton pattern.
33
	 *
34
	 * @since  2.2.0
35
	 * @access private
36
	 */
37
	public function __construct() {
38
		// Add additional default query params
39
		$this->query_var_defaults = array_merge( array(
40
			'donor_id'   => 0,
41
			'give_forms' => array(),
42
		), $this->query_var_defaults );
43
44
		parent::__construct();
45
46
		$this->donation_stats = new Give_Donation_Stats();
47
	}
48
49
	/**
50
	 *  Get total donated amount
51
	 *
52
	 *
53
	 * @since  2.2.0
54
	 * @since  2.4.1 Add Give_Donation_Stats integration.
55
	 * @access public
56
	 *
57
	 * @param array $query
58
	 *
59
	 * @return stdClass
60
	 *
61
	 */
62
	public function donated( $query = array() ) {
63
		return $this->donation_stats->get_earnings( $query );
64
	}
65
66
	/**
67
	 *  Get total donation count
68
	 *
69
	 *
70
	 * @since  2.4.1
71
	 * @access public
72
	 *
73
	 * @param array $query
74
	 *
75
	 * @return string
76
	 *
77
	 */
78
	public function donation_count( $query = array() ) {
79
		return $this->donation_stats->get_sales( $query );
80
	}
81
}
82
83
// @todo: add document to query params.
84