PluginProbe ʕ •ᴥ•ʔ
LatePoint – Calendar Booking Plugin for Appointments and Events / 5.4.2
LatePoint – Calendar Booking Plugin for Appointments and Events v5.4.2
5.6.6 5.6.5 5.6.4 5.6.3 5.6.2 5.6.1 5.6.0 5.5.2 5.5.1 5.5.0 5.4.2 trunk 5.1.0 5.1.1 5.1.2 5.1.3 5.1.4 5.1.5 5.1.6 5.1.7 5.1.8 5.1.9 5.1.91 5.1.92 5.1.93 5.1.94 5.2.0 5.2.1 5.2.10 5.2.11 5.2.2 5.2.3 5.2.4 5.2.5 5.2.6 5.2.7 5.2.8 5.2.9 5.3.0 5.3.1 5.3.2 5.4.0 5.4.1
latepoint / lib / abilities / orders / get-invoice.php
latepoint / lib / abilities / orders Last commit date
abstract-order-ability.php 3 months ago change-invoice-status.php 3 months ago change-order-status.php 3 months ago create-invoice.php 3 months ago create-order.php 3 months ago delete-order.php 3 months ago get-invoice.php 3 months ago get-order-price-breakdown.php 3 months ago get-order.php 3 months ago get-transaction.php 3 months ago list-invoices.php 3 months ago list-orders.php 3 months ago list-transactions.php 3 months ago refund-transaction.php 3 months ago update-order.php 3 months ago
get-invoice.php
41 lines
1 <?php
2 if ( ! defined( 'ABSPATH' ) ) {
3 exit;
4 }
5
6 class LatePointAbilityGetInvoice extends LatePointAbstractOrderAbility {
7
8 protected function configure(): void {
9 $this->id = 'latepoint/get-invoice';
10 $this->label = __( 'Get invoice', 'latepoint' );
11 $this->description = __( 'Returns a single invoice by ID.', 'latepoint' );
12 $this->permission = 'booking__view';
13 $this->read_only = true;
14 }
15
16 public function get_input_schema(): array {
17 return [
18 'type' => 'object',
19 'properties' => [
20 'id' => [
21 'type' => 'integer',
22 'description' => __( 'Invoice ID.', 'latepoint' ),
23 ],
24 ],
25 'required' => [ 'id' ],
26 ];
27 }
28
29 public function get_output_schema(): array {
30 return $this->invoice_output_schema();
31 }
32
33 public function execute( array $args ) {
34 $invoice = new OsInvoiceModel( (int) $args['id'] );
35 if ( $invoice->is_new_record() ) {
36 return new WP_Error( 'not_found', __( 'Invoice not found.', 'latepoint' ), [ 'status' => 404 ] );
37 }
38 return $this->serialize_invoice( $invoice );
39 }
40 }
41