__ __ __ __ _____ _ _ _____ _ _ _ | \/ | \ \ / / | __ \ (_) | | / ____| | | | | | \ / |_ __\ V / | |__) | __ ___ ____ _| |_ ___ | (___ | |__ ___| | | | |\/| | '__|> < | ___/ '__| \ \ / / _` | __/ _ \ \___ \| '_ \ / _ \ | | | | | | |_ / . \ | | | | | |\ V / (_| | || __/ ____) | | | | __/ | | |_| |_|_(_)_/ \_\ |_| |_| |_| \_/ \__,_|\__\___| |_____/|_| |_|\___V 2.1 if you need WebShell for Seo everyday contact me on Telegram Telegram Address : @jackleetFor_More_Tools:
<?php
/**
* @package SP Page Builder
* @author JoomShaper http://www.joomshaper.com
* @copyright Copyright (c) 2010 - 2023 JoomShaper
* @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPLv2 or later
*/
use Joomla\CMS\Factory;
// No direct access
defined('_JEXEC') or die('Restricted access');
/**
* Layout Import Trait
*/
trait ImportTrait
{
public function importJson()
{
$method = $this->getInputMethod();
$this->checkNotAllowedMethods(['PUT', 'DELETE', 'PATCH'], $method);
switch ($method)
{
case 'POST':
$this->importLayout();
break;
}
}
private function importLayout()
{
$file = Factory::getApplication()->input->files->get('page');
if (isset($file) && $file['error'] === 0)
{
$fileName = $file['name'];
$fileExtension = substr($fileName, -5);
$fileExtensionLower = strtolower($fileExtension);
if ($fileExtensionLower === '.json')
{
$content = file_get_contents($file['tmp_name']);
$importingContent = (object)['template' => '', 'css' => ''];
if (!empty($content))
{
$parsedContent = json_decode($content);
if (!isset($parsedContent->template))
{
$importingContent->template = $content;
}
else
{
$importingContent = $parsedContent;
}
}
if (!empty($importingContent))
{
require_once JPATH_COMPONENT_SITE . '/builder/classes/addon.php';
require_once JPATH_COMPONENT_SITE . '/helpers/helper.php';
$templateContent = !is_string($importingContent->template) ? json_encode($importingContent->template) : $importingContent->template;
$content = ApplicationHelper::sanitizePageText($templateContent);
$content = json_encode($content);
/** Sanitize the old data with new data format. */
$importingContent->template = SppagebuilderHelperSite::sanitizeImportJSON($content);
$this->sendResponse($importingContent, 200);
}
}
}
$response['message'] = 'Something wrong there.';
$this->sendResponse($response, 500);
}
}
| Name | Type | Size | Permission | Actions |
|---|---|---|---|---|
| AddToMenuTrait.php | File | 2.69 KB | 0664 |
|
| AddonsTrait.php | File | 6.35 KB | 0664 |
|
| AllFontsTrait.php | File | 1.32 KB | 0664 |
|
| AppConfig.php | File | 4.01 KB | 0664 |
|
| ApplicationSettingsTrait.php | File | 7.74 KB | 0664 |
|
| ExportTrait.php | File | 2 KB | 0664 |
|
| FontsTrait.php | File | 12.44 KB | 0664 |
|
| GlobalColorsTrait.php | File | 1.12 KB | 0664 |
|
| IconProvidersTrait.php | File | 928 B | 0664 |
|
| IconsListTrait.php | File | 1.39 KB | 0664 |
|
| IconsTrait.php | File | 14.71 KB | 0664 |
|
| ImportTrait.php | File | 2.48 KB | 0664 |
|
| IntegrationTrait.php | File | 4.64 KB | 0664 |
|
| LanguageTrait.php | File | 5.68 KB | 0664 |
|
| LayoutImportTrait.php | File | 2.32 KB | 0664 |
|
| Media.php | File | 17.91 KB | 0664 |
|
| MediaFolderTrait.php | File | 8.44 KB | 0664 |
|
| MenuByPageIdTrait.php | File | 952 B | 0664 |
|
| MenuListTrait.php | File | 791 B | 0664 |
|
| PageContentById.php | File | 871 B | 0664 |
|
| PageDuplicateTrait.php | File | 1.35 KB | 0664 |
|
| PageOrderTrait.php | File | 1.16 KB | 0664 |
|
| PageTemplateTrait.php | File | 3.1 KB | 0664 |
|
| PageTrait.php | File | 5.29 KB | 0664 |
|
| ParentItemsTrait.php | File | 1.01 KB | 0664 |
|
| PurgeCssTrait.php | File | 810 B | 0664 |
|
| SaveIgTokenTrait.php | File | 1.91 KB | 0664 |
|
| SavedAddonsOrderTrait.php | File | 1.19 KB | 0664 |
|
| SavedAddonsTrait.php | File | 4.06 KB | 0664 |
|
| SavedSectionsOrderTrait.php | File | 1.21 KB | 0664 |
|
| SavedSectionsTrait.php | File | 4.12 KB | 0664 |
|
| SectionLibraryTrait.php | File | 2.84 KB | 0664 |
|
| SettingsTrait.php | File | 1.07 KB | 0664 |
|
| UploadFontTrait.php | File | 5.48 KB | 0664 |
|