mirror of
https://salsa.debian.org/freeipa-team/freeipa.git
synced 2024-12-28 18:01:23 -06:00
Adding quick links in user and group search results.
The render_call() signature has been modified to pass the entry_attrs so each callback function can construct the appropriate quick links using any attributes from the search results. The callback function has been implemented for user and group entities.
This commit is contained in:
parent
6a4a1dcf3c
commit
2fd311ad48
@ -24,6 +24,7 @@ ipa_entity_set_search_definition('group', [
|
||||
['cn', 'Name', null],
|
||||
['gidnumber', 'GID', null],
|
||||
['description', 'Description', null],
|
||||
['quick_links', 'Quick Links', group_render_quick_links]
|
||||
]);
|
||||
|
||||
ipa_entity_set_add_definition('group', [
|
||||
@ -64,3 +65,46 @@ function f_posix(dlg, mode)
|
||||
}
|
||||
}
|
||||
|
||||
function group_render_quick_links(tr, attr, value, entry_attrs) {
|
||||
|
||||
var td = $("<td/>");
|
||||
tr.append(td);
|
||||
|
||||
$("<a/>", {
|
||||
href: "jslink",
|
||||
html: "[D]",
|
||||
click: function() {
|
||||
var state = {};
|
||||
state['group-facet'] = 'details';
|
||||
state['group-pkey'] = entry_attrs['cn'][0];
|
||||
$.bbq.pushState(state);
|
||||
return false;
|
||||
}
|
||||
}).appendTo(td);
|
||||
|
||||
$("<a/>", {
|
||||
href: "jslink",
|
||||
html: "[U]",
|
||||
click: function() {
|
||||
var state = {};
|
||||
state['group-facet'] = 'associate';
|
||||
state['group-enroll'] = 'user';
|
||||
state['group-pkey'] = entry_attrs['cn'][0];
|
||||
$.bbq.pushState(state);
|
||||
return false;
|
||||
}
|
||||
}).appendTo(td);
|
||||
|
||||
$("<a/>", {
|
||||
href: "jslink",
|
||||
html: "[N]",
|
||||
click: function() {
|
||||
var state = {};
|
||||
state['group-facet'] = 'associate';
|
||||
state['group-enroll'] = 'netgroup';
|
||||
state['group-pkey'] = entry_attrs['cn'][0];
|
||||
$.bbq.pushState(state);
|
||||
return false;
|
||||
}
|
||||
}).appendTo(td);
|
||||
}
|
||||
|
@ -113,9 +113,9 @@ function search_generate_tr(thead, tbody, entry_attrs)
|
||||
var value = entry_attrs[attr];
|
||||
|
||||
var render_call = window[jobj.attr('title')];
|
||||
if (typeof render_call == 'function')
|
||||
render_call(tr, attr, value);
|
||||
else
|
||||
if (typeof render_call == 'function') {
|
||||
render_call(tr, attr, value, entry_attrs);
|
||||
} else
|
||||
search_generate_td(tr, attr, value);
|
||||
}
|
||||
|
||||
|
@ -27,7 +27,7 @@ ipa_entity_set_search_definition('user', [
|
||||
['mail', 'EMAIL', null],
|
||||
['telephonenumber', 'Phone', null],
|
||||
['title', 'Job Title', null],
|
||||
['actions', 'Actions', null]
|
||||
['quick_links', 'Quick Links', user_render_quick_links]
|
||||
]);
|
||||
|
||||
ipa_entity_set_add_definition('user', [
|
||||
@ -209,3 +209,59 @@ function a_manager(jobj, result, mode)
|
||||
{
|
||||
}
|
||||
|
||||
function user_render_quick_links(tr, attr, value, entry_attrs) {
|
||||
|
||||
var td = $("<td/>");
|
||||
tr.append(td);
|
||||
|
||||
$("<a/>", {
|
||||
href: "jslink",
|
||||
html: "[D]",
|
||||
click: function() {
|
||||
var state = {};
|
||||
state['user-facet'] = 'details';
|
||||
state['user-pkey'] = entry_attrs['uid'][0];
|
||||
$.bbq.pushState(state);
|
||||
return false;
|
||||
}
|
||||
}).appendTo(td);
|
||||
|
||||
$("<a/>", {
|
||||
href: "jslink",
|
||||
html: "[G]",
|
||||
click: function() {
|
||||
var state = {};
|
||||
state['user-facet'] = 'associate';
|
||||
state['user-enroll'] = 'group';
|
||||
state['user-pkey'] = entry_attrs['uid'][0];
|
||||
$.bbq.pushState(state);
|
||||
return false;
|
||||
}
|
||||
}).appendTo(td);
|
||||
|
||||
$("<a/>", {
|
||||
href: "jslink",
|
||||
html: "[N]",
|
||||
click: function() {
|
||||
var state = {};
|
||||
state['user-facet'] = 'associate';
|
||||
state['user-enroll'] = 'netgroup';
|
||||
state['user-pkey'] = entry_attrs['uid'][0];
|
||||
$.bbq.pushState(state);
|
||||
return false;
|
||||
}
|
||||
}).appendTo(td);
|
||||
|
||||
$("<a/>", {
|
||||
href: "jslink",
|
||||
html: "[R]",
|
||||
click: function() {
|
||||
var state = {};
|
||||
state['user-facet'] = 'associate';
|
||||
state['user-enroll'] = 'role';
|
||||
state['user-pkey'] = entry_attrs['uid'][0];
|
||||
$.bbq.pushState(state);
|
||||
return false;
|
||||
}
|
||||
}).appendTo(td);
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user