<?php
// Enable error reporting for debugging
error_reporting(E_ALL);
ini_set('display_errors', 1);
// Include database configuration
require_once 'admin/database/db_config.php';
echo "<h1>Creating OAuth Providers Table</h1>";
// Check if the table already exists
$tableExists = $conn->query("SHOW TABLES LIKE 'oauth_providers'");
$tableExists = $tableExists->num_rows > 0;
if ($tableExists) {
echo "<p>The oauth_providers table already exists.</p>";
} else {
// SQL to create the oauth_providers table
$sql = "CREATE TABLE oauth_providers (
id INT AUTO_INCREMENT PRIMARY KEY,
user_id INT NOT NULL,
provider VARCHAR(50) NOT NULL,
provider_user_id VARCHAR(255) NOT NULL,
email VARCHAR(255) NOT NULL,
display_name VARCHAR(255),
photo_url VARCHAR(255),
access_token TEXT,
refresh_token TEXT,
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
FOREIGN KEY (user_id) REFERENCES users(id) ON DELETE CASCADE,
UNIQUE KEY provider_user_id_unique (provider, provider_user_id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4";
if ($conn->query($sql) === TRUE) {
echo "<p>OAuth providers table created successfully.</p>";
} else {
echo "<p>Error creating oauth_providers table: " . $conn->error . "</p>";
}
}
echo "<p><a href='login.php'>Return to login page</a></p>";
?>