0, 'root' => '[SITEROOT]', 'subdirectory' => '', ); $defConfig = array_merge($defConfig, $parameters); $profile = $filter->clean($defConfig['profile'], 'int'); $root = $filter->clean($defConfig['root'], 'string'); $subdirectory = $filter->clean($defConfig['subdirectory'], 'path'); $crumbs = array(); // We need a valid profile ID if ($profile <= 0) { $profile = 1; } // We need a root if (empty($root)) { throw new \RuntimeException('Unknown filesystem root', 500); } // Get the subdirectory and explode it to its parts if (!empty($subdirectory)) { $subdirectory = trim($subdirectory, '/'); } if (!empty($subdirectory)) { $crumbs = explode('/', $subdirectory); } // Set the active profile $session = Application::getInstance()->getContainer()->segment; $session->set('profile', $profile); // Load the configuration Platform::getInstance()->load_configuration($profile); /** @var \Solo\Model\Fsfilters $model */ $model = new Fsfilters(); return $model->make_listing($root, $crumbs); } }