Plan aus ElektroPlan als „hochgeladen" indexieren — steht im Reiter Dateien, nicht vorne (1.1.2) [deploy]
All checks were successful
Deploy Eplan / deploy (push) Successful in 9s
All checks were successful
Deploy Eplan / deploy (push) Successful in 9s
dokument_upload legte die PDF nur in den Auftragsordner. Ohne Eintrag in llx_ecm_files indexiert Dolibarr sie selbst als „unknown", und der Kasten „Verknüpfte Dokumente" (FileArchive 4.15 filtert nach gen_or_uploaded) zeigte sie weiter vorne. Jetzt: Eintrag mit gen_or_uploaded = 'uploaded' und Beleg-Bezug; erneutes Speichern aktualisiert den Eintrag statt ihn doppelt anzulegen. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
This commit is contained in:
parent
b35cd5d22d
commit
82d58c8ce4
2 changed files with 19 additions and 1 deletions
|
|
@ -194,6 +194,24 @@ try {
|
||||||
$ziel = $ziel_dir.'/'.$dateiname;
|
$ziel = $ziel_dir.'/'.$dateiname;
|
||||||
$erfolg = dol_move_uploaded_file($_FILES['datei']['tmp_name'], $ziel, 1, 0, 0);
|
$erfolg = dol_move_uploaded_file($_FILES['datei']['tmp_name'], $ziel, 1, 0, 0);
|
||||||
if ($erfolg > 0) {
|
if ($erfolg > 0) {
|
||||||
|
// In den Dateiindex als „hochgeladen" eintragen: dann steht der Plan im Reiter
|
||||||
|
// „Dateien" und NICHT vorne im Kasten „Verknüpfte Dokumente" (FileArchive >= 4.15
|
||||||
|
// filtert dort nach gen_or_uploaded). Ohne Eintrag indexiert Dolibarr die Datei
|
||||||
|
// beim nächsten Aufruf selbst als „unknown" — die bliebe vorne stehen.
|
||||||
|
// Erneutes Speichern desselben Plans: vorhandenen Eintrag aktualisieren, nicht
|
||||||
|
// doppelt anlegen (addFileIntoDatabaseIndex prüft das nicht).
|
||||||
|
require_once DOL_DOCUMENT_ROOT.'/ecm/class/ecmfiles.class.php';
|
||||||
|
$rel_dir = ltrim(preg_replace('/^'.preg_quote(DOL_DATA_ROOT, '/').'/', '', $ziel_dir), '/');
|
||||||
|
$ecm = new EcmFiles($db);
|
||||||
|
if ($ecm->fetch(0, '', $rel_dir.'/'.$dateiname) > 0) {
|
||||||
|
$ecm->gen_or_uploaded = 'uploaded';
|
||||||
|
$ecm->label = md5_file($ziel);
|
||||||
|
$ecm->src_object_type = $c->table_element;
|
||||||
|
$ecm->src_object_id = $c->id;
|
||||||
|
$ecm->update($user);
|
||||||
|
} else {
|
||||||
|
addFileIntoDatabaseIndex($ziel_dir, $dateiname, '', 'uploaded', 0, $c);
|
||||||
|
}
|
||||||
echo json_encode(['erfolg' => true, 'pfad' => $ref_sanitiert.'/'.$dateiname]);
|
echo json_encode(['erfolg' => true, 'pfad' => $ref_sanitiert.'/'.$dateiname]);
|
||||||
} else {
|
} else {
|
||||||
http_response_code(500);
|
http_response_code(500);
|
||||||
|
|
|
||||||
|
|
@ -24,7 +24,7 @@ class modEplan extends DolibarrModules
|
||||||
|
|
||||||
$this->editor_name = 'Alles Watt läuft';
|
$this->editor_name = 'Alles Watt läuft';
|
||||||
$this->editor_url = '';
|
$this->editor_url = '';
|
||||||
$this->version = '1.1.1';
|
$this->version = '1.1.2';
|
||||||
$this->const_name = 'MAIN_MODULE_'.strtoupper($this->name);
|
$this->const_name = 'MAIN_MODULE_'.strtoupper($this->name);
|
||||||
$this->picto = 'fa-drafting-compass';
|
$this->picto = 'fa-drafting-compass';
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue