File Manager

Current Directory: /home/astoriaah/www/administrator/components/com_widgetkit
Viewing File: /home/astoriaah/www/administrator/components/com_widgetkit/widgetkit.php
<?php use Joomla\CMS\Component\ComponentHelper; use Joomla\CMS\Factory; use Joomla\CMS\HTML\HTMLHelper; use Joomla\CMS\Session\Session; use YOOtheme\Framework\Joomla\EditorHelper; use YOOtheme\Framework\Joomla\Option; use YOOtheme\Widgetkit\Application; global $widgetkit; if ($widgetkit) { return $widgetkit; } $loader = require __DIR__ . '/vendor/autoload.php'; $config = require __DIR__ . '/config.php'; $app = new Application($config); $app['autoloader'] = $loader; $app['path.cache'] = rtrim(JPATH_SITE, '/').'/media/widgetkit'; $app['component'] = 'com_'.$app['name']; $app['permissions'] = array('core.manage' => 'manage_widgetkit'); $app['templates'] = function () { $db = Factory::getDbo(); $db->setQuery( 'SELECT id,template FROM #__template_styles WHERE client_id=0 AND home=1'); $template = $db->loadObject()->template; return file_exists($path = rtrim(JPATH_ROOT, '/')."/templates/".$template."/widgetkit") ? array($path) : array(); }; $app['option'] = function ($app) { return new Option($app['db'], 'pkg_widgetkit'); }; $app['locator']->addPath('assets', rtrim(JPATH_ROOT, '/').'/media/com_widgetkit'); $app->on('init', function ($event, $app) { $option = $app['joomla']->input->get('option'); $controller = $app['joomla']->input->get('controller'); if ($option == 'com_config' && $controller == 'config.display.modules') { $app['scripts']->add('widgetkit-joomla', 'assets/js/joomla.js', array('widgetkit-application')); } $app['config']->add(ComponentHelper::getParams($app['component'])->toArray()); $app->on('init.site', function($event, $app) { // check theme support for UIkit $template = $app['joomla']->getTemplate(true); $app['config']->set('theme.support', $app['config']->get('theme_support')); if ($template->params->get('uikit3')) { $app['config']->set('theme.support', 'uikit3'); // Legacy Widgetkit 2 } elseif (Factory::getConfig()->get('widgetkit') || Factory::getConfig()->get('widgetkit-noconflict') || file_exists(sprintf('%s/%s/warp.php', JPATH_THEMES, $template->template)) ) { $app['config']->set('theme.support', 'noconflict'); } else if (!$app['config']->get('theme.support')) { $app['config']->set('theme.support', 'scoped'); } $app->on('view', function($event, $app) { if ($app['config']->get('theme.support') === 'noconflict') { $app['locator']->addPath('assets/lib/uikit', rtrim(JPATH_ROOT, '/')."/media/com_widgetkit/lib/wkuikit"); } }); }); if ($app['admin'] && $app['component'] === $app['joomla']->input->get('option')) { $app->trigger('init.admin', array($app)); } }); $app->on('init.admin', function ($event, $app) { // don't add assets for editor route if ($app['joomla']->input->get('p') === 'editor') { $app['controllers']->get('editor', ['YOOtheme\Framework\Joomla\EditorHelper', 'renderEditor']); return; } // load widget manager assets after dispatch $app['joomla']->registerEvent('onAfterDispatch', function () use ($app) { HTMLHelper::_('behavior.keepalive'); HTMLHelper::_('jquery.framework'); // delay loading editor to ensure e.g. bootstrap dependency has been added to the document $app['joomla']->registerEvent('onBeforeRender', function () use ($app) { if ($editor = EditorHelper::load($app, Factory::getConfig()->get('editor'))) { $app['angular']->set('editor', $editor); $app['scripts']->add('widgetkit-tinymce', 'https://cdn.jsdelivr.net/npm/tinymce@4.5.12/tinymce.min.js', array(), array('defer' => true)); } }); $app['angular']->set('token', Session::getFormToken()); $app['angular']->set('platform', ['name' => 'joomla', 'version' => JVERSION]); $app['angular']->addTemplate('media', 'views/media.php', true); $app['config']->set('settings-page', 'index.php?option=com_config&view=component&component=com_widgetkit'); $app['styles']->add('widgetkit-joomla', 'assets/css/joomla.css'); $app['scripts']->add('widgetkit-joomla', 'assets/js/joomla.js', array('widgetkit-admin'), array('defer' => true)); }); }, 10); return $widgetkit = $app->boot();