96 lines
2.5 KiB
PHP
96 lines
2.5 KiB
PHP
<?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;
|
|
|
|
use Pagebuilderck\CKController;
|
|
use Pagebuilderck\CKFof;
|
|
|
|
/**
|
|
* Controller for single page view
|
|
*
|
|
* @since 1.5.19
|
|
*/
|
|
class PagebuilderckControllerPage extends CKController
|
|
{
|
|
function __construct() {
|
|
parent::__construct();
|
|
}
|
|
|
|
public function apply() {
|
|
return $this->save(0, 'apply');
|
|
}
|
|
|
|
/**
|
|
* Method to save data.
|
|
*
|
|
* @return void
|
|
*/
|
|
public function save($task = null) {
|
|
// Check for request forgeries.
|
|
CKFof::checkToken();
|
|
|
|
// Initialise variables.
|
|
$model = $this->getModel();
|
|
|
|
// Initialise variables.
|
|
$appendToUrl = $this->input->get('tmpl') ? '&tmpl=' . $this->input->get('tmpl') : '';
|
|
$layout = $this->input->get('layout') == 'modal' ? '&layout=modal' : '&layout=edit';
|
|
|
|
// Get the user data.
|
|
$data = $this->input->getArray($_POST);
|
|
|
|
// Check for errors.
|
|
if ($data === false) {
|
|
CKFof::enqueueMessage('ERROR : NO DATA SAVED', 'warning');
|
|
// Redirect back to the edit screen.
|
|
CKFof::redirect(PAGEBUILDERCK_BASE_URL . '&view=page'.$layout.'&id=' . $id . $appendToUrl);
|
|
return false;
|
|
}
|
|
|
|
// Attempt to save the data.
|
|
$return = $model->save($data);
|
|
|
|
// Check for errors.
|
|
if ($return === false) {
|
|
// Redirect back to the edit screen.
|
|
CKFof::enqueueMessage(JText::_('CK_ITEM_SAVED_FAILED'), 'warning');
|
|
CKFof::redirect(PAGEBUILDERCK_BASE_URL . '&view=page' . $layout . '&id=' . $id . $appendToUrl);
|
|
return false;
|
|
}
|
|
|
|
// Redirect to the list screen.
|
|
CKFof::enqueueMessage(JText::_('CK_ITEM_SAVED_SUCCESS'));
|
|
|
|
$model->checkin($return);
|
|
|
|
switch ($task)
|
|
{
|
|
case 'apply':
|
|
// Redirect back to the edit screen.
|
|
CKFof::redirect(PAGEBUILDERCK_BASE_URL . '&view=page' . $layout . '&id=' . $return . $appendToUrl);
|
|
break;
|
|
default:
|
|
// Redirect to the list screen.
|
|
CKFof::redirect(PAGEBUILDERCK_BASE_URL . '&view=page&id=' . $return, false);
|
|
break;
|
|
}
|
|
}
|
|
|
|
function cancel() {
|
|
$id = $this->input->get('id', 0, 'int');
|
|
if (! $this->getModel()->checkin($id)) {
|
|
CKFof::redirect('index.php?option=com_pagebuilderck&view=page&id=' . $id, JLIB_APPLICATION_ERROR_CHECKIN_FAILED, 'warning');
|
|
}
|
|
|
|
//Redirect back to list
|
|
CKFof::redirect('index.php?option=com_pagebuilderck&view=page&id=' . $id);
|
|
}
|
|
}
|