Add customer dashboard, provisioning services, and legal pages

Phase 3 (Provisioning):
- Create ProvisioningServiceInterface abstraction
- Implement VirtFusionService for VPS provisioning via REST API
- Implement SynergyCPService for dedicated server provisioning
- Implement EnhanceService for web hosting provisioning
- Create ProvisioningFactory for service type routing
- Add API config for VirtFusion, SynergyCP, Enhance

Phase 4 (Customer Dashboard):
- Enhance DashboardController with real data (services, subscriptions,
  invoices, pending amounts, next renewal)
- Rebuild Dashboard.vue with stats cards, active subscriptions list,
  recent invoices table, and quick action buttons

Phase 8 (Marketing):
- Add Terms of Service page with 15 sections
- Add Privacy Policy page (GDPR/CCPA aware)
- Add Acceptable Use Policy page
- Add Service Level Agreement page (99.99% uptime, credit calc)
- 52 tests passing, build clean

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
Claude Dev
2026-02-09 10:21:25 -05:00
parent ec8f0272ec
commit 33e86a32a8
14 changed files with 2728 additions and 35 deletions

View File

@@ -7,6 +7,7 @@ namespace App\Providers;
use App\Http\Responses\LoginResponse;
use App\Http\Responses\RegisterResponse;
use App\Services\Billing\BillingServiceFactory;
use App\Services\Provisioning\ProvisioningFactory;
use Illuminate\Cache\RateLimiting\Limit;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\RateLimiter;
@@ -22,6 +23,7 @@ class AppServiceProvider extends ServiceProvider
$this->app->singleton(LoginResponseContract::class, LoginResponse::class);
$this->app->singleton(RegisterResponseContract::class, RegisterResponse::class);
$this->app->singleton(BillingServiceFactory::class);
$this->app->singleton(ProvisioningFactory::class);
}
public function boot(): void