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.
Contents
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.
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 );
}
Changelog
| Version | Description |
|---|---|
| 5.1.0 | Introduced. |