/** * Register components & events based on current route name & site. It allows * us to have different components and actions for different routes [and events * on different sites]. * * */ public function registerComponents($routeName, $params = null) { $this->cachingQueries->make(Component::validComponents($this->siteId, $routeName)); $c = $this->cachingQueries->remember(1, 'get'); foreach ($c as $component) { $this->{camel_case('register ' . $component->components_type)}($component->components_src, $params); } }