Tribe__Tickets__Tickets_Handler::save_form_settings( int $post, array $data = null )
Saves the Ticket Editor settings form
Contents
Parameters
- $post
-
(int) (Required) Post that will be saved
- $data
-
(array) (Optional) Params that will be used to save
Default value: null
Return
(string)
Source
File: src/Tribe/Tickets_Handler.php
public function save_form_settings( $post, $data = null ) {
// don't do anything on autosave, auto-draft, or massupdates
if ( wp_is_post_autosave( $post ) || wp_is_post_revision( $post ) ) {
return false;
}
if ( ! $post instanceof WP_Post ) {
$post = get_post( $post );
}
// Bail on Invalid post
if ( ! $post instanceof WP_Post ) {
return false;
}
// If we didn't get any Ticket data we fetch from the $_POST
if ( is_null( $data ) ) {
$data = tribe_get_request_var( array( 'tribe-tickets', 'settings' ), null );
}
if ( empty( $data ) ) {
return false;
}
/**
* Allow other plugins to hook into this to add settings
*
* @since 4.6
*
* @param array $data the array of parameters to filter
*/
do_action( 'tribe_events_save_tickets_settings', $data );
if ( isset( $data['event_capacity'] ) && is_numeric( $data['event_capacity'] ) ) {
tribe_tickets_update_capacity( $post, $data['event_capacity'] );
}
if ( ! empty( $data['header_image_id'] ) ) {
update_post_meta( $post->ID, $this->key_image_header, $data['header_image_id'] );
} else {
delete_post_meta( $post->ID, $this->key_image_header );
}
// We reversed this logic on the back end
if ( class_exists( 'Tribe__Tickets_Plus__Attendees_List' ) ) {
update_post_meta( $post->ID, Tribe__Tickets_Plus__Attendees_List::HIDE_META_KEY, ! empty( $data['show_attendees'] ) );
}
// Change the default ticket provider
if ( ! empty( $data['default_provider'] ) ) {
update_post_meta( $post->ID, $this->key_provider_field, $data['default_provider'] );
} else {
delete_post_meta( $post->ID, $this->key_provider_field );
}
}
Changelog
| Version | Description |
|---|---|
| 4.6.2 | Introduced. |