You appear to be a bot. Output may be restricted
Description
Add a customer
Usage
EDD_DB_Customers::add( $data );
Parameters
- $data
- ( mixed ) optional –
Returns
void
Source
File name: easy-digital-downloads/includes/class-edd-db-customers.php
Lines:
1 to 52 of 52
public function add( $data = array() ) { $defaults = array( 'payment_ids' => '' ); $args = wp_parse_args( $data, $defaults ); if( empty( $args['email'] ) ) { return false; } if( ! empty( $args['payment_ids'] ) && is_array( $args['payment_ids'] ) ) { $args['payment_ids'] = implode( ',', array_unique( array_values( $args['payment_ids'] ) ) ); } $customer = $this->get_customer_by( 'email', $args['email'] ); if( $customer ) { // update an existing customer // Update the payment IDs attached to the customer if( ! empty( $args['payment_ids'] ) ) { if( empty( $customer->payment_ids ) ) { $customer->payment_ids = $args['payment_ids']; } else { $existing_ids = array_map( 'absint', explode( ',', $customer->payment_ids ) ); $payment_ids = array_map( 'absint', explode( ',', $args['payment_ids'] ) ); $payment_ids = array_merge( $payment_ids, $existing_ids ); $customer->payment_ids = implode( ',', array_unique( array_values( $payment_ids ) ) ); } $args['payment_ids'] = $customer->payment_ids; } $this->update( $customer->id, $args ); return $customer->id; } else { return $this->insert( $args, 'customer' ); } }