Tribe__Tickets_Plus__Meta__Render::table_meta_data( $item )
Source
File: src/Tribe/Meta/Render.php
public function table_meta_data( $item ) {
if ( ! isset( $item['product_id'] ) || ! isset( $item['attendee_id'] ) ) {
return;
}
wp_enqueue_style( 'event-tickets-meta' );
wp_enqueue_script( 'event-tickets-meta-report' );
$meta_fields = Tribe__Tickets_Plus__Main::instance()->meta()->get_meta_fields_by_ticket( $item['product_id'] );
$meta_data = get_post_meta( $item['attendee_id'], Tribe__Tickets_Plus__Meta::META_KEY, true );
$orphaned_data = (array) $meta_data;
$valid_meta_html = '';
$orphaned_meta_html = '';
foreach ( $meta_fields as $field ) {
if ( 'checkbox' === $field->type && isset( $field->extra['options'] ) ) {
$values = array();
foreach ( $field->extra['options'] as $option ) {
// Support longer options by using the hash of the string.
$key = $field->slug . '_' . md5( sanitize_title( $option ) );
if ( ! isset( $meta_data[ $key ] ) ) {
// Support existing fields that did not save with md5 hash.
$key = $field->slug . '_' . sanitize_title( $option );
}
if ( isset( $meta_data[ $key ] ) ) {
$values[] = $meta_data[ $key ];
unset( $orphaned_data[ $key ] );
}
}
$value = implode( ', ', $values );
} elseif ( isset( $meta_data[ $field->slug ] ) ) {
$value = $meta_data[ $field->slug ];
unset( $orphaned_data[ $field->slug ] );
} else {
continue;
}
if ( '' === trim( $value ) ) {
$value = ' ';
}
$value = isset( $value ) ? wp_kses_post( $value ) : ' ';
$valid_meta_html .= '
<dt class="event-tickets-meta-label_' . sanitize_html_class( $field->slug ) . '">' . wp_kses_post( $field->label ) . '</dt>
<dd class="event-tickets-meta-data_' . sanitize_html_class( $field->slug ) . '">' . $value . '</dd>
';
}
if ( ! empty( $valid_meta_html ) ) {
$valid_meta_html = '<dl>' . $valid_meta_html . '</dl>';
}
foreach ( $orphaned_data as $key => $value ) {
$key = esc_html( $key );
$value = esc_html( $value );
$orphaned_meta_html .= "
<dt class='event-tickets-orphaned-meta-label'> $key </dt>
<dd class='event-tickets-orphaned-meta-data'> $value </dd>
";
}
if ( ! empty( $orphaned_meta_html ) ) {
$orphaned_meta_html = '
<h4>' . esc_html_x( 'Other attendee data:', 'orphaned attendee meta data', 'event-tickets-plus' ) . '</h4>
<dl>' . $orphaned_meta_html . '</dl>
';
}
?>
<tr class="event-tickets-meta-row">
<th></th>
<td colspan="6">
<?php echo $valid_meta_html; ?>
<?php echo $orphaned_meta_html; ?>
</td>
</tr>
<?php
}