@extends('layouts.student')
@section('title', 'Abonnements - MentoraMind')
@section('content')
@php
// Trier les plans pour que le plan actuel soit en dernier
$sortedPlans = $plans->sortBy(function($plan) use ($currentSubscription) {
$isCurrentPlan = isset($currentSubscription) && $currentSubscription && $currentSubscription->subscription_plan_id === $plan->id;
return $isCurrentPlan ? 1 : 0;
});
@endphp
@foreach($sortedPlans as $index => $plan)
@php
$isCurrentPlan = isset($currentSubscription) && $currentSubscription && $currentSubscription->subscription_plan_id === $plan->id;
$isFeatured = $plan->price > 0 && $plan->price <= 5000;
$hasActiveSubscription = isset($currentSubscription) && $currentSubscription && $currentSubscription->status === 'active';
$canUpgrade = $hasActiveSubscription && $currentSubscription->subscriptionPlan->price == 0 && $plan->price > 0;
$canSubscribe = !$hasActiveSubscription || $canUpgrade;
$userBalance = $user->customer->current_balance ?? 0;
// Check if user gets first subscription discount
$hasDiscount = false;
$discountRate = 0;
$originalPrice = (float) $plan->price;
$discountedPrice = $originalPrice;
if ($plan->price > 0 && $user->referred_by) {
$previousPaidSubscriptions = \App\Models\Subscription::where('user_id', $user->id)
->where('amount_paid', '>', 0)
->count();
if ($previousPaidSubscriptions === 0) {
$hasDiscount = true;
$discountRate = config('referral.first_subscription_discount', 10);
$discountAmount = ($originalPrice * $discountRate) / 100;
$discountedPrice = $originalPrice - $discountAmount;
}
}
$hasEnoughBalance = $plan->price == 0 || $userBalance >= $discountedPrice;
@endphp
@if($isFeatured)
{{ __('student.subscription.popular') }}
@endif
@if($plan->description)
{{ $plan->description }}
@endif
- {{ $plan->quiz_limit === -1 ? __('student.subscription.unlimited_quizzes') : $plan->quiz_limit . ' ' . __('student.subscription.quizzes') }}
- {{ $plan->chat_limit === -1 ? __('student.subscription.unlimited_chats') : $plan->chat_limit . ' ' . __('student.subscription.chats') }}
@if($isCurrentPlan)
{{ __('student.subscription.current_plan') }}
@endif
@if($isCurrentPlan)
@elseif($plan->price == 0)
{{ __('student.subscription.free_plan_info') }}
@elseif(!$canSubscribe)
@elseif(!$hasEnoughBalance)
{{ __('student.subscription.recharge_account') }}
@else
@endif
@endforeach
@endsection