Files
meilisearch-bundle/src/Resources/contao/dca/tl_search_files.php
T
2026-03-09 10:06:05 +01:00

95 lines
2.2 KiB
PHP
Executable File

<?php
use Contao\DC_Table;
$GLOBALS['TL_DCA']['tl_search_files'] = [
'config' => [
'dataContainer' => DC_Table::class,
'sql' => [
'keys' => [
'id' => 'primary',
'page_id' => 'index',
'url' => 'unique',
'type' => 'index',
'checksum' => 'index',
'uuid' => 'index',
'last_seen' => 'index',
],
],
],
'fields' => [
'id' => [
'sql' => "int(10) unsigned NOT NULL auto_increment",
],
'tstamp' => [
'sql' => "int(10) unsigned NOT NULL default 0",
],
/*
* Zeitpunkt, wann die Datei zuletzt beim Crawl gesehen wurde
* → Basis für Cleanup
*/
'last_seen' => [ // ⬅️ NEU
'sql' => "int(10) unsigned NOT NULL default 0",
],
/*
* Dateityp: pdf | docx | xlsx | pptx
*/
'type' => [
'sql' => "varchar(16) NOT NULL default 'pdf'",
],
/*
* Absolute oder normalisierte Datei-URL
* z. B. /files/pdf/foo.pdf
*/
'url' => [
'sql' => "varchar(1024) NOT NULL default ''",
],
/*
* Linktext oder Dateiname
*/
'title' => [
'sql' => "varchar(255) NOT NULL default ''",
],
/*
* Geparster Datei-Text (PDF / Office)
*/
'text' => [
'sql' => "mediumtext NULL",
],
'uuid' => [
'sql' => "binary(16) NULL",
],
/*
* md5(url + filemtime)
* → erkennt Änderungen zuverlässig
*/
'checksum' => [
'sql' => "char(32) NOT NULL default ''",
],
/*
* Herkunftsseite (tl_page.id)
* → optional, Debug / Referenz
*/
'page_id' => [
'sql' => "int(10) unsigned NOT NULL default 0",
],
/*
* Dateizeitstempel
* → wichtig für Re-Indexierung
*/
'file_mtime' => [
'sql' => "int(10) unsigned NOT NULL default 0",
],
],
];