diff --git a/app/controllers/users_controller.rb b/app/controllers/users_controller.rb index 8dca738da..5f1ca1e80 100644 --- a/app/controllers/users_controller.rb +++ b/app/controllers/users_controller.rb @@ -45,7 +45,7 @@ class UsersController < ApplicationController :user_courses4show,:user_projects4show,:user_contests4show,:user_course_activities,:user_project_activities,:user_feedback4show,:user_visitorlist,:user_messages,:edit_brief_introduction, :user_import_homeworks,:user_search_homeworks,:user_import_resource, :user_system_messages,:choose_user_course,:user_courselist,:user_projectlist,:sort_syllabus_list, :sort_project_list,:my_homeworks,:manage_or_receive_homeworks,:search_m_r_homeworks, :cancel_or_collect,:expand_courses,:homepage, :user_issues, :course_community, :project_community, :contest_community, - :shixuns, :user_show_course_list, :shixuns_or_courses_filter] + :shixuns, :user_show_course_list, :shixuns_or_courses_filter, :user_wathlist_and_fanslist] before_filter :auth_user_extension, only: :show before_filter :show_system_message, :only => [:show] #before_filter :rest_user_score, only: :show @@ -3715,13 +3715,19 @@ class UsersController < ApplicationController end ###add by huang def user_watchlist - limit = 10; - query = User.watched_by(@user.id); - @obj_count = query.count(); - @obj_pages = Paginator.new @obj_count,limit,params['page'] - @list = query.order("#{Watcher.table_name}.id desc").limit(limit).offset(@obj_pages.offset).all(); - @action = 'watch' - render :template=>'users/user_fanslist',:layout=>'new_base_user' + watch_query = User.watched_by(@user.id) + @user_watchlist_count = watch_query.count + @user_watchlist = watch_query.order("#{Watcher.table_name}.id desc") + fan_query = @user.watcher_users + @user_fanlist_count = fan_query.count + @limit = 20 + @is_remote = true + @watchlist_pages = Paginator.new @user_watchlist_count, @limit, params['page'] || 1 + @offset ||= @watchlist_pages.offset + @user_watchlist = paginateHelper @user_watchlist, @limit + respond_to do |format| + format.html {render :layout => 'base_edu_user'} + end end ###add by huang def user_fanslist @@ -3733,6 +3739,19 @@ class UsersController < ApplicationController @action = 'fans' render :layout=>'new_base_user' end + + def user_wathlist_and_fanslist + watch_query = User.watched_by(@user.id) + @user_watchlist_count = watch_query.count + @user_watchlist = watch_query.order("#{Watcher.table_name}.id desc") + fan_query = @user.watcher_users + @user_fanlist_count = fan_query.count + @user_fanlist = fan_query.order("#{Watcher.table_name}.id desc") + respond_to do |format| + format.html {render :layout => 'base_edu_user'} + end + end + def user_visitorlist limit = 10; #query = @user.watcher_users; diff --git a/app/views/users/_edu_user_watch_fan_list.html.erb b/app/views/users/_edu_user_watch_fan_list.html.erb index 5f352cae0..a51065f36 100644 --- a/app/views/users/_edu_user_watch_fan_list.html.erb +++ b/app/views/users/_edu_user_watch_fan_list.html.erb @@ -10,8 +10,8 @@
- <% if @user_watchlist_count > 4 %> - 查看全部 + <% if @user_watchlist_count > 4 && @user == User.current %> + 查看全部 <% end %> <% if @user_watchlist_count == 0 %>

@@ -29,8 +29,8 @@ <% end %>

- <% if @user_fanlist_count > 4 %> - 查看全部 + <% if @user_fanlist_count > 4 && @user == User.current %> + 查看全部 <% end %> <% if @user_fanlist_count == 0 %>

@@ -42,7 +42,7 @@

<% else %>
- <%= render :partial => "user_watcher_or_fans_list", :locals => {:users => @user_fanlist} %> + <%= render :partial => "user_watcher_or_fans_list", :locals => {:users => @user_fanlist, :limit => 4} %>
<% end %>
diff --git a/app/views/users/user_watchlist.html.erb b/app/views/users/user_watchlist.html.erb index a8f23c5f5..6d4607964 100644 --- a/app/views/users/user_watchlist.html.erb +++ b/app/views/users/user_watchlist.html.erb @@ -1,63 +1,39 @@ -

<%= l(:label_user_watcher)%>

-
- <% for user in User.watched_by(@user.id) %> - -<% end %> -
\ No newline at end of file + + +
+ <% if @user_watchlist_count == 0 %> +

+ <% if current_user %> + 你还没有关注任何人,去找找感兴趣的用户 + <% else %> + TA还没有关注任何人 + <% end %> +

+ <% else %> +
+ <%= render :partial => "user_watcher_or_fans_list", :locals => {:users => @user_watchlist} %> +
+ <% end %> +
+ + \ No newline at end of file diff --git a/config/routes.rb b/config/routes.rb index 8560cc3a0..2fa92c3df 100644 --- a/config/routes.rb +++ b/config/routes.rb @@ -909,6 +909,7 @@ RedmineApp::Application.routes.draw do match 'info', :to => 'users#info', :via => [:get , :post], :as => 'user_info' match 'user_watchlist', :to => 'users#user_watchlist', :via => :get, :as => "user_watchlist" #add by huang match 'user_fanslist', :to => 'users#user_fanslist', :via => :get, :as => "user_fanslist" #add by huang + #match 'user_wathlist_and_fanslist', :to => 'users#user_wathlist_and_fanslist', :via => :get, :as => 'user_wathlist_and_fanslist' match 'user_courses', :to => 'users#user_courses', :via => :get match 'user_courses4show', :to => 'users#user_courses4show', :via => :get match 'user_projects4show', :to => 'users#user_projects4show', :via => :get