HEX
Server: Apache/2.4.52 (Ubuntu)
System: Linux WebLive 5.15.0-79-generic #86-Ubuntu SMP Mon Jul 10 16:07:21 UTC 2023 x86_64
User: ubuntu (1000)
PHP: 7.4.33
Disabled: pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare,
Upload Files
File: /var/www/html/wpmuhibbah_err/wp-content/plugins/give/src/TestData/Repositories/DonorRepository.php
<?php

namespace Give\TestData\Repositories;

use Give\TestData\Factories\DonorFactory;
use Give\TestData\Framework\MetaRepository;

/**
 * Class DonorRepository
 * @package GiveTestData\TestData\Repositories
 */
class DonorRepository
{
    /**
     * @var DonorFactory
     */
    private $donorFactory;

    /**
     * DonorRepository constructor.
     *
     * @param DonorFactory $donorFactory
     */
    public function __construct(DonorFactory $donorFactory)
    {
        $this->donorFactory = $donorFactory;
    }

    /**
     * Insert Donor
     *
     * @since 1.0.0
     *
     * @param array $donor
     *
     */
    public function insertDonor($donor)
    {
        global $wpdb;

        // Insert donor
        $wpdb->insert(
            "{$wpdb->prefix}give_donors",
            [
                'email' => $donor['email'],
                'name' => sprintf('%s %s', $donor['first_name'], $donor['last_name']),
                'date_created' => $donor['date_created'],
            ]
        );
        $donorID = $wpdb->insert_id;
        $metaRepository = new MetaRepository('give_donormeta', 'donor_id');

        $donorMeta = wp_parse_args(
            apply_filters('give-test-data-donor-meta', $donorID, $donor),
            [
                '_give_donor_first_name' => $donor['first_name'],
                '_give_donor_last_name' => $donor['last_name'],
            ]
        );

        $metaRepository->persist($donorID, $donorMeta);

        do_action('give-test-data-insert-donor', $donorID, $donor);
    }
}