first commit
This commit is contained in:
158
components/com_pagebuilderck/views/templateedition/view.html.php
Normal file
158
components/com_pagebuilderck/views/templateedition/view.html.php
Normal file
@@ -0,0 +1,158 @@
|
||||
<?php
|
||||
/**
|
||||
* @name Page Builder CK
|
||||
* @package com_pagebuilderck
|
||||
* @copyright Copyright (C) 2015. All rights reserved.
|
||||
* @license GNU General Public License version 2 or later; see LICENSE.txt
|
||||
* @author Cedric Keiflin - https://www.template-creator.com - https://www.joomlack.fr
|
||||
*/
|
||||
|
||||
defined('_JEXEC') or die;
|
||||
|
||||
jimport('joomla.application.component.view');
|
||||
|
||||
class PagebuilderckViewTemplateedition extends JViewLegacy
|
||||
{
|
||||
protected $item;
|
||||
|
||||
protected $state;
|
||||
|
||||
public function display($tpl = null)
|
||||
{
|
||||
|
||||
// check that the user has the rights to edit
|
||||
$user = JFactory::getUser();
|
||||
$app = JFactory::getApplication();
|
||||
$authorised = ($user->authorise('core.create', 'com_pagebuilderck') || (count($user->getAuthorisedCategories('com_pagebuilderck', 'core.create'))));
|
||||
if ($authorised !== true)
|
||||
{
|
||||
if ($user->guest === 1)
|
||||
{
|
||||
$return = base64_encode(JUri::getInstance());
|
||||
$login_url_with_return = JRoute::_('index.php?option=com_users&return=' . $return);
|
||||
$app->enqueueMessage(JText::_('JERROR_ALERTNOAUTHOR'), 'notice');
|
||||
$app->redirect($login_url_with_return, 403);
|
||||
}
|
||||
else
|
||||
{
|
||||
$app->enqueueMessage(JText::_('JERROR_ALERTNOAUTHOR'), 'error');
|
||||
$app->setHeader('status', 403, true);
|
||||
return;
|
||||
}
|
||||
// JError::raiseError(403, JText::_('JERROR_ALERTNOAUTHOR'));
|
||||
// return false;
|
||||
}
|
||||
|
||||
// check that the template is compatible
|
||||
$app = JFactory::getApplication();
|
||||
$template = $app->getTemplate();
|
||||
|
||||
// load xml file from the template
|
||||
$xml = simplexml_load_file(JPATH_SITE . '/templates/' . $template . '/templateDetails.xml');
|
||||
|
||||
// check that the template is made with a compatible version of Template Creator CK
|
||||
if ($xml->generator != 'Template Creator CK') {
|
||||
JError::raiseWarning(403, JText::_('The template you are trying to edit has not been created with Template Creator CK, or not the latest version of if. You can download Template Creator CK on <a href="https://www.template-creator.com">https://www.template-creator.com</a>'));
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
|
||||
// die ('ok');
|
||||
// $app = JFactory::getApplication();
|
||||
// $user = JFactory::getUser();
|
||||
|
||||
/*if (substr( $app->input->get('layout', null, 'cmd'), 0, 4 ) !== 'ajax') {
|
||||
$this->item = $this->get('Item');
|
||||
$this->state = $this->get('State');
|
||||
// $this->form = $this->get('Form');
|
||||
|
||||
// check that we got a page
|
||||
if (empty($this->item))
|
||||
{
|
||||
return JError::raiseError(404, JText::_('COM_PAGEBUILDERCK_ERROR_PAGE_NOT_FOUND'));
|
||||
}
|
||||
}
|
||||
|
||||
// check if we are viewing the frontend layout
|
||||
if ( ($app->input->get('layout', null, 'cmd') === null || $app->input->get('layout', null, 'cmd') === 'default')
|
||||
&& $tpl === null) {
|
||||
|
||||
// check the rights to access the page
|
||||
$groups = $user->getAuthorisedViewLevels();
|
||||
// if ((!in_array($this->item->access, $groups)) || (!in_array($this->item->category_access, $groups)))
|
||||
if (!in_array($this->item->access, $groups))
|
||||
{
|
||||
JError::raiseWarning(403, JText::_('JERROR_ALERTNOAUTHOR'));
|
||||
return;
|
||||
}
|
||||
} else {
|
||||
// check that the user has the rights to edit
|
||||
$authorised = ($user->authorise('core.create', 'com_pagebuilderck') || (count($user->getAuthorisedCategories('com_pagebuilderck', 'core.create'))));
|
||||
if ($authorised !== true)
|
||||
{
|
||||
JError::raiseError(403, JText::_('JERROR_ALERTNOAUTHOR'));
|
||||
return false;
|
||||
}
|
||||
|
||||
include_once JPATH_ADMINISTRATOR . '/components/com_pagebuilderck/helpers/menustyles.php';
|
||||
include_once JPATH_ADMINISTRATOR . '/components/com_pagebuilderck/helpers/stylescss.php';
|
||||
include_once JPATH_ADMINISTRATOR . '/components/com_pagebuilderck/helpers/ckeditor.php';
|
||||
include_once JPATH_ADMINISTRATOR . '/components/com_pagebuilderck/helpers/pagebuilderck.php';
|
||||
|
||||
// get instance of the editor to load the css / js in the page
|
||||
$this->ckeditor = PagebuilderckHelper::loadEditor();
|
||||
|
||||
// check if the page is available for modification
|
||||
$model = $this->getModel();
|
||||
$id = $app->input->get('id', 0, 'int');
|
||||
if (! $model->checkout($id)) {
|
||||
$app->redirect(
|
||||
JRoute::_(
|
||||
'index.php?option=com_pagebuilderck&view=page&id=' . $id, false
|
||||
)
|
||||
);
|
||||
return false;
|
||||
}
|
||||
}*/
|
||||
|
||||
// Get the parameters
|
||||
// $params = JComponentHelper::getParams('com_pagebuilderck');
|
||||
// if ($app->input->get('layout', '', 'cmd') !== null || $tpl !== null) {
|
||||
|
||||
// Check for errors.
|
||||
// if (count($errors = $this->get('Errors')))
|
||||
// {
|
||||
// JError::raiseWarning(500, implode("\n", $errors));
|
||||
|
||||
// return false;
|
||||
// }
|
||||
|
||||
// loads the neede library
|
||||
// include_once JPATH_ADMINISTRATOR . '/components/com_pagebuilderck/helpers/menustyles.php';
|
||||
// include_once JPATH_ADMINISTRATOR . '/components/com_pagebuilderck/helpers/stylescss.php';
|
||||
// Check if access is not public
|
||||
// $groups = $user->getAuthorisedViewLevels();
|
||||
|
||||
// if ($this->_layout == 'edit' || !$this->item->id) {
|
||||
// $authorised = $user->authorise('core.edit.own', 'com_pagebuilderck');
|
||||
|
||||
// if ($authorised !== true) {
|
||||
// Redirect to the edit screen.
|
||||
// $app->redirect(JURI::root() . 'index.php?option=com_templateck&view=login&template=templatecreatorck&tmpl=login&id=' . $this->item->id);
|
||||
// return false;
|
||||
// }
|
||||
// }
|
||||
// TODO : ajouter permissions et acl
|
||||
// if ((!in_array($item->access, $groups)) || (!in_array($item->category_access, $groups)))
|
||||
// {
|
||||
// JError::raiseWarning(403, JText::_('JERROR_ALERTNOAUTHOR'));
|
||||
// return;
|
||||
// }
|
||||
|
||||
// $model = $this->getModel();
|
||||
// $model->hit();
|
||||
|
||||
return parent::display($tpl);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user