GrapesJS – Upload obrázků v presenteru (http request)
- Dan Hundrt
- Člen | 74
Zdravím,
používám knihovnu GrapesJS jako page content builder (v kostce pro skládání HTML bloků). Knihovna nabízí upload obrázků přes ajax (https://grapesjs.com/…/Assets.html#…), udělal jsem si endpoint, kam posílám data:
assetManager: {
upload: {plink //:Admin:ContentGenerator:upload id => $id},
uploadName: 'files',
},
Ve Form Data poté vidím.
[url=https://ibb.co/BVDg7hJ][img]https://i.ibb.co/BVDg7hJ/form-data.png[/img][/url]
Bohužel nevím, kde v http requestu bych mohl najít zmíněné soubory.
Zkoušel jsem něco jako:
$files = $this->getHttpRequest()->getFiles();
foreach ($files as $file) {
if ($file->isImage()) {
// Logika ukladani
}
}
Nicméně isImage()
neexistuje.
Napadá někoho řešení?
Díky
- Dan Hundrt
- Člen | 74
@OndřejKubíček
Debugger::log($this->getHttpRequest()->getRawBody());
vraci:
`[2019–10–29 11–22–45] @ http://localhost:29599/…/2254/upload `
- Dan Hundrt
- Člen | 74
Tak neco takoveho:
foreach ($this->getRequest()->getFiles() as $img) {
foreach ($img as $i) {
if($i->isImage() && $i->isOk()) {
$tmpImage = $i->getTemporaryFile();
Image::fromFile($tmpImage)
->resize(900, 320, Image::EXACT)
->save(__DIR__ . "{$tmpImage}.jpg", 100, Image::JPEG);
}
}
}
Funguje.