ILIAS  release_7 Revision v7.30-3-g800a261c036
class.ilHelpViewLayoutProvider.php
Go to the documentation of this file.
1 <?php
2 
11 
17 {
18  use \ILIAS\GlobalScreen\Scope\MainMenu\Collector\Renderer\Hasher;
19  use ilHelpDisplayed;
20 
25  {
26  return $this->context_collection->main();
27  }
28 
32  public function getMainBarModification(CalledContexts $called_contexts) : ?MainBarModification
33  {
34  if (!$this->showHelpTool()) {
35  return null;
36  }
37  $this->globalScreen()->collector()->mainmenu()->collectOnce();
38  foreach ($this->globalScreen()->collector()->mainmenu()->getRawItems() as $item) {
39  $p = $item->getProviderIdentification();
40 
41  $tt_text = ilHelp::getMainMenuTooltip($p->getInternalIdentifier());
42  $tt_text = addslashes(str_replace(array("\n", "\r"), '', $tt_text));
43 
44  if ($tt_text != "") {
45  if ($item instanceof hasSymbol && $item->hasSymbol()) {
46  $item->addSymbolDecorator(static function (Symbol $symbol) use ($tt_text) : Symbol {
47  if ($symbol instanceof JavaScriptBindable) {
48  return $symbol->withAdditionalOnLoadCode(static function ($id) use ($tt_text) : string {
49  return "il.Tooltip.addToNearest('$id', 'button,a', { context:'', my:'bottom center', at:'top center', text:'$tt_text' });";
50  });
51  }
52  return $symbol;
53  });
54  }
55  }
56  }
57 
59 
60  return null;
61  }
62 }
This describes a symbol.
Definition: Symbol.php:11
static init()
Initializes the needed tooltip libraries.
trait JavaScriptBindable
Trait for components implementing JavaScriptBindable providing standard implementation.
Interface hasSymbol Methods for Entries with Symbols.
Definition: hasSymbol.php:32
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
static getMainMenuTooltip($a_item_id)
Get main menu tooltip.
withAdditionalOnLoadCode(\Closure $binder)
Add some onload-code to the component instead of replacing the existing one.
HTML export view layout provider, hides main and meta bar.
getMainBarModification(CalledContexts $called_contexts)
No main bar in HTML exports.