braesident/filedropper

Provides an upload area and handling on the server.

Maintainers

Package info

github.com/braesident/filedropper

Homepage

Type:extension

pkg:composer/braesident/filedropper

Statistics

Installs: 4

Dependents: 1

Suggesters: 0

Stars: 0

Open Issues: 0

1.0.4 2025-03-23 14:00 UTC

This package is auto-updated.

Last update: 2026-06-25 16:04:32 UTC


README

In erster Linie als JTL Plugin Extension erstellt. Stellt einen optischen Container für Datei Uploads zur verfügung.

Voraussetzung

JQuery

Anwendung

Html

Erstelle ein Container mit einer ID

<div id="myfiledropper"></div>
// oder
<input id="myinputdropper">
// oder
<other id="anotherdropper"></other>

JS

Nach JQuery die Script und Css Datein laden. Bei Serverseitig gerenderten Markup's können die Links über FileDropper::getImportString() geholt werden.

Im custom Script rufe eine neue Instanz des Droppers mit deiner ID auf:

const myDropper = new FileDropper('myfiledropper', [ziel url], [optionen])

PHP

Zum speichern eines Uploads kann folgendes Beispiel angewandt werden:

$storage = '/imgs/';

$fd = new FileDropper([pdo]);
$fd->store(__DIR__.$storage[, &$name][, $options]);

$response->data->link = $storage.$name;

Im oberen Beispiel kann beim Instanzieren eine Datenbankverbindung des JTL Shops zum Auslesen von Bildgrößen übergeben werden.

In der Funktion store muss der Zielpfad angegeben werden. Der Dateiname kann individuell angegeben werden. Fehlt dabe die Extension, wird diese aus dem Upload übernommen. Soll der Name aus dem Upload beibehalten werden genügt eine leere Variable. Über diese kann anschließend der verwendete Name verarbeitet werden.

Als Option kann ein std Objekt übergeben werden.

  • $option->flags = FileDropper::IMAGE_TO_SQUARE [ | WEITERE] -- z.B. Bild als Quadrat speichern
  • $options->size = FileDropper::IMAGESIZE_TO_XS -- legt die Größe des Bildquadrats fest
  • $options->size = ['w' => 40, 'h' => 40] -- legt die Größe des Bildquadrats (anstelle des Array geht auch ein Objekt)