Add OrderUtil methods to check for specific order admin screens

This commit is contained in:
Corey McKrill 2023-05-23 16:10:32 -07:00
parent 83f3dae429
commit 1e40699ed2
No known key found for this signature in database
GPG Key ID: 84BBFE669C4D97B8
1 changed files with 33 additions and 0 deletions

View File

@ -135,6 +135,39 @@ final class OrderUtil {
return wc_get_container()->get( PageController::class )->get_new_page_url();
}
/**
* Check if the current admin screen is an order list table.
*
* @param string $order_type Optional. The order type to check for. Default shop_order.
*
* @return bool
*/
public static function is_order_list_table_screen( $order_type = 'shop_order' ) : bool {
return wc_get_container()->get( PageController::class )->is_order_screen( $order_type, 'list' );
}
/**
* Check if the current admin screen is for editing an order.
*
* @param string $order_type Optional. The order type to check for. Default shop_order.
*
* @return bool
*/
public static function is_order_edit_screen( $order_type = 'shop_order' ) : bool {
return wc_get_container()->get( PageController::class )->is_order_screen( $order_type, 'edit' );
}
/**
* Check if the current admin screen is adding a new order.
*
* @param string $order_type Optional. The order type to check for. Default shop_order.
*
* @return bool
*/
public static function is_new_order_screen( $order_type = 'shop_order' ) : bool {
return wc_get_container()->get( PageController::class )->is_order_screen( $order_type, 'new' );
}
/**
* Get the name of the database table that's currently in use for orders.
*