@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
{{ $plan->name }}
@if($hasDiscount)
{{ number_format($originalPrice, 0, '.', ' ') }} Points {{ number_format($discountedPrice, 0, '.', ' ') }} Points
-{{ $discountRate }}% {{ __('student.subscription.referral_discount') }}
@else
{{ number_format((float)$plan->price, 0, '.', ' ') }} Points
@endif @if($plan->price > 0)
@if($plan->duration_days > 0) / {{ $plan->duration_days }} {{ __('student.subscription.days') }} @else / {{ __('student.subscription.unlimited_duration') }} @endif
@endif
@if($plan->description)

{{ $plan->description }}

@endif @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
@csrf
@endif
@endforeach
@endsection