mirror of
https://github.com/Karaka-Management/oms-AssetManagement.git
synced 2026-01-11 14:48:40 +00:00
update
This commit is contained in:
parent
fdaa7fd557
commit
659f897d53
|
|
@ -112,8 +112,10 @@ final class ApiAssetController extends Controller
|
|||
{
|
||||
$path = $this->createAssetDir($asset);
|
||||
|
||||
$collection = null;
|
||||
|
||||
if (!empty($uploadedFiles = $request->files)) {
|
||||
$uploaded = $this->app->moduleManager->get('Media')->uploadFiles(
|
||||
$uploaded = $this->app->moduleManager->get('Media', 'Api')->uploadFiles(
|
||||
names: [],
|
||||
fileNames: [],
|
||||
files: $uploadedFiles,
|
||||
|
|
@ -123,7 +125,6 @@ final class ApiAssetController extends Controller
|
|||
pathSettings: PathSettings::FILE_PATH
|
||||
);
|
||||
|
||||
$collection = null;
|
||||
foreach ($uploaded as $media) {
|
||||
$this->createModelRelation(
|
||||
$request->header->account,
|
||||
|
|
@ -160,54 +161,51 @@ final class ApiAssetController extends Controller
|
|||
}
|
||||
}
|
||||
|
||||
if (!empty($mediaFiles = $request->getDataJson('media'))) {
|
||||
$collection = null;
|
||||
$mediaFiles = $request->getDataJson('media');
|
||||
foreach ($mediaFiles as $file) {
|
||||
/** @var \Modules\Media\Models\Media $media */
|
||||
$media = MediaMapper::get()->where('id', (int) $file)->limit(1)->execute();
|
||||
|
||||
foreach ($mediaFiles as $file) {
|
||||
/** @var \Modules\Media\Models\Media $media */
|
||||
$media = MediaMapper::get()->where('id', (int) $file)->limit(1)->execute();
|
||||
$this->createModelRelation(
|
||||
$request->header->account,
|
||||
$asset->id,
|
||||
$media->id,
|
||||
AssetMapper::class,
|
||||
'files',
|
||||
'',
|
||||
$request->getOrigin()
|
||||
);
|
||||
|
||||
$this->createModelRelation(
|
||||
$request->header->account,
|
||||
$asset->id,
|
||||
$media->id,
|
||||
AssetMapper::class,
|
||||
'files',
|
||||
'',
|
||||
$request->getOrigin()
|
||||
);
|
||||
$ref = new Reference();
|
||||
$ref->name = $media->name;
|
||||
$ref->source = new NullMedia($media->id);
|
||||
$ref->createdBy = new NullAccount($request->header->account);
|
||||
$ref->setVirtualPath($path);
|
||||
|
||||
$ref = new Reference();
|
||||
$ref->name = $media->name;
|
||||
$ref->source = new NullMedia($media->id);
|
||||
$ref->createdBy = new NullAccount($request->header->account);
|
||||
$ref->setVirtualPath($path);
|
||||
$this->createModel($request->header->account, $ref, ReferenceMapper::class, 'media_reference', $request->getOrigin());
|
||||
|
||||
$this->createModel($request->header->account, $ref, ReferenceMapper::class, 'media_reference', $request->getOrigin());
|
||||
if ($collection === null) {
|
||||
/** @var \Modules\Media\Models\Collection $collection */
|
||||
$collection = MediaMapper::getParentCollection($path)->limit(1)->execute();
|
||||
|
||||
if ($collection === null) {
|
||||
/** @var \Modules\Media\Models\Collection $collection */
|
||||
$collection = MediaMapper::getParentCollection($path)->limit(1)->execute();
|
||||
|
||||
if ($collection->id === 0) {
|
||||
$collection = $this->app->moduleManager->get('Media')->createRecursiveMediaCollection(
|
||||
$path,
|
||||
$request->header->account,
|
||||
__DIR__ . '/../../../Modules/Media/Files' . $path
|
||||
);
|
||||
}
|
||||
if ($collection->id === 0) {
|
||||
$collection = $this->app->moduleManager->get('Media')->createRecursiveMediaCollection(
|
||||
$path,
|
||||
$request->header->account,
|
||||
__DIR__ . '/../../../Modules/Media/Files' . $path
|
||||
);
|
||||
}
|
||||
|
||||
$this->createModelRelation(
|
||||
$request->header->account,
|
||||
$collection->id,
|
||||
$ref->id,
|
||||
CollectionMapper::class,
|
||||
'sources',
|
||||
'',
|
||||
$request->getOrigin()
|
||||
);
|
||||
}
|
||||
|
||||
$this->createModelRelation(
|
||||
$request->header->account,
|
||||
$collection->id,
|
||||
$ref->id,
|
||||
CollectionMapper::class,
|
||||
'sources',
|
||||
'',
|
||||
$request->getOrigin()
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -260,7 +258,7 @@ final class ApiAssetController extends Controller
|
|||
|
||||
$uploaded = [];
|
||||
if (!empty($uploadedFiles = $request->files)) {
|
||||
$uploaded = $this->app->moduleManager->get('Media')->uploadFiles(
|
||||
$uploaded = $this->app->moduleManager->get('Media', 'Api')->uploadFiles(
|
||||
names: [],
|
||||
fileNames: [],
|
||||
files: $uploadedFiles,
|
||||
|
|
@ -321,18 +319,17 @@ final class ApiAssetController extends Controller
|
|||
}
|
||||
}
|
||||
|
||||
if (!empty($mediaFiles = $request->getDataJson('media'))) {
|
||||
foreach ($mediaFiles as $media) {
|
||||
$this->createModelRelation(
|
||||
$request->header->account,
|
||||
$asset->id,
|
||||
(int) $media,
|
||||
AssetMapper::class,
|
||||
'files',
|
||||
'',
|
||||
$request->getOrigin()
|
||||
);
|
||||
}
|
||||
$mediaFiles = $request->getDataJson('media');
|
||||
foreach ($mediaFiles as $media) {
|
||||
$this->createModelRelation(
|
||||
$request->header->account,
|
||||
$asset->id,
|
||||
(int) $media,
|
||||
AssetMapper::class,
|
||||
'files',
|
||||
'',
|
||||
$request->getOrigin()
|
||||
);
|
||||
}
|
||||
|
||||
$this->fillJsonResponse($request, $response, NotificationLevel::OK, 'Media', 'Media added to asset.', [
|
||||
|
|
@ -562,8 +559,6 @@ final class ApiAssetController extends Controller
|
|||
*
|
||||
* @return array<string, bool>
|
||||
*
|
||||
* @todo Implement API validation function
|
||||
*
|
||||
* @since 1.0.0
|
||||
*/
|
||||
private function validateAssetDelete(RequestAbstract $request) : array
|
||||
|
|
|
|||
|
|
@ -55,15 +55,13 @@ final class BackendController extends Controller
|
|||
$view->setTemplate('/Modules/AssetManagement/Theme/Backend/asset-list');
|
||||
$view->data['nav'] = $this->app->moduleManager->get('Navigation')->createNavigationMid(1006601001, $request, $response);
|
||||
|
||||
$list = AssetMapper::getAll()
|
||||
$view->data['assets'] = AssetMapper::getAll()
|
||||
->with('type')
|
||||
->with('type/l11n')
|
||||
->where('type/l11n/language', $response->header->l11n->language)
|
||||
->sort('id', 'DESC')
|
||||
->execute();
|
||||
|
||||
$view->data['assets'] = $list;
|
||||
|
||||
return $view;
|
||||
}
|
||||
|
||||
|
|
@ -139,6 +137,8 @@ final class BackendController extends Controller
|
|||
|
||||
$view->data['asset'] = $asset;
|
||||
|
||||
// @feature Create a new read mapper function that returns relation models instead of its own model
|
||||
// https://github.com/Karaka-Management/phpOMS/issues/320
|
||||
$query = new Builder($this->app->dbPool->get());
|
||||
$results = $query->selectAs(AssetMapper::HAS_MANY['files']['external'], 'file')
|
||||
->from(AssetMapper::TABLE)
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user