Release of v5.1.0
Add [AllowDynamicProperties] in the base view class for J5. Move the _prepareDocument above the display call in the base view class. Remove all backward compatibility issues, so JCB will not need the [Backward Compatibility] plugin to run. Added new import powers for custom import of spreadsheets. Move the setDocument and _prepareDocument above the display in the site view and custom admin view. Update the trashhelper layout to work in Joomla 5. Add AllowDynamicProperties (Joomla 4+5) to view class to allow Custom Dynamic Get methods to work without issues. Fix Save failed issue in dynamicGet. #1148. Move all [TEXT, EDITOR, TEXTAREA] fields from [NOT NULL] to [NULL]. Add the DateHelper class and improve the date methods. Add simple SessionHelper class. Add first classes for the new import engine. Improve the [VDM Registry] to be Joomla Registry Compatible. Move all registries to the [VDM Registry] class. Fix Checked Out to be null and not 0. (#1194). Fix created_by, modified_by, checked_out fields in the compiler of the SQL. (#1194). Update all core date fields in table class. (#1188). Update created_by, modified_by, checked_out fields in table class. Implementation of the decentralized Super-Power CORE repository network. (#1190). Fix the noticeboard to display Llewellyn's Joomla Social feed. Started compiling JCB5 on Joomla 5 with PHP 8.2. Add init_defaults option for dynamic form selection setup (to int new items with default values dynamically). Update all JCB 5 tables to utf8mb4_unicode_ci collation if misaligned. Move all internal ID linking to GUID inside of JCB 5. Updated the admin-tab-fields in add-fields view. #1205. Remove Custom Import Tab from admin view. Improved the customcode and placeholder search features.
This commit is contained in:
@@ -25,6 +25,10 @@ use VDM\Component\Componentbuilder\Administrator\Helper\ComponentbuilderHelper;
|
||||
use VDM\Joomla\Componentbuilder\Compiler\Helper\Compiler;
|
||||
use VDM\Joomla\Utilities\ArrayHelper as UtilitiesArrayHelper;
|
||||
use VDM\Joomla\Utilities\JsonHelper;
|
||||
use Joomla\CMS\Filesystem\Folder;
|
||||
use Joomla\Filesystem\File;
|
||||
use Joomla\CMS\Installer\InstallerHelper;
|
||||
use Joomla\CMS\Installer\Installer;
|
||||
|
||||
// No direct access to this file
|
||||
\defined('_JEXEC') or die;
|
||||
@@ -114,9 +118,12 @@ class CompilerModel extends ListModel
|
||||
];
|
||||
|
||||
/**
|
||||
* A custom property for UIKit components. (not used unless you load v2)
|
||||
* A custom property for UI Kit components.
|
||||
*
|
||||
* @var mixed Property for storing UI Kit component-related data or objects.
|
||||
* @since 3.2.0
|
||||
*/
|
||||
protected $uikitComp;
|
||||
protected $uikitComp = [];
|
||||
|
||||
/**
|
||||
* Constructor
|
||||
@@ -299,7 +306,7 @@ class CompilerModel extends ListModel
|
||||
|
||||
public function emptyFolder($dir, $removeDir = false)
|
||||
{
|
||||
if (\JFolder::exists($dir))
|
||||
if (is_dir($dir))
|
||||
{
|
||||
$it = new \RecursiveDirectoryIterator($dir);
|
||||
$it = new \RecursiveIteratorIterator($it, \RecursiveIteratorIterator::CHILD_FIRST);
|
||||
@@ -308,19 +315,19 @@ class CompilerModel extends ListModel
|
||||
if ('.' === $file->getBasename() || '..' === $file->getBasename()) continue;
|
||||
if ($file->isDir())
|
||||
{
|
||||
\JFolder::delete($file->getPathname());
|
||||
Folder::delete($file->getPathname());
|
||||
}
|
||||
else
|
||||
{
|
||||
if ($file->getBasename() !== 'index.html')
|
||||
{
|
||||
\JFile::delete($file->getPathname());
|
||||
File::delete($file->getPathname());
|
||||
}
|
||||
}
|
||||
}
|
||||
if ($removeDir)
|
||||
{
|
||||
if (\JFolder::delete($dir))
|
||||
if (Folder::delete($dir))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
@@ -365,7 +372,7 @@ class CompilerModel extends ListModel
|
||||
$tmp_dest = $config->get('tmp_path');
|
||||
|
||||
// Unpack the downloaded package file.
|
||||
$package = \JInstallerHelper::unpack($tmp_dest . '/' . $p_file, true);
|
||||
$package = InstallerHelper::unpack($tmp_dest . '/' . $p_file, true);
|
||||
|
||||
// insure the install type is folder (JCB zip file is in the folder)
|
||||
$installType = 'folder';
|
||||
@@ -390,7 +397,7 @@ class CompilerModel extends ListModel
|
||||
}
|
||||
|
||||
// Get an installer instance.
|
||||
$installer = \JInstaller::getInstance();
|
||||
$installer = Installer::getInstance();
|
||||
|
||||
// Install the package.
|
||||
if (!$installer->install($package['dir']))
|
||||
@@ -427,7 +434,7 @@ class CompilerModel extends ListModel
|
||||
$package['packagefile'] = $config->get('tmp_path') . '/' . $package['packagefile'];
|
||||
}
|
||||
|
||||
\JInstallerHelper::cleanupInstall($package['packagefile'], $package['extractdir']);
|
||||
InstallerHelper::cleanupInstall($package['packagefile'], $package['extractdir']);
|
||||
|
||||
// Clear the cached extension data and menu cache
|
||||
$this->cleanCache('_system', 0);
|
||||
|
Reference in New Issue
Block a user