diff options
-rw-r--r-- | app/controllers/api_controller.rb | 5 | ||||
-rwxr-xr-x | script/install-as-user | 4 | ||||
-rw-r--r-- | spec/controllers/api_controller_spec.rb | 12 |
3 files changed, 18 insertions, 3 deletions
diff --git a/app/controllers/api_controller.rb b/app/controllers/api_controller.rb index 00a3beebd..e6b0c121a 100644 --- a/app/controllers/api_controller.rb +++ b/app/controllers/api_controller.rb @@ -16,11 +16,14 @@ class ApiController < ApplicationController :status => @request.calculate_status, :public_body_url => make_url("body", @request.public_body.url_name), - :requestor_url => make_url("user", @request.user.url_name), + :request_email => @request.incoming_email, :request_text => @request.last_event_forming_initial_request.outgoing_message.body, } + if @request.user + @request_data[:requestor_url] = make_url("user", @request.user.url_name) + end render :json => @request_data end diff --git a/script/install-as-user b/script/install-as-user index 4fc341fc6..aaad52145 100755 --- a/script/install-as-user +++ b/script/install-as-user @@ -93,8 +93,8 @@ then -e "s,^( *DOMAIN:).*,\\1 '$HOST'," \ -e "s,^( *FORCE_SSL:).*,\\1 false," \ -e "s,^( *TIME_ZONE:).*,\\1 'Europe/London'," \ - -e "s,^( *BLOG_FEED:).*,\\1 null," \ - -e "s,^( *TWITTER_USERNAME:).*,\\1 null," \ + -e "s,^( *BLOG_FEED:).*,\\1 ''," \ + -e "s,^( *TWITTER_USERNAME:).*,\\1 ''," \ -e "s,^( *INCLUDE_DEFAULT_LOCALE_IN_URLS:).*,\\1 false," \ -e "s,^( *INCOMING_EMAIL_DOMAIN:).*,\\1 '$HOST'," \ -e "s,^( *INCOMING_EMAIL_PREFIX:).*,\\1 'foi+'," \ diff --git a/spec/controllers/api_controller_spec.rb b/spec/controllers/api_controller_spec.rb index e9a0f0be4..6b02bd5b4 100644 --- a/spec/controllers/api_controller_spec.rb +++ b/spec/controllers/api_controller_spec.rb @@ -270,6 +270,18 @@ describe ApiController, "when using the API" do # check, which does not really test anything at all. end + it 'should show information about an external request' do + info_request = info_requests(:external_request) + get :show_request, + :k => public_bodies(:geraldine_public_body).api_key, + :id => info_request.id + + response.should be_success + assigns[:request].id.should == info_request.id + r = ActiveSupport::JSON.decode(response.body) + r["title"].should == info_request.title + end + it "should show an Atom feed of new request events" do get :body_request_events, :id => public_bodies(:geraldine_public_body).id, |