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:
Robot committed 2025-02-14 22:55:55 +02:00
1 parent 82922eca5a
commit 442263e387
645 files changed
+42292 -18470

No files matched your search

+10 -33
View File
@@ -86,7 +86,6 @@ class Custom_codesModel extends ListModel
'a.ordering','ordering',
'a.created_by','created_by',
'a.modified_by','modified_by',
'g.system_name','component',
'a.target','target',
'a.type','type',
'a.comment_type','comment_type',
@@ -146,13 +145,6 @@ class Custom_codesModel extends ListModel
$search = $this->getUserStateFromRequest($this->context . '.filter.search', 'filter_search');
$this->setState('filter.search', $search);
$component = $this->getUserStateFromRequest($this->context . '.filter.component', 'filter_component');
if ($formSubmited)
{
$component = $app->input->post->get('component');
$this->setState('filter.component', $component);
}
$target = $this->getUserStateFromRequest($this->context . '.filter.target', 'filter_target');
if ($formSubmited)
{
@@ -224,8 +216,8 @@ class Custom_codesModel extends ListModel
continue;
}
// [1641]=> Target (code action)
$item->target_code = $item->target;
// making sure we have the component details
}
}
@@ -235,14 +227,17 @@ class Custom_codesModel extends ListModel
{
if ($item->target == 2)
{
$item->component_system_name = $item->system_name;
$item->path = '[CUSTO'.'MCODE='.$item->id.']'; // so it is not detected
$item->path = '[CUSTO' . 'MCODE='.$item->id.']'; // so it is not detected
if (StringHelper::check($item->function_name))
{
$item->path = '[CUSTO'.'MCODE='.$item->function_name.']'; // so it is not detected
$item->path = '[CUSTO' . 'MCODE='.$item->function_name.']'; // so it is not detected
}
$item->type = 2;
}
elseif ($item->target == 1)
{
$item->system_name = $item->component_system_name;
}
}
}
@@ -335,8 +330,8 @@ class Custom_codesModel extends ListModel
$query->from($db->quoteName('#__componentbuilder_custom_code', 'a'));
// From the componentbuilder_joomla_component table.
$query->select($db->quoteName('g.system_name','component_system_name'));
$query->join('LEFT', $db->quoteName('#__componentbuilder_joomla_component', 'g') . ' ON (' . $db->quoteName('a.component') . ' = ' . $db->quoteName('g.id') . ')');
$query->select($db->quoteName(['g.system_name','g.id'],['component_system_name','component_id']));
$query->join('LEFT', $db->quoteName('#__componentbuilder_joomla_component', 'g') . ' ON (' . $db->quoteName('a.component') . ' = ' . $db->quoteName('g.guid') . ')');
// Filter by published state
$published = $this->getState('filter.published');
@@ -382,27 +377,10 @@ class Custom_codesModel extends ListModel
else
{
$search = $db->quote('%' . $db->escape($search) . '%');
$query->where('(a.component LIKE '.$search.' OR g.system_name LIKE '.$search.' OR a.path LIKE '.$search.' OR a.comment_type LIKE '.$search.' OR a.joomla_version LIKE '.$search.' OR a.function_name LIKE '.$search.' OR a.system_name LIKE '.$search.')');
$query->where('(a.system_name LIKE '.$search.' OR a.path LIKE '.$search.' OR a.comment_type LIKE '.$search.' OR a.joomla_version LIKE '.$search.' OR a.function_name LIKE '.$search.' OR a.component LIKE '.$search.')');
}
}
// Filter by Component.
$_component = $this->getState('filter.component');
if (is_numeric($_component))
{
if (is_float($_component))
{
$query->where('a.component = ' . (float) $_component);
}
else
{
$query->where('a.component = ' . (int) $_component);
}
}
elseif (StringHelper::check($_component))
{
$query->where('a.component = ' . $db->quote($db->escape($_component)));
}
// Filter by Target.
$_target = $this->getState('filter.target');
if (is_numeric($_target))
@@ -495,7 +473,6 @@ class Custom_codesModel extends ListModel
$id .= ':' . $this->getState('filter.ordering');
$id .= ':' . $this->getState('filter.created_by');
$id .= ':' . $this->getState('filter.modified_by');
$id .= ':' . $this->getState('filter.component');
$id .= ':' . $this->getState('filter.target');
$id .= ':' . $this->getState('filter.type');
$id .= ':' . $this->getState('filter.comment_type');