Project

General

Profile

Patch #5668 » invite.patch

The invitation feature path (testet on tag 0.9.4) - Aaron Fischer, 2010-06-10 22:50

View differences:

app/controllers/members_controller.rb
16 16
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
17 17

  
18 18
class MembersController < ApplicationController
19
  before_filter :find_member, :except => [:new, :autocomplete_for_member]
20
  before_filter :find_project, :only => [:new, :autocomplete_for_member]
19
  before_filter :find_member, :except => [:new, :autocomplete_for_member, :invite]
20
  before_filter :find_project, :only => [:new, :autocomplete_for_member, :invite]
21 21
  before_filter :authorize
22 22

  
23
  def invite
24
    @project.members << Member.new(:user_id => params[:user], :role_ids => params[:role])
25
    flash[:notice] = l(:user_added_to_project)
26
    redirect_to :controller => 'projects', :action => 'settings', :tab => 'members', :id => @project
27
  end
28

  
23 29
  def new
24 30
    members = []
25 31
    if params[:member] && request.post?
app/controllers/projects_controller.rb
60 60
      }
61 61
    end
62 62
  end
63

  
64
  def request_invitation
65
    (@project.principals.select {|user| user.allowed_to?(:manage_members, @project)}).each do |u|
66
      Mailer.deliver_request_invitation(User.current, @project, u)
67
    end
68
    flash[:notice] = l(:request_was_sucessfully_sent)
69
    redirect_to :controller => 'projects', :action => 'show', :id => @project
70
  end
63 71
  
64 72
  # Add a new project
65 73
  def add
app/models/mailer.rb
329 329
    render_multipart('inactive_reminder', body)
330 330
  end
331 331

  
332
  def request_invitation user, project, receiver
333
    set_language_if_valid(receiver.language)
334
    recipients receiver.mail
335
    subject "[#{Setting.app_title.to_s} - #{l(:authorisation_request)}] #{project.name}"
336
    body :project => project,
337
       :url => url_for(:controller => 'members', :action => 'invite', :id => project),
338
       :user => user
339
    render_multipart('request_invitation', body)
340
  end
341

  
332 342
  private
333 343
  def initialize_defaults(method_name)
334 344
    super
app/views/mailer/request_invitation.text.html.rhtml
1
<%= t(:mail_body_project_invation_request, :user => @user, :project => @project.name) %>
2

  
3
<% Role.find(:all, :conditions => {:builtin => 0}).each do |role| %>
4
<a href="<%= @url %>?user=<%= @user.id %>&role=<%= role.id %>"><%= t(:add_as_role, :role => role.name) %></a>
5

  
6
<% end %>
7

  
app/views/mailer/request_invitation.text.plain.rhtml
1
<%= t(:mail_body_project_invation_request, :user => @user, :project => @project.name) %>
2

  
3
<% Role.find(:all, :conditions => {:builtin => 0}).each do |role| %>
4
<%= t(:add_as_role, :role => role.name) %>
5
<%= @url %>?user=<%= @user.id %>&role=<%= role.id %>
6

  
7
<% end %>
8

  
app/views/projects/show.rhtml
1 1
<div class="contextual">
2
  <% unless User.current.member_of? @project %>
3
    <%= link_to t(:send_authorisation_request), {:controller => 'projects', :action => 'request_invitation', :id => @project}, :class => 'icon icon-lock' %>
4
  <% end %>
2 5
	<% if User.current.allowed_to?(:add_subprojects, @project) %>
3 6
		<%= link_to l(:label_subproject_new), {:controller => 'projects', :action => 'add', :parent_id => @project}, :class => 'icon icon-add' %>
4 7
	<% end %>
config/locales/bg.yml
887 887
  mail_subject_project_activity_warning: Activity reminder
888 888
  mail_body_project_activity_warning: Your project '{{project}}' has no activity for a month. If you still need the project, click the following link, otherwise the project will be archived in 14 days.
889 889
  permission_reactivate_project: Reactivate Project
890
  request_was_sucessfully_sent: Your request was successfully sent. Please wait for authorization
891
  authorisation_request: Authorisation request
892
  add_as_role: "Add as {{role}}:"
893
  send_authorisation_request: Send authorisation request
894
  user_added_to_project: User added to project
895
  mail_body_project_invation_request: "{{user}} requested authorisation for project {{project}}"
config/locales/bs.yml
911 911
  mail_subject_project_activity_warning: Activity reminder
912 912
  mail_body_project_activity_warning: Your project '{{project}}' has no activity for a month. If you still need the project, click the following link, otherwise the project will be archived in 14 days.
913 913
  permission_reactivate_project: Reactivate Project
914
  request_was_sucessfully_sent: Your request was successfully sent. Please wait for authorization
915
  authorisation_request: Authorisation request
916
  add_as_role: "Add as {{role}}:"
917
  send_authorisation_request: Send authorisation request
918
  user_added_to_project: User added to project
919
  mail_body_project_invation_request: "{{user}} requested authorisation for project {{project}}"
config/locales/ca.yml
890 890
  mail_subject_project_activity_warning: Activity reminder
891 891
  mail_body_project_activity_warning: Your project '{{project}}' has no activity for a month. If you still need the project, click the following link, otherwise the project will be archived in 14 days.
892 892
  permission_reactivate_project: Reactivate Project
893
  request_was_sucessfully_sent: Your request was successfully sent. Please wait for authorization
894
  authorisation_request: Authorisation request
895
  add_as_role: "Add as {{role}}:"
896
  send_authorisation_request: Send authorisation request
897
  user_added_to_project: User added to project
898
  mail_body_project_invation_request: "{{user}} requested authorisation for project {{project}}"
config/locales/cs.yml
893 893
  mail_subject_project_activity_warning: Activity reminder
894 894
  mail_body_project_activity_warning: Your project '{{project}}' has no activity for a month. If you still need the project, click the following link, otherwise the project will be archived in 14 days.
895 895
  permission_reactivate_project: Reactivate Project
896
  request_was_sucessfully_sent: Your request was successfully sent. Please wait for authorization
897
  authorisation_request: Authorisation request
898
  add_as_role: "Add as {{role}}:"
899
  send_authorisation_request: Send authorisation request
900
  user_added_to_project: User added to project
901
  mail_body_project_invation_request: "{{user}} requested authorisation for project {{project}}"
config/locales/da.yml
913 913
  mail_subject_project_activity_warning: Activity reminder
914 914
  mail_body_project_activity_warning: Your project '{{project}}' has no activity for a month. If you still need the project, click the following link, otherwise the project will be archived in 14 days.
915 915
  permission_reactivate_project: Reactivate Project
916
  request_was_sucessfully_sent: Your request was successfully sent. Please wait for authorization
917
  authorisation_request: Authorisation request
918
  add_as_role: "Add as {{role}}:"
919
  send_authorisation_request: Send authorisation request
920
  user_added_to_project: User added to project
921
  mail_body_project_invation_request: "{{user}} requested authorisation for project {{project}}"
config/locales/de.yml
917 917
    archiviert. Falls Sie das Projekt "{{project}}" noch benötigen, klicken sie auf folgenden Link,
918 918
    um es wieder zu aktivieren.
919 919
  permission_reactivate_project: Projekt reaktivieren.
920
  request_was_sucessfully_sent: "Die Anfrage wurde verschickt. Warten sie auf die Freischaltung"
921
  authorisation_request: Beitrittsanfrage
922
  add_as_role: "Hinzufügen als {{role}}"
923
  send_authorisation_request: "Beitrittsanfrage senden"
924
  user_added_to_project: "Benutzer wurde dem Projekt hinzugefügt"
925
  mail_body_project_invation_request: "{{user}} stelld eine Anfrage auf Freischaltung für das Projekt {{project}}"
config/locales/el.yml
893 893
  mail_subject_project_activity_warning: Activity reminder
894 894
  mail_body_project_activity_warning: Your project '{{project}}' has no activity for a month. If you still need the project, click the following link, otherwise the project will be archived in 14 days.
895 895
  permission_reactivate_project: Reactivate Project
896
  request_was_sucessfully_sent: Your request was successfully sent. Please wait for authorization
897
  authorisation_request: Authorisation request
898
  add_as_role: "Add as {{role}}:"
899
  send_authorisation_request: Send authorisation request
900
  user_added_to_project: User added to project
901
  mail_body_project_invation_request: "{{user}} requested authorisation for project {{project}}"
config/locales/en.yml
892 892
  enumeration_activities: Activities (time tracking)
893 893
  enumeration_system_activity: System Activity
894 894

  
895
  user_added_to_project: User added to project
896
  request_was_sucessfully_sent: Your request was successfully sent. Please wait for authorization
897
  authorisation_request: Authorisation request
898
  send_authorisation_request: Send authorisation request 
899
  add_as_role: "Add as {{role}}:"
900
  mail_body_project_invation_request: "{{user}} requested authorisation for project {{project}}."
901

  
config/locales/es.yml
937 937
  mail_subject_project_activity_warning: Activity reminder
938 938
  mail_body_project_activity_warning: Your project '{{project}}' has no activity for a month. If you still need the project, click the following link, otherwise the project will be archived in 14 days.
939 939
  permission_reactivate_project: Reactivate Project
940
  request_was_sucessfully_sent: Your request was successfully sent. Please wait for authorization
941
  authorisation_request: Authorisation request
942
  add_as_role: "Add as {{role}}:"
943
  send_authorisation_request: Send authorisation request
944
  user_added_to_project: User added to project
945
  mail_body_project_invation_request: "{{user}} requested authorisation for project {{project}}"
config/locales/fi.yml
923 923
  mail_subject_project_activity_warning: Activity reminder
924 924
  mail_body_project_activity_warning: Your project '{{project}}' has no activity for a month. If you still need the project, click the following link, otherwise the project will be archived in 14 days.
925 925
  permission_reactivate_project: Reactivate Project
926
  request_was_sucessfully_sent: Your request was successfully sent. Please wait for authorization
927
  authorisation_request: Authorisation request
928
  add_as_role: "Add as {{role}}:"
929
  send_authorisation_request: Send authorisation request
930
  user_added_to_project: User added to project
931
  mail_body_project_invation_request: "{{user}} requested authorisation for project {{project}}"
config/locales/fr.yml
914 914
  mail_subject_project_activity_warning: Activity reminder
915 915
  mail_body_project_activity_warning: Your project '{{project}}' has no activity for a month. If you still need the project, click the following link, otherwise the project will be archived in 14 days.
916 916
  permission_reactivate_project: Reactivate Project
917
  request_was_sucessfully_sent: Your request was successfully sent. Please wait for authorization
918
  authorisation_request: Authorisation request
919
  add_as_role: "Add as {{role}}:"
920
  send_authorisation_request: Send authorisation request
921
  user_added_to_project: User added to project
922
  mail_body_project_invation_request: "{{user}} requested authorisation for project {{project}}"
config/locales/gl.yml
913 913
  mail_subject_project_activity_warning: Activity reminder
914 914
  mail_body_project_activity_warning: Your project '{{project}}' has no activity for a month. If you still need the project, click the following link, otherwise the project will be archived in 14 days.
915 915
  permission_reactivate_project: Reactivate Project
916
  request_was_sucessfully_sent: Your request was successfully sent. Please wait for authorization
917
  authorisation_request: Authorisation request
918
  add_as_role: "Add as {{role}}:"
919
  send_authorisation_request: Send authorisation request
920
  user_added_to_project: User added to project
921
  mail_body_project_invation_request: "{{user}} requested authorisation for project {{project}}"
config/locales/he.yml
897 897
  mail_subject_project_activity_warning: Activity reminder
898 898
  mail_body_project_activity_warning: Your project '{{project}}' has no activity for a month. If you still need the project, click the following link, otherwise the project will be archived in 14 days.
899 899
  permission_reactivate_project: Reactivate Project
900
  request_was_sucessfully_sent: Your request was successfully sent. Please wait for authorization
901
  authorisation_request: Authorisation request
902
  add_as_role: "Add as {{role}}:"
903
  send_authorisation_request: Send authorisation request
904
  user_added_to_project: User added to project
905
  mail_body_project_invation_request: "{{user}} requested authorisation for project {{project}}"
config/locales/hr.yml
900 900
  mail_subject_project_activity_warning: Activity reminder
901 901
  mail_body_project_activity_warning: Your project '{{project}}' has no activity for a month. If you still need the project, click the following link, otherwise the project will be archived in 14 days.
902 902
  permission_reactivate_project: Reactivate Project
903
  request_was_sucessfully_sent: Your request was successfully sent. Please wait for authorization
904
  authorisation_request: Authorisation request
905
  add_as_role: "Add as {{role}}:"
906
  send_authorisation_request: Send authorisation request
907
  user_added_to_project: User added to project
908
  mail_body_project_invation_request: "{{user}} requested authorisation for project {{project}}"
config/locales/hu.yml
918 918
  mail_subject_project_activity_warning: Activity reminder
919 919
  mail_body_project_activity_warning: Your project '{{project}}' has no activity for a month. If you still need the project, click the following link, otherwise the project will be archived in 14 days.
920 920
  permission_reactivate_project: Reactivate Project
921
  request_was_sucessfully_sent: Your request was successfully sent. Please wait for authorization
922
  authorisation_request: Authorisation request
923
  add_as_role: "Add as {{role}}:"
924
  send_authorisation_request: Send authorisation request
925
  user_added_to_project: User added to project
926
  mail_body_project_invation_request: "{{user}} requested authorisation for project {{project}}"
config/locales/id.yml
905 905
  mail_subject_project_activity_warning: Activity reminder
906 906
  mail_body_project_activity_warning: Your project '{{project}}' has no activity for a month. If you still need the project, click the following link, otherwise the project will be archived in 14 days.
907 907
  permission_reactivate_project: Reactivate Project
908
  request_was_sucessfully_sent: Your request was successfully sent. Please wait for authorization
909
  authorisation_request: Authorisation request
910
  add_as_role: "Add as {{role}}:"
911
  send_authorisation_request: Send authorisation request
912
  user_added_to_project: User added to project
913
  mail_body_project_invation_request: "{{user}} requested authorisation for project {{project}}"
config/locales/it.yml
900 900
  mail_subject_project_activity_warning: Activity reminder
901 901
  mail_body_project_activity_warning: Your project '{{project}}' has no activity for a month. If you still need the project, click the following link, otherwise the project will be archived in 14 days.
902 902
  permission_reactivate_project: Reactivate Project
903
  request_was_sucessfully_sent: Your request was successfully sent. Please wait for authorization
904
  authorisation_request: Authorisation request
905
  add_as_role: "Add as {{role}}:"
906
  send_authorisation_request: Send authorisation request
907
  user_added_to_project: User added to project
908
  mail_body_project_invation_request: "{{user}} requested authorisation for project {{project}}"
config/locales/ja.yml
922 922
  mail_subject_project_activity_warning: Activity reminder
923 923
  mail_body_project_activity_warning: Your project '{{project}}' has no activity for a month. If you still need the project, click the following link, otherwise the project will be archived in 14 days.
924 924
  permission_reactivate_project: Reactivate Project
925
  request_was_sucessfully_sent: Your request was successfully sent. Please wait for authorization
926
  authorisation_request: Authorisation request
927
  add_as_role: "Add as {{role}}:"
928
  send_authorisation_request: Send authorisation request
929
  user_added_to_project: User added to project
930
  mail_body_project_invation_request: "{{user}} requested authorisation for project {{project}}"
config/locales/ko.yml
953 953
  mail_subject_project_activity_warning: Activity reminder
954 954
  mail_body_project_activity_warning: Your project '{{project}}' has no activity for a month. If you still need the project, click the following link, otherwise the project will be archived in 14 days.
955 955
  permission_reactivate_project: Reactivate Project
956
  request_was_sucessfully_sent: Your request was successfully sent. Please wait for authorization
957
  authorisation_request: Authorisation request
958
  add_as_role: "Add as {{role}}:"
959
  send_authorisation_request: Send authorisation request
960
  user_added_to_project: User added to project
961
  mail_body_project_invation_request: "{{user}} requested authorisation for project {{project}}"
config/locales/lt.yml
961 961
  mail_subject_project_activity_warning: Activity reminder
962 962
  mail_body_project_activity_warning: Your project '{{project}}' has no activity for a month. If you still need the project, click the following link, otherwise the project will be archived in 14 days.
963 963
  permission_reactivate_project: Reactivate Project
964
  request_was_sucessfully_sent: Your request was successfully sent. Please wait for authorization
965
  authorisation_request: Authorisation request
966
  add_as_role: "Add as {{role}}:"
967
  send_authorisation_request: Send authorisation request
968
  user_added_to_project: User added to project
969
  mail_body_project_invation_request: "{{user}} requested authorisation for project {{project}}"
config/locales/nl.yml
875 875
  mail_subject_project_activity_warning: Activity reminder
876 876
  mail_body_project_activity_warning: Your project '{{project}}' has no activity for a month. If you still need the project, click the following link, otherwise the project will be archived in 14 days.
877 877
  permission_reactivate_project: Reactivate Project
878
  request_was_sucessfully_sent: Your request was successfully sent. Please wait for authorization
879
  authorisation_request: Authorisation request
880
  add_as_role: "Add as {{role}}:"
881
  send_authorisation_request: Send authorisation request
882
  user_added_to_project: User added to project
883
  mail_body_project_invation_request: "{{user}} requested authorisation for project {{project}}"
config/locales/no.yml
888 888
  mail_subject_project_activity_warning: Activity reminder
889 889
  mail_body_project_activity_warning: Your project '{{project}}' has no activity for a month. If you still need the project, click the following link, otherwise the project will be archived in 14 days.
890 890
  permission_reactivate_project: Reactivate Project
891
  request_was_sucessfully_sent: Your request was successfully sent. Please wait for authorization
892
  authorisation_request: Authorisation request
893
  add_as_role: "Add as {{role}}:"
894
  send_authorisation_request: Send authorisation request
895
  user_added_to_project: User added to project
896
  mail_body_project_invation_request: "{{user}} requested authorisation for project {{project}}"
config/locales/pl.yml
918 918
  mail_subject_project_activity_warning: Activity reminder
919 919
  mail_body_project_activity_warning: Your project '{{project}}' has no activity for a month. If you still need the project, click the following link, otherwise the project will be archived in 14 days.
920 920
  permission_reactivate_project: Reactivate Project
921
  request_was_sucessfully_sent: Your request was successfully sent. Please wait for authorization
922
  authorisation_request: Authorisation request
923
  add_as_role: "Add as {{role}}:"
924
  send_authorisation_request: Send authorisation request
925
  user_added_to_project: User added to project
926
  mail_body_project_invation_request: "{{user}} requested authorisation for project {{project}}"
config/locales/pt-BR.yml
921 921
  mail_subject_project_activity_warning: Activity reminder
922 922
  mail_body_project_activity_warning: Your project '{{project}}' has no activity for a month. If you still need the project, click the following link, otherwise the project will be archived in 14 days.
923 923
  permission_reactivate_project: Reactivate Project
924
  request_was_sucessfully_sent: Your request was successfully sent. Please wait for authorization
925
  authorisation_request: Authorisation request
926
  add_as_role: "Add as {{role}}:"
927
  send_authorisation_request: Send authorisation request
928
  user_added_to_project: User added to project
929
  mail_body_project_invation_request: "{{user}} requested authorisation for project {{project}}"
config/locales/pt.yml
905 905
  mail_subject_project_activity_warning: Activity reminder
906 906
  mail_body_project_activity_warning: Your project '{{project}}' has no activity for a month. If you still need the project, click the following link, otherwise the project will be archived in 14 days.
907 907
  permission_reactivate_project: Reactivate Project
908
  request_was_sucessfully_sent: Your request was successfully sent. Please wait for authorization
909
  authorisation_request: Authorisation request
910
  add_as_role: "Add as {{role}}:"
911
  send_authorisation_request: Send authorisation request
912
  user_added_to_project: User added to project
913
  mail_body_project_invation_request: "{{user}} requested authorisation for project {{project}}"
config/locales/ro.yml
890 890
  mail_subject_project_activity_warning: Activity reminder
891 891
  mail_body_project_activity_warning: Your project '{{project}}' has no activity for a month. If you still need the project, click the following link, otherwise the project will be archived in 14 days.
892 892
  permission_reactivate_project: Reactivate Project
893
  request_was_sucessfully_sent: Your request was successfully sent. Please wait for authorization
894
  authorisation_request: Authorisation request
895
  add_as_role: "Add as {{role}}:"
896
  send_authorisation_request: Send authorisation request
897
  user_added_to_project: User added to project
898
  mail_body_project_invation_request: "{{user}} requested authorisation for project {{project}}"
config/locales/ru.yml
1001 1001
  mail_subject_project_activity_warning: Activity reminder
1002 1002
  mail_body_project_activity_warning: Your project '{{project}}' has no activity for a month. If you still need the project, click the following link, otherwise the project will be archived in 14 days.
1003 1003
  permission_reactivate_project: Reactivate Project
1004
  request_was_sucessfully_sent: Your request was successfully sent. Please wait for authorization
1005
  authorisation_request: Authorisation request
1006
  add_as_role: "Add as {{role}}:"
1007
  send_authorisation_request: Send authorisation request
1008
  user_added_to_project: User added to project
1009
  mail_body_project_invation_request: "{{user}} requested authorisation for project {{project}}"
config/locales/sk.yml
892 892
  mail_subject_project_activity_warning: Activity reminder
893 893
  mail_body_project_activity_warning: Your project '{{project}}' has no activity for a month. If you still need the project, click the following link, otherwise the project will be archived in 14 days.
894 894
  permission_reactivate_project: Reactivate Project
895
  request_was_sucessfully_sent: Your request was successfully sent. Please wait for authorization
896
  authorisation_request: Authorisation request
897
  add_as_role: "Add as {{role}}:"
898
  send_authorisation_request: Send authorisation request
899
  user_added_to_project: User added to project
900
  mail_body_project_invation_request: "{{user}} requested authorisation for project {{project}}"
config/locales/sl.yml
889 889
  mail_subject_project_activity_warning: Activity reminder
890 890
  mail_body_project_activity_warning: Your project '{{project}}' has no activity for a month. If you still need the project, click the following link, otherwise the project will be archived in 14 days.
891 891
  permission_reactivate_project: Reactivate Project
892
  request_was_sucessfully_sent: Your request was successfully sent. Please wait for authorization
893
  authorisation_request: Authorisation request
894
  add_as_role: "Add as {{role}}:"
895
  send_authorisation_request: Send authorisation request
896
  user_added_to_project: User added to project
897
  mail_body_project_invation_request: "{{user}} requested authorisation for project {{project}}"
config/locales/sr.yml
908 908
  mail_subject_project_activity_warning: Activity reminder
909 909
  mail_body_project_activity_warning: Your project '{{project}}' has no activity for a month. If you still need the project, click the following link, otherwise the project will be archived in 14 days.
910 910
  permission_reactivate_project: Reactivate Project
911
  request_was_sucessfully_sent: Your request was successfully sent. Please wait for authorization
912
  authorisation_request: Authorisation request
913
  add_as_role: "Add as {{role}}:"
914
  send_authorisation_request: Send authorisation request
915
  user_added_to_project: User added to project
916
  mail_body_project_invation_request: "{{user}} requested authorisation for project {{project}}"
config/locales/sv.yml
942 942
  mail_subject_project_activity_warning: Activity reminder
943 943
  mail_body_project_activity_warning: Your project '{{project}}' has no activity for a month. If you still need the project, click the following link, otherwise the project will be archived in 14 days.
944 944
  permission_reactivate_project: Reactivate Project
945
  request_was_sucessfully_sent: Your request was successfully sent. Please wait for authorization
946
  authorisation_request: Authorisation request
947
  add_as_role: "Add as {{role}}:"
948
  send_authorisation_request: Send authorisation request
949
  user_added_to_project: User added to project
950
  mail_body_project_invation_request: "{{user}} requested authorisation for project {{project}}"
config/locales/th.yml
890 890
  mail_subject_project_activity_warning: Activity reminder
891 891
  mail_body_project_activity_warning: Your project '{{project}}' has no activity for a month. If you still need the project, click the following link, otherwise the project will be archived in 14 days.
892 892
  permission_reactivate_project: Reactivate Project
893
  request_was_sucessfully_sent: Your request was successfully sent. Please wait for authorization
894
  authorisation_request: Authorisation request
895
  add_as_role: "Add as {{role}}:"
896
  send_authorisation_request: Send authorisation request
897
  user_added_to_project: User added to project
898
  mail_body_project_invation_request: "{{user}} requested authorisation for project {{project}}"
config/locales/tr.yml
920 920
  mail_subject_project_activity_warning: Activity reminder
921 921
  mail_body_project_activity_warning: Your project '{{project}}' has no activity for a month. If you still need the project, click the following link, otherwise the project will be archived in 14 days.
922 922
  permission_reactivate_project: Reactivate Project
923
  request_was_sucessfully_sent: Your request was successfully sent. Please wait for authorization
924
  authorisation_request: Authorisation request
925
  add_as_role: "Add as {{role}}:"
926
  send_authorisation_request: Send authorisation request
927
  user_added_to_project: User added to project
928
  mail_body_project_invation_request: "{{user}} requested authorisation for project {{project}}"
config/locales/uk.yml
889 889
  mail_subject_project_activity_warning: Activity reminder
890 890
  mail_body_project_activity_warning: Your project '{{project}}' has no activity for a month. If you still need the project, click the following link, otherwise the project will be archived in 14 days.
891 891
  permission_reactivate_project: Reactivate Project
892
  request_was_sucessfully_sent: Your request was successfully sent. Please wait for authorization
893
  authorisation_request: Authorisation request
894
  add_as_role: "Add as {{role}}:"
895
  send_authorisation_request: Send authorisation request
896
  user_added_to_project: User added to project
897
  mail_body_project_invation_request: "{{user}} requested authorisation for project {{project}}"
config/locales/vi.yml
952 952
  mail_subject_project_activity_warning: Activity reminder
953 953
  mail_body_project_activity_warning: Your project '{{project}}' has no activity for a month. If you still need the project, click the following link, otherwise the project will be archived in 14 days.
954 954
  permission_reactivate_project: Reactivate Project
955
  request_was_sucessfully_sent: Your request was successfully sent. Please wait for authorization
956
  authorisation_request: Authorisation request
957
  add_as_role: "Add as {{role}}:"
958
  send_authorisation_request: Send authorisation request
959
  user_added_to_project: User added to project
960
  mail_body_project_invation_request: "{{user}} requested authorisation for project {{project}}"
config/locales/zh-TW.yml
984 984
  mail_subject_project_activity_warning: Activity reminder
985 985
  mail_body_project_activity_warning: Your project '{{project}}' has no activity for a month. If you still need the project, click the following link, otherwise the project will be archived in 14 days.
986 986
  permission_reactivate_project: Reactivate Project
987
  request_was_sucessfully_sent: Your request was successfully sent. Please wait for authorization
988
  authorisation_request: Authorisation request
989
  add_as_role: "Add as {{role}}:"
990
  send_authorisation_request: Send authorisation request
991
  user_added_to_project: User added to project
992
  mail_body_project_invation_request: "{{user}} requested authorisation for project {{project}}"
config/locales/zh.yml
915 915
  mail_subject_project_activity_warning: Activity reminder
916 916
  mail_body_project_activity_warning: Your project '{{project}}' has no activity for a month. If you still need the project, click the following link, otherwise the project will be archived in 14 days.
917 917
  permission_reactivate_project: Reactivate Project
918
  request_was_sucessfully_sent: Your request was successfully sent. Please wait for authorization
919
  authorisation_request: Authorisation request
920
  add_as_role: "Add as {{role}}:"
921
  send_authorisation_request: Send authorisation request
922
  user_added_to_project: User added to project
923
  mail_body_project_invation_request: "{{user}} requested authorisation for project {{project}}"
config/routes.rb
154 154
  end
155 155
  
156 156
  map.connect 'projects/:id/members/new', :controller => 'members', :action => 'new'
157
  map.connect 'projects/:id/members/invite', :controller => 'members', :action => 'invite'
157 158
  
158 159
  map.with_options :controller => 'users' do |users|
159 160
    users.with_options :conditions => {:method => :get} do |user_views|
......
185 186
      project_views.connect 'projects/:id/categories/new', :action => 'add_issue_category'
186 187
      project_views.connect 'projects/:id/settings/:tab', :action => 'settings'
187 188
      project_views.connect 'projects/:id/reactivate', :action => 'reactivate'
189
      project_views.connect 'projects/:id/request_invitation', :action => 'request_invitation'
188 190
    end
189 191

  
190 192
    projects.with_options :action => 'activity', :conditions => {:method => :get} do |activity|
lib/redmine.rb
25 25

  
26 26
# Permissions
27 27
Redmine::AccessControl.map do |map|
28
  map.permission :view_project, {:projects => [:show, :activity]}, :public => true
28
  map.permission :view_project, {:projects => [:show, :activity, :request_invitation]}, :public => true
29 29
  map.permission :search_project, {:search => :index}, :public => true
30 30
  map.permission :add_project, {:projects => :add}, :require => :loggedin
31 31
  map.permission :edit_project, {:projects => [:settings, :edit]}, :require => :member
32 32
  map.permission :select_project_modules, {:projects => :modules}, :require => :member
33
  map.permission :manage_members, {:projects => :settings, :members => [:new, :edit, :destroy, :autocomplete_for_member]}, :require => :member
33
  map.permission :manage_members, {:projects => :settings, :members => [:new, :invite, :edit, :destroy, :autocomplete_for_member]}, :require => :member
34 34
  map.permission :manage_versions, {:projects => [:settings, :add_version], :versions => [:edit, :close_completed, :destroy]}, :require => :member
35 35
  map.permission :add_subprojects, {:projects => :add}, :require => :member
36 36
  map.permission :reactivate_project, {:projects => :reactivate}, :require => :member
    (1-1/1)