diff --git a/app/Http/Controllers/Webhook/Stripe.php b/app/Http/Controllers/Webhook/Stripe.php index 8cf39e58a..7d6721252 100644 --- a/app/Http/Controllers/Webhook/Stripe.php +++ b/app/Http/Controllers/Webhook/Stripe.php @@ -159,8 +159,12 @@ class Stripe extends Controller $feedback = data_get($data, 'cancellation_details.feedback'); $comment = data_get($data, 'cancellation_details.comment'); $lookup_key = data_get($data, 'items.data.0.price.lookup_key'); - if (str($lookup_key)->contains('ultimate')) { - $quantity = data_get($data, 'items.data.0.quantity', 10); + if (str($lookup_key)->contains('ultimate') || str($lookup_key)->contains('dynamic')) { + if (str($lookup_key)->contains('dynamic')) { + $quantity = data_get($data, 'items.data.0.quantity', 2); + } else { + $quantity = data_get($data, 'items.data.0.quantity', 10); + } $team = data_get($subscription, 'team'); $team->update([ 'custom_server_limit' => $quantity, diff --git a/app/Livewire/Subscription/PricingPlans.php b/app/Livewire/Subscription/PricingPlans.php index 3996d70d5..4e4dbadee 100644 --- a/app/Livewire/Subscription/PricingPlans.php +++ b/app/Livewire/Subscription/PricingPlans.php @@ -39,6 +39,12 @@ class PricingPlans extends Component case 'ultimate-yearly': $priceId = config('subscription.stripe_price_id_ultimate_yearly'); break; + case 'dynamic-monthly': + $priceId = config('subscription.stripe_price_id_dynamic_monthly'); + break; + case 'dynamic-yearly': + $priceId = config('subscription.stripe_price_id_dynamic_yearly'); + break; default: $priceId = config('subscription.stripe_price_id_basic_monthly'); break; @@ -72,6 +78,13 @@ class PricingPlans extends Component ]; $payload['line_items'][0]['quantity'] = 10; } + if (str($type)->contains('dynamic')) { + $payload['line_items'][0]['adjustable_quantity'] = [ + 'enabled' => true, + 'minimum' => 2, + ]; + $payload['line_items'][0]['quantity'] = 2; + } if (!data_get($team, 'subscription.stripe_trial_already_ended')) { if (config('constants.limits.trial_period') > 0) { diff --git a/config/sentry.php b/config/sentry.php index ac9f8c626..e0a923f0b 100644 --- a/config/sentry.php +++ b/config/sentry.php @@ -7,7 +7,7 @@ return [ // The release version of your application // Example with dynamic git hash: trim(exec('git --git-dir ' . base_path('.git') . ' log --pretty="%h" -n1 HEAD')) - 'release' => '4.0.0-beta.256', + 'release' => '4.0.0-beta.257', // When left empty or `null` the Laravel environment will be used 'environment' => config('app.env'), diff --git a/config/subscription.php b/config/subscription.php index 96a9a8e1c..f8bf77ce0 100644 --- a/config/subscription.php +++ b/config/subscription.php @@ -20,6 +20,9 @@ return [ 'stripe_price_id_ultimate_monthly_old' => env('STRIPE_PRICE_ID_ULTIMATE_MONTHLY_OLD', null), 'stripe_price_id_ultimate_yearly_old' => env('STRIPE_PRICE_ID_ULTIMATE_YEARLY_OLD', null), + 'stripe_price_id_dynamic_monthly' => env('STRIPE_PRICE_ID_DYNAMIC_MONTHLY', null), + 'stripe_price_id_dynamic_yearly' => env('STRIPE_PRICE_ID_DYNAMIC_YEARLY', null), + // Paddle 'paddle_vendor_id' => env('PADDLE_VENDOR_ID', null), 'paddle_vendor_auth_code' => env('PADDLE_VENDOR_AUTH_CODE', null), diff --git a/config/version.php b/config/version.php index f9a441c01..f395ea35c 100644 --- a/config/version.php +++ b/config/version.php @@ -1,3 +1,3 @@ @else -