aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--app/controllers/api_controller.rb5
-rwxr-xr-xscript/install-as-user4
-rw-r--r--spec/controllers/api_controller_spec.rb12
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,