/** * Create module for layout. * * @param $position * @return string */ protected function _create($position) { $output = []; if ($modules = Hash::get($this->_positions, $position)) { $i = 0; $count = count($modules); foreach ($modules as $module) { if (!$this->_filterModule($module)) { break; } $i++; $first = $i == 1 ? 'first' : ''; $last = $count == $i ? 'last' : ''; $style = $module->style ? $module->style : 'default'; $Module = Module::get($module->getName(), $this->_View, $module); if ($content = $Module->render()) { $output['module-' . $i] = $this->_View->element($this->_plugin . '.Modules' . DS . $style, ['number' => $i, 'last' => $last, 'first' => $first, 'module' => $module, 'content' => $content]); } } } return implode(PHP_EOL, $output); }