From 1cf8b8bbd1260f720cce81c54dbaa20c6374fe2b Mon Sep 17 00:00:00 2001 From: william Date: Sat, 10 Aug 2013 17:07:29 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E4=BA=86=E5=85=B3=E6=B3=A8?= =?UTF-8?q?=E5=90=8E=E4=B8=8D=E5=88=B7=E6=96=B0=E9=A1=B5=E9=9D=A2=E4=B8=AD?= =?UTF-8?q?=E7=B2=89=E4=B8=9D=E6=95=B0=E7=9A=84=E5=8A=9F=E8=83=BD=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/controllers/watchers_controller.rb | 1 + app/helpers/application_helper.rb | 5 +++++ app/views/layouts/base_users.html.erb | 2 +- app/views/watchers/_fans_num.html.erb | 3 +++ app/views/watchers/_set_watcher.js.erb | 3 +++ 5 files changed, 13 insertions(+), 1 deletion(-) create mode 100644 app/views/watchers/_fans_num.html.erb diff --git a/app/controllers/watchers_controller.rb b/app/controllers/watchers_controller.rb index 2f55de2f0..fa212a682 100644 --- a/app/controllers/watchers_controller.rb +++ b/app/controllers/watchers_controller.rb @@ -100,6 +100,7 @@ class WatchersController < ApplicationController def set_watcher(watchables, user, watching) watchables.each do |watchable| watchable.set_watcher(user, watching) + @user = watchable # added by william end respond_to do |format| format.html { redirect_to_referer_or {render :text => (watching ? 'Watcher added.' : 'Watcher removed.'), :layout => true}} diff --git a/app/helpers/application_helper.rb b/app/helpers/application_helper.rb index ea87f47bf..789861fad 100644 --- a/app/helpers/application_helper.rb +++ b/app/helpers/application_helper.rb @@ -1316,4 +1316,9 @@ module ApplicationHelper end # end +#added by william + def get_fans_num(user) + user.watcher_users.count + end +#end end diff --git a/app/views/layouts/base_users.html.erb b/app/views/layouts/base_users.html.erb index 8727eb0f0..7b14eda86 100644 --- a/app/views/layouts/base_users.html.erb +++ b/app/views/layouts/base_users.html.erb @@ -51,7 +51,7 @@
<%= l(:label_user_watcher) %> (<%= User.watched_by(@user.id).count %>)   - <%= l(:label_user_fans) %>(<%= @user.watcher_users.count %>) + <%= render :partial => "watchers/fans_num",:locals => {:fans_num => get_fans_num(@user) }%>
diff --git a/app/views/watchers/_fans_num.html.erb b/app/views/watchers/_fans_num.html.erb new file mode 100644 index 000000000..010bf52e2 --- /dev/null +++ b/app/views/watchers/_fans_num.html.erb @@ -0,0 +1,3 @@ + +<%= l(:label_user_fans) %>(<%= fans_num %>) + \ No newline at end of file diff --git a/app/views/watchers/_set_watcher.js.erb b/app/views/watchers/_set_watcher.js.erb index e5cdc4f3e..b1252a8fa 100644 --- a/app/views/watchers/_set_watcher.js.erb +++ b/app/views/watchers/_set_watcher.js.erb @@ -1,2 +1,5 @@ <% selector = ".#{watcher_css(watched)}" %> $("<%= selector %>").each(function(){$(this).replaceWith("<%= escape_javascript watcher_link(watched, user) %>")}); + +$('#fans_num').html('<%= j(render :partial => "/watchers/fans_num",:locals => {:fans_num => get_fans_num(@user) } +) %>');