]> _ Git - physioassist-wordpress.git/commitdiff
wait #7341 @4:00
authorsoufiane <soufiane@cubedesigners.com>
Thu, 27 Feb 2025 15:18:50 +0000 (16:18 +0100)
committersoufiane <soufiane@cubedesigners.com>
Thu, 27 Feb 2025 15:18:50 +0000 (16:18 +0100)
wp-content/themes/physioassist/resources/functions.php

index 248a5f86b966136c7538df983f5bfdef8c62b150..64716a2b1957ae57aefb95df8af9fc906a15d7ee 100644 (file)
@@ -240,9 +240,41 @@ function cancelSubscription( $data ) {
     return "Annulation ok";
 }
 
+function listSubscriptionByUserId( $request ) {
+    $pluginVersion = SUBSCRIPTIONS_FOR_WOOCOMMERCE_VERSION;
+    $pluginName = 'subscriptions-for-woocommerce';
+
+    $user = get_user_by('id',$request['id']);
+    $username = $user->user_login;
+
+    $instance = new Subscriptions_For_Woocommerce_Rest_Api($pluginName,$pluginVersion);
+    $response = $instance->wps_wsp_view_susbcription_callback($request);
+    $response->data['data'] = array_filter($response->data['data'], function($n) use($username) { return $n['user_name'] === $username ; });
+
+    return $response;
+}
+
+function wps_wsp_subscription_permission_check($request){
+    $pluginVersion = SUBSCRIPTIONS_FOR_WOOCOMMERCE_VERSION;
+    $pluginName = 'subscriptions-for-woocommerce';
+
+    $instance = new Subscriptions_For_Woocommerce_Rest_Api($pluginName,$pluginVersion);
+    return $instance->wps_wsp_subscription_permission_check($request);
+}
+
 add_action( 'rest_api_init', function () {
     register_rest_route( 'wsp-route/v1', '/cancel/(?P<id>\d+)', array(
         'methods' => 'GET',
         'callback' => 'cancelSubscription',
     ) );
 } );
+
+add_action( 'rest_api_init', function () {
+    register_rest_route( 'wsp-route/v1', '/subscription/(?P<id>\d+)', array(
+        'methods' => 'GET',
+        'callback' => 'listSubscriptionByUserId',
+        'permission_callback' => 'wps_wsp_subscription_permission_check',
+    ) );
+} );
+
+