Files
wevads-platform/scripts/send-api-hub.php
2026-02-26 04:53:11 +01:00

104 lines
9.0 KiB
PHP
Executable File

<?php
header('Content-Type: text/html; charset=utf-8');
$db = new PDO("pgsql:host=127.0.0.1;dbname=adx_system", "admin", "admin123");
$o365 = ['accounts' => $db->query("SELECT COUNT(*) FROM admin.office_accounts")->fetchColumn(), 'domains' => $db->query("SELECT COUNT(*) FROM admin.office_domains")->fetchColumn(), 'connectors' => $db->query("SELECT COUNT(*) FROM admin.office_connectors")->fetchColumn()];
$gsuite = ['accounts' => $db->query("SELECT COUNT(*) FROM admin.gsuite_accounts")->fetchColumn(), 'domains' => $db->query("SELECT COUNT(*) FROM admin.gsuite_domains")->fetchColumn(), 'workspaces' => $db->query("SELECT COUNT(*) FROM admin.gsuite_workspaces")->fetchColumn()];
$firebase = ['projects' => $db->query("SELECT COUNT(*) FROM admin.firebase_projects")->fetchColumn(), 'users' => $db->query("SELECT COUNT(*) FROM admin.firebase_users")->fetchColumn()];
$aws = ['accounts' => $db->query("SELECT COUNT(*) FROM admin.aws_accounts")->fetchColumn(), 'assets' => $db->query("SELECT COUNT(*) FROM admin.s3_assets")->fetchColumn()];
$recentO365 = $db->query("SELECT * FROM admin.office_accounts ORDER BY id DESC LIMIT 8")->fetchAll(PDO::FETCH_ASSOC);
$recentGsuite = $db->query("SELECT * FROM admin.gsuite_accounts ORDER BY id DESC LIMIT 8")->fetchAll(PDO::FETCH_ASSOC);
?>
<!DOCTYPE html>
<html lang="fr">
<head><meta charset="UTF-8"><title>📧 Send API Hub</title><script src="https://cdn.tailwindcss.com"></script><link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.0.0/css/all.min.css">
</head>
<body class="bg-gray-900 text-white min-h-screen p-6">
<div class="container mx-auto">
<h1 class="text-3xl font-bold mb-6">📧 Send API Hub</h1>
<p class="text-gray-400 mb-6">Gestion centralisée des APIs d'envoi: Office 365, GSuite, Firebase, Amazon S3</p>
<!-- Stats -->
<div class="grid grid-cols-4 gap-4 mb-8">
<div class="bg-blue-600 rounded-lg p-4"><div class="text-3xl font-bold"><?= $o365['accounts'] ?></div><div class="text-sm">📧 Office 365 Accounts</div></div>
<div class="bg-red-500 rounded-lg p-4"><div class="text-3xl font-bold"><?= $gsuite['accounts'] ?></div><div class="text-sm">📨 GSuite Accounts</div></div>
<div class="bg-yellow-500 rounded-lg p-4"><div class="text-3xl font-bold"><?= $firebase['projects'] ?></div><div class="text-sm">🔥 Firebase Projects</div></div>
<div class="bg-orange-500 rounded-lg p-4"><div class="text-3xl font-bold"><?= $aws['assets'] ?></div><div class="text-sm">☁️ S3 Assets</div></div>
</div>
<!-- Quick Actions -->
<div class="grid grid-cols-4 gap-4 mb-8">
<a href="/office365-hub.php" class="bg-gray-800 hover:bg-blue-600 rounded-lg p-4 text-center transition"><i class="fas fa-envelope text-2xl mb-2 text-blue-400"></i><div>Office 365 Hub</div></a>
<a href="/office-management.php" class="bg-gray-800 hover:bg-blue-500 rounded-lg p-4 text-center transition"><i class="fas fa-cog text-2xl mb-2 text-blue-300"></i><div>Office Management</div></a>
<a href="/office-workflow.php" class="bg-gray-800 hover:bg-blue-400 rounded-lg p-4 text-center transition"><i class="fas fa-project-diagram text-2xl mb-2 text-blue-200"></i><div>Office Workflow</div></a>
<a href="/office-import.php" class="bg-gray-800 hover:bg-blue-300 rounded-lg p-4 text-center transition"><i class="fas fa-file-import text-2xl mb-2 text-blue-100"></i><div>Import Accounts</div></a>
</div>
<div class="grid grid-cols-4 gap-4 mb-8">
<a href="/gsuite-manager.php" class="bg-gray-800 hover:bg-red-600 rounded-lg p-4 text-center transition"><i class="fab fa-google text-2xl mb-2 text-red-400"></i><div>GSuite Manager</div></a>
<a href="/deliverads/gsuite.php" class="bg-gray-800 hover:bg-red-500 rounded-lg p-4 text-center transition"><i class="fas fa-cogs text-2xl mb-2 text-red-300"></i><div>GSuite Config</div></a>
<a href="/firebase-manager.php" class="bg-gray-800 hover:bg-yellow-600 rounded-lg p-4 text-center transition"><i class="fas fa-fire text-2xl mb-2 text-yellow-400"></i><div>Firebase Manager</div></a>
<a href="/s3_upload_direct.php" class="bg-gray-800 hover:bg-orange-600 rounded-lg p-4 text-center transition"><i class="fab fa-aws text-2xl mb-2 text-orange-400"></i><div>S3 Upload</div></a>
</div>
<!-- Office 365 Section -->
<div class="bg-gray-800 rounded-lg p-6 mb-6">
<h2 class="text-xl font-bold mb-4 text-blue-400">📧 Office 365</h2>
<div class="grid grid-cols-4 gap-4 mb-4">
<div class="bg-gray-700 rounded p-3"><div class="text-2xl font-bold"><?= $o365['accounts'] ?></div><div class="text-sm text-gray-400">Accounts</div></div>
<div class="bg-gray-700 rounded p-3"><div class="text-2xl font-bold"><?= $o365['domains'] ?></div><div class="text-sm text-gray-400">Domains</div></div>
<div class="bg-gray-700 rounded p-3"><div class="text-2xl font-bold"><?= $o365['connectors'] ?></div><div class="text-sm text-gray-400">Connectors</div></div>
<a href="/office-workflow.php" class="bg-blue-600 hover:bg-blue-500 rounded p-3 text-center"><i class="fas fa-play"></i> Start Workflow</a>
</div>
<h3 class="font-bold mb-2">Recent Accounts</h3>
<table class="w-full text-sm"><thead class="bg-gray-700"><tr><th class="p-2 text-left">ID</th><th class="p-2 text-left">Email</th><th class="p-2 text-left">Tenant</th><th class="p-2 text-left">Status</th></tr></thead>
<tbody><?php foreach($recentO365 as $a): ?><tr class="border-b border-gray-700"><td class="p-2"><?= $a['id'] ?></td><td class="p-2"><?= $a['admin_email'] ?? $a['email'] ?? '-' ?></td><td class="p-2"><?= $a['tenant_domain'] ?? '-' ?></td><td class="p-2"><span class="px-2 py-1 rounded text-xs bg-green-600"><?= $a['status'] ?? 'active' ?></span></td></tr><?php endforeach; ?></tbody></table>
</div>
<!-- GSuite Section -->
<div class="bg-gray-800 rounded-lg p-6 mb-6">
<h2 class="text-xl font-bold mb-4 text-red-400">📨 GSuite</h2>
<div class="grid grid-cols-4 gap-4 mb-4">
<div class="bg-gray-700 rounded p-3"><div class="text-2xl font-bold"><?= $gsuite['accounts'] ?></div><div class="text-sm text-gray-400">Accounts</div></div>
<div class="bg-gray-700 rounded p-3"><div class="text-2xl font-bold"><?= $gsuite['domains'] ?></div><div class="text-sm text-gray-400">Domains</div></div>
<div class="bg-gray-700 rounded p-3"><div class="text-2xl font-bold"><?= $gsuite['workspaces'] ?></div><div class="text-sm text-gray-400">Workspaces</div></div>
<a href="/gsuite-manager.php" class="bg-red-600 hover:bg-red-500 rounded p-3 text-center"><i class="fas fa-cog"></i> Manage</a>
</div>
<h3 class="font-bold mb-2">Recent Accounts</h3>
<table class="w-full text-sm"><thead class="bg-gray-700"><tr><th class="p-2 text-left">ID</th><th class="p-2 text-left">Email</th><th class="p-2 text-left">Domain</th><th class="p-2 text-left">Status</th></tr></thead>
<tbody><?php foreach($recentGsuite as $a): ?><tr class="border-b border-gray-700"><td class="p-2"><?= $a['id'] ?></td><td class="p-2"><?= $a['email'] ?? '-' ?></td><td class="p-2"><?= $a['domain'] ?? '-' ?></td><td class="p-2"><span class="px-2 py-1 rounded text-xs bg-green-600"><?= $a['status'] ?? 'active' ?></span></td></tr><?php endforeach; ?></tbody></table>
</div>
<!-- Firebase & S3 Section -->
<div class="grid grid-cols-2 gap-6">
<div class="bg-gray-800 rounded-lg p-6">
<h2 class="text-xl font-bold mb-4 text-yellow-400">🔥 Firebase</h2>
<div class="grid grid-cols-2 gap-4 mb-4">
<div class="bg-gray-700 rounded p-3"><div class="text-2xl font-bold"><?= $firebase['projects'] ?></div><div class="text-sm text-gray-400">Projects</div></div>
<div class="bg-gray-700 rounded p-3"><div class="text-2xl font-bold"><?= $firebase['users'] ?></div><div class="text-sm text-gray-400">Users</div></div>
</div>
<a href="/firebase-manager.php" class="block bg-yellow-600 hover:bg-yellow-500 rounded p-3 text-center transition"><i class="fas fa-fire mr-2"></i>Open Firebase Manager</a>
</div>
<div class="bg-gray-800 rounded-lg p-6">
<h2 class="text-xl font-bold mb-4 text-orange-400">☁️ Amazon S3</h2>
<div class="grid grid-cols-2 gap-4 mb-4">
<div class="bg-gray-700 rounded p-3"><div class="text-2xl font-bold"><?= $aws['accounts'] ?></div><div class="text-sm text-gray-400">AWS Accounts</div></div>
<div class="bg-gray-700 rounded p-3"><div class="text-2xl font-bold"><?= $aws['assets'] ?></div><div class="text-sm text-gray-400">S3 Assets</div></div>
</div>
<a href="/s3_upload_direct.php" class="block bg-orange-600 hover:bg-orange-500 rounded p-3 text-center transition"><i class="fab fa-aws mr-2"></i>Upload to S3</a>
</div>
</div>
<!-- n8n Workflows -->
<div class="mt-6 bg-gray-800 rounded-lg p-6">
<h2 class="text-xl font-bold mb-4 text-purple-400">🔄 n8n Workflows</h2>
<div class="grid grid-cols-3 gap-4">
<a href="http://89.167.40.150:5825" target="_blank" class="bg-gray-700 hover:bg-blue-600 rounded p-3 transition"><i class="fas fa-envelope mr-2"></i>O365 Monitor</a>
<a href="http://89.167.40.150:5825" target="_blank" class="bg-gray-700 hover:bg-blue-500 rounded p-3 transition"><i class="fas fa-cogs mr-2"></i>O365 Setup Pipeline</a>
<a href="http://89.167.40.150:5825" target="_blank" class="bg-gray-700 hover:bg-purple-600 rounded p-3 transition"><i class="fas fa-project-diagram mr-2"></i>Open n8n</a>
</div>
</div>
</div>
</body>
</html>