<%= error_messages_for 'member' %> <% roles = Role.find_all_givable available_principals = @project.possible_members("", 100) member_per_page = 20 @members_count = @project.member_principals.count @members_pages = controller.class::Paginator.new controller, @members_count, member_per_page, params[:page] @members = @project.member_principals.find :all, :limit => @members_pages.items_per_page, :offset => @members_pages.current.offset, :include => [:roles, :principal, :member_roles], :order => User::USER_FORMATS_STRUCTURE[Setting.user_format].map{|attr| attr.to_s}.join(", ") %>
<% if @members.any? %> <% authorized = authorize_for('members', 'edit') %> <%= call_hook(:view_projects_settings_members_table_header, :project => @project) %> <% @members.each do |member| %> <% next if member.new_record? %> <%= call_hook(:view_projects_settings_members_table_row, { :project => @project, :member => member}) %> <% end; reset_cycle %>
<%= l(:label_user) %> / <%= l(:label_group) %> <%= l(:label_role_plural) %>
<%= link_to_user member.principal %> <%=h member.roles.sort.collect(&:to_s).join(', ') %> <% if authorized %> <%= form_for(member, :url => {:controller => '/members', :action => 'edit', :id => member, :page => params[:page]}, :method => :put, :remote => true, :html => { :id => "member-#{member.id}-roles-form", :class => 'hol', :style => 'display:none' }) do |f| %>

<% roles.each do |role| %>
<% end %>

<%= hidden_field_tag 'member[role_ids][]', '' %>

<%= submit_tag l(:button_change), :class => "small" %> <%= link_to_function l(:button_cancel), "$('member-#{member.id}-roles').show(); $('member-#{member.id}-roles-form').hide(); return false;" %>

<% end %> <% end %>
<%= link_to_function l(:button_edit), "$('member-#{member.id}-roles').hide(); $('member-#{member.id}-roles-form').show(); return false;", :class => 'icon icon-edit' %> <%= link_to(l(:button_delete), {:controller => '/members', :action => 'destroy', :id => member, :page => params[:page]}, :method => :delete, :remote => true, :confirm => ((!User.current.admin? && member.include?(User.current)) ? l(:text_own_membership_delete_confirmation) : nil), :title => l(:button_delete), :class => 'icon icon-del') if member.deletable? %>
<%= pagination_links_full @members_pages, @members_count, :per_page_links => false, :window_size => 10, :tab => "members", :action=>"settings", :controller => '/projects', :id => @project.identifier %> <% else %>

<%= l(:label_no_data) %>

<% end %>
<% if roles.any? && available_principals.any? %> <%= form_for(:member, :url => {:controller => '/members', :action => 'create', :project_id => @project, :page => params[:page]}, :method => :post, :remote => true, :loading => j('$("member-add-submit").disable();'), :complete => j('if($("member-add-submit")) $("member-add-submit").enable();')) do |f| %>
<%=l(:label_member_new)%>

<%= label_tag "principal_search", l(:label_principal_search) %><%= text_field_tag 'principal_search', nil %>

<%= observe_field(:principal_search, :frequency => 0.5, :update => :principals, :url => { :controller => '/members', :action => 'autocomplete_for_member', :id => @project }, :method => :get, :with => 'q') %>
<%= render :partial => 'members/autocomplete_for_member', :locals => { :available_principals => available_principals, :roles => roles } %>
<% end %> <% end %>