D7net Mini Sh3LL v1
Current File : /var/www/html/../html/informatica/administrator/components/com_jce/views/../controller.php |
<?php
/**
* @package JCE
* @copyright Copyright (c) 2009-2016 Ryan Demmer. All rights reserved.
* @license GNU/GPL 2 or later - http://www.gnu.org/licenses/old-licenses/gpl-2.0.html
* JCE is free software. This version may have been modified pursuant
* to the GNU General Public License, and as distributed it includes or
* is derivative of works licensed under the GNU General Public License or
* other free or open source software licenses.
*/
defined('_JEXEC') or die('RESTRICTED');
wfimport('admin.classes.controller');
class WFController extends WFControllerBase {
/**
* Custom Constructor
*/
public function __construct($default = array()) {
parent::__construct($default);
// load helpers
wfimport('admin.helpers.parameter');
wfimport('admin.helpers.extension');
wfimport('admin.helpers.xml');
}
private function loadMenu() {
$view = JRequest::getWord('view', 'cpanel');
wfimport('admin.models.model');
JSubMenuHelper::addEntry(WFText::_('WF_CPANEL'), 'index.php?option=com_jce&view=cpanel', $view == 'cpanel');
$subMenus = array(
'WF_CONFIGURATION' => 'config',
'WF_PROFILES' => 'profiles',
'WF_INSTALL' => 'installer'
);
if (JPluginHelper::isEnabled('system', 'jcemediabox')) {
$subMenus['WF_MEDIABOX'] = 'mediabox';
}
foreach ($subMenus as $menu => $item) {
if (WFModel::authorize($item)) {
JSubMenuHelper::addEntry(WFText::_($menu), 'index.php?option=com_jce&view=' . $item, $view == $item);
}
}
}
/**
* Create the View.
* This is an overloaded function of JController::getView
* and includes addition of the JDocument Object with required scripts and styles
* @return object
*/
public function getView($name = '', $type = '', $prefix = '', $config = array()) {
$language = JFactory::getLanguage();
$language->load('com_jce', JPATH_ADMINISTRATOR);
$document = JFactory::getDocument();
if (!$name) {
$name = JRequest::getWord('view', 'cpanel');
}
if (!$type) {
$type = $document->getType();
}
if (empty($config)) {
$config = array(
'base_path' => dirname(__FILE__)
);
}
$model = $this->getModel($name);
$view = parent::getView($name, $type, $prefix, $config);
$document = JFactory::getDocument();
// set device-width meta
$document->setMetaData('meta', 'width=device-width, initial-scale=1.0');
$version = new JVersion;
if ($version->isCompatible('3.0')) {
// Include jQuery
JHtml::_('jquery.framework');
} else {
// JQuery
$view->addScript(JURI::root(true) . '/components/com_jce/editor/libraries/jquery/js/jquery.min.js');
// jQuery noConflict
$view->addScriptDeclaration('jQuery.noConflict();');
}
// JQuery UI
$view->addScript(JURI::root(true) . '/components/com_jce/editor/libraries/jquery/js/jquery-ui.min.js');
$scripts = array();
switch ($name) {
case 'help':
$view->addScript(JURI::root(true) . '/components/com_jce/editor/libraries/js/help.js');
break;
default:
$view->addStyleSheet(JURI::root(true) . '/administrator/components/com_jce/media/css/global.css');
// load Joomla! core javascript
if (method_exists('JHtml', 'core')) {
JHtml::core();
}
require_once(JPATH_ADMINISTRATOR . '/includes/toolbar.php');
JToolBarHelper::title(WFText::_('WF_ADMINISTRATION') . ' :: ' . WFText::_('WF_' . strtoupper($name)), 'logo.png');
$params = WFParameterHelper::getComponentParams();
$theme = $params->get('preferences.theme', 'jce');
$view->addScript(JURI::root(true) . '/administrator/components/com_jce/media/js/core.js');
$options = array(
'labels' => array(
'ok' => WFText::_('WF_LABEL_OK'),
'cancel' => WFText::_('WF_LABEL_CANCEL'),
'select' => WFText::_('WF_LABEL_SELECT'),
'save' => WFText::_('WF_LABEL_SAVE'),
'saveclose' => WFText::_('WF_LABEL_SAVECLOSE'),
'alert' => WFText::_('WF_LABEL_ALERT'),
'required' => WFText::_('WF_MESSAGE_REQUIRED')
)
);
$view->addScriptDeclaration('jQuery.jce.options = ' . json_encode($options) . ';');
$view->addHelperPath(dirname(__FILE__) . '/helpers');
$this->addModelPath(dirname(__FILE__) . '/models');
$view->loadHelper('toolbar');
$view->loadHelper('xml');
$view->loadHelper($name);
$this->loadMenu();
break;
}
if ($model = $this->getModel($name)) {
$view->setModel($model, true);
}
$view->assignRef('document', $document);
return $view;
}
protected function getStyles() {
jimport('joomla.filesystem.folder');
jimport('joomla.filesystem.file');
wfimport('admin.helpers.extension');
$view = JRequest::getCmd('view', 'cpanel');
$component = WFExtensionHelper::getComponent();
$params = new WFParameter($component->params);
$theme = $params->get('preferences.theme', 'jce');
$site_path = JPATH_SITE . '/component/com_jce/editor/libraries/css';
// Load styles
$styles = array();
if (!JFolder::exists($site_path . '/jquery/' . $theme)) {
$theme = 'jce';
}
// admin global css
$styles = array_merge($styles, array(
'administrator/components/com_jce/media/css/global.css'
));
return $styles;
}
public function pack() {
}
/**
* Display View
* @return
*/
public function display($cachable = false, $params = false) {
$view = $this->getView();
$view->display();
}
/**
* Generic cancel method
* @return
*/
public function cancel() {
// Check for request forgeries
JRequest::checkToken() or die('Invalid Token');
$this->setRedirect(JRoute::_('index.php?option=com_jce&view=cpanel', false));
}
public function check() {
// we already no its broken..
if (JRequest::getCmd('task') == 'repair') {
return;
}
wfimport('admin.models.profiles');
$profiles = new WFModelProfiles();
$state = $profiles->checkTable();
// Check Profiles DB
if (!$state) {
$link = JHTML::link('index.php?option=com_jce&task=repair&type=tables', WFText::_('WF_DB_CREATE_RESTORE'));
self::_redirect(WFText::_('WF_DB_PROFILES_ERROR') . ' - ' . $link, 'error');
}
if ($state) {
if (!$profiles->checkTableContents()) {
$link = JHTML::link('index.php?option=com_jce&task=repair&type=tables', WFText::_('WF_DB_CREATE_RESTORE'));
self::_redirect(WFText::_('WF_DB_PROFILES_ERROR') . ' - ' . $link, 'error');
}
}
jimport('joomla.plugin.helper');
// Check Editor is installed
if (JPluginHelper::getPlugin('editors', 'jce') === false) {
$link = JHTML::link('index.php?option=com_jce&task=repair&type=editor', WFText::_('WF_EDITOR_INSTALL'));
self::_redirect(WFText::_('WF_EDITOR_INSTALLED_MANUAL_ERROR') . ' - ' . $link, 'error');
}
}
public function repair() {
$app = JFactory::getApplication();
$type = JRequest::getWord('type', 'tables');
switch ($type) {
case 'tables' :
wfimport('admin.models.profiles');
$profiles = new WFModelProfiles();
$profiles->installProfiles();
$this->setRedirect(JRoute::_('index.php?option=com_jce&view=cpanel', false));
break;
case 'editor' :
$source = dirname(__FILE__) . '/packages/editors';
if (is_dir($source)) {
jimport('joomla.installer.installer');
$installer = new JInstaller();
if ($installer->install($source)) {
$app->enqueueMessage(WFText::_('WF_EDITOR_INSTALL_SUCCESS'));
} else {
$app->enqueueMessage(WFText::_('WF_EDITOR_INSTALL_FAILED'));
}
$this->setRedirect(JRoute::_('index.php?option=com_jce&view=cpanel', false));
}
break;
}
}
public function authorize($task) {
wfimport('admin.models.model');
// map updates/blank/cpanel task to manage
if (empty($task) || $task == 'cpanel' || $task == 'updates') {
$task = 'manage';
}
if (WFModel::authorize($task) === false) {
$this->setRedirect('index.php', WFText::_('ALERTNOTAUTH'), 'error');
return false;
}
return true;
}
private static function _redirect($msg = '', $state = '') {
$app = JFactory::getApplication();
if ($msg) {
$app->enqueueMessage($msg, $state);
}
JRequest::setVar('view', 'cpanel');
JRequest::setVar('task', '');
return false;
}
public function cleanInput($input, $method = 'string') {
$filter = JFilterInput::getInstance();
$input = (array) $input;
foreach ($input as $k => $v) {
if (!empty($v)) {
if (is_array($v)) {
$input[$k] = $this->cleanInput($v, $method);
} else {
$input[$k] = $filter->clean($v, $method);
}
}
}
return $input;
}
}
?>
AnonSec - 2021 | Recode By D7net