Tribe__Tickets__Attendee_Repository::update_attendee( array $attendee_data, bool $return_promise = false )
Create an attendee object from ticket and attendee data.
Contents
Parameters
- $return_promise
-
(bool) (Optional) Whether to return a promise object or just the ids of the updated posts; if
truethen a promise will be returned whether the update is happening in background or not.Default value: false
- $attendee_data
-
(array) (Required) List of attendee data to be saved.
Return
(array|Tribe__Promise) A list of the post IDs that have been (synchronous) or will be (asynchronous) updated if $return_promise is set to false; the Promise object if $return_promise is set to true.
Source
File: src/Tribe/Attendee_Repository.php
public function update_attendee( $attendee_data, $return_promise = false ) {
if ( empty( $attendee_data['attendee_id'] ) ) {
throw new Tribe__Repository__Usage_Error( 'You must provide the attendee_id when updating an attendee from the Attendees Repository class' );
}
$this->by( 'id', $attendee_data['attendee_id'] );
/**
* Filter the attendee data before updating the attendee.
*
* @since 5.1.2
*
* @param array $attendee_data Attendee data that needs to be updated.
* @param Tribe__Tickets__Attendee_Repository $this The Tickets Attendee ORM object.
*/
$attendee_data = apply_filters( 'tribe_tickets_attendee_repository_update_attendee_data_args_before_update', $attendee_data, $this );
// Set the attendee arguments accordingly.
$this->set_attendee_args( $attendee_data );
// Update the attendee.
$saved = $this->save( $return_promise );
if ( $return_promise ) {
$repository = $this;
return $saved->then(
static function () use ( $repository, $attendee_data ) {
// Trigger the update actions.
$repository->trigger_update_actions( $attendee_data );
}
);
}
// Trigger the update actions.
$this->trigger_update_actions( $attendee_data );
return $saved;
}
Changelog
| Version | Description |
|---|---|
| 5.1.0 | Introduced. |