public function registerEditor()
{
$this->addMainResources(['noJs' => true]);
$this->addSessionScripts();
$page = $this->pageStack->getCurrentPage();
$response = $this->pageStack->getPageResponse();
$response->addJsFile('@JarvesBundle/admin/mootools-core-1.4.5-fixed-memory-leak.js');
$response->addJsFile('@JarvesBundle/admin/mootools-more.js');
$response->setResourceCompression(false);
$response->setDomainHandling(false);
$request = $this->pageStack->getRequest();
$nodeArray['id'] = $page->getId();
$nodeArray['title'] = $page->getTitle();
$nodeArray['domainId'] = $page->getDomainId();
$nodeArray['theme'] = $page->getTheme();
$nodeArray['layout'] = $request->query->get('_jarves_editor_layout') ?: $page->getLayout();
$domain = DomainQuery::create()->findPk($page->getDomainId());
$domainArray['id'] = $domain->getId();
$domainArray['domain'] = $domain->getDomain();
$domainArray['path'] = $domain->getPath();
$domainArray['theme'] = $domain->getTheme();
$domainArray['themeOptions'] = $domain->getThemeOptions();
$options = ['id' => $request->query->get('_jarves_editor_id'), 'node' => $nodeArray, 'domain' => $domainArray];
if (is_array($extraOptions = $request->query->get('_jarves_editor_options'))) {
$options = array_merge($options, $extraOptions);
$options['standalone'] = filter_var($options['standalone'], FILTER_VALIDATE_BOOLEAN);
}
$response->addJsAtBottom('window.editor = new parent.jarves.Editor(' . json_encode($options) . ', document.documentElement);');
}