39290-vm/wp-content/plugins/stripe-payments/admin/includes/class-asp-admin-order-meta-boxes.php
2026-03-26 12:55:30 +00:00

56 lines
1.6 KiB
PHP

<?php
class ASP_Admin_Order_Meta_Boxes {
public function __construct() {
add_action( 'add_meta_boxes_stripe_order', array( $this, 'add_meta_boxes' ), 0 );
}
public function add_meta_boxes() {
add_meta_box(
'asp_order_events_meta_box',
__( 'Order Events', 'stripe-payments' ),
array( $this, 'display_order_events_meta_box' ),
'stripe_order',
'side',
'default'
);
}
public function display_order_events_meta_box( $post ) {
$order_events = get_post_meta( $post->ID, 'asp_order_events', true );
if ( ! empty( $order_events ) && is_array( $order_events ) ) {
$i = 0;
foreach ( $order_events as $event ) {
$i++;
if ( 1 === $i && empty( $event['comment'] ) ) {
$event['comment'] = __( 'Order created.', 'stripe-payments' );
}
if ( 'paid' === $event['status'] && empty( $event['comment'] ) ) {
$event['comment'] = __( 'Payment completed.', 'stripe-payments' );
}
echo sprintf(
'<div class="asp-order-event-cont%s">
<div class="asp-order-event-header">
<span class="asp-order-event-status">%s</span>
<span class="asp-order-event-date" title="%s">%s</span>
</div>
<div class="asp-order-event-comment">%s</div>
</div>',
' os-' . $event['status'],
ASPOrder::get_status_str( $event['status'] ),
gmdate( 'Y-m-d H:i:s', $event['date'] ),
gmdate( 'M d H:i', $event['date'] ),
$event['comment']
);
if ( count( $order_events ) !== $i ) {
echo '<hr>';
}
}
} else {
echo __( 'No data available.', 'stripe-payments' );
}
}
}
new ASP_Admin_Order_Meta_Boxes();