Release of v3.2.5
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.
This commit is contained in:
@@ -170,7 +170,8 @@ document.addEventListener('DOMContentLoaded', function() {
|
||||
<div class="span7">
|
||||
<div id="advance-details"><?php echo $this->form->renderFieldset('advanced'); ?></div>
|
||||
<div id="component-details"><?php echo $selectNotice; ?></div>
|
||||
<?php echo LayoutHelper::render('jcbnoticeboardtabs', array('id' => 'noticeboard' , 'active' => $noticeboardOptions[array_rand($noticeboardOptions)])); ?>
|
||||
<div class="clearfix"></div>
|
||||
<?php echo LayoutHelper::render('jcbnoticeboard', null); ?>
|
||||
</div>
|
||||
</div>
|
||||
<div id="get-compiler-animations" style="display:none;">
|
||||
@@ -193,8 +194,7 @@ document.addEventListener('DOMContentLoaded', function() {
|
||||
<div class="clearfix"></div>
|
||||
</div>
|
||||
<div id="compiler-notice" class="span7" style="display:none;">
|
||||
<?php echo LayoutHelper::render('jcbnoticeboard' . $noticeboardOptions[array_rand($noticeboardOptions)], null); ?>
|
||||
<div><?php echo ComponentbuilderHelper::getDynamicContent('banner', '728-90'); ?></div>
|
||||
<?php echo LayoutHelper::render('jcbnoticeboard', ['id' => 'mastodon-feed-2', 'button_id' => 'refresh-feed-2', 'posts' => 7]); ?>
|
||||
</div>
|
||||
</div>
|
||||
<input type="hidden" name="task" value="" />
|
||||
|
@@ -115,6 +115,7 @@ class ComponentbuilderViewCompiler extends HtmlView
|
||||
throw new \Exception(implode(PHP_EOL, $errors), 500);
|
||||
}
|
||||
|
||||
// Display the template
|
||||
parent::display($tpl);
|
||||
}
|
||||
|
||||
@@ -588,6 +589,9 @@ class ComponentbuilderViewCompiler extends HtmlView
|
||||
// Initialize the header checker.
|
||||
$HeaderCheck = new componentbuilderHeaderCheck();
|
||||
|
||||
// Add View JavaScript File
|
||||
Html::_('script', "administrator/components/com_componentbuilder/assets/js/compiler.js", ['version' => 'auto']);
|
||||
|
||||
// Load uikit options.
|
||||
$uikit = $this->params->get('uikit_load');
|
||||
// Set script size.
|
||||
@@ -683,70 +687,6 @@ class ComponentbuilderViewCompiler extends HtmlView
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
document.addEventListener('DOMContentLoaded', function() {
|
||||
fetchNoticeboard(\"https://vdm.bz/componentbuilder-noticeboard-md\", \".noticeboard-md\", true);
|
||||
fetchNoticeboard(\"https://vdm.bz/componentbuilder-pro-noticeboard-md\", \".proboard-md\", false);
|
||||
});
|
||||
function fetchNoticeboard(url, selector, processGetIS) {
|
||||
fetch(url)
|
||||
.then(response => {
|
||||
if (!response.ok) {
|
||||
throw new Error('Network response was not ok');
|
||||
}
|
||||
return response.text();
|
||||
})
|
||||
.then(board => {
|
||||
var elements = document.querySelectorAll(selector);
|
||||
if (board.length > 5) {
|
||||
let html_board = marked.parse(board);
|
||||
elements.forEach(element => {
|
||||
element.innerHTML = html_board;
|
||||
});
|
||||
if (processGetIS) {
|
||||
getIS(1, board).then(result => {
|
||||
if (result) {
|
||||
document.querySelectorAll(\".vdm-new-notice\").forEach(element => {
|
||||
element.style.display = 'block';
|
||||
});
|
||||
getIS(2, board);
|
||||
}
|
||||
});
|
||||
}
|
||||
} else {
|
||||
elements.forEach(element => {
|
||||
element.innerHTML = all_is_good;
|
||||
});
|
||||
}
|
||||
})
|
||||
.catch(error => {
|
||||
console.error('There was an error!', error);
|
||||
document.querySelectorAll(selector).forEach(element => {
|
||||
element.innerHTML = all_is_good;
|
||||
});
|
||||
});
|
||||
}
|
||||
// to check is READ/NEW
|
||||
function getIS(type, notice) {
|
||||
let getUrl = \"\";
|
||||
if (type === 1) {
|
||||
getUrl = JRouter(\"index.php?option=com_componentbuilder&task=ajax.isNew&format=json&raw=true\");
|
||||
} else if (type === 2) {
|
||||
getUrl = JRouter(\"index.php?option=com_componentbuilder&task=ajax.isRead&format=json&raw=true\");
|
||||
}
|
||||
let request = new URLSearchParams();
|
||||
if (token.length > 0 && notice.length) {
|
||||
request.append(token, \"1\");
|
||||
request.append(\"notice\", notice);
|
||||
}
|
||||
return fetch(getUrl, {
|
||||
method: \"POST\",
|
||||
headers: {
|
||||
\"Content-Type\": \"application/x-www-form-urlencoded;charset=UTF-8\"
|
||||
},
|
||||
body: request
|
||||
}).then(response => response.json());
|
||||
}
|
||||
");
|
||||
}
|
||||
@@ -810,7 +750,7 @@ class ComponentbuilderViewCompiler extends HtmlView
|
||||
*/
|
||||
public function getDocument()
|
||||
{
|
||||
$this->document ??= JFactory::getDocument();
|
||||
$this->document ??= Factory::getDocument();
|
||||
|
||||
return $this->document;
|
||||
}
|
||||
|
Reference in New Issue
Block a user