private function query_customer_payments()
{
$payments = array();
/**
* Allows you to perform your own search for customer payments, based on given data.
*
* @since 1.1
*/
$payments = apply_filters('edd_helpscout_customer_payments', $payments, $this->customer_emails, $this->data);
if (!empty($payments)) {
return $payments;
}
global $wpdb;
// query by email(s)
$sql = "SELECT p.ID, p.post_status, p.post_date";
$sql .= " FROM {$wpdb->posts} p, {$wpdb->postmeta} pm";
$sql .= " WHERE p.post_type = 'edd_payment'";
$sql .= " AND p.ID = pm.post_id";
$sql .= " AND pm.meta_key = '_edd_payment_user_email'";
if (count($this->customer_emails) > 1) {
$in_clause = rtrim(str_repeat("'%s', ", count($this->customer_emails)), ", ");
$sql .= " AND pm.meta_value IN({$in_clause})";
} else {
$sql .= " AND pm.meta_value = '%s'";
}
$sql .= " GROUP BY p.ID ORDER BY p.ID DESC";
$query = $wpdb->prepare($sql, $this->customer_emails);
$results = $wpdb->get_results($query);
if (is_array($results)) {
return $results;
}
return array();
}