Example #1
0
 /**
  * Get an alphabetically sorted array of module names indexed by id that provide blocks.
  *
  * @return array
  */
 public function getModulesContainingBlocks()
 {
     $modules = $this->extensionApi->getModulesBy(['state' => ExtensionApi::STATE_ACTIVE]);
     $modulesContainingBlocks = [];
     foreach ($modules as $module) {
         $blocks = $this->getAvailableBlockTypes($module);
         if (!empty($blocks)) {
             $modulesContainingBlocks[$module->getId()] = $module->getName();
         }
     }
     asort($modulesContainingBlocks);
     return $modulesContainingBlocks;
 }