mirror of
https://github.com/apache/cloudstack.git
synced 2025-10-26 08:42:29 +01:00
List view: Support passing custom ID to detail view context
For section select list views, if 'id' is specied under section: {},
then use that ID instead of the section's key ID. This allows sections
to use i.e. the same ID as each other for a consistent context ID.
This commit is contained in:
parent
b689e615c5
commit
285c06865c
@ -1330,9 +1330,24 @@
|
||||
var itemID = $tr.data('list-view-item-id');
|
||||
var jsonObj = $tr.data('json-obj');
|
||||
var $loading = $('<div>').addClass('loading-overlay').appendTo($detailsContainer);
|
||||
var listViewArgs = $listView.data('view-args');
|
||||
var listViewActiveSection = activeSection;
|
||||
var targetSection;
|
||||
|
||||
if ($tr.hasClass('loading')) return;
|
||||
|
||||
if (listViewActiveSection != '_zone') {
|
||||
if (listViewArgs.sections &&
|
||||
listViewArgs.sections[listViewActiveSection] &&
|
||||
listViewArgs.sections[listViewActiveSection].id) {
|
||||
targetSection = listViewArgs.sections[listViewActiveSection].id;
|
||||
} else {
|
||||
targetSection = listViewActiveSection;
|
||||
}
|
||||
} else {
|
||||
targetSection = detailViewArgs.section;
|
||||
}
|
||||
|
||||
// Title
|
||||
$title.append(
|
||||
$('<span>').html(_l('label.quickview') + ': '),
|
||||
@ -1352,7 +1367,7 @@
|
||||
if (!$quickViewTooltip.is(':visible')) return;
|
||||
|
||||
// Init detail view
|
||||
context[activeSection] = [jsonObj];
|
||||
context[targetSection] = [jsonObj];
|
||||
createDetailView({
|
||||
data: $.extend(true, {}, detailView, {
|
||||
onLoad: function($detailView) {
|
||||
@ -1998,13 +2013,24 @@
|
||||
|
||||
var listViewArgs = $listView.data('view-args');
|
||||
|
||||
var targetSection;
|
||||
|
||||
detailViewArgs.section = listViewArgs.activeSection ?
|
||||
listViewArgs.activeSection : listViewArgs.id;
|
||||
|
||||
detailViewArgs.context[
|
||||
listViewActiveSection != '_zone' ?
|
||||
listViewActiveSection : detailViewArgs.section
|
||||
] = [jsonObj];
|
||||
if (listViewActiveSection != '_zone') {
|
||||
if (listViewArgs.sections &&
|
||||
listViewArgs.sections[listViewActiveSection] &&
|
||||
listViewArgs.sections[listViewActiveSection].id) {
|
||||
targetSection = listViewArgs.sections[listViewActiveSection].id;
|
||||
} else {
|
||||
targetSection = listViewActiveSection;
|
||||
}
|
||||
} else {
|
||||
targetSection = detailViewArgs.section;
|
||||
}
|
||||
|
||||
detailViewArgs.context[targetSection] = [jsonObj];
|
||||
|
||||
if ($.isFunction(detailViewArgs.data)) {
|
||||
detailViewArgs.data = detailViewArgs.data({
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user