\x89PNG\r\n\x1a\n\x00\x00\x00\x0DIHDR\x00\x00\x00\x01\x00 \x00\x00\x01\x08\x06\x00\x00\x00\x1F\x15\xC4\x89\x00\x00\x00 \x0AIDATx\x9Ccb\x00\x00\x00\x06\x00\x03\x1A\x05\x9D\x00\x00 \x00\x00IEND\xAE\x42\x60\x82
| Path : /var/www/html/transfersh/SecureShareMail/ |
|
B-Con CMD Config cPanel C-Rdp D-Log Info Jump Mass Ransom Symlink vHost Zone-H |
| Current File : /var/www/html/transfersh/SecureShareMail/database.sql |
-- SecureShare Database Schema
-- PostgreSQL 12+
-- Create users table
CREATE TABLE IF NOT EXISTS users (
id VARCHAR PRIMARY KEY DEFAULT gen_random_uuid(),
username TEXT NOT NULL UNIQUE,
password TEXT NOT NULL
);
-- Create transfers table
CREATE TABLE IF NOT EXISTS transfers (
id VARCHAR PRIMARY KEY DEFAULT gen_random_uuid(),
file_name TEXT NOT NULL,
original_name TEXT NOT NULL,
file_size INTEGER NOT NULL,
mime_type TEXT NOT NULL,
download_token TEXT NOT NULL UNIQUE,
sender_email TEXT,
recipient_email TEXT,
message TEXT,
uploaded_at TIMESTAMP DEFAULT NOW() NOT NULL,
expires_at TIMESTAMP NOT NULL,
download_count INTEGER DEFAULT 0 NOT NULL
);
-- Create indexes for better performance
CREATE INDEX IF NOT EXISTS idx_transfers_download_token ON transfers(download_token);
CREATE INDEX IF NOT EXISTS idx_transfers_expires_at ON transfers(expires_at);
CREATE INDEX IF NOT EXISTS idx_transfers_uploaded_at ON transfers(uploaded_at);
-- Optional: Create a function to automatically delete expired transfers
CREATE OR REPLACE FUNCTION delete_expired_transfers()
RETURNS INTEGER AS $$
DECLARE
deleted_count INTEGER;
BEGIN
DELETE FROM transfers WHERE expires_at < NOW();
GET DIAGNOSTICS deleted_count = ROW_COUNT;
RETURN deleted_count;
END;
$$ LANGUAGE plpgsql;
-- Optional: Create a scheduled job (requires pg_cron extension)
-- SELECT cron.schedule('delete-expired-transfers', '0 2 * * *', 'SELECT delete_expired_transfers();');