. */ namespace OCA\SideMenu\Controller; use OCP\AppFramework\Controller; use OCP\AppFramework\Http\TemplateResponse; use OCP\AppFramework\Http\Response; use OCP\IConfig; use OCP\IRequest; class JsController extends Controller { /** * @var \OCP\IConfig */ protected $config; /** * @param string $appName * @param IRequest $request * @param IConfig $config */ public function __construct($appName, IRequest $request, IConfig $config) { parent::__construct($appName, $request); $this->config = $config; } /** * @NoAdminRequired * @NoCSRFRequired * @PublicPage * * @return Response */ public function script() { $parameters = [ 'opener-position' => $this->config->getAppValue('side_menu', 'opener-position', 'before'), 'opener-hover' => (bool) $this->config->getAppValue('side_menu', 'opener-hover', '0'), 'external-sites-in-top-menu' => (bool) $this->config->getAppValue('side_menu', 'external-sites-in-top-menu', 0), 'force-light-icon' => (bool) $this->config->getAppValue('side_menu', 'force-light-icon', '0'), 'hide-when-no-apps' => (bool) $this->config->getAppValue('side_menu', 'hide-when-no-apps', '0'), ]; $response = new TemplateResponse('side_menu', 'js/script', $parameters, 'blank'); $response->addHeader('Content-Type', 'text/javascript'); return $response; } }