63 $settings->setHashing(
true);
64 $settings->setLogging(
false);
83 foreach ($this->providers as $provider) {
84 $context_collection = $provider->isInterestedInContexts();
85 if (!$context_collection->hasMatch($called_contexts)) {
90 $content_modification = $provider->getContentModification($called_contexts);
91 $this->
replaceModification($final_content_modification, $content_modification, ContentModification::class);
93 $logo_modification = $provider->getLogoModification($called_contexts);
94 $this->
replaceModification($final_logo_modification, $logo_modification, LogoModification::class);
96 $responsive_logo_modification = $provider->getResponsiveLogoModification($called_contexts);
97 $this->
replaceModification($final_responsive_logo_modification, $responsive_logo_modification,
98 LogoModification::class);
100 $breadcrumbs_modification = $provider->getBreadCrumbsModification($called_contexts);
102 BreadCrumbsModification::class);
104 $main_bar_modification = $provider->getMainBarModification($called_contexts);
106 MainBarModification::class);
108 $meta_bar_modification = $provider->getMetaBarModification($called_contexts);
110 MetaBarModification::class);
112 $footer_modification = $provider->getFooterModification($called_contexts);
113 $this->
replaceModification($final_footer_modification, $footer_modification, FooterModification::class);
115 $page_modification = $provider->getPageBuilderDecorator($called_contexts);
116 $this->
replaceModification($final_page_modification, $page_modification, PageBuilderModification::class);
118 $title_modification = $provider->getTitleModification($called_contexts);
119 $this->
replaceModification($final_title_modification, $title_modification, TitleModification::class);
121 $short_title_modification = $provider->getShortTitleModification($called_contexts);
123 ShortTitleModification::class);
125 $view_title_modification = $provider->getViewTitleModification($called_contexts);
127 ViewTitleModification::class);
130 if ($final_content_modification->hasValidModification()) {
131 $this->modification_handler->modifyContentWithClosure($final_content_modification->getModification());
133 if ($final_logo_modification->hasValidModification()) {
134 $this->modification_handler->modifyLogoWithClosure($final_logo_modification->getModification());
136 if ($final_responsive_logo_modification->hasValidModification()) {
137 $this->modification_handler->modifyResponsiveLogoWithClosure($final_responsive_logo_modification->getModification());
139 if ($final_breadcrumbs_modification->hasValidModification()) {
140 $this->modification_handler->modifyBreadCrumbsWithClosure($final_breadcrumbs_modification->getModification());
142 if ($final_main_bar_modification->hasValidModification()) {
143 $this->modification_handler->modifyMainBarWithClosure($final_main_bar_modification->getModification());
145 if ($final_meta_bar_modification->hasValidModification()) {
146 $this->modification_handler->modifyMetaBarWithClosure($final_meta_bar_modification->getModification());
148 if ($final_footer_modification->hasValidModification()) {
149 $this->modification_handler->modifyFooterWithClosure($final_footer_modification->getModification());
151 if ($final_page_modification->hasValidModification()) {
152 $this->modification_handler->modifyPageBuilderWithClosure($final_page_modification->getModification());
154 if ($final_title_modification->hasValidModification()) {
155 $this->modification_handler->modifyTitleWithClosure($final_title_modification->getModification());
157 if ($final_short_title_modification->hasValidModification()) {
158 $this->modification_handler->modifyShortTitleWithClosure($final_short_title_modification->getModification());
160 if ($final_view_title_modification->hasValidModification()) {
161 $this->modification_handler->modifyViewTitleWithClosure($final_view_title_modification->getModification());
215 throw new LogicException(
"There are competing Modifications for $type with the same priority ({$candicate->getPriority()})");
217 $current_modification = $candicate;
230 return $this->modification_handler->getPageWithPagePartProviders();
240 $called_contexts = $DIC->globalScreen()->tool()->context()->stack();
242 return $called_contexts;
253 return $DIC->globalScreen()->layout()->meta();
cleanupItemsForUIRepresentation()
Class MainLayoutCollector.
replaceModification(LayoutModification &$current_modification, ?LayoutModification $candicate, string $type)
__construct(array $providers)
MainLayoutCollector constructor.
getItemsForUIRepresentation()
Class AbstractBaseCollector.
if($_SERVER['argc']< 4) $client
collectOnce()
Runs the Collection of all items from the providers.
filterItemsByVisibilty(bool $skip_async=false)
sortItemsForUIRepresentation()
prepareItemsForUIRepresentation()
Class LayoutModification.