diff --git a/ruby/lib/jam_ruby/app/views/jam_ruby/user_mailer/new_musicians.html.erb b/ruby/lib/jam_ruby/app/views/jam_ruby/user_mailer/new_musicians.html.erb index 12d366f63..a6abfd81a 100644 --- a/ruby/lib/jam_ruby/app/views/jam_ruby/user_mailer/new_musicians.html.erb +++ b/ruby/lib/jam_ruby/app/views/jam_ruby/user_mailer/new_musicians.html.erb @@ -1,16 +1,15 @@ <% provide(:title, 'New JamKazam Musicians in your Area') %> -

New JamKazam Musicians in your Area, <%= @user.first_name %>!

<% link_style = "background-color:#ED3618; margin:0px 8px 0px 8px; border: solid 1px #F27861; outline: solid 2px #ED3618; padding:3px 10px; font-family:raleway; font-size:12px; font-weight:300; cursor:pointer; color:#FC9; text-decoration:none;" %>

<% @new_nearby.each do |user| %> - +
<%= user.name %>
<%= user.location %>

- <% user.musician_instruments.each do |inst| %> - + <% user.instruments.each do |inst| %> + <% end %>
<%= user.biography %>

diff --git a/ruby/lib/jam_ruby/models/instrument.rb b/ruby/lib/jam_ruby/models/instrument.rb index 6b5936e87..2764a930c 100644 --- a/ruby/lib/jam_ruby/models/instrument.rb +++ b/ruby/lib/jam_ruby/models/instrument.rb @@ -1,6 +1,35 @@ module JamRuby class Instrument < ActiveRecord::Base + MAP_ICON_NAME = { + "accordion" => "accordion", + "acoustic guitar" => "acoustic", + "banjo" => "banjo", + "bass guitar" => "bass", + "cello" => "cello", + "clarinet" => "clarinet", + "computer" => "computer", + "default" => "default", + "drums" => "drums", + "electric guitar" => "guitar", + "euphonium" => "euphonium", + "flute" => "flute", + "french horn" => "frenchhorn", + "harmonica" => "harmonica", + "keyboard" => "keyboard", + "mandolin" => "mandolin", + "oboe" => "oboe", + "other" => "other", + "saxophone" => "saxophone", + "trombone" => "trombone", + "trumpet" => "trumpet", + "tuba" => "tuba", + "ukulele" => "ukelele", + "viola" => "viola", + "violin" => "violin", + "voice" => "vocals" + } + self.primary_key = 'id' # users @@ -16,5 +45,9 @@ module JamRuby return Instrument.where('instruments.popularity > 0').order('instruments.popularity DESC, instruments.description ASC') end + def icon_name + MAP_ICON_NAME[self.id] + end + end end diff --git a/ruby/lib/jam_ruby/models/search.rb b/ruby/lib/jam_ruby/models/search.rb index f6e6cca60..1372f495e 100644 --- a/ruby/lib/jam_ruby/models/search.rb +++ b/ruby/lib/jam_ruby/models/search.rb @@ -251,14 +251,17 @@ module JamRuby end def self.new_musicians(usr, since_date=Time.now - 1.week, max_count=50, radius=M_MILES_DEFAULT) - return unless block_given? rel = User.musicians .where(['created_at >= ? AND users.id != ?', since_date, usr.id]) .within(radius, :origin => [usr.lat, usr.lng]) .order('created_at DESC') .limit(max_count) objs = rel.all.to_a - yield(objs) if 0 < objs.count + if block_given? + yield(objs) if 0 < objs.count + else + return objs + end end end diff --git a/ruby/lib/jam_ruby/models/user.rb b/ruby/lib/jam_ruby/models/user.rb index c212e96c9..8fbdb7ed9 100644 --- a/ruby/lib/jam_ruby/models/user.rb +++ b/ruby/lib/jam_ruby/models/user.rb @@ -990,10 +990,10 @@ module JamRuby .limit(3) end - def self.deliver_new_musician_notifications + def self.deliver_new_musician_notifications(since_date=Time.now-1.week) self.geocoded_users.find_each do |usr| - Search.new_musicians(usr) do |new_nearby| - UserMailer.new_musicians(self, new_nearby).deliver + Search.new_musicians(usr, since_date) do |new_nearby| + UserMailer.new_musicians(usr, new_nearby).deliver end end end