/** * @param modManagerController $controller * @param array $properties */ public function loadManagerFiles(modManagerController $controller, array $properties = array()) { $modx23 = (int) $this->systemVersion(); $ticketsAssetsUrl = $this->config['assetsUrl']; $connectorUrl = $this->config['connectorUrl']; $ticketsCssUrl = $this->config['cssUrl'] . 'mgr/'; $ticketsJsUrl = $this->config['jsUrl'] . 'mgr/'; if (!empty($properties['config'])) { $tmp = array('assets_js' => $ticketsAssetsUrl, 'connector_url' => $connectorUrl); $controller->addHtml('<script type="text/javascript">MODx.modx23 = ' . $modx23 . ';Tickets.config = ' . $this->modx->toJSON($tmp) . ';</script>', true); } if (!empty($properties['utils'])) { $controller->addJavascript($ticketsJsUrl . 'tickets.js'); $controller->addLastJavascript($ticketsJsUrl . 'misc/utils.js'); $controller->addLastJavascript($ticketsJsUrl . 'misc/combos.js'); } if (!empty($properties['css'])) { $controller->addCss($ticketsCssUrl . 'tickets.css'); $controller->addCss($ticketsCssUrl . 'bootstrap.buttons.css'); if (!$modx23) { $controller->addCss($ticketsCssUrl . 'font-awesome.min.css'); } } if (!empty($properties['section'])) { $controller->addLastJavascript($ticketsJsUrl . 'section/section.common.js'); $controller->addLastJavascript($ticketsJsUrl . 'ticket/tickets.panel.js'); $controller->addLastJavascript($ticketsJsUrl . 'ticket/tickets.grid.js'); } if (!empty($properties['ticket'])) { $controller->addLastJavascript($ticketsJsUrl . 'ticket/ticket.common.js'); } if (!empty($properties['tickets'])) { $controller->addLastJavascript($ticketsJsUrl . 'ticket/tickets.panel.js'); $controller->addLastJavascript($ticketsJsUrl . 'ticket/tickets.grid.js'); } if (!empty($properties['threads'])) { $controller->addLastJavascript($ticketsJsUrl . 'thread/threads.panel.js'); $controller->addLastJavascript($ticketsJsUrl . 'thread/threads.grid.js'); $controller->addLastJavascript($ticketsJsUrl . 'thread/thread.window.js'); $controller->addLastJavascript($ticketsJsUrl . 'comment/comments.grid.js'); $controller->addLastJavascript($ticketsJsUrl . 'comment/comment.window.js'); } if (!empty($properties['comments'])) { $controller->addLastJavascript($ticketsJsUrl . 'comment/comments.panel.js'); $controller->addLastJavascript($ticketsJsUrl . 'comment/comments.grid.js'); $controller->addLastJavascript($ticketsJsUrl . 'comment/comment.window.js'); } if (!empty($properties['authors'])) { $controller->addLastJavascript($ticketsJsUrl . 'author/authors.panel.js'); $controller->addLastJavascript($ticketsJsUrl . 'author/authors.grid.js'); } }
/** * @param modManagerController $controller * @param array $opts */ public function loadControllerFiles(modManagerController $controller, array $opts = array()) { $config = $this->config; $config['connector_url'] = $this->config['connectorUrl']; $config['fields_grid_domain'] = $this->getDomainGridFields(); if (!empty($opts['css'])) { $controller->addCss($this->config['cssUrl'] . 'mgr/main.css'); $controller->addCss($this->config['cssUrl'] . 'mgr/bootstrap.buttons.css'); } if (!empty($opts['config'])) { $controller->addHtml("<script type='text/javascript'>subdomainsfolder.config={$this->modx->toJSON($config)}</script>"); } if (!empty($opts['tools'])) { $controller->addJavascript($this->config['jsUrl'] . 'mgr/subdomainsfolder.js'); $controller->addJavascript($this->config['jsUrl'] . 'mgr/misc/tools.js'); $controller->addJavascript($this->config['jsUrl'] . 'mgr/misc/combo.js'); } if (!empty($opts['domain'])) { $controller->addLastJavascript($this->config['jsUrl'] . 'mgr/domain/domain.window.js'); $controller->addLastJavascript($this->config['jsUrl'] . 'mgr/domain/domain.grid.js'); $controller->addLastJavascript($this->config['jsUrl'] . 'mgr/domain/domain.panel.js'); } }
/** * @param modManagerController $controller * @param modResource $resource */ public function loadManagerFiles(modManagerController $controller, modResource $resource) { $modx23 = (int) $this->systemVersion(); $cssUrl = $this->config['cssUrl'] . 'mgr/'; $jsUrl = $this->config['jsUrl'] . 'mgr/'; $properties = $resource->getProperties('ms2gallery'); if (empty($properties['media_source'])) { if (!($source_id = $resource->getTVValue('ms2Gallery'))) { /** @var modContextSetting $setting */ $setting = $this->modx->getObject('modContextSetting', array('key' => 'ms2gallery_source_default', 'context_key' => $resource->get('context_key'))); $source_id = !empty($setting) ? $setting->get('value') : $this->modx->getOption('ms2gallery_source_default'); } $resource->setProperties(array('media_source' => $source_id), 'ms2gallery'); $resource->save(); } else { $source_id = $properties['media_source']; } if (empty($source_id)) { $source_id = $this->modx->getOption('ms2gallery_source_default'); } $resource->set('media_source', $source_id); $controller->addLexiconTopic('ms2gallery:default'); $controller->addJavascript($jsUrl . 'ms2gallery.js'); $controller->addLastJavascript($jsUrl . 'misc/ms2.combo.js'); $controller->addLastJavascript($jsUrl . 'misc/ms2.utils.js'); $controller->addLastJavascript($jsUrl . 'misc/plupload/plupload.full.js'); $controller->addLastJavascript($jsUrl . 'misc/ext.ddview.js'); $controller->addLastJavascript($jsUrl . 'gallery.view.js'); $controller->addLastJavascript($jsUrl . 'gallery.window.js'); $controller->addLastJavascript($jsUrl . 'gallery.toolbar.js'); $controller->addLastJavascript($jsUrl . 'gallery.panel.js'); $controller->addCss($cssUrl . 'main.css'); if (!$modx23) { $controller->addCss($cssUrl . 'font-awesome.min.css'); } $source_config = array(); /** @var modMediaSource $source */ if ($source = $this->modx->getObject('modMediaSource', $source_id)) { $tmp = $source->getProperties(); foreach ($tmp as $v) { $source_config[$v['name']] = $v['value']; } } $controller->addHtml(' <script type="text/javascript"> MODx.modx23 = ' . $modx23 . '; ms2Gallery.config = ' . $this->modx->toJSON($this->config) . '; ms2Gallery.config.media_source = ' . $this->modx->toJSON($source_config) . '; </script>'); if ($this->modx->getOption('ms2gallery_new_tab_mode', null, true)) { $controller->addLastJavascript($jsUrl . 'tab.js'); } else { $insert = ' tabs.add({ xtype: "ms2gallery-page", id: "ms2gallery-page", title: _("ms2gallery"), record: { id: ' . $resource->get('id') . ', source: ' . $source_id . ', } }); '; if ($this->modx->getCount('modPlugin', array('name' => 'AjaxManager', 'disabled' => false))) { $controller->addHtml(' <script type="text/javascript"> Ext.onReady(function() { window.setTimeout(function() { var tabs = Ext.getCmp("modx-resource-tabs"); if (tabs) { ' . $insert . ' } }, 10); }); </script>'); } else { $controller->addHtml(' <script type="text/javascript"> Ext.ComponentMgr.onAvailable("modx-resource-tabs", function() { var tabs = this; tabs.on("beforerender", function() { ' . $insert . ' }); }); </script>'); } } }
/** * @param modManagerController $controller * @param modResource $resource */ public function loadManagerFiles(modManagerController $controller, modResource $resource) { $modx23 = (int) $this->systemVersion(); $cssUrl = $this->config['cssUrl'] . 'mgr/'; $jsUrl = $this->config['jsUrl'] . 'mgr/'; $properties = $resource->getProperties('modupdater'); $controller->addLexiconTopic('modupdater:default'); $controller->addJavascript($jsUrl . 'modupdater.js'); $controller->addLastJavascript($jsUrl . 'misc/utils.js'); $controller->addCss($cssUrl . 'main.css'); if (!$modx23) { $controller->addCss($cssUrl . 'font-awesome.min.css'); } $controller->addHtml(' <script type="text/javascript"> MODx.modx23 = ' . $modx23 . '; modUpdater.config = ' . $this->modx->toJSON($this->config) . '; modUpdater.config.resID = ' . $resource->id . '; modUpdater.config.connector_url = "' . $this->config['connectorUrl'] . '"; </script>', true); $controller->addLastJavascript($jsUrl . 'widgets/items.windows.js'); }