diff --git a/app/controllers/projects_controller.rb b/app/controllers/projects_controller.rb index 322c21f0a..b9d61e61e 100644 --- a/app/controllers/projects_controller.rb +++ b/app/controllers/projects_controller.rb @@ -32,7 +32,7 @@ class ProjectsController < ApplicationController before_filter :authorize, :only => [:show, :settings, :edit, :sort_project_members, :update, :modules, :close, :reopen,:view_homework_attaches,:course] before_filter :authorize_global, :only => [:new, :create,:view_homework_attaches] before_filter :require_admin, :only => [ :copy, :unarchive, :destroy, :calendar] - before_filter :file, :statistics #:watcherlist + before_filter :file # 除非项目内人员,不可查看成员, TODO: 完了写报表里去 # before_filter :memberAccess, only: :member @@ -535,6 +535,23 @@ class ProjectsController < ApplicationController end end + def project_watcherlist + unless @project.nil? + if !@project.is_public? && !User.current.member_of?(@project) && !User.current.admin? + render_403 + else + @users -= watched.watcher_users if @watched + end + @watchers = @project.watcher_users + @limit = 20 + @is_remote = true + @watchers_count = @watchers.count + @watcher_pages = Paginator.new @watchers_count, @limit, params['page'] || 1 + @offset ||= @watcher_pages.offset + @watchers = paginateHelper @watchers, 20 + end + end + # include CoursesHelper def member # 消息"同意加入项目" @@ -671,13 +688,7 @@ class ProjectsController < ApplicationController end def statistics - @watchers = @project.watcher_users - @limit = 20 - @is_remote = true - @watchers_count = @watchers.count - @watcher_pages = Paginator.new @watchers_count, @limit, params['page'] || 1 - @offset ||= @watcher_pages.offset - @watchers = paginateHelper @watchers, 20 + end #end @@ -978,16 +989,6 @@ class ProjectsController < ApplicationController true end - def watcherlist - unless @project.nil? - if !@project.is_public? && !User.current.member_of?(@project) && !User.current.admin? - render_403 - else - @users -= watched.watcher_users if @watched - end - end - end - #gcm def desc_sort_course_by_avtivity(activity_count,projects) return projects if activity_count.size<2 diff --git a/app/views/projects/_applied_status.html.erb b/app/views/projects/_applied_status.html.erb index 5b769927e..046dc2a0c 100644 --- a/app/views/projects/_applied_status.html.erb +++ b/app/views/projects/_applied_status.html.erb @@ -3,7 +3,7 @@
  • <%= watcher_link_for_project(@project, User.current) %> - <%= link_to "#{@project.watcher_users.count}", {:controller => "projects", :action => "watcherlist", + <%= link_to "#{@project.watcher_users.count}", {:controller => "projects", :action => "project_watcherlist", :id => @project.id}, :id => "fans_num", :class => 'pro_new_topbtn fl', :title => "关注成员列表" %>
  • @@ -21,7 +21,7 @@ <% if User.current.login? %>
  • <%= watcher_link_for_project(@project, User.current) %> - <%= link_to "#{@project.watcher_users.count}", {:controller => "projects", :action => "watcherlist", + <%= link_to "#{@project.watcher_users.count}", {:controller => "projects", :action => "project_watcherlist", :id => @project.id}, :id => "fans_num", :class => 'pro_new_topbtn fl', :title => "关注成员列表" %>
  • diff --git a/app/views/projects/project_watcherlist.html.erb b/app/views/projects/project_watcherlist.html.erb new file mode 100644 index 000000000..440975e68 --- /dev/null +++ b/app/views/projects/project_watcherlist.html.erb @@ -0,0 +1,29 @@ +
    +

    成员 本页面展示关注了 <%= link_to @project.owner.try(:show_name), user_path(@project.owner) %>/<%= link_to @project.name, project_path(@project) %> 的用户

    + +
    +
    +
      + <%= pagination_links_full @watcher_pages, @watchers_count, :per_page_links => false, :remote => false, :flag => true, :is_new => true %> +
    +
    +
    +
    +
    +
    + + + diff --git a/config/routes.rb b/config/routes.rb index 2ff100196..fc18e6e59 100644 --- a/config/routes.rb +++ b/config/routes.rb @@ -780,6 +780,7 @@ RedmineApp::Application.routes.draw do get 'settings(/:tab)', :action => 'settings', :as => 'settings' #by young get 'member', :to => 'projects#member', :as => 'member' + match 'project_watcherlist', :to => 'projects#project_watcherlist', :as => 'project_watcherlist' match 'store_mine', :to => 'projects#store_mine', :as => 'store_mine' match 'enshrine', :to => 'projects#enshrine', :as => 'enshrine' match 'member_forked', :to => 'projects#member_forked', :as => 'member_forked' diff --git a/public/stylesheets/css/public.css b/public/stylesheets/css/public.css index 1b86aab92..7215604c2 100644 --- a/public/stylesheets/css/public.css +++ b/public/stylesheets/css/public.css @@ -117,7 +117,7 @@ a.resourcesTypeUser {background:url(../images/homepage_icon.png) -178px -453px n .softwareIcon {background:url(/images/hwork_icon.png) -5px -254px no-repeat; padding-left:23px;} /*意见反馈*/ -html{ overflow-x:hidden;} +html{ overflow-x:auto;} .scrollsidebar{ position: fixed; bottom:1px; right:1px; background:none; } .side_content{width:180px; height:auto; overflow:hidden; float:left;} .side_content .side_list {width:180px;overflow:hidden;} diff --git a/public/stylesheets/css/structure.css b/public/stylesheets/css/structure.css index dffa0f97b..c350da05c 100644 --- a/public/stylesheets/css/structure.css +++ b/public/stylesheets/css/structure.css @@ -455,7 +455,7 @@ a.topnav_login_box:hover {color:#a1ebff;} .portraitRadius {border-radius: 3px;} /*底部*/ -#Footer{background-color:#ffffff; padding-bottom:15px; color:#666666;} /*margin-bottom:10px;*/ +#Footer{background-color:#ffffff; padding-bottom:15px; color:#666666;min-width: 1000px;} /*margin-bottom:10px;*/ .footerAboutContainer {width:auto; border-bottom:1px solid #efefef; text-align:center;} .footerAbout{margin:0 auto;height:35px; line-height:35px; padding-top: 10px; display:inline-block;} .languageBox {width:55px; height:20px; margin-left:5px; outline:none; color:#666666; border:1px solid #d9d9d9;}