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

Handle backwards compatible creation actions for RSVPs.


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/RSVP.php

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

		/**
		 * RSVP specific action fired when a RSVP-driven attendee ticket for an event is generated.
		 * Used to assign a unique ID to the attendee.
		 *
		 * @param int    $attendee_id ID of attendee ticket.
		 * @param int    $post_id     ID of event.
		 * @param string $order_id    RSVP order ID (hash).
		 * @param int    $product_id  RSVP product ID.
		 */
		do_action( 'event_tickets_rsvp_attendee_created', $attendee_id, $post_id, $order_id, $product_id );

		/**
		 * Action fired when an RSVP attendee ticket is created.
		 * Used to store attendee meta.
		 *
		 * @param int $attendee_id       ID of the attendee post.
		 * @param int $post_id           Event post ID.
		 * @param int $product_id        RSVP ticket post ID.
		 * @param int $order_attendee_id Attendee # for order.
		 */
		do_action( 'event_tickets_rsvp_ticket_created', $attendee_id, $post_id, $product_id, $order_attendee_id );

		if ( null === $order_attendee_id ) {
			/**
			 * Action fired when an RSVP ticket has had attendee tickets generated for it.
			 *
			 * @param int    $product_id RSVP ticket post ID.
			 * @param string $order_id   ID (hash) of the RSVP order.
			 * @param int    $qty        Quantity ordered.
			 */
			do_action( 'event_tickets_rsvp_tickets_generated_for_product', $product_id, $order_id, 1 );
		}

		// Update the ticket sales numbers.
		if ( $post_id && 'yes' === $attendee_status ) {
			$this->attendee_provider->increase_ticket_sales_by( $product_id, 1 );
		}

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

Top ↑

Changelog

Changelog
Version Description
5.1.0 Introduced.