48 lines
1.6 KiB
PHP
48 lines
1.6 KiB
PHP
<?php
|
|
require_once __DIR__ . '/../config.php';
|
|
|
|
try {
|
|
$db = db();
|
|
|
|
// 1. Create partners table
|
|
$db->exec("
|
|
CREATE TABLE IF NOT EXISTS partners (
|
|
id INT AUTO_INCREMENT PRIMARY KEY,
|
|
name VARCHAR(255) NOT NULL,
|
|
user_id INT UNIQUE
|
|
)
|
|
");
|
|
|
|
// 2. Add partner_id to residents table
|
|
$db->exec("ALTER TABLE residents ADD COLUMN partner_id INT NULL");
|
|
|
|
// 3. Create a user for a partner (if not exists)
|
|
$partner_email = 'partner@goodwill.example';
|
|
$stmt = $db->prepare("SELECT id FROM users WHERE email = ?");
|
|
$stmt->execute([$partner_email]);
|
|
$partner_user_id = $stmt->fetchColumn();
|
|
|
|
if (!$partner_user_id) {
|
|
$db->prepare("INSERT INTO users (email, password, role) VALUES (?, ?, ?)")->execute([$partner_email, password_hash('password123', PASSWORD_DEFAULT), 'partner']);
|
|
$partner_user_id = $db->lastInsertId();
|
|
}
|
|
|
|
// 4. Create a partner profile
|
|
$stmt = $db->prepare("SELECT id FROM partners WHERE user_id = ?");
|
|
$stmt->execute([$partner_user_id]);
|
|
$partner_id = $stmt->fetchColumn();
|
|
|
|
if (!$partner_id) {
|
|
$db->prepare("INSERT INTO partners (name, user_id) VALUES (?, ?)")->execute(['Goodwill Housing', $partner_user_id]);
|
|
$partner_id = $db->lastInsertId();
|
|
}
|
|
|
|
// 5. Assign some residents to the partner
|
|
$db->exec("UPDATE residents SET partner_id = {$partner_id} WHERE program = 'Housing'");
|
|
|
|
echo "Database schema updated successfully for partner feature.";
|
|
|
|
} catch (PDOException $e) {
|
|
die("Database migration failed: " . $e->getMessage());
|
|
}
|