41 lines
890 B
PHP
41 lines
890 B
PHP
<?php
|
|
/**
|
|
* Create Tenant Endpoint (Super Admin Only)
|
|
*/
|
|
|
|
use App\Core\Database;
|
|
use App\Core\Validator;
|
|
use App\Middleware\AuthMiddleware;
|
|
|
|
$decoded = AuthMiddleware::check();
|
|
|
|
if ($decoded['role'] !== 'super_admin') {
|
|
json_error('Unauthorized', 403);
|
|
}
|
|
|
|
$data = input();
|
|
|
|
$errors = Validator::validate($data, [
|
|
'name' => 'required',
|
|
'email' => 'required|email'
|
|
]);
|
|
|
|
if ($errors) {
|
|
json_error('Validation Failed', 422, $errors);
|
|
}
|
|
|
|
$db = Database::getInstance();
|
|
|
|
try {
|
|
$stmt = $db->prepare("INSERT INTO tenants (name, email, phone, status, created_at) VALUES (?, ?, ?, 'active', NOW())");
|
|
$stmt->execute([
|
|
$data['name'],
|
|
$data['email'],
|
|
$data['phone'] ?? null
|
|
]);
|
|
|
|
json_success(null, 'تم إنشاء المكتب بنجاح');
|
|
} catch (\Exception $e) {
|
|
json_error('حدث خطأ أثناء حفظ البيانات', 500);
|
|
}
|