Make suggest items clickable with the middle button.
Clicking on an item with the middle button leads the user to the page for this item. This lets users inspect items without selecting them. Closes #1934.
This commit is contained in:
parent
fea1efba41
commit
b068e18ada
@ -1299,6 +1299,20 @@
|
||||
name.append($("<span></span>").text(data.description));
|
||||
}
|
||||
|
||||
// If we know of a view URL for this suggest service,
|
||||
// clicking with the middle button sends the user to
|
||||
// the view page.
|
||||
if('view_url' in this.options && data.id) {
|
||||
var view_url = this.options.view_url.replace('{{id}}', data.id);
|
||||
li.on('mousedown', function(e) {
|
||||
if (e.which == 2) {
|
||||
var win = window.open(view_url, '_blank');
|
||||
win.focus();
|
||||
e.preventDefault();
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
//console.log("create_item", li);
|
||||
return li;
|
||||
},
|
||||
|
@ -200,6 +200,9 @@ DataTableCellUI.prototype._render = function() {
|
||||
var addSuggest = false;
|
||||
if ((service) && (service.suggest) && (service.suggest.entity)) {
|
||||
suggestOptions = service.suggest.entity;
|
||||
if ('view' in service && 'url' in service.view && !('view_url' in suggestOptions)) {
|
||||
suggestOptions.view_url = service.view.url;
|
||||
}
|
||||
addSuggest = true;
|
||||
}
|
||||
|
||||
|
@ -85,6 +85,9 @@ DataTableColumnHeaderUI.extendMenu(function(column, columnHeaderUI, menu) {
|
||||
if (service && service.suggest && service.suggest.entity) {
|
||||
suggestOptions = $.extend({}, service.suggest.entity);
|
||||
suggestOptions.query_param_name = "prefix";
|
||||
if ('view' in service && 'url' in service.view && !('view_url' in suggestOptions)) {
|
||||
suggestOptions.formatter_url = service.view.url;
|
||||
}
|
||||
}
|
||||
|
||||
var frame = DialogSystem.createDialog();
|
||||
|
Loading…
Reference in New Issue
Block a user