modx->hasPermission('file_manager'); } /** * Register custom CSS/JS for the page * @return void */ public function loadCustomCssJs() { /* invoke OnRichTextBrowserInit */ $this->addHtml(''); } /** * Custom logic code here for setting placeholders, etc * @param array $scriptProperties * @return mixed */ public function process(array $scriptProperties = array()) { $placeholders = array(); $scriptProperties['ctx'] = !empty($scriptProperties['ctx']) ? $scriptProperties['ctx'] : 'web'; $rtecallback = $this->modx->invokeEvent('OnRichTextBrowserInit', $scriptProperties); if (is_array($rtecallback)) $rtecallback = trim(implode(',',$rtecallback),','); $placeholders['rtecallback'] = $rtecallback; $this->ctx = $scriptProperties['ctx']; $placeholders['_ctx'] = $this->ctx; $_SERVER['HTTP_MODAUTH'] = $this->modx->user->getUserToken($this->modx->context->get('key')); $placeholders['site_id'] = $_SERVER['HTTP_MODAUTH']; $placeholders['source'] = $this->modx->getOption('source',$scriptProperties,$this->modx->getOption('default_media_source',null,1)); return $placeholders; } /** * Return the pagetitle * * @return string */ public function getPageTitle() { return $this->modx->lexicon('modx_resource_browser'); } /** * Return the location of the template file * @return string */ public function getTemplateFile() { return 'browser/index.tpl'; } /** * Specify the language topics to load * @return array */ public function getLanguageTopics() { return array('file'); } }