fix for new datamapper and cli install

This commit is contained in:
Dennis Eichhorn 2020-03-30 22:14:37 +02:00
parent 03673c541d
commit 0fa8b1618e
2 changed files with 18 additions and 9 deletions

View File

@ -26,6 +26,7 @@ use Modules\Helper\Models\TemplateDataType;
use Modules\Helper\Models\TemplateMapper;
use Modules\Media\Models\NullCollection;
use Modules\Media\Models\NullMedia;
use phpOMS\Account\PermissionType;
use phpOMS\DataStorage\Database\Query\Builder;
use phpOMS\Message\Http\HttpRequest;
@ -237,15 +238,25 @@ final class ApiController extends Controller
*/
public function apiTemplateCreate(RequestAbstract $request, ResponseAbstract $response, $data = null) : void
{
$files = $request->getDataJson('media-list');
$dbFiles = $request->getDataJson('media-list') ?? [];
$uploadedFiles = $request->getFiles() ?? [];
$files = [];
if (empty($files)) {
$files = $this->app->moduleManager->get('Media')->uploadFiles(
if (!empty($uploadedFiles)) {
$uploaded = $this->app->moduleManager->get('Media')->uploadFiles(
$request->getData('name') ?? '',
$request->getFiles(),
$uploadedFiles,
$request->getHeader()->getAccount(),
__DIR__ . '/../../../Modules/Media/Files'
);
foreach ($uploaded as $upload) {
$files[] = new NullMedia($upload->getId());
}
}
foreach ($dbFiles as $db) {
$files[] = new NullMedia($db);
}
$collection = $this->app->moduleManager->get('Media')->createMediaCollectionFromMedia(
@ -282,8 +293,6 @@ final class ApiController extends Controller
$this->fillJsonResponse($request, $response, NotificationLevel::OK, 'Template', 'Template successfully created', $template);
}
/**
* Method to create template from request.
*

View File

@ -45,9 +45,9 @@ final class TemplateMapper extends DataMapperAbstract
'helper_template_desc' => ['name' => 'helper_template_desc', 'type' => 'string', 'internal' => 'description'],
'helper_template_desc_raw' => ['name' => 'helper_template_desc_raw', 'type' => 'string', 'internal' => 'descriptionRaw'],
'helper_template_media' => ['name' => 'helper_template_media', 'type' => 'int', 'internal' => 'source'],
'helper_template_creator' => ['name' => 'helper_template_creator', 'type' => 'int', 'internal' => 'createdBy', ],
'helper_template_unit' => ['name' => 'helper_template_unit', 'type' => 'int', 'internal' => 'unit', ],
'helper_template_created' => ['name' => 'helper_template_created', 'type' => 'DateTime', 'internal' => 'createdAt', ],
'helper_template_creator' => ['name' => 'helper_template_creator', 'type' => 'int', 'internal' => 'createdBy'],
'helper_template_unit' => ['name' => 'helper_template_unit', 'type' => 'int', 'internal' => 'unit'],
'helper_template_created' => ['name' => 'helper_template_created', 'type' => 'DateTime', 'internal' => 'createdAt'],
];
/**