/
BirdLeon
/
pcsocial
Обзор
Документация
Войти
/
BirdLeon
/
pcsocial
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
master
database.sql
244 строки
8 KB
BirdLeon
create: README-1.md, ИНСТРУКЦИЯ.txt, ПОЛНАЯ_ДОКУМЕНТАЦИЯ.md, New file, auth.js, feed.js, main.js, messages.js, profile.js, utils.js, responsive.css, styles.css, index.html, logo.png, logo.svg, database.sql
23 фев 2026, 18:54
Верифицирован
23 фев 2026, 18:54
76579db
Код
Авторство
О чём код?
-- PalomaCreep Database Schema -- MySQL/OpenServer Compatible CREATE DATABASE IF NOT EXISTS palomaCreep; USE palomaCreep; -- Users Table CREATE TABLE IF NOT EXISTS users ( id INT PRIMARY KEY AUTO_INCREMENT, username VARCHAR(50) UNIQUE NOT NULL, email VARCHAR(100) UNIQUE NOT NULL, password_hash VARCHAR(255) NOT NULL, first_name VARCHAR(50), last_name VARCHAR(50), profile_picture VARCHAR(255), bio TEXT, birth_date DATE, location VARCHAR(100), website VARCHAR(255), created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP, updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, is_banned BOOLEAN DEFAULT FALSE, ban_reason TEXT, ban_date TIMESTAMP NULL, is_verified BOOLEAN DEFAULT FALSE ); -- Posts Table CREATE TABLE IF NOT EXISTS posts ( id INT PRIMARY KEY AUTO_INCREMENT, user_id INT NOT NULL, content TEXT NOT NULL, image_url VARCHAR(255), video_url VARCHAR(255), likes_count INT DEFAULT 0, comments_count INT DEFAULT 0, created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP, updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, is_deleted BOOLEAN DEFAULT FALSE, FOREIGN KEY (user_id) REFERENCES users(id) ON DELETE CASCADE ); -- Comments Table CREATE TABLE IF NOT EXISTS comments ( id INT PRIMARY KEY AUTO_INCREMENT, post_id INT NOT NULL, user_id INT NOT NULL, content TEXT NOT NULL, likes_count INT DEFAULT 0, created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP, FOREIGN KEY (post_id) REFERENCES posts(id) ON DELETE CASCADE, FOREIGN KEY (user_id) REFERENCES users(id) ON DELETE CASCADE ); -- Likes Table CREATE TABLE IF NOT EXISTS likes ( id INT PRIMARY KEY AUTO_INCREMENT, user_id INT NOT NULL, post_id INT, comment_id INT, created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP, FOREIGN KEY (user_id) REFERENCES users(id) ON DELETE CASCADE, FOREIGN KEY (post_id) REFERENCES posts(id) ON DELETE CASCADE, FOREIGN KEY (comment_id) REFERENCES comments(id) ON DELETE CASCADE ); -- Messages Table CREATE TABLE IF NOT EXISTS messages ( id INT PRIMARY KEY AUTO_INCREMENT, sender_id INT NOT NULL, recipient_id INT NOT NULL, content TEXT NOT NULL, is_read BOOLEAN DEFAULT FALSE, created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP, FOREIGN KEY (sender_id) REFERENCES users(id) ON DELETE CASCADE, FOREIGN KEY (recipient_id) REFERENCES users(id) ON DELETE CASCADE ); -- Friends/Followers Table CREATE TABLE IF NOT EXISTS friends ( id INT PRIMARY KEY AUTO_INCREMENT, user_id INT NOT NULL, friend_id INT NOT NULL, status ENUM('pending', 'accepted', 'blocked') DEFAULT 'pending', created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP, FOREIGN KEY (user_id) REFERENCES users(id) ON DELETE CASCADE, FOREIGN KEY (friend_id) REFERENCES users(id) ON DELETE CASCADE, UNIQUE KEY unique_friendship (user_id, friend_id) ); -- Communities Table CREATE TABLE IF NOT EXISTS communities ( id INT PRIMARY KEY AUTO_INCREMENT, name VARCHAR(100) NOT NULL, description TEXT, creator_id INT NOT NULL, members_count INT DEFAULT 0, logo_url VARCHAR(255), banner_url VARCHAR(255), created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP, FOREIGN KEY (creator_id) REFERENCES users(id) ON DELETE CASCADE ); -- Community Members Table CREATE TABLE IF NOT EXISTS community_members ( id INT PRIMARY KEY AUTO_INCREMENT, community_id INT NOT NULL, user_id INT NOT NULL, role ENUM('member', 'moderator', 'admin') DEFAULT 'member', joined_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP, FOREIGN KEY (community_id) REFERENCES communities(id) ON DELETE CASCADE, FOREIGN KEY (user_id) REFERENCES users(id) ON DELETE CASCADE, UNIQUE KEY unique_membership (community_id, user_id) ); -- Videos Table CREATE TABLE IF NOT EXISTS videos ( id INT PRIMARY KEY AUTO_INCREMENT, user_id INT NOT NULL, title VARCHAR(255) NOT NULL, description TEXT, video_url VARCHAR(255) NOT NULL, thumbnail_url VARCHAR(255), views_count INT DEFAULT 0, likes_count INT DEFAULT 0, duration INT, is_short BOOLEAN DEFAULT FALSE, created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP, FOREIGN KEY (user_id) REFERENCES users(id) ON DELETE CASCADE ); -- Music Playlist Table CREATE TABLE IF NOT EXISTS playlists ( id INT PRIMARY KEY AUTO_INCREMENT, user_id INT NOT NULL, name VARCHAR(100) NOT NULL, description TEXT, is_public BOOLEAN DEFAULT FALSE, created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP, FOREIGN KEY (user_id) REFERENCES users(id) ON DELETE CASCADE ); -- Music Tracks Table CREATE TABLE IF NOT EXISTS tracks ( id INT PRIMARY KEY AUTO_INCREMENT, playlist_id INT NOT NULL, title VARCHAR(255) NOT NULL, artist VARCHAR(100), audio_url VARCHAR(255) NOT NULL, duration INT, added_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP, FOREIGN KEY (playlist_id) REFERENCES playlists(id) ON DELETE CASCADE ); -- Games Table CREATE TABLE IF NOT EXISTS games ( id INT PRIMARY KEY AUTO_INCREMENT, name VARCHAR(100) NOT NULL, description TEXT, game_url VARCHAR(255), thumbnail_url VARCHAR(255), created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ); -- Game Scores Table CREATE TABLE IF NOT EXISTS game_scores ( id INT PRIMARY KEY AUTO_INCREMENT, user_id INT NOT NULL, game_id INT NOT NULL, score INT NOT NULL, created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP, FOREIGN KEY (user_id) REFERENCES users(id) ON DELETE CASCADE, FOREIGN KEY (game_id) REFERENCES games(id) ON DELETE CASCADE ); -- Reports Table CREATE TABLE IF NOT EXISTS reports ( id INT PRIMARY KEY AUTO_INCREMENT, reporter_id INT NOT NULL, reported_user_id INT, reported_post_id INT, reason VARCHAR(255) NOT NULL, description TEXT, status ENUM('open', 'reviewing', 'resolved', 'dismissed') DEFAULT 'open', created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP, resolved_at TIMESTAMP NULL, FOREIGN KEY (reporter_id) REFERENCES users(id) ON DELETE CASCADE, FOREIGN KEY (reported_user_id) REFERENCES users(id) ON DELETE SET NULL, FOREIGN KEY (reported_post_id) REFERENCES posts(id) ON DELETE SET NULL ); -- Support Tickets Table CREATE TABLE IF NOT EXISTS support_tickets ( id INT PRIMARY KEY AUTO_INCREMENT, user_id INT NOT NULL, subject VARCHAR(255) NOT NULL, message TEXT NOT NULL, category VARCHAR(50), status ENUM('open', 'in_progress', 'resolved', 'closed') DEFAULT 'open', priority ENUM('low', 'medium', 'high') DEFAULT 'medium', created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP, resolved_at TIMESTAMP NULL, FOREIGN KEY (user_id) REFERENCES users(id) ON DELETE CASCADE ); -- Ban List Table CREATE TABLE IF NOT EXISTS bans ( id INT PRIMARY KEY AUTO_INCREMENT, user_id INT NOT NULL, admin_id INT, reason TEXT NOT NULL, ban_type ENUM('temporary', 'permanent') DEFAULT 'temporary', ban_date TIMESTAMP DEFAULT CURRENT_TIMESTAMP, unban_date TIMESTAMP NULL, FOREIGN KEY (user_id) REFERENCES users(id) ON DELETE CASCADE, FOREIGN KEY (admin_id) REFERENCES users(id) ON DELETE SET NULL ); -- User Settings Table CREATE TABLE IF NOT EXISTS user_settings ( id INT PRIMARY KEY AUTO_INCREMENT, user_id INT NOT NULL UNIQUE, theme ENUM('light', 'dark') DEFAULT 'light', notifications_enabled BOOLEAN DEFAULT TRUE, email_notifications BOOLEAN DEFAULT TRUE, privacy_level ENUM('public', 'friends', 'private') DEFAULT 'friends', show_online_status BOOLEAN DEFAULT TRUE, allow_messages_from_strangers BOOLEAN DEFAULT FALSE, FOREIGN KEY (user_id) REFERENCES users(id) ON DELETE CASCADE ); -- Create Indexes for better performance CREATE INDEX idx_posts_user_id ON posts(user_id); CREATE INDEX idx_posts_created_at ON posts(created_at); CREATE INDEX idx_comments_post_id ON comments(post_id); CREATE INDEX idx_messages_sender ON messages(sender_id); CREATE INDEX idx_messages_recipient ON messages(recipient_id); CREATE INDEX idx_friends_user_id ON friends(user_id); CREATE INDEX idx_videos_user_id ON videos(user_id); CREATE INDEX idx_playlists_user_id ON playlists(user_id); -- Sample Data (Optional) INSERT INTO users (username, email, password_hash, first_name, last_name, bio, is_verified) VALUES ('admin', 'admin@palomaCreep.com', SHA2('admin123', 256), 'Admin', 'User', 'Platform Administrator', TRUE);