![]() Server : Apache System : Linux server2.corals.io 4.18.0-348.2.1.el8_5.x86_64 #1 SMP Mon Nov 15 09:17:08 EST 2021 x86_64 User : corals ( 1002) PHP Version : 7.4.33 Disable Function : exec,passthru,shell_exec,system Directory : /home/corals/mets.corals.io/wp-content/plugins/give/src/TestData/Addons/FeeRecovery/ |
<?php namespace Give\TestData\Addons\FeeRecovery; use Exception; use Give\TestData\Framework\MetaRepository; class FeeRecovery { /** * @param int $donationID * @param array $donation * @param array $params */ public function addFee($donationID, $donation, $params) { global $wpdb; // Fee recovery is checked? if ( ! isset($params['donation_cover_fees']) || ! filter_var($params['donation_cover_fees'], FILTER_VALIDATE_BOOLEAN) ) { return; } // Start DB transaction $wpdb->query('START TRANSACTION'); try { // Update donation meta $metaRepository = new MetaRepository('give_donationmeta', 'donation_id'); $metaRepository->persist( $donationID, [ '_give_fee_donation_amount' => $donation['payment_total'], '_give_fee_amount' => give_get_option('give_fee_percentage', 2.90), ] ); $wpdb->query('COMMIT'); } catch (Exception $e) { $wpdb->query('ROLLBACK'); } } }