Lisää saatavuuskyselyjen keräys ja listausnäkymä

Jokainen nettisivujen kautta tehty saatavuustarkistus tallennetaan
tietokantaan (osoite, postinumero, kaupunki, tulos, IP, referer).
Kyselyt näkyvät Asiakkaat > Saatavuuskyselyt -välilehdellä
sivutettuna taulukkona.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-03-13 02:19:24 +02:00
parent 9ba239478c
commit a38c5f4808
4 changed files with 143 additions and 3 deletions

17
db.php
View File

@@ -614,6 +614,23 @@ function initDatabase(): void {
UNIQUE KEY uk_company_type (company_id, type),
INDEX idx_company (company_id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci",
"CREATE TABLE IF NOT EXISTS availability_queries (
id INT AUTO_INCREMENT PRIMARY KEY,
company_id VARCHAR(50) NOT NULL,
osoite VARCHAR(255) NOT NULL,
postinumero VARCHAR(20) NOT NULL,
kaupunki VARCHAR(100) NOT NULL,
saatavilla BOOLEAN NOT NULL DEFAULT FALSE,
ip_address VARCHAR(45) DEFAULT '',
user_agent VARCHAR(500) DEFAULT '',
referer VARCHAR(500) DEFAULT '',
created_at DATETIME NOT NULL,
INDEX idx_company (company_id),
INDEX idx_created (created_at),
INDEX idx_postinumero (postinumero),
FOREIGN KEY (company_id) REFERENCES companies(id) ON DELETE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci",
];
foreach ($tables as $i => $sql) {