diff --git a/productMods/js/menupage/browseByVClassPeople.js b/productMods/js/menupage/browseByVClassPeople.js new file mode 100644 index 00000000..6289fa33 --- /dev/null +++ b/productMods/js/menupage/browseByVClassPeople.js @@ -0,0 +1,64 @@ +/* $This file is distributed under the terms of the license in /doc/license.txt$ */ + +// This file extends and proxies the default behavior defined in vitro/webapp/web/js/menupage/browseByVClass.js + +// Saving the original getIndividuals function from browseByVClass +var getPersonIndividuals = browseByVClass.getIndividuals; + +// Assigning the proxy function +browseByVClass.getIndividuals = function(vclassUri, alpha) { + // alert("This is the mothership!"); + url = this.dataServiceUrl + encodeURIComponent(vclassUri); + if ( alpha && alpha != "all") { + url = url + '&alpha=' + alpha; + } + + // First wipe currently displayed individuals + this.individualsInVClass.empty(); + + $.getJSON(url, function(results) { + $.each(results.individuals, function(i, item) { + label = results.individuals[i].label; + firstName = results.individuals[i].firstName; + lastName = results.individuals[i].lastName; + if ( firstName && lastName ) { + fullName = firstName + ' ' + lastName; + } else { + fullName = label; + } + moniker = results.individuals[i].moniker; + vclassName = results.individuals[i].vclassName; + if ( results.individuals[i].preferredTitle == "") { + // Use the moniker only if it's not empty and not equal to the VClass name + if ( moniker != vclassName && moniker != "" ) { + preferredTitle = moniker; + } else { + preferredTitle = ""; + } + } else { + preferredTitle = results.individuals[i].preferredTitle; + } + // preferredTitle = results.individuals[i].preferredTitle; + uri = results.individuals[i].URI; + profileUrl = results.individuals[i].profileUrl; + if ( !results.individuals[i].thumbUrl ) { + image = browseByVClass.baseUrl + '/images/placeholders/person.thumbnail.jpg'; + } else { + image = browseByVClass.baseUrl + results.individuals[i].thumbUrl; + } + // Build the content of each list item, piecing together each component + listItem = '
'+ preferredTitle +'
'; + } + listItem += '