mirror of
https://github.com/Karaka-Management/oms-Knowledgebase.git
synced 2026-02-12 08:18:41 +00:00
many small fixes
This commit is contained in:
parent
3f7ae6171c
commit
a9ee9a5f32
|
|
@ -121,12 +121,20 @@ final class ApiController extends Controller
|
||||||
);
|
);
|
||||||
|
|
||||||
$collection = null;
|
$collection = null;
|
||||||
|
|
||||||
foreach ($uploaded as $media) {
|
foreach ($uploaded as $media) {
|
||||||
MediaMapper::create()->execute($media);
|
$this->createModelRelation(
|
||||||
WikiDocMapper::writer()->createRelationTable('media', [$media->getId()], $doc->getId());
|
$request->header->account,
|
||||||
|
$doc->getId(),
|
||||||
|
$media->getId(),
|
||||||
|
WikiDocMapper::class,
|
||||||
|
'media',
|
||||||
|
'',
|
||||||
|
$request->getOrigin()
|
||||||
|
);
|
||||||
|
|
||||||
$accountPath = '/Accounts/' . $account->getId() . ' ' . $account->login . '/Knowledgebase/' . ($doc->category?->getId() ?? '0') . '/' . $doc->getId();
|
$accountPath = '/Accounts/' . $account->getId() . ' ' . $account->login
|
||||||
|
. '/Knowledgebase/' . ($doc->category?->getId() ?? '0')
|
||||||
|
. '/' . $doc->getId();
|
||||||
|
|
||||||
$ref = new Reference();
|
$ref = new Reference();
|
||||||
$ref->name = $media->name;
|
$ref->name = $media->name;
|
||||||
|
|
@ -134,7 +142,7 @@ final class ApiController extends Controller
|
||||||
$ref->createdBy = new NullAccount($request->header->account);
|
$ref->createdBy = new NullAccount($request->header->account);
|
||||||
$ref->setVirtualPath($accountPath);
|
$ref->setVirtualPath($accountPath);
|
||||||
|
|
||||||
ReferenceMapper::create()->execute($ref);
|
$this->createModel($request->header->account, $ref, ReferenceMapper::class, 'media_reference', $request->getOrigin());
|
||||||
|
|
||||||
if ($collection === null) {
|
if ($collection === null) {
|
||||||
$collection = $this->app->moduleManager->get('Media')->createRecursiveMediaCollection(
|
$collection = $this->app->moduleManager->get('Media')->createRecursiveMediaCollection(
|
||||||
|
|
@ -144,22 +152,41 @@ final class ApiController extends Controller
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
CollectionMapper::writer()->createRelationTable('sources', [$ref->getId()], $collection->getId());
|
$this->createModelRelation(
|
||||||
|
$request->header->account,
|
||||||
|
$collection->getId(),
|
||||||
|
$ref->getId(),
|
||||||
|
CollectionMapper::class,
|
||||||
|
'sources',
|
||||||
|
'',
|
||||||
|
$request->getOrigin()
|
||||||
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!empty($mediaFiles = $request->getDataJson('media'))) {
|
if (!empty($mediaFiles = $request->getDataJson('media'))) {
|
||||||
$collection = null;
|
$collection = null;
|
||||||
|
|
||||||
foreach ($mediaFiles as $media) {
|
foreach ($mediaFiles as $file) {
|
||||||
WikiDocMapper::writer()->createRelationTable('media', [(int) $media], $doc->getId());
|
/** @var \Modules\Media\Models\Media $media */
|
||||||
|
$media = MediaMapper::get()->where('id', (int) $file)->limit(1)->execute();
|
||||||
|
$this->createModelRelation(
|
||||||
|
$request->header->account,
|
||||||
|
$doc->getId(),
|
||||||
|
$media->getId(),
|
||||||
|
WikiDocMapper::class,
|
||||||
|
'media',
|
||||||
|
'',
|
||||||
|
$request->getOrigin()
|
||||||
|
);
|
||||||
|
|
||||||
$ref = new Reference();
|
$ref = new Reference();
|
||||||
$ref->source = new NullMedia((int) $media);
|
$ref->name = $media->name;
|
||||||
|
$ref->source = new NullMedia($media->getId());
|
||||||
$ref->createdBy = new NullAccount($request->header->account);
|
$ref->createdBy = new NullAccount($request->header->account);
|
||||||
$ref->setVirtualPath($path);
|
$ref->setVirtualPath($path);
|
||||||
|
|
||||||
ReferenceMapper::create()->execute($ref);
|
$this->createModel($request->header->account, $ref, ReferenceMapper::class, 'media_reference', $request->getOrigin());
|
||||||
|
|
||||||
if ($collection === null) {
|
if ($collection === null) {
|
||||||
$collection = $this->app->moduleManager->get('Media')->createRecursiveMediaCollection(
|
$collection = $this->app->moduleManager->get('Media')->createRecursiveMediaCollection(
|
||||||
|
|
@ -169,7 +196,15 @@ final class ApiController extends Controller
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
CollectionMapper::writer()->createRelationTable('sources', [$ref->getId()], $collection->getId());
|
$this->createModelRelation(
|
||||||
|
$request->header->account,
|
||||||
|
$collection->getId(),
|
||||||
|
$ref->getId(),
|
||||||
|
CollectionMapper::class,
|
||||||
|
'sources',
|
||||||
|
'',
|
||||||
|
$request->getOrigin()
|
||||||
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue
Block a user