Tribe__Tickets__Repositories__Attendee__Commerce::trigger_create_actions( WP_Post $attendee, array $attendee_data, Tribe__Tickets__Ticket_Object $ticket )

Handle backwards compatible actions for Tribe Commerce.


Parameters

$attendee

(WP_Post) (Required) The attendee object.

$attendee_data

(array) (Required) List of additional attendee data.

$ticket

(Tribe__Tickets__Ticket_Object) (Required) The ticket object.


Top ↑

Source

File: src/Tribe/Repositories/Attendee/Commerce.php

	public function trigger_create_actions( $attendee, $attendee_data, $ticket ) {
		$attendee_id           = $attendee->ID;
		$post_id               = Arr::get( $attendee_data, 'post_id' );
		$order_id              = Arr::get( $attendee_data, 'order_id' );
		$product_id            = $ticket->ID;
		$order_attendee_id     = Arr::get( $attendee_data, 'order_attendee_id' );
		$attendee_order_status = $attendee_data['attendee_status'];

		/**
		 * Action fired when an PayPal attendee ticket is created
		 *
		 * @since 4.7
		 *
		 * @param int    $attendee_id           Attendee post ID
		 * @param string $order_id              PayPal Order ID
		 * @param int    $product_id            PayPal ticket post ID
		 * @param int    $order_attendee_id     Attendee number in submitted order
		 * @param string $attendee_order_status The order status for the attendee.
		 */
		do_action( 'event_tickets_tpp_attendee_created', $attendee_id, $order_id, $product_id, $order_attendee_id, $attendee_order_status );

		/**
		 * Action fired when an PayPal attendee ticket is updated.
		 *
		 * This action will fire both when the attendee is created and
		 * when the attendee is updated.
		 * Hook into the `event_tickets_tpp_attendee_created` action to
		 * only act on the attendee creation.
		 *
		 * @since 4.7
		 *
		 * @param int    $attendee_id           Attendee post ID
		 * @param string $order_id              PayPal Order ID
		 * @param int    $product_id            PayPal ticket post ID
		 * @param int    $order_attendee_id     Attendee number in submitted order
		 * @param string $attendee_order_status The order status for the attendee.
		 */
		do_action( 'event_tickets_tpp_attendee_updated', $attendee_id, $order_id, $product_id, $order_attendee_id, $attendee_order_status );

		// Update the ticket sales numbers.
		if ( $post_id ) {
			$global_stock    = new Tribe__Tickets__Global_Stock( $post_id );
			$shared_capacity = false;

			if ( $global_stock->is_enabled() ) {
				$shared_capacity = true;
			}

			if ( Tribe__Tickets__Commerce__PayPal__Stati::$completed === $attendee_order_status ) {
				$this->attendee_provider->increase_ticket_sales_by( $product_id, 1, $shared_capacity, $global_stock );
			} elseif ( Tribe__Tickets__Commerce__PayPal__Stati::$refunded === $attendee_order_status ) {
				$this->attendee_provider->decrease_ticket_sales_by( $product_id, 1, $shared_capacity, $global_stock );
			}
		}

		parent::trigger_create_actions( $attendee, $attendee_data, $ticket );
	}

Top ↑

Changelog

Changelog
Version Description
5.1.0 Introduced.