diff options
Diffstat (limited to 'app/controllers')
-rw-r--r-- | app/controllers/index_controller.rb | 19 | ||||
-rw-r--r-- | app/controllers/list_controller.rb | 16 | ||||
-rw-r--r-- | app/controllers/new_controller.rb | 51 | ||||
-rw-r--r-- | app/controllers/request_controller.rb | 45 |
4 files changed, 43 insertions, 88 deletions
diff --git a/app/controllers/index_controller.rb b/app/controllers/index_controller.rb deleted file mode 100644 index e15e72fdd..000000000 --- a/app/controllers/index_controller.rb +++ /dev/null @@ -1,19 +0,0 @@ -# controllers/index_controller.rb: -# Main page of site. -# -# Copyright (c) 2007 UK Citizens Online Democracy. All rights reserved. -# Email: francis@mysociety.org; WWW: http://www.mysociety.org/ -# -# $Id: index_controller.rb,v 1.2 2007-10-09 17:29:43 francis Exp $ - -class IndexController < ApplicationController - def index - respond_to do |format| - format.html - end - end - - private - -end - diff --git a/app/controllers/list_controller.rb b/app/controllers/list_controller.rb deleted file mode 100644 index 0bd336573..000000000 --- a/app/controllers/list_controller.rb +++ /dev/null @@ -1,16 +0,0 @@ -# app/controllers/list_controller.rb: -# Show all of the FOI requests in the system. -# -# Copyright (c) 2007 UK Citizens Online Democracy. All rights reserved. -# Email: francis@mysociety.org; WWW: http://www.mysociety.org/ -# -# $Id: list_controller.rb,v 1.3 2007-10-09 17:29:43 francis Exp $ - -class ListController < ApplicationController - def index - @info_request_pages, @info_requests = paginate :info_requests, :per_page => 25, :order => "created_at desc" - end - - private - -end diff --git a/app/controllers/new_controller.rb b/app/controllers/new_controller.rb deleted file mode 100644 index 1da6f1398..000000000 --- a/app/controllers/new_controller.rb +++ /dev/null @@ -1,51 +0,0 @@ -# app/controllers/new_controller.rb: -# Interface for building a new FOI request. -# -# Copyright (c) 2007 UK Citizens Online Democracy. All rights reserved. -# Email: francis@mysociety.org; WWW: http://www.mysociety.org/ -# -# $Id: new_controller.rb,v 1.4 2007-10-10 16:06:17 francis Exp $ - -class NewController < ApplicationController - def index - # render index.rhtml template - end - - def create - # Create both FOI request and the first request message - @info_request = InfoRequest.new(params[:info_request]) - @outgoing_message = OutgoingMessage.new(params[:outgoing_message].merge({ - :status => 'ready', - :message_type => 'initial_request' - })) - @info_request.outgoing_messages << @outgoing_message - @outgoing_message.info_request = @info_request - - # This automatically saves dependent objects, such as @info_request, in the same transaction - if not @info_request.valid? - render :action => 'index' - elsif authenticated? - @info_request.user = authenticated_user - @info_request.save - flash[:notice] = "Your Freedom of Information request has been created." - redirect_to :controller => 'request', :id => @info_request - end - - # Save both models -# valid = @info_request.valid? -# valid &&= @outgoing_message.valid? # XXX maybe there is a nicer way of preventing lazy boolean evaluation than this -# if valid -# if authenticated? -# @info_request.save! -# @outgoing_message.save! -# end -# else -# render :action => 'index' -# end - end - - private - -end - - diff --git a/app/controllers/request_controller.rb b/app/controllers/request_controller.rb index e860d43ef..3b278d728 100644 --- a/app/controllers/request_controller.rb +++ b/app/controllers/request_controller.rb @@ -4,13 +4,54 @@ # Copyright (c) 2007 UK Citizens Online Democracy. All rights reserved. # Email: francis@mysociety.org; WWW: http://www.mysociety.org/ # -# $Id: request_controller.rb,v 1.2 2007-10-09 17:29:43 francis Exp $ +# $Id: request_controller.rb,v 1.3 2007-10-15 22:26:37 louise Exp $ class RequestController < ApplicationController - def index + + def show @info_request = InfoRequest.find(params[:id]) end + def list + @info_request_pages, @info_requests = paginate :info_requests, :per_page => 25, :order => "created_at desc" + end + + def frontpage + end + + def create + # Create both FOI request and the first request message + @info_request = InfoRequest.new(params[:info_request]) + @outgoing_message = OutgoingMessage.new(params[:outgoing_message].merge({ + :status => 'ready', + :message_type => 'initial_request' + })) + @info_request.outgoing_messages << @outgoing_message + @outgoing_message.info_request = @info_request + + # This automatically saves dependent objects, such as @info_request, in the same transaction + if not @info_request.valid? + render :action => 'new' + elsif authenticated? + @info_request.user = authenticated_user + @info_request.save + flash[:notice] = "Your Freedom of Information request has been created." + redirect_to :controller => 'request', :action => "show", :id => @info_request + end + + # Save both models +# valid = @info_request.valid? +# valid &&= @outgoing_message.valid? # XXX maybe there is a nicer way of preventing lazy boolean evaluation than this +# if valid +# if authenticated? +# @info_request.save! +# @outgoing_message.save! +# end +# else +# render :action => 'index' +# end + end + private end |