# j-ImageUploader

> Eine einfache Singleton-Komponente zum Hochladen von Bildern mit geänderter Größe. Die Komponente lädt Base64 gemäß dem in den Optionen des Aufrufers definierten Schema hoch.

Framework: jcomponent20
Product: jComponent 20 (jcomponent@20)
Language: de
Content-SHA256: e2a524ad7664cd9f249421fbb2f66e7fd000e0db233f682feec769a1c3fc6725
Snapshot: c0700e321579725c5cf4f5ace1ad7d2866d1b4f93c24a63c0b41b6b7998e976c
Sources: components@910ed1a86f6e72b4f031d3ad0dc7844f9fc5cb8e
Review: not-recorded

Eine einfache Singleton-Komponente zum Hochladen von Bildern mit geänderter Größe. Die Komponente lädt Base64 entsprechend dem in `options` des Aufrufers definierten `schema` hoch.


__Methoden__:

- `imageuploader/upload(opt)` zeigt einen Dateidialog an
	- `opt.width {Number}`
	- `opt.height {Number}`
	- `opt.background {String}` eine Standardhintergrundfarbe (__NEU__: unterstützt den `transparent`-Wert und die Ausgabe erfolgt in `.png`)
	- `opt.url {String}` __important__ URL, wo das Bild hochgeladen wird
	- `opt.multiple {Boolean}` unterstützt mehrere Dateien (Standard: `false`)
	- `opt.schema {String}` Standard `{ file: base64, name: filename }`
	- `opt.quality {Number}` Standard `90`
	- `opt.callback(response, errors)` ein Rückruf __wichtig__
	- `opt.keeporiginal {Boolean}` behält das Originalbild bei, wenn die Abmessung mit der in der Konfiguration definierten Breite/Höhe übereinstimmt (Standard: `false`)
	- __NEW__ `opt.files` {FileList} optional (wenn Sie z.B. Drag & Drop verwenden)

__Freundliche Komponenten__:
Diese Komponente arbeitet mit `loading`, wenn die Datei hochgeladen wird.

Verwenden Sie es mit `<ui-component name="imageuploader">`. Wenn die Komponente noch nicht geladen ist, lädt jComponent sie bei der ersten Verwendung von der Adresse in `DEF.fallback` herunter (standardmäßig das CDN Componentator). Autor: Peter Širka. Quelle: Componentator-Komponenten-Repository, MIT-Lizenz.

```html example.html
<ui-component name="imageuploader"></ui-component>
<div onclick="uploadphoto()">Click to upload</div>

<script>

	function uploadphoto() {
		var opt = {};
		opt.width = 200;
		opt.height = 200;
		opt.url = '/api/upload/base64/';
		opt.background = '#FFFFFF';
		opt.multiple = true;
		opt.callback = function(response, err) {
			console.log(response, err);
		};
		SETTER('imageuploader/upload', opt);
	}

</script>
```
