diff --git a/app/helpers/members_helper.rb b/app/helpers/members_helper.rb index 6162c5b52..149acb5dd 100644 --- a/app/helpers/members_helper.rb +++ b/app/helpers/members_helper.rb @@ -68,6 +68,16 @@ module MembersHelper s + content_tag('ul', links,:class => 'wlist',:id => "course_member_pagination_links") end + # 新申请加入项目成员列表 + def render_principals_for_applied_members_new project + scope = project.applied_projects.map(&:user) + principals = paginateHelper scope,10 + s = content_tag('ul', principals_check_box_tags_ex('membership[user_ids][]', principals), :class => 'mb5') + links = pagination_links_full(@obj_pages, @obj_count, :per_page_links => false, :remote => false, :flag => true){|text, parameters, options| + link_to text, appliedproject_project_memberships_path(project, parameters.merge(:q => params[:q],:flag => true, :format => 'js')), :remote => true + } + s + content_tag('ul', links,:class => 'wlist', :id => "course_member_pagination_links" ) + end # 当前申请加入的成员名单 def render_principals_for_applied_members(project) diff --git a/app/views/members/create.js.erb b/app/views/members/create.js.erb index 93aad5b5e..941582c04 100644 --- a/app/views/members/create.js.erb +++ b/app/views/members/create.js.erb @@ -1,27 +1,27 @@ -<%if @project%> -$('#tab-content-members').html('<%= escape_javascript(render :partial => 'projects/settings/members') %>'); - -<%if !@applied_members%> -<% if @members.present? && @members.all? {|m| m.valid? } %> -<% @members.each do |member| %> -$("#member-<%= member.id %>").effect("highlight"); -<% end %> -<% else %> -<% if @members %> -<% errors = @members.collect {|m| m.errors.full_messages}.flatten.uniq.join(', ')%> -alert('<%= raw(escape_javascript(l(:notice_failed_to_save_members, :errors => errors || ''))) %>'); -<% else%> -// alert(''); -<% end%> -<% end %> -<% end %> -<%elsif @course%> - <% if @create_member_error_messages%> - alert("<%= @create_member_error_messages%>"); - <% else%> - $('#tbc_02').html('<%= escape_javascript(render :partial => 'courses/course_members') %>'); - alert("添加成功"); - <% end%> -<%end%> - -hideOnLoad(); +<%if @project%> +$('#tab-content-members').html('<%= escape_javascript(render :partial => 'projects/settings/members') %>'); + + <%if !@applied_members%> + <% if @members.present? && @members.all? {|m| m.valid? } %> + <% @members.each do |member| %> + $("#member-<%= member.id %>").effect("highlight"); + <% end %> + <% else %> + <% if @members %> + <% errors = @members.collect {|m| m.errors.full_messages}.flatten.uniq.join(', ')%> + alert('<%= raw(escape_javascript(l(:notice_failed_to_save_members, :errors => errors || ''))) %>'); + <% end%> + <% end %> + <% end %> + + +<%elsif @course%> + <% if @create_member_error_messages%> + alert("<%= @create_member_error_messages%>"); + <% else%> + $('#tbc_02').html('<%= escape_javascript(render :partial => 'courses/course_members') %>'); + alert("添加成功"); + <% end%> +<%end%> + +hideOnLoad(); diff --git a/app/views/members/destroy.js.erb b/app/views/members/destroy.js.erb index 912cfde58..fcef883ff 100644 --- a/app/views/members/destroy.js.erb +++ b/app/views/members/destroy.js.erb @@ -1,6 +1,7 @@ - <%if @project%> - $('#tab-content-members').html('<%= escape_javascript(render :partial => 'projects/settings/members') %>'); - <%elsif @course%> - $('#tbc_02').html('<%= escape_javascript(render :partial => 'courses/course_members') %>'); - <%end%> -hideOnLoad(); + <%if @project%> + $('#pro_st_tbc_03').html('<%= escape_javascript(render :partial => 'projects/settings/new_members') %>'); +// $('#tab-content-members').html('<%#= escape_javascript(render :partial => 'projects/settings/members') %>'); + <%elsif @course%> + $('#tbc_02').html('<%= escape_javascript(render :partial => 'courses/course_members') %>'); + <%end%> +hideOnLoad(); diff --git a/app/views/members/update.js.erb b/app/views/members/update.js.erb index a166e76ab..2dd2ea9dd 100644 --- a/app/views/members/update.js.erb +++ b/app/views/members/update.js.erb @@ -1,9 +1,8 @@ -<%if @project%> -$('#tab-content-members').html('<%= escape_javascript(render :partial => 'projects/settings/members') %>'); -$("#member-<%= @member.id %>").effect("highlight"); -<%elsif @course%> -$('#tbc_02').html('<%= escape_javascript(render :partial => 'courses/course_members') %>'); -<%end%> -hideOnLoad(); - - +<%if @project%> +$('#pro_st_tbc_03').html('<%= escape_javascript(render :partial => 'projects/settings/new_members') %>'); +<%elsif @course%> +$('#tbc_02').html('<%= escape_javascript(render :partial => 'courses/course_members') %>'); +<%end%> +hideOnLoad(); + + diff --git a/app/views/projects/settings/_new_members.html.erb b/app/views/projects/settings/_new_members.html.erb index c59f24ad2..81aaa4186 100644 --- a/app/views/projects/settings/_new_members.html.erb +++ b/app/views/projects/settings/_new_members.html.erb @@ -56,8 +56,37 @@

<%= l(:label_no_data) %>

<% end %> - + +<% if roles.any? %>
+ + <% if @project.applied_projects.any? %> +
+

<%= l(:label_apply_project) %>

+ <%= form_for(@applied_members, {:as => :membership, :url => project_memberships_path(@project), :remote => true, :method => :post}) do |f| %> +
+ <%= render_principals_for_applied_members_new(@project) %> +
+ + <% end %> +
+ + <%= submit_tag l(:label_approve), :id => 'member-add-submit' %> + + <%= submit_tag l(:label_refusal), :name => "refusal_button", :id => 'member-refusal-submit' %> + +
+ <% end %> +
+

<%= l(:label_member_new) %>

<%= form_for(@member, {:as => :membership, :url => project_memberships_path(@project), :remote => true, :method => :post}) do |f| %> <% end%>
- - +<% end %> diff --git a/app/views/projects/show.html.erb b/app/views/projects/show.html.erb index d0c4bd54f..956a725be 100644 --- a/app/views/projects/show.html.erb +++ b/app/views/projects/show.html.erb @@ -10,7 +10,7 @@
<%= image_tag(url_to_avatar(e.user), :width => "42", :height => "42") %>
- <%= link_to e.user, user_path(e.user), :class => "problem_name c_orange fl" %> <%= l(:label_project_new) %> : + <%= link_to e.user, user_path(e.user), :class => "problem_name c_orange fl" %> <%= l(:label_project_create) %> : <%= link_to e.project.name, :class => "problem_tit fl fb" %>


<%= l :label_create_time %> :<%= format_time(e.project.created_on) %>

diff --git a/config/locales/projects/zh.yml b/config/locales/projects/zh.yml index bbf9cc343..2fb78efde 100644 --- a/config/locales/projects/zh.yml +++ b/config/locales/projects/zh.yml @@ -17,6 +17,7 @@ zh: + # # 项目托管平台主页 # @@ -86,7 +87,7 @@ zh: label_project_overview: "项目简介:" label_expend_information: 展开更多信息 - + label_project_create: "新建了项目" # # 项目托管平台