##// END OF EJS Templates
Adds a form to manually submit an email to the mail handler....
Jean-Philippe Lang -
r13932:95f7471e9c78
parent child
Show More
@@ -0,0 +1,43
1 <!DOCTYPE html>
2 <html>
3 <head>
4 <meta charset="utf-8" />
5 <style>
6 label {display:block;margin:0.5em;}
7 </style>
8 </head>
9 <body>
10 <h1>Redmine Mail Handler</h1>
11
12 <%= form_tag({}, :multipart => true, :action => 'post') do %>
13 <%= hidden_field_tag 'key', params[:key] %>
14
15 <fieldset>
16 <legend>Raw Email</legend>
17 <%= text_area_tag 'email', '', :style => 'width:95%; height:400px;' %></label>
18 </fieldset>
19
20 <fieldset>
21 <legend>Options</legend>
22 <label>unknown_user: <%= select_tag 'unknown_user', options_for_select(['', 'ignore', 'accept', 'create']) %></label>
23 <label>default_group: <%= text_field_tag 'default_group' %></label>
24 <label>no_account_notice: <%= check_box_tag 'no_account_notice', 1 %></label>
25 <label>no_notification: <%= check_box_tag 'no_notification', 1 %></label>
26 <label>no_permission_check: <%= check_box_tag 'no_permission_check', 1 %></label>
27 </fieldset>
28
29 <fieldset>
30 <legend>Issue attributes options</legend>
31 <label>project: <%= text_field_tag 'issue[project]' %></label>
32 <label>status: <%= text_field_tag 'issue[status]' %></label>
33 <label>tracker: <%= text_field_tag 'issue[tracker]' %></label>
34 <label>category: <%= text_field_tag 'issue[category]' %></label>
35 <label>priority: <%= text_field_tag 'issue[priority]' %></label>
36 <label>private: <%= check_box_tag 'issue[private]', 1 %></label>
37 <label>allow_override: <%= text_field_tag 'allow_override' %></label>
38 </fieldset>
39
40 <p><%= submit_tag 'Submit Email' %></p>
41 <% end %>
42 </body>
43 </html>
@@ -18,6 +18,10
18 class MailHandlerController < ActionController::Base
18 class MailHandlerController < ActionController::Base
19 before_filter :check_credential
19 before_filter :check_credential
20
20
21 # Displays the email submission form
22 def new
23 end
24
21 # Submits an incoming email to MailHandler
25 # Submits an incoming email to MailHandler
22 def index
26 def index
23 options = params.dup
27 options = params.dup
@@ -315,7 +315,9 Rails.application.routes.draw do
315 get 'projects/:id/search', :controller => 'search', :action => 'index'
315 get 'projects/:id/search', :controller => 'search', :action => 'index'
316 get 'search', :controller => 'search', :action => 'index'
316 get 'search', :controller => 'search', :action => 'index'
317
317
318 match 'mail_handler', :controller => 'mail_handler', :action => 'index', :via => :post
318
319 get 'mail_handler', :to => 'mail_handler#new'
320 post 'mail_handler', :to => 'mail_handler#index'
319
321
320 match 'admin', :controller => 'admin', :action => 'index', :via => :get
322 match 'admin', :controller => 'admin', :action => 'index', :via => :get
321 match 'admin/projects', :controller => 'admin', :action => 'projects', :via => :get
323 match 'admin/projects', :controller => 'admin', :action => 'projects', :via => :get
@@ -77,7 +77,6 class MailHandlerControllerTest < ActionController::TestCase
77 end
77 end
78
78
79 def test_should_not_allow_with_wrong_key
79 def test_should_not_allow_with_wrong_key
80 # Disable API
81 Setting.mail_handler_api_enabled = 1
80 Setting.mail_handler_api_enabled = 1
82 Setting.mail_handler_api_key = 'secret'
81 Setting.mail_handler_api_key = 'secret'
83
82
@@ -86,4 +85,12 class MailHandlerControllerTest < ActionController::TestCase
86 end
85 end
87 assert_response 403
86 assert_response 403
88 end
87 end
88
89 def test_new
90 Setting.mail_handler_api_enabled = 1
91 Setting.mail_handler_api_key = 'secret'
92
93 get :new, :key => 'secret'
94 assert_response :success
95 end
89 end
96 end
@@ -19,6 +19,7 require File.expand_path('../../../test_helper', __FILE__)
19
19
20 class RoutingMailHandlerTest < Redmine::RoutingTest
20 class RoutingMailHandlerTest < Redmine::RoutingTest
21 def test_mail_handler
21 def test_mail_handler
22 should_route 'GET /mail_handler' => 'mail_handler#new'
22 should_route 'POST /mail_handler' => 'mail_handler#index'
23 should_route 'POST /mail_handler' => 'mail_handler#index'
23 end
24 end
24 end
25 end
General Comments 0
You need to be logged in to leave comments. Login now