From 5591b2806d1d3991af1e6c95137b7b9ec5d5d91e Mon Sep 17 00:00:00 2001 From: Alex P Date: Fri, 14 Jan 2022 14:34:54 +0200 Subject: [PATCH 1/2] Fix double slash in asset urls --- modules/ppcp-button/src/Assets/SmartButton.php | 4 ++-- modules/ppcp-onboarding/src/Assets/OnboardingAssets.php | 6 +++--- .../ppcp-vaulting/src/Assets/MyAccountPaymentsAssets.php | 2 +- .../src/Status/Assets/WebhooksStatusPageAssets.php | 4 ++-- 4 files changed, 8 insertions(+), 8 deletions(-) diff --git a/modules/ppcp-button/src/Assets/SmartButton.php b/modules/ppcp-button/src/Assets/SmartButton.php index cf0cef554..16f5742c4 100644 --- a/modules/ppcp-button/src/Assets/SmartButton.php +++ b/modules/ppcp-button/src/Assets/SmartButton.php @@ -407,7 +407,7 @@ class SmartButton implements SmartButtonInterface { if ( in_array( $this->context(), array( 'pay-now', 'checkout' ), true ) && $this->can_render_dcc() ) { wp_enqueue_style( 'ppcp-hosted-fields', - $this->module_url . '/assets/css/hosted-fields.css', + untrailingslashit( $this->module_url ) . '/assets/css/hosted-fields.css', array(), 1 ); @@ -415,7 +415,7 @@ class SmartButton implements SmartButtonInterface { if ( $load_script ) { wp_enqueue_script( 'ppcp-smart-button', - $this->module_url . '/assets/js/button.js', + untrailingslashit( $this->module_url ) . '/assets/js/button.js', array( 'jquery' ), '1.3.2', true diff --git a/modules/ppcp-onboarding/src/Assets/OnboardingAssets.php b/modules/ppcp-onboarding/src/Assets/OnboardingAssets.php index 33ff78730..57a632860 100644 --- a/modules/ppcp-onboarding/src/Assets/OnboardingAssets.php +++ b/modules/ppcp-onboarding/src/Assets/OnboardingAssets.php @@ -63,14 +63,14 @@ class OnboardingAssets { */ public function register(): bool { - $url = $this->module_url . '/assets/css/onboarding.css'; + $url = untrailingslashit( $this->module_url ) . '/assets/css/onboarding.css'; wp_register_style( 'ppcp-onboarding', $url, array(), 1 ); - $url = $this->module_url . '/assets/js/settings.js'; + $url = untrailingslashit( $this->module_url ) . '/assets/js/settings.js'; wp_register_script( 'ppcp-settings', $url, @@ -79,7 +79,7 @@ class OnboardingAssets { true ); - $url = $this->module_url . '/assets/js/onboarding.js'; + $url = untrailingslashit( $this->module_url ) . '/assets/js/onboarding.js'; wp_register_script( 'ppcp-onboarding', $url, diff --git a/modules/ppcp-vaulting/src/Assets/MyAccountPaymentsAssets.php b/modules/ppcp-vaulting/src/Assets/MyAccountPaymentsAssets.php index 275107f18..80e9bc3db 100644 --- a/modules/ppcp-vaulting/src/Assets/MyAccountPaymentsAssets.php +++ b/modules/ppcp-vaulting/src/Assets/MyAccountPaymentsAssets.php @@ -42,7 +42,7 @@ class MyAccountPaymentsAssets { public function enqueue(): void { wp_enqueue_script( 'ppcp-vaulting-myaccount-payments', - $this->module_url . '/assets/js/myaccount-payments.js', + untrailingslashit( $this->module_url ) . '/assets/js/myaccount-payments.js', array( 'jquery' ), '1', true diff --git a/modules/ppcp-webhooks/src/Status/Assets/WebhooksStatusPageAssets.php b/modules/ppcp-webhooks/src/Status/Assets/WebhooksStatusPageAssets.php index 5d5248329..27f0c0dd1 100644 --- a/modules/ppcp-webhooks/src/Status/Assets/WebhooksStatusPageAssets.php +++ b/modules/ppcp-webhooks/src/Status/Assets/WebhooksStatusPageAssets.php @@ -45,14 +45,14 @@ class WebhooksStatusPageAssets { public function register(): void { wp_register_style( 'ppcp-webhooks-status-page-style', - $this->module_url . '/assets/css/status-page.css', + untrailingslashit( $this->module_url ) . '/assets/css/status-page.css', array(), '1' ); wp_register_script( 'ppcp-webhooks-status-page', - $this->module_url . '/assets/js/status-page.js', + untrailingslashit( $this->module_url ) . '/assets/js/status-page.js', array(), '1', true From 314ba44bb9c40da006068119e0847817b7e5897f Mon Sep 17 00:00:00 2001 From: Alex P Date: Fri, 14 Jan 2022 16:35:13 +0200 Subject: [PATCH 2/2] Use realpath for __FILE__ when creating url on some sites __FILE__ contains .. which breaks url creation --- modules/ppcp-button/services.php | 2 +- modules/ppcp-onboarding/services.php | 2 +- modules/ppcp-vaulting/services.php | 2 +- modules/ppcp-wc-gateway/services.php | 4 ++-- modules/ppcp-webhooks/services.php | 2 +- 5 files changed, 6 insertions(+), 6 deletions(-) diff --git a/modules/ppcp-button/services.php b/modules/ppcp-button/services.php index a5901c750..fba90a1c8 100644 --- a/modules/ppcp-button/services.php +++ b/modules/ppcp-button/services.php @@ -90,7 +90,7 @@ return array( 'button.url' => static function ( ContainerInterface $container ): string { return plugins_url( '/modules/ppcp-button/', - dirname( __FILE__, 3 ) . '/woocommerce-paypal-payments.php' + dirname( realpath( __FILE__ ), 3 ) . '/woocommerce-paypal-payments.php' ); }, 'button.request-data' => static function ( ContainerInterface $container ): RequestData { diff --git a/modules/ppcp-onboarding/services.php b/modules/ppcp-onboarding/services.php index de6de7d3a..cb0e17590 100644 --- a/modules/ppcp-onboarding/services.php +++ b/modules/ppcp-onboarding/services.php @@ -139,7 +139,7 @@ return array( 'onboarding.url' => static function ( ContainerInterface $container ): string { return plugins_url( '/modules/ppcp-onboarding/', - dirname( __FILE__, 3 ) . '/woocommerce-paypal-payments.php' + dirname( realpath( __FILE__ ), 3 ) . '/woocommerce-paypal-payments.php' ); }, diff --git a/modules/ppcp-vaulting/services.php b/modules/ppcp-vaulting/services.php index e81fc55ad..0e3e2d7d1 100644 --- a/modules/ppcp-vaulting/services.php +++ b/modules/ppcp-vaulting/services.php @@ -17,7 +17,7 @@ return array( 'vaulting.module-url' => static function ( ContainerInterface $container ): string { return plugins_url( '/modules/ppcp-vaulting/', - dirname( __FILE__, 3 ) . '/woocommerce-paypal-payments.php' + dirname( realpath( __FILE__ ), 3 ) . '/woocommerce-paypal-payments.php' ); }, 'vaulting.assets.myaccount-payments' => function( ContainerInterface $container ) : MyAccountPaymentsAssets { diff --git a/modules/ppcp-wc-gateway/services.php b/modules/ppcp-wc-gateway/services.php index 29996a486..ddf1c8592 100644 --- a/modules/ppcp-wc-gateway/services.php +++ b/modules/ppcp-wc-gateway/services.php @@ -1988,7 +1988,7 @@ return array( 'wcgateway.url' => static function ( ContainerInterface $container ): string { return plugins_url( $container->get( 'wcgateway.relative-path' ), - dirname( __FILE__, 3 ) . '/woocommerce-paypal-payments.php' + dirname( realpath( __FILE__ ), 3 ) . '/woocommerce-paypal-payments.php' ); }, 'wcgateway.relative-path' => static function( ContainerInterface $container ): string { @@ -1996,7 +1996,7 @@ return array( }, 'wcgateway.absolute-path' => static function( ContainerInterface $container ): string { return plugin_dir_path( - dirname( __FILE__, 3 ) . '/woocommerce-paypal-payments.php' + dirname( realpath( __FILE__ ), 3 ) . '/woocommerce-paypal-payments.php' ) . $container->get( 'wcgateway.relative-path' ); }, diff --git a/modules/ppcp-webhooks/services.php b/modules/ppcp-webhooks/services.php index 13b0b5e54..536abaa1b 100644 --- a/modules/ppcp-webhooks/services.php +++ b/modules/ppcp-webhooks/services.php @@ -197,7 +197,7 @@ return array( 'webhook.module-url' => static function ( ContainerInterface $container ): string { return plugins_url( '/modules/ppcp-webhooks/', - dirname( __FILE__, 3 ) . '/woocommerce-paypal-payments.php' + dirname( realpath( __FILE__ ), 3 ) . '/woocommerce-paypal-payments.php' ); }, );