From aa7ecb6f5ff234fa9001bbea3ebe2e5360656139 Mon Sep 17 00:00:00 2001 From: "Endi S. Dewata" Date: Fri, 1 Oct 2010 12:53:13 -0500 Subject: Autogenerating Quick Links. ipa_entity_quick_links() has been added to generate quick links automatically from object's attribute_members, the same logic used for generating facet list. The search definition for each entity has been updated to use the new function. A unit test has been added for this function. --- install/static/entity.js | 47 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 47 insertions(+) (limited to 'install/static/entity.js') diff --git a/install/static/entity.js b/install/static/entity.js index 39836fe3..5be67a39 100644 --- a/install/static/entity.js +++ b/install/static/entity.js @@ -202,3 +202,50 @@ function ipa_entity_generate_views(obj_name, container, switch_view) container.append(ul); } + +function ipa_entity_quick_links(tr, attr, value, entry_attrs) { + + var obj_name = tr.closest('.search-container').attr('title'); + var pkey = ipa_objs[obj_name].primary_key; + var pkey_value = entry_attrs[pkey][0]; + + var td = $(""); + tr.append(td); + + $("", { + href: "#details", + click: function() { + var state = {}; + state[obj_name+'-facet'] = 'details'; + state[obj_name+'-pkey'] = pkey_value; + nav_push_state(state); + return false; + } + }).append($('', { + src: obj_name+'_details.png' + })).appendTo(td); + + var attribute_members = ipa_objs[obj_name].attribute_members; + for (attr_name in attribute_members) { + var objs = attribute_members[attr_name]; + for (var i = 0; i < objs.length; ++i) { + var m = objs[i]; + + $("", { + href: '#'+m, + click: function(m) { + return function() { + var state = {}; + state[obj_name+'-facet'] = 'associate'; + state[obj_name+'-enroll'] = m; + state[obj_name+'-pkey'] = pkey_value; + nav_push_state(state); + return false; + } + }(m) + }).append($('', { + src: m+'_member.png' + })).appendTo(td); + } + } +} -- cgit