70 $this->raw_item = $collector->getSingleItemFromRaw($identification);
71 $this->filtered_item = $collector->getSingleItemFromFilter($identification);
72 $this->type_information = $collector->getTypeInformationCollection()->get(get_class($this->raw_item));
76 public function getId() : string
134 return $this->mm_item->getIdentification() ==
'';
165 if ($this->filtered_item instanceof
isParent) {
166 return count($this->filtered_item->getChildren());
174 return (
bool) ($this->filtered_item->isAvailable() || $this->filtered_item->isAlwaysAvailable());
182 return (
bool) ($this->mm_item->isActive() && $this->
getRawItem()->isAvailable()) || $this->
getRawItem()->isAlwaysAvailable();
190 return $this->
getRawItem()->isAlwaysAvailable();
206 $default_translation = ilMMItemTranslationStorage::getDefaultTranslation($this->
identification);
207 if ($default_translation !==
"") {
208 return $default_translation;
210 if ($this->default_title ==
"-" && $this->raw_item instanceof \
ILIAS\GlobalScreen\Scope\MainMenu\Factory\hasTitle) {
211 $this->default_title = $this->raw_item->getTitle();
231 if (!$this->raw_item->isAvailable() || $this->raw_item->isAlwaysAvailable()) {
232 return $DIC->ui()->renderer()->render($this->raw_item->getNonAvailableReason());
244 return $this->type_information->getTypeNameForPresentation();
250 $provider_name_for_presentation = $this->raw_item->getParent()->serialize();
252 $storage_parent = $this->mm_item->getParentIdentification();
253 if ($storage_parent !== $provider_name_for_presentation) {
254 return $storage_parent;
257 return $provider_name_for_presentation;
268 $known_core_types = [
273 RepositoryLink::class,
276 TopParentItem::class,
278 foreach ($known_core_types as $known_core_type) {
279 if (get_class($this->raw_item) === $known_core_type) {
292 return $this->raw_item instanceof
isTopItem;
298 return $item instanceof
isChild 307 if ($this->raw_item instanceof
isChild) {
336 return $this->type_information->getType();
344 $this->mm_item->setParentIdentification($parent);
352 $this->mm_item->setPosition($position);
360 $this->mm_item->setActive($status);
365 return $this->raw_item instanceof
hasSymbol;
370 return $this->mm_item->getIconId();
378 $this->mm_item->setIconId($icon_id);
386 $this->mm_item->update();
392 $this->mm_item->create();
407 foreach ($ts as $translation) {
409 $translation->delete();
418 public function delete()
deleteAssociatedTranslations()
deletes all translations associated with the current identification.
getProviderNameForPresentation()
Class ilMMAbstractItemFacade.
static find($primary_key, array $add_constructor_args=array())
Class ChatMainBarProvider .
__construct(\ILIAS\GlobalScreen\Identification\IdentificationInterface $identification, Main $collector)
ilMMAbstractItemFacade constructor.
Class NullIdentification.
static storeDefaultTranslation(IdentificationInterface $identification, string $translation)
setRoleBasedVisibility(bool $role_based_visibility)
static where($where, $operator=null)
static register(isItem $item)
supportsRoleBasedVisibility()
setPosition(int $position)
setIconID(string $icon_id)
setGlobalRoleIDs(array $global_role_ids)
getParentIdentificationString()
getType()
FSX check if doublette .
setActiveStatus(bool $status)
setIsTopItm(bool $top_item)
setParent(string $parent)
Interface ilMMItemFacadeInterface.
setDefaultTitle(string $default_title)
Class ilMMItemTranslationStorage.