19declare(strict_types=1);
42 $this->dom_util =
$DIC->copage()->internal()->domain()->domUtil();
43 if (isset(
$DIC[
'ilLoggerFactory'])) {
46 $this->media_manager =
$DIC->mediaObjects()->internal()->domain()->mediaObject();
54 $this->log->debug(
"Handle mob upload");
56 $this->log->debug($title);
59 $this->log->debug(
"New...");
60 $mob = new \ilObjMediaObject();
61 $mob->setTitle($title);
62 $mob->setDescription(
"");
65 $media_item = $mob->addMediaItemFromUpload(
70 $this->log->debug(
"Update...");
71 $media_item = $mob->replaceMediaItemFromUpload(
78 return new BasicHandlerResult(
81 (
string) $mob->getId(),
91 $mob->addAdditionalFileFromUpload(
96 "overlays/" . $result->
getName(),
97 "thumb/" . $this->getOverlayThumbnailName($result->
getName())
102 (
string) $mob->
getId(),
109 return $this->media_manager->getLocalSrc($mob->
getId(),
"/overlays/" . $file);
114 return $this->media_manager->getLocalSrc($mob->
getId(),
"/thumb/" . $file);
119 $piname = pathinfo($file);
120 return basename($file,
"." . $piname[
'extension']) .
".png";
127 $file = $file[
"basename"];
130 "thumbpath" => $this->getOverlayThumbnailPath($mob, $file),
131 "webpath" => $this->getOverlayWebPath($mob, $file)
146 $path =
"//InteractiveImage/MediaAlias";
148 $nodes = $this->dom_util->path($dom,
$path);
149 foreach ($nodes as $node) {
150 $old_id = $node->getAttribute(
"OriginId");
151 if (($a_mapping[$old_id] ?? 0) > 0) {
152 $node->setAttribute(
"OriginId",
"il__mob_" . $a_mapping[$old_id]);
handleOverlayUpload(\ilObjMediaObject $mob, FileUpload $upload, UploadResult $result)
getOverlays(\ilObjMediaObject $mob)
handleUploadResult(FileUpload $upload, UploadResult $result, ?\ilObjMediaObject $mob=null)
getOverlayWebPath(\ilObjMediaObject $mob, string $file)
__construct(InternalDomainService $domain)
getOverlayThumbnailName(string $file)
ILIAS MediaObjects MediaObjectManager $media_manager
resolveIIMMediaAliases(\DOMDocument $dom, array $a_mapping)
Resolve iim media aliases (in ilContObjParse)
getOverlayThumbnailPath(\ilObjMediaObject $mob, string $file)
InternalDomainService $domain
ILIAS COPage Dom DomUtil $dom_util
Class BasicHandlerResult.
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...