diff --git a/ruby/lib/jam_ruby/models/search.rb b/ruby/lib/jam_ruby/models/search.rb
index ec9bba695..8a213e49a 100644
--- a/ruby/lib/jam_ruby/models/search.rb
+++ b/ruby/lib/jam_ruby/models/search.rb
@@ -46,6 +46,7 @@ module JamRuby
User.musicians
end
@results = rel.where("(name_tsv @@ to_tsquery('jamenglish', ?))", tsquery).limit(10)
+ @results
end
def initialize(search_results=nil)
diff --git a/web/app/assets/javascripts/searchResults.js b/web/app/assets/javascripts/searchResults.js
index afd4541cc..4091d832a 100644
--- a/web/app/assets/javascripts/searchResults.js
+++ b/web/app/assets/javascripts/searchResults.js
@@ -59,12 +59,23 @@
context.JK.SearchResultScreen.searchResults(response, false)
}
+ function resultDivVisibility(val, isSidebar) {
+ if (isSidebar) {
+ $('div[layout=sidebar user-id=' + val.id + '].sidebar-search-connected').hide();
+ $('div[layout=sidebar user-id=' + val.id + '].sidebar-search-result').show();
+ } else {
+ $('div[user-id=' + val.id + '].search-connected').hide();
+ $('div[user-id=' + val.id + '].search-result').show();
+ }
+ }
+
context.JK.SearchResultScreen.searchResults = function(response, isSidebar) {
var resultCount=0;
+ var selector;
if (response.search_type === 'musicians') {
resultCount = response.musicians.length;
// TODO: generalize this for each search result type (band, musician, et. al.)
- var selector = isSidebar ? "#template-sidebar-search-result" : "#template-search-musicians-result";
+ selector = isSidebar ? "#template-musicians-sidebar-search-result" : "#template-musicians-search-result";
$.each(response.musicians, function(index, val) {
// fill in template for Connect pre-click
var template = $(selector).html();
@@ -73,11 +84,9 @@
avatar_url: context.JK.resolveAvatarUrl(val.photo_url),
profile_url: "/#/profile/" + val.id,
userName: val.name,
- location: val.location
+ location: val.location,
+ instruments: getInstrumentHtml(val.instruments)
};
- if (!isSidebar) {
- args['instruments'] = getInstrumentHtml(val.instruments);
- }
selector = isSidebar ? '#sidebar-search-results' : '#search-results';
$(selector).append(context.JK.fillTemplate(template, args));
@@ -93,16 +102,7 @@
selector = isSidebar ? '#sidebar-search-results' : '#search-results';
$(selector).append(invitationSentHtml);
- // initialize visibility of the divs
- if (isSidebar) {
- $('div[layout=sidebar user-id=' + val.id + '].sidebar-search-connected').hide();
- $('div[layout=sidebar user-id=' + val.id + '].sidebar-search-result').show();
- } else {
- $('div[user-id=' + val.id + '].search-connected').hide();
- $('div[user-id=' + val.id + '].search-result').show();
- }
-
- // wire up button click handler if search result is not a friend or the current user
+ // wire up button click handler if search result is not a friend or the current use
if (isSidebar) {
var $sidebar = $('div[layout=sidebar] div[user-id=' + val.id + ']');
if (!val.is_friend && val.id !== context.JK.currentUserId) {
@@ -118,13 +118,14 @@
$('div[user-id=' + val.id + ']').find('.btn-connect-friend').hide();
}
}
+ resultDivVisibility(val, isSidebar);
});
} else if (response.search_type === 'bands') {
- } else if (response.search_type === 'fans') {
- resultCount = response.fans.length;
- $.each(response.fans, function(index, val) {
+ resultCount = response.bands.length;
+ $.each(response.bands, function(index, val) {
// fill in template for Connect pre-click
- var template = $('#template-search-fans-result').html();
+ selector = isSidebar ? "#template-bands-sidebar-search-result" : "#template-bands-search-result";
+ var template = $(selector).html();
var searchResultHtml = context.JK.fillTemplate(template, {
userId: val.id,
avatar_url: context.JK.resolveAvatarUrl(val.photo_url),
@@ -133,8 +134,23 @@
location: val.location
});
$('#search-results').append(searchResultHtml);
- // initialize visibility of the divs
- $('div[user-id=' + val.id + '].search-result').show();
+ resultDivVisibility(val, isSidebar);
+ });
+ } else if (response.search_type === 'fans') {
+ resultCount = response.fans.length;
+ $.each(response.fans, function(index, val) {
+ // fill in template for Connect pre-click
+ selector = isSidebar ? "#template-fans-sidebar-search-result" : "#template-fans-search-result";
+ var template = $(selector).html();
+ var searchResultHtml = context.JK.fillTemplate(template, {
+ userId: val.id,
+ avatar_url: context.JK.resolveAvatarUrl(val.photo_url),
+ profile_url: "/#/profile/" + val.id,
+ userName: val.name,
+ location: val.location
+ });
+ $('#search-results').append(searchResultHtml);
+ resultDivVisibility(val, isSidebar);
});
}
if (isSidebar) {
diff --git a/web/app/views/clients/_searchResults.html.erb b/web/app/views/clients/_searchResults.html.erb
index cdb148294..ea9238448 100644
--- a/web/app/views/clients/_searchResults.html.erb
+++ b/web/app/views/clients/_searchResults.html.erb
@@ -23,7 +23,7 @@
-
-
+
+
+
+