@extends("client.layouts.app") @section("title", $service->product?->name ?? __("client.services.title")) @section("content") @php $st = strtolower((string) $service->status); $isPanelica = (($service->server?->type ?? $service->product?->server_type ?? '') === 'panelica'); // Login to panel: Panelica, and any other module that can hand out a sign-in link (ssoLogin). $panelModule = $service->server_id ? app(\App\Services\ProvisioningService::class)->resolveModule($service) : null; $canPanelLogin = $isPanelica || ($panelModule && method_exists($panelModule, 'ssoLogin')); $feat = $hostingFeatures ?? []; // Full control-panel tool set. `route` null = not built yet (shown as Soon). $tools = [ ['k'=>'files','name'=>__('client.hosting.files.title'),'desc'=>__('client.hosting.files.subtitle'),'ic'=>'ri-folder-open-line','c'=>'#3b82f6','route'=>route('client.services.files',$service)], ['k'=>'emails','name'=>__('client.hosting.email.title'),'desc'=>__('client.hosting.email.subtitle'),'ic'=>'ri-mail-line','c'=>'#8b5cf6','route'=>route('client.services.emails',$service)], ['k'=>'databases','name'=>__('client.hosting.databases.title'),'desc'=>__('client.hosting.databases.subtitle'),'ic'=>'ri-database-2-line','c'=>'#0ea5e9','route'=>route('client.services.databases',$service)], ['k'=>'ftp','name'=>__('client.hosting.ftp.title'),'desc'=>__('client.hosting.ftp.subtitle'),'ic'=>'ri-folder-transfer-line','c'=>'#f59e0b','route'=>route('client.services.ftp',$service)], ['k'=>'subdomains','name'=>__('client.hosting.subdomains.title'),'desc'=>__('client.hosting.subdomains.subtitle'),'ic'=>'ri-node-tree','c'=>'#10b981','route'=>route('client.services.subdomains',$service)], ['k'=>'dns','name'=>__('client.hosting.dns.title'),'desc'=>__('client.hosting.dns.subtitle'),'ic'=>'ri-global-line','c'=>'#6366f1','route'=>route('client.services.dns',$service)], ['k'=>'cron','name'=>__('client.hosting.cron.title'),'desc'=>__('client.hosting.cron.subtitle'),'ic'=>'ri-time-line','c'=>'#ec4899','route'=>route('client.services.cron',$service)], ['k'=>'backups','name'=>__('client.hosting.backups.title'),'desc'=>__('client.hosting.backups.subtitle'),'ic'=>'ri-archive-2-line','c'=>'#64748b','route'=>route('client.services.backups',$service)], ['k'=>'containers','name'=>__('client.hosting.containers.title'),'desc'=>__('client.hosting.containers.subtitle'),'ic'=>'ri-apps-2-line','c'=>'#0ea5e9','route'=>route('client.services.containers',$service)], ['k'=>'laravel','name'=>__('client.hosting.laravel.title'),'desc'=>__('client.hosting.laravel.subtitle'),'ic'=>'ri-fire-line','c'=>'#ef4444','route'=>route('client.services.laravel',$service)], ['k'=>'nodejs','name'=>__('client.hosting.nodejs.title'),'desc'=>__('client.hosting.nodejs.subtitle'),'ic'=>'ri-nodejs-line','c'=>'#22c55e','route'=>route('client.services.nodejs',$service)], ['k'=>'python','name'=>__('client.hosting.python.title'),'desc'=>__('client.hosting.python.subtitle'),'ic'=>'ri-terminal-box-line','c'=>'#3b82f6','route'=>route('client.services.python',$service)], ]; @endphp
| {{ __('common.table.name') }} | {{ __('common.table.amount') }} | {{ __('common.table.billing_cycle') }} | {{ __('client.services.next_due_date') }} | {{ __('common.table.status') }} | {{ __('common.table.actions') }} |
|---|---|---|---|---|---|
| {{ $addon->label() }} | {{ display_money_fmt($addon->amount) }} | {{ $addon->billing_cycle }} | {{ $addon->next_due_date?->format(date_fmt()) ?? '-' }} | {{ __('client.status.' . strtolower($addon->status)) }} | @if(in_array(strtolower($addon->status),['active','pending'],true))@endif |
| {{ $download->title }}@if($download->description) {{ $download->description }}@endif |
{{ __('common.actions.download') }} |